CFx SDK Documentation
2020SP3
|
#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 | 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 121 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 133 of file RxObject.h.
#define ODRX_CONS_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DOCREATE | |||
) |
Definition at line 267 of file RxObject.h.
#define ODRX_CONS_DEFINE_MEMBERS_ALTNAME | ( | ClassName, | |
ParentClass, | |||
szClassName, | |||
DOCREATE | |||
) |
Definition at line 259 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 112 of file RxObject.h.
#define ODRX_DECLARE_MEMBERS_GENERIC | ( | ClassType, | |
ClassName | |||
) |
Definition at line 58 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 196 of file RxObject.h.
#define ODRX_DEFINE_INIT_MEMBERS_GENERIC | ( | ClassName, | |
CREATE_CLASS_INSTANCE, | |||
CREATE_CLASS_INSTANCE2 | |||
) |
Definition at line 154 of file RxObject.h.
#define ODRX_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DOCREATE, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
szDWGClassName, | |||
szDxfName, | |||
szAppName | |||
) |
Definition at line 230 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 223 of file RxObject.h.
#define ODRX_DEFINE_MEMBERS_EX | ( | ClassName, | |
ParentClass, | |||
DOCREATE, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
szDWGClassName, | |||
szDxfName, | |||
szAppName, | |||
nCustomFlags | |||
) |
Definition at line 237 of file RxObject.h.
#define ODRX_DEFINE_PSEUDOCONSTRUCTOR | ( | ClassName, | |
DOCREATE | |||
) |
Defines a pseudo-constructor for the specified class name.
Definition at line 213 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 151 of file RxObject.h.
#define ODRX_DEFINE_RTTI_MEMBERS_GENERIC | ( | ClassType, | |
ClassName, | |||
ParentClass | |||
) |
Definition at line 135 of file RxObject.h.
#define ODRX_DXF_CONS_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
DxfName, | |||
AppName | |||
) |
Definition at line 280 of file RxObject.h.
#define ODRX_DXF_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass, | |||
DOCREATE, | |||
DwgVer, | |||
MaintVer, | |||
nProxyFlags, | |||
DxfName, | |||
AppName | |||
) |
Definition at line 273 of file RxObject.h.
#define ODRX_NO_CONS_DEFINE_MEMBERS | ( | ClassName, | |
ParentClass | |||
) |
Definition at line 253 of file RxObject.h.
#define ODRX_NO_CONS_DEFINE_MEMBERS_ALTNAME | ( | ClassName, | |
ParentClass, | |||
szClassName | |||
) |
Definition at line 245 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 44 of file RxObject.h.
typedef OdRxObjectPtr(* OdPseudoConstructorType) () |
Defines OdPseudoConstructorType as a function pointer type.
Definition at line 849 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 1102 of file RxObject.h.
typedef void(* OdRxMemberCollectionConstructorPtr) (OdRxMemberCollectionBuilder &, void *) |
Definition at line 838 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 1179 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 1174 of file RxObject.h.
enum OdRxObjMod |
Suppresses the incrementing of the reference counter.
Enumerator | |
---|---|
kOdRxObjAttach |
Definition at line 56 of file RxObject.h.
enum OverrulingType |
Definition at line 819 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 1105 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 | ( | ) |