Open CASCADE Technology 7.8.2.dev
XmlMDF_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 <XmlMDF_DerivedDriver.hxx>

Inheritance diagram for XmlMDF_DerivedDriver:

Public Member Functions

 XmlMDF_DerivedDriver (const Handle< TDF_Attribute > &theDerivative, const Handle< XmlMDF_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.
 
const TCollection_AsciiStringTypeName () const
 Returns the full XML tag name (including NS prefix)
 
virtual Standard_Boolean Paste (const XmlObjMgt_Persistent &theSource, const Handle< TDF_Attribute > &theTarget, XmlObjMgt_RRelocationTable &theRelocTable) const override
 Reuses the base driver to read the base fields.
 
virtual void Paste (const Handle< TDF_Attribute > &theSource, XmlObjMgt_Persistent &theTarget, XmlObjMgt_SRelocationTable &theRelocTable) const override
 Reuses the base driver to store the base fields.
 
- Public Member Functions inherited from XmlMDF_ADriver
virtual Standard_Integer VersionNumber () const
 Returns the version number from which the driver is available.
 
virtual Handle< Standard_TypeSourceType () const
 Returns the type of source object, inheriting from Attribute from TDF.
 
const TCollection_AsciiStringTypeName () const
 Returns the full XML tag name (including NS prefix)
 
const TCollection_AsciiStringNamespace () const
 Returns the namespace string.
 
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< XmlMDF_ADrivermyBaseDirver
 the base attribute driver to be reused here
 
- Protected Attributes inherited from XmlMDF_ADriver
TCollection_AsciiString myTypeName
 
TCollection_AsciiString myNamespace
 
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 char * get_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 XmlMDF_ADriver
 XmlMDF_ADriver (const Handle< Message_Messenger > &theMessageDriver, const Standard_CString theNamespace, 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

◆ XmlMDF_DerivedDriver()

XmlMDF_DerivedDriver::XmlMDF_DerivedDriver ( const Handle< TDF_Attribute > & theDerivative,
const Handle< XmlMDF_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 > XmlMDF_DerivedDriver::NewEmpty ( ) const
inlineoverridevirtual

Creates a new instance of the derivative attribute.

Implements XmlMDF_ADriver.

◆ Paste() [1/2]

virtual void XmlMDF_DerivedDriver::Paste ( const Handle< TDF_Attribute > & theSource,
XmlObjMgt_Persistent & theTarget,
XmlObjMgt_SRelocationTable & theRelocTable ) const
inlineoverridevirtual

Reuses the base driver to store the base fields.

Implements XmlMDF_ADriver.

◆ Paste() [2/2]

virtual Standard_Boolean XmlMDF_DerivedDriver::Paste ( const XmlObjMgt_Persistent & theSource,
const Handle< TDF_Attribute > & theTarget,
XmlObjMgt_RRelocationTable & theRelocTable ) const
inlineoverridevirtual

Reuses the base driver to read the base fields.

Implements XmlMDF_ADriver.

◆ TypeName()

const TCollection_AsciiString & XmlMDF_DerivedDriver::TypeName ( ) const
inline

Returns the full XML tag name (including NS prefix)

Field Documentation

◆ myBaseDirver

Handle< XmlMDF_ADriver > XmlMDF_DerivedDriver::myBaseDirver
protected

the base attribute driver to be reused here

◆ myDerivative

Handle< TDF_Attribute > XmlMDF_DerivedDriver::myDerivative
protected

the derivative attribute that inherits the base


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