CFx SDK Documentation
2023 SP0
|
#include "TD_PackPush.h"
#include "RootExport.h"
#include "OdHeap.h"
#include "OdArrayPreDef.h"
#include "OdString.h"
#include "BaseObjectPtr.h"
#include "SmartPtr.h"
#include "TD_PackPop.h"
Go to the source code of this file.
Classes | |
class | OdRxObjectPtr |
class | OdRxObject |
class | OdRxClass |
Namespaces | |
OdRx | |
Macros | |
#define | _ODRXOBJECT_INCLUDED_ /* { Secret } *// |
#define | FX_STUB |
#define | ODRX_DECLARE_MEMBERS_GENERIC(ClassType, ClassName) |
#define | ODRX_DECLARE_MEMBERS(ClassName) ODRX_DECLARE_MEMBERS_GENERIC(OdRxClass, ClassName) |
#define | EMPTY_CONSTR(ClassName) (ClassName*)0 |
#define | NEWOBJ_CONSTR(ClassName) OdSmartPtr<ClassName>(new ClassName, kOdRxObjAttach) |
#define | ODRX_DEFINE_RTTI_MEMBERS_GENERIC(ClassType, ClassName, ParentClass) |
#define | ODRX_DEFINE_RTTI_MEMBERS(ClassName, ParentClass) ODRX_DEFINE_RTTI_MEMBERS_GENERIC(OdRxClass, ClassName, ParentClass) |
#define | ODRX_DEFINE_INIT_MEMBERS_GENERIC(ClassName, CREATE_CLASS_INSTANCE, CREATE_CLASS_INSTANCE2) |
#define | ODRX_DEFINE_INIT_MEMBERS(ClassName, ParentClass, pseudoConsFn, DwgVer, MaintVer, nProxyFlags, szDWGClassName, szDxfName, szAppName, nCustomFlags) |
#define | ODRX_DEFINE_PSEUDOCONSTRUCTOR(ClassName, DOCREATE) |
#define | ODRX_DEFINE_MEMBERS2(ClassName, ParentClass, pseudoConsFn, DwgVer, MaintVer, nProxyFlags, szDWGClassName, szDxfName, szAppName, nCustomFlags) |
#define | ODRX_DEFINE_MEMBERS(ClassName, ParentClass, DOCREATE, DwgVer, MaintVer, nProxyFlags, szDWGClassName, szDxfName, szAppName) |
#define | ODRX_DEFINE_MEMBERS_EX(ClassName, ParentClass, DOCREATE, DwgVer, MaintVer, nProxyFlags, szDWGClassName, szDxfName, szAppName, nCustomFlags) |
#define | ODRX_NO_CONS_DEFINE_MEMBERS_ALTNAME(ClassName, ParentClass, szClassName) |
#define | ODRX_NO_CONS_DEFINE_MEMBERS(ClassName, ParentClass) |
#define | ODRX_CONS_DEFINE_MEMBERS_ALTNAME(ClassName, ParentClass, szClassName, DOCREATE) |
#define | ODRX_CONS_DEFINE_MEMBERS(ClassName, ParentClass, DOCREATE) |
#define | ODRX_DXF_DEFINE_MEMBERS(ClassName, ParentClass, DOCREATE, DwgVer, MaintVer, nProxyFlags, DxfName, AppName) |
#define | ODRX_DXF_CONS_DEFINE_MEMBERS(ClassName, ParentClass, DwgVer, MaintVer, nProxyFlags, DxfName, AppName) |
Typedefs | |
typedef void(* | AppNameChangeFuncPtr) (const OdRxClass *classObj, OdString &newAppName, int saveVer) |
typedef void(* | OdRxMemberCollectionConstructorPtr) (OdRxMemberCollectionBuilder &, void *) |
typedef OdRxObjectPtr(* | OdPseudoConstructorType) () |
typedef OdSmartPtr< OdRxClass > | OdRxClassPtr |
typedef OdArray< OdRxObjectPtr > | OdRxObjectPtrArray |
typedef void(* | ODRXOBJECT_CALLBACK) (const OdRxObject *) |
Enumerations | |
enum | OdRxObjMod { kOdRxObjAttach } |
enum | OdRx::Ordering { OdRx::kLessThan =-1 , OdRx::kEqual = 0 , OdRx::kGreaterThan = 1 , OdRx::kNotOrderable = 2 } |
enum | OdRx::MTSupport { OdRx::kMTRender = 0x01 , OdRx::kMTRenderInBlock = 0x02 , OdRx::kMTRenderNested = 0x04 , OdRx::kMTRenderReserved = 0x08 , OdRx::kMTRenderMask = 0x0f , OdRx::kMTLoading = 0x80 , OdRx::kHistoryAware = 0x100 } |
enum | OverrulingType { kDrawableOverrule = 0 , kObjectOverrule , kPropertiesOverrule , kGeometryOverrule , kHighlightOverrule , kSubentityOverrule , kGripOverrule , kTransformOverrule , kOsnapOverrule , kVisibilityOverrule , kTotalOverrules } |
Functions | |
template<class Class , class Parent > | |
OdRxObject * | odQueryXImpl (const Class *pThis, const OdRxClass *pClass) |
FIRSTDLL_EXPORT OdRxObjectPtr | odrxCreateObject (const OdString &sClassName) |
FIRSTDLL_EXPORT OdRxClass * | newOdRxClass (const OdString &sClassName, OdRxClass *pBaseClass, OdPseudoConstructorType pConstr=0, int DwgVer=0, int MaintVer=0, int nProxyFlags=0, const OdString &sDxfName=OdString::kEmpty, const OdString &sAppName=OdString::kEmpty, AppNameChangeFuncPtr fNameChangeFunc=NULL, int nCustomFlags=0) |
FIRSTDLL_EXPORT void | deleteOdRxClass (OdRxClass *pClass) |
FIRSTDLL_EXPORT void | odrxRegisterDestructorCallback (const ODRXOBJECT_CALLBACK callbackFunc) |
FIRSTDLL_EXPORT void | odrxUnregisterDestructorCallback () |
#define _ODRXOBJECT_INCLUDED_ /* { Secret } *// |
Definition at line 25 of file RxObject.h.
#define EMPTY_CONSTR | ( | ClassName | ) | (ClassName*)0 |
Defines the empty constructor and casts a null pointer for the specified class.
Definition at line 140 of file RxObject.h.
#define FX_STUB |
Definition at line 69 of file RxObject.h.
#define NEWOBJ_CONSTR | ( | ClassName | ) | OdSmartPtr<ClassName>(new ClassName, kOdRxObjAttach) |
Defines the pseudo-constructor for the specified class that creates a new instance, creates a smart pointer to it, does not increment its reference counter, and returns a smart pointer to the instance.
Definition at line 152 of file RxObject.h.
#define ODRX_CONS_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DOCREATE | |||
) |
Definition at line 286 of file RxObject.h.
#define ODRX_CONS_DEFINE_MEMBERS_ALTNAME | ( | ClassName, | |
ParentClass, | |||
szClassName, | |||
DOCREATE | |||
) |
Definition at line 278 of file RxObject.h.
#define ODRX_DECLARE_MEMBERS | ( | ClassName | ) | ODRX_DECLARE_MEMBERS_GENERIC(OdRxClass, ClassName) |
Declares the RunTime Type Identification methods required by OdRxObject objects.
Definition at line 131 of file RxObject.h.
#define ODRX_DECLARE_MEMBERS_GENERIC | ( | ClassType, | |
ClassName | |||
) |
Definition at line 72 of file RxObject.h.
#define ODRX_DEFINE_INIT_MEMBERS | ( | ClassName, | |
ParentClass, | |||
pseudoConsFn, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
szDWGClassName, | |||
szDxfName, | |||
szAppName, | |||
nCustomFlags | |||
) |
Defines the registering and unregistering functions.
<link rtti_class_registering.html, Registering and Unregistering Classes in a Program>
Definition at line 215 of file RxObject.h.
#define ODRX_DEFINE_INIT_MEMBERS_GENERIC | ( | ClassName, | |
CREATE_CLASS_INSTANCE, | |||
CREATE_CLASS_INSTANCE2 | |||
) |
Definition at line 173 of file RxObject.h.
#define ODRX_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DOCREATE, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
szDWGClassName, | |||
szDxfName, | |||
szAppName | |||
) |
Definition at line 249 of file RxObject.h.
#define ODRX_DEFINE_MEMBERS2 | ( | ClassName, | |
ParentClass, | |||
pseudoConsFn, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
szDWGClassName, | |||
szDxfName, | |||
szAppName, | |||
nCustomFlags | |||
) |
Defines Runtime Type Identification and initialization functions for OdRxObject objects.
Definition at line 242 of file RxObject.h.
#define ODRX_DEFINE_MEMBERS_EX | ( | ClassName, | |
ParentClass, | |||
DOCREATE, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
szDWGClassName, | |||
szDxfName, | |||
szAppName, | |||
nCustomFlags | |||
) |
Definition at line 256 of file RxObject.h.
#define ODRX_DEFINE_PSEUDOCONSTRUCTOR | ( | ClassName, | |
DOCREATE | |||
) |
Defines a pseudo-constructor for the specified class name.
Definition at line 232 of file RxObject.h.
#define ODRX_DEFINE_RTTI_MEMBERS | ( | ClassName, | |
ParentClass | |||
) | ODRX_DEFINE_RTTI_MEMBERS_GENERIC(OdRxClass, ClassName, ParentClass) |
Defines Runtime Type Identification functions for OdRxObject objects.
Definition at line 170 of file RxObject.h.
#define ODRX_DEFINE_RTTI_MEMBERS_GENERIC | ( | ClassType, | |
ClassName, | |||
ParentClass | |||
) |
Definition at line 154 of file RxObject.h.
#define ODRX_DXF_CONS_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
DxfName, | |||
AppName | |||
) |
Definition at line 299 of file RxObject.h.
#define ODRX_DXF_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DOCREATE, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
DxfName, | |||
AppName | |||
) |
Definition at line 292 of file RxObject.h.
#define ODRX_NO_CONS_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass | |||
) |
Definition at line 272 of file RxObject.h.
#define ODRX_NO_CONS_DEFINE_MEMBERS_ALTNAME | ( | ClassName, | |
ParentClass, | |||
szClassName | |||
) |
Definition at line 264 of file RxObject.h.
Callback function providing ability for custom class to alter its application name depending on file format version drawing is saved to.
Definition at line 51 of file RxObject.h.
typedef OdRxObjectPtr(* OdPseudoConstructorType) () |
Defines OdPseudoConstructorType as a function pointer type.
Definition at line 868 of file RxObject.h.
typedef OdSmartPtr<OdRxClass> OdRxClassPtr |
This template class is a specialization of the OdSmartPtr class template for OdRxClass object pointers.
Definition at line 1121 of file RxObject.h.
typedef void(* OdRxMemberCollectionConstructorPtr) (OdRxMemberCollectionBuilder &, void *) |
Definition at line 857 of file RxObject.h.
typedef void(* ODRXOBJECT_CALLBACK) (const OdRxObject *) |
This registration allows you to catch the invoking of each RxObject destructor.
Definition at line 1198 of file RxObject.h.
typedef OdArray<OdRxObjectPtr> OdRxObjectPtrArray |
This template class is a specialization of the OdArray class template for OdRx object pointers.
Definition at line 1193 of file RxObject.h.
enum OdRxObjMod |
Suppresses the incrementing of the reference counter.
Enumerator | |
---|---|
kOdRxObjAttach |
Definition at line 63 of file RxObject.h.
enum OverrulingType |
Definition at line 838 of file RxObject.h.
FIRSTDLL_EXPORT void deleteOdRxClass | ( | OdRxClass * | pClass | ) |
This external function deletes a class description instance.
pClass | [in] Raw pointer to an existing class description instance. |
FIRSTDLL_EXPORT OdRxClass* newOdRxClass | ( | const OdString & | sClassName, |
OdRxClass * | pBaseClass, | ||
OdPseudoConstructorType | pConstr = 0 , |
||
int | DwgVer = 0 , |
||
int | MaintVer = 0 , |
||
int | nProxyFlags = 0 , |
||
const OdString & | sDxfName = OdString::kEmpty , |
||
const OdString & | sAppName = OdString::kEmpty , |
||
AppNameChangeFuncPtr | fNameChangeFunc = NULL , |
||
int | nCustomFlags = 0 |
||
) |
This external function creates a new class description instance with specified parameters and returns a raw pointer to it.
sClassName | [in] Custom class name as a string. |
pBaseClass | [in] A pointer to an existing class description instance which is the parent class. |
pConstr | [in] A pointer to the pseudo-constructor function. |
DwgVer | [in] dwg-version number. |
MaintVer | [in] Maintain version number. |
nProxyFlags | [in] Mask of the proxy flags. |
sDxfName | [in] dxf-class name. |
sAppName | [in] Application class name. |
fNameChangeFunc | [in] A pointer to the callback function which is called when the registered object is to be saved. |
nCustomFlags | [in] Mask of the custom flags. |
OdRxObject* odQueryXImpl | ( | const Class * | pThis, |
const OdRxClass * | pClass | ||
) |
Definition at line 1124 of file RxObject.h.
FIRSTDLL_EXPORT OdRxObjectPtr odrxCreateObject | ( | const OdString & | sClassName | ) |
This external function creates a new instance of the class specified by the argument as a string and returns a /non-typified smart pointer/ to it.
sClassName | [in] Custom class name as a string. |
FIRSTDLL_EXPORT void odrxRegisterDestructorCallback | ( | const ODRXOBJECT_CALLBACK | callbackFunc | ) |
FIRSTDLL_EXPORT void odrxUnregisterDestructorCallback | ( | ) |