Open CASCADE Technology 7.8.0
Public Member Functions | Protected Attributes
BinMDF_DerivedDriver Class Reference

A universal driver for the attribute that inherits another attribute with ready to used persistence mechanism implemented (already has a driver to store/retrieve). More...

#include <BinMDF_DerivedDriver.hxx>

Inheritance diagram for BinMDF_DerivedDriver:
Inheritance graph
[legend]

Public Member Functions

 BinMDF_DerivedDriver (const Handle< TDF_Attribute > &theDerivative, const Handle< BinMDF_ADriver > &theBaseDriver)
 Creates a derivative persistence driver for theDerivative attribute by reusage of theBaseDriver.
 
virtual Handle< TDF_AttributeNewEmpty () const override
 Creates a new instance of the derivative attribute.
 
virtual Standard_Boolean Paste (const BinObjMgt_Persistent &theSource, const Handle< TDF_Attribute > &theTarget, BinObjMgt_RRelocationTable &theRelocTable) const override
 Reuses the base driver to read the base fields.
 
virtual void Paste (const Handle< TDF_Attribute > &theSource, BinObjMgt_Persistent &theTarget, BinObjMgt_SRelocationTable &theRelocTable) const override
 Reuses the base driver to store the base fields.
 
- Public Member Functions inherited from BinMDF_ADriver
virtual const Handle< Standard_Type > & SourceType () const
 Returns the type of source object, inheriting from Attribute from TDF.
 
const TCollection_AsciiStringTypeName () const
 Returns the type name of the attribute object.
 
const Handle< Message_Messenger > & MessageDriver () const
 Returns the current message driver of this driver.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Protected Attributes

Handle< TDF_AttributemyDerivative
 the derivative attribute that inherits the base
 
Handle< BinMDF_ADrivermyBaseDirver
 the base attribute driver to be reused here
 
- Protected Attributes inherited from BinMDF_ADriver
TCollection_AsciiString myTypeName
 
Handle< Message_MessengermyMessageDriver
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 
- Protected Member Functions inherited from BinMDF_ADriver
 BinMDF_ADriver (const Handle< Message_Messenger > &theMsgDriver, const Standard_CString theName=NULL)
 

Detailed Description

A universal driver for the attribute that inherits another attribute with ready to used persistence mechanism implemented (already has a driver to store/retrieve).

Constructor & Destructor Documentation

◆ BinMDF_DerivedDriver()

BinMDF_DerivedDriver::BinMDF_DerivedDriver ( const Handle< TDF_Attribute > &  theDerivative,
const Handle< BinMDF_ADriver > &  theBaseDriver 
)
inline

Creates a derivative persistence driver for theDerivative attribute by reusage of theBaseDriver.

Parameters
theDerivativean instance of the attribute, just created, detached from any label
theBaseDrivera driver of the base attribute, called by Paste methods

Member Function Documentation

◆ NewEmpty()

virtual Handle< TDF_Attribute > BinMDF_DerivedDriver::NewEmpty ( ) const
inlineoverridevirtual

Creates a new instance of the derivative attribute.

Implements BinMDF_ADriver.

◆ Paste() [1/2]

virtual Standard_Boolean BinMDF_DerivedDriver::Paste ( const BinObjMgt_Persistent theSource,
const Handle< TDF_Attribute > &  theTarget,
BinObjMgt_RRelocationTable theRelocTable 
) const
inlineoverridevirtual

Reuses the base driver to read the base fields.

Implements BinMDF_ADriver.

◆ Paste() [2/2]

virtual void BinMDF_DerivedDriver::Paste ( const Handle< TDF_Attribute > &  theSource,
BinObjMgt_Persistent theTarget,
BinObjMgt_SRelocationTable theRelocTable 
) const
inlineoverridevirtual

Reuses the base driver to store the base fields.

Implements BinMDF_ADriver.

Field Documentation

◆ myBaseDirver

Handle< BinMDF_ADriver > BinMDF_DerivedDriver::myBaseDirver
protected

the base attribute driver to be reused here

◆ myDerivative

Handle< TDF_Attribute > BinMDF_DerivedDriver::myDerivative
protected

the derivative attribute that inherits the base


The documentation for this class was generated from the following file: