CFx SDK Documentation  2023 SP0
Public Member Functions | Protected Member Functions | List of all members
OdRxClass Class Referenceabstract

#include <RxObject.h>

Inheritance diagram for OdRxClass:
OdRxObject OdRxClassProtocolExtImpl OdTfClass OdTrVisDescStub OdRxBaseClassImpl OdStaticRxObject< OdTrVisDescStub > OdRxBaseNamedClassImpl OdRxClassConsImpl OdRxNamedClassImpl OdDxfClassImpl OdRxValueType OdRxNonBlittableType< ValueType > OdRxNonBlittableType< T > OdRxSpecifiedValueType OdRxValueTypePOD< ValueType > OdRxNonBlittableWithUnderlyingType< ValueType > AggrValueTypePOD< ValueType > OdDAISelectValueTypePOD< ValueType > OdRxEnumType< ValueType > OdRxValueWithReferenceTypePOD< ValueType > OdRxValueWithUnderlyingTypePOD< ValueType > OdRxEnumWithUnderlyingType< ValueType >

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdRxClass)
 
virtual OdRxObjectPtr addX (OdRxClass *pProtocolClass, OdRxObject *pProtocolObject)
 
virtual OdRxObjectPtr getX (const OdRxClass *pProtocolClass)
 
virtual OdRxObjectPtr delX (OdRxClass *pProtocolClass)
 
virtual OdRxObjectPtr create () const =0
 
virtual const OdString appName () const =0
 
virtual AppNameChangeFuncPtr appNameCallbackPtr () const =0
 
virtual const OdString dxfName () const =0
 
virtual const OdString name () const =0
 
virtual OdDb::DwgVersion getClassVersion (OdDb::MaintReleaseVer *pMaintReleaseVer=0) const =0
 
virtual OdUInt32 proxyFlags () const =0
 
virtual bool isDerivedFrom (const OdRxClass *pClass) const
 
virtual OdRxClassmyParent () const =0
 
virtual OdRxModulemodule () const =0
 
virtual OdPseudoConstructorType constructor ()
 
virtual void setConstructor (OdPseudoConstructorType psuedoConstr)=0
 
virtual OdUInt32 customFlags () const =0
 
virtual OdRxOverruleIterator * getOverrule (OverrulingType t) const =0
 
virtual void setOverrule (OdRxOverruleIterator *pIt, OverrulingType t)=0
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () const
 
virtual void addRef ()=0
 
virtual void release ()=0
 
virtual long numRefs () const
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual void copyFrom (const OdRxObject *pSource)
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Protected Member Functions

 OdRxClass ()
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 

Detailed Description

<group OdRx_Classes> Contains runtime information about a Rx-Object.

Remarks
A pointer to an OdRxClass instance can be obtained for an OdRxObject class by calling the OdRxObject::desc() function.
See also
<link rtti.html, RTTI Technology>

<link rtti_class_describing.html, Implementing the Class Describing Structure>

Definition at line 883 of file RxObject.h.

Constructor & Destructor Documentation

◆ OdRxClass()

OdRxClass::OdRxClass ( )
protected

Member Function Documentation

◆ addX()

virtual OdRxObjectPtr OdRxClass::addX ( OdRxClass pProtocolClass,
OdRxObject pProtocolObject 
)
virtual

Creates the Protocol Extension for the specified OdRxClass.

Parameters
pProtocolClass[in] Pointer to the Protocol Extension class.
pProtocolObject[in] Pointer to the Protocol Extension Object.
Returns
Returns a SmartPointer to the Protocol Extension.
Remarks
The default implementation of this object does nothing but return a null pointer, and asserts in debug mode. It will be fully implemented in a future release.

Reimplemented in OdRxClassProtocolExtImpl.

◆ appName()

virtual const OdString OdRxClass::appName ( ) const
pure virtual

Returns the application class name for the class describing instance represented by this OdRxClass object. Custom class can alter its application name depending on file format version it's being saved to.

See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, OdDxfClassImpl, and OdRxClassProtocolExtImpl.

◆ appNameCallbackPtr()

virtual AppNameChangeFuncPtr OdRxClass::appNameCallbackPtr ( ) const
pure virtual

Returns a pointer to the callback function which is called when a drawing is to be saved and the logical application class name represented by the class description instance to be written out to file for the custom class, or NULL, if the callback function is not assigned.

See also
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, OdDxfClassImpl, and OdRxClassProtocolExtImpl.

◆ constructor()

virtual OdPseudoConstructorType OdRxClass::constructor ( )
virtual

Returns the raw pointer to the function that is the pseudo-constructor for this class.

See also
<link rtti_class_constructors.html, Functionality of Pseudo-Constructors>
<link rtti_pseudoconstructor.html, Understanding Pseudo-Constructors>

Reimplemented in OdRxClassConsImpl.

◆ create()

virtual OdRxObjectPtr OdRxClass::create ( ) const
pure virtual

Creates a new instance of the class associated with the class describing instance using the pseudo-constructor of the class.

Returns
Returns a smart pointer to the newly created instance.
See also
<link rtti_class_constructors.html, Functionality of Pseudo-Constructors>
<link rtti_pseudoconstructor.html, Understanding Pseudo-Constructors>

Implemented in OdRxValueType, OdTrVisDescStub, OdRxClassConsImpl, and OdRxClassProtocolExtImpl.

◆ customFlags()

virtual OdUInt32 OdRxClass::customFlags ( ) const
pure virtual

Returns the custom flags for the class describing instance represented by this OdRxClass object.

See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, OdDxfClassImpl, and OdRxClassProtocolExtImpl.

◆ delX()

virtual OdRxObjectPtr OdRxClass::delX ( OdRxClass pProtocolClass)
virtual

Deletes the Protocol Extension for the specified Protocol Extension class.

Returns
Returns the Protocol Extension Object.
Parameters
pProtocolClass[in] Pointer to the Protocol Extension class.
Remarks
As currently implemented, this function does nothing but assert in debug mode, and return a null pointer. It will be fully implemented in a future release.

Reimplemented in OdRxClassProtocolExtImpl.

◆ dxfName()

virtual const OdString OdRxClass::dxfName ( ) const
pure virtual

Returns the DXF class name for the class describing instance represented by this OdRxClass object.

See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, OdDxfClassImpl, and OdRxClassProtocolExtImpl.

◆ getClassVersion()

virtual OdDb::DwgVersion OdRxClass::getClassVersion ( OdDb::MaintReleaseVer pMaintReleaseVer = 0) const
pure virtual

Returns the .dwg file version and maintenance version for the class describing instance represented by this OdRxClass object.

Parameters
pMaintReleaseVer[in] Raw pointer to the variable in which the maintenance version number must be saved. This variable must have the OdDb::MaintReleaseVer type.
Remarks
The .dwg file version number is returned value of the method that must have the OdDb::DwgVersion type. This method returns the maintenance release version if and only if its argument is not Null.
See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdDxfClassImpl, OdRxClassProtocolExtImpl, and OdTrVisDescStub.

◆ getOverrule()

virtual OdRxOverruleIterator* OdRxClass::getOverrule ( OverrulingType  t) const
pure virtual

Implemented in OdRxBaseClassImpl, and OdTrVisDescStub.

◆ getX()

virtual OdRxObjectPtr OdRxClass::getX ( const OdRxClass pProtocolClass)
virtual

Returns the Protocol Extension for the specified Protocol extension class.

Parameters
pProtocolClass[in] Pointer to the Protocol Extension class.
Returns
Returns a SmartPointer to the Protocol Extension.
Remarks
The default implementation of this object does nothing but assert in debug mode, and return a null pointer. It will be fully implemented in a future release.

Reimplemented in OdRxClassProtocolExtImpl.

◆ isDerivedFrom()

virtual bool OdRxClass::isDerivedFrom ( const OdRxClass pClass) const
virtual

Checks whether the class defined by this class describing instance belongs to or derived from the specified class. The method returns true if and only if this object is an instance of the specified class or a subclass of the specified class.

Parameters
pClass[in] Raw pointer to the class describing instance to be checked.
See also
<link rtti_sample_belonging.html, Example of Belonging to an Instance of a Class>
<link rtti_class_belonging.html, Belonging to an Instance of a Class>

◆ module()

virtual OdRxModule* OdRxClass::module ( ) const
pure virtual

Returns the OdRxModule object in which the class is resided.

Remarks
The default implementation of this function returns a Null pointer.
See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, and OdRxBaseClassImpl.

◆ myParent()

virtual OdRxClass* OdRxClass::myParent ( ) const
pure virtual

Returns the raw pointer to the class describing instance which describes the parent class for this class as the OdRxClass object.

See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, and OdRxBaseClassImpl.

◆ name()

virtual const OdString OdRxClass::name ( ) const
pure virtual

Returns the class name for the class describing instance represented by this OdRxClass object.

See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, OdRxNamedClassImpl, and OdRxBaseNamedClassImpl.

◆ ODRX_DECLARE_MEMBERS()

OdRxClass::ODRX_DECLARE_MEMBERS ( OdRxClass  )

◆ proxyFlags()

virtual OdUInt32 OdRxClass::proxyFlags ( ) const
pure virtual

Returns the /proxy flags/ for the class describing instance represented by this OdRxClass object.

See also
<link rtti_class_functionality.html, Functionality of RTTI>
<link rtti_class_describing.html, Implementing the Class Describing Structure>

Implemented in OdTrVisDescStub, OdDxfClassImpl, and OdRxClassProtocolExtImpl.

◆ setConstructor()

virtual void OdRxClass::setConstructor ( OdPseudoConstructorType  psuedoConstr)
pure virtual

Sets the user-defined function as the pseudo-constructor for this class.

Parameters
pseudoConstr[in] Raw pointer to the user-defined function that does not have arguments and returns the smart pointer to a new instance of this class.
See also
<link rtti_class_constructors.html, Functionality of Pseudo-Constructors>
<link rtti_pseudoconstructor.html, Understanding Pseudo-Constructors>

Implemented in OdTrVisDescStub, OdRxClassConsImpl, and OdRxClassProtocolExtImpl.

◆ setOverrule()

virtual void OdRxClass::setOverrule ( OdRxOverruleIterator *  pIt,
OverrulingType  t 
)
pure virtual

Implemented in OdRxBaseClassImpl, and OdTrVisDescStub.


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