CFx SDK Documentation  2022 SP0
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
CFxBIMDatabaseReference Class Reference

#include <FxBIMDatabaseReference.h>

Inheritance diagram for CFxBIMDatabaseReference:
OdDbObject OdGiDrawable OdRxObject

Public Types

enum  MergeFlags { eMF_None = 0x0 , eMF_Process = 0x1 , eMF_Final = 0x2 }
 
enum  Flags {
  eNone = 0 , eLoad = 0x1 , eMaterials = 0x2 , eMergeQueueFilled = 0x4 ,
  eConversionFinished = 0x8
}
 
- Public Types inherited from OdGiDrawable
enum  SetAttributesFlags {
  kDrawableNone = 0 , kDrawableIsAnEntity = 1 , kDrawableUsesNesting = 2 , kDrawableIsCompoundObject = 4 ,
  kDrawableViewIndependentViewportDraw = 8 , kDrawableIsInvisible = 16 , kDrawableHasAttributes = 32 , kDrawableRegenTypeDependantGeometry = 64 ,
  kDrawableIsDimension = (kDrawableIsAnEntity + kDrawableIsCompoundObject + 128) , kDrawableRegenDraw = 256 , kDrawableStandardDisplaySingleLOD = 512 , kDrawableShadedDisplaySingleLOD = 1024 ,
  kDrawableViewDependentViewportDraw = 2048 , kDrawableBlockDependentViewportDraw = 4096 , kDrawableIsExternalReference = 8192 , kDrawableNotPlottable = 16384 ,
  kLastFlag = kDrawableNotPlottable
}
 
enum  DrawableType {
  kGeometry = 0 , kDistantLight = 1 , kPointLight = 2 , kSpotLight = 3 ,
  kAmbientLight , kSolidBackground , kGradientBackground , kImageBackground ,
  kGroundPlaneBackground , kViewport , kWebLight , kSkyBackground ,
  kImageBasedLightingBackground
}
 

Public Member Functions

 ODDB_DECLARE_MEMBERS (CFxBIMDatabaseReference)
 
virtual ~CFxBIMDatabaseReference ()
 
Error Merge (const OdString &dwgPath, int flags)
 
virtual const OdStringBimFileName () const
 
virtual const OdStringBimViewName () const
 
virtual CFxBIMDatabasePtr BimDatabase (OdDb::OpenMode openMode)
 
virtual Error CreateEntityRefs (OdDbObjectId idOwner, const OdGeMatrix3d &trf)
 
virtual Error DestroyEntityRefs ()
 
virtual Error RemoveReferredObjectsFromGsModel ()
 
virtual Error Load ()
 
virtual Error Unload ()
 
virtual bool IsUnloaded ()
 
virtual const OdGeMatrix3dTransform () const
 
virtual void SetTransform (const OdGeMatrix3d &transform)
 
virtual size_t EntityRefCount () const
 
virtual OdDbObjectId EntityRef (size_t index) const
 
virtual bool IsLocked () const
 
virtual Error Lock ()
 
virtual Error Unlock ()
 
virtual bool IsOn () const
 
virtual Error On ()
 
virtual Error Off ()
 
virtual Error Insert ()
 
virtual Error Remove ()
 
virtual Error ReloadFrom (CFxBIMDatabaseReferencePtr pNew, OdDbObjectId idOwner, const OdGeMatrix3d &trf)
 
virtual int Flags () const
 
virtual void SetFlags (int flags)
 
OdResult dwgInFields (OdDbDwgFiler *pFiler) override
 
void dwgOutFields (OdDbDwgFiler *pFiler) const override
 
OdResult dxfInFields (OdDbDxfFiler *pFiler) override
 
void dxfOutFields (OdDbDxfFiler *pFiler) const override
 
void subClose () override
 
void applyPartialUndo (OdDbDwgFiler *pFiler, OdRxClass *pClass) override
 
void subHandOverTo (OdDbObject *pNewObject) override
 
- Public Member Functions inherited from OdDbObject
 ODDB_DECLARE_MEMBERS (OdDbObject)
 
 ~OdDbObject ()
 
void addRef ()
 
void release ()
 
long numRefs () const
 
OdDbObjectId objectId () const
 
OdDbHandle getDbHandle () const
 
OdDbHandle handle () const
 
OdDbObjectId ownerId () const
 
virtual void setOwnerId (OdDbObjectId ownerId)
 
OdDbDatabasedatabase () const
 
void createExtensionDictionary ()
 
OdDbObjectId extensionDictionary () const
 
bool releaseExtensionDictionary ()
 
OdDbXrecordPtr createXrecord (const OdString &xrecordName, OdDb::DuplicateRecordCloning style=OdDb::kDrcIgnore)
 
void upgradeOpen ()
 
void downgradeOpen ()
 
void cancel ()
 
virtual OdResult subOpen (OdDb::OpenMode mode)
 
OdResult erase (bool eraseIt=true)
 
virtual OdResult subErase (bool erasing)
 
void handOverTo (OdDbObject *pNewObject, bool keepXData=true, bool keepExtDict=true)
 
void swapIdWith (OdDbObjectId otherId, bool swapXdata=false, bool swapExtDict=false)
 
virtual void subSwapIdWith (const OdDbObjectId &otherId, bool swapXdata=false, bool swapExtDict=false)
 
virtual void audit (OdDbAuditInfo *pAuditInfo)
 
void dwgIn (OdDbDwgFiler *pFiler)
 
void dwgOut (OdDbDwgFiler *pFiler) const
 
virtual OdResult dxfIn (OdDbDxfFiler *pFiler)
 
virtual void dxfOut (OdDbDxfFiler *pFiler) const
 
virtual OdResult dxfInFields_R12 (OdDbDxfFiler *pFiler)
 
virtual void dxfOutFields_R12 (OdDbDxfFiler *pFiler) const
 
virtual OdDb::DuplicateRecordCloning mergeStyle () const
 
virtual OdResBufPtr xData (const OdString &regappName=OdString::kEmpty) const
 
virtual void setXData (const OdResBuf *pRb)
 
bool isEraseStatusToggled () const
 
bool isErased () const
 
bool isReadEnabled () const
 
bool isWriteEnabled () const
 
bool isNotifyEnabled () const
 
bool isModified () const
 
bool isModifiedXData () const
 
bool isModifiedGraphics () const
 
bool isNewObject () const
 
bool isNotifying () const
 
bool isUndoing () const
 
bool isReallyClosing () const
 
bool isDBRO () const
 
void assertReadEnabled () const
 
void assertWriteEnabled (bool autoUndo=true, bool recordModified=true)
 
void assertNotifyEnabled () const
 
void disableUndoRecording (bool disable)
 
bool isUndoRecordingDisabled () const
 
OdDbDwgFilerundoFiler ()
 
void addReactor (OdDbObjectReactor *pReactor) const
 
void removeReactor (OdDbObjectReactor *pReactor) const
 
virtual void addPersistentReactor (const OdDbObjectId &objId)
 
virtual void removePersistentReactor (const OdDbObjectId &objId)
 
bool hasPersistentReactor (const OdDbObjectId &objId) const
 
OdDbObjectIdArray getPersistentReactors () const
 
OdDbObjectReactorArray getTransientReactors () const
 
virtual void recvPropagateModify (const OdDbObject *pSubObj)
 
virtual void xmitPropagateModify () const
 
ODRX_SEALED_VIRTUAL OdDbObjectPtr deepClone (OdDbIdMapping &ownerIdMap, OdDbObject *pOwner, bool bPrimary=true) const ODRX_SEALED
 
ODRX_SEALED_VIRTUAL OdDbObjectPtr wblockClone (OdDbIdMapping &ownerIdMap, OdDbObject *pOwner, bool bPrimary=true) const ODRX_SEALED
 
virtual void appendToOwner (OdDbIdPair &idPair, OdDbObject *pOwnerObject, OdDbIdMapping &ownerIdMap)
 
void setOdDbObjectIdsInFlux ()
 
bool isOdDbObjectIdsInFlux () const
 
virtual void copied (const OdDbObject *pObject, const OdDbObject *pNewObject)
 
virtual void erased (const OdDbObject *pObject, bool erasing=true)
 
virtual void goodbye (const OdDbObject *pObject)
 
virtual void openedForModify (const OdDbObject *pObject)
 
virtual void modified (const OdDbObject *pObject)
 
virtual void subObjModified (const OdDbObject *pObject, const OdDbObject *pSubObj)
 
virtual void modifyUndone (const OdDbObject *pObject)
 
virtual void modifiedXData (const OdDbObject *pObject)
 
virtual void unappended (const OdDbObject *pObject)
 
virtual void reappended (const OdDbObject *pObject)
 
bool isAProxy () const
 
virtual void objectClosed (const OdDbObjectId &objectId)
 
virtual void modifiedGraphics (const OdDbObject *pObject)
 
virtual void copyFrom (const OdRxObject *pSource)
 
bool hasSaveVersionOverride () const
 
void setHasSaveVersionOverride (bool hasSaveVersionOverride)
 
virtual OdDb::DwgVersion getObjectSaveVersion (const OdDbFiler *pFiler, OdDb::MaintReleaseVer *pMaintVer=0) const
 
virtual OdDbObjectPtr decomposeForSave (OdDb::DwgVersion ver, OdDbObjectId &replaceId, bool &exchangeXData)
 
virtual OdDbObjectPtr decomposeForSave (OdDb::SaveType format, OdDb::DwgVersion ver, OdDbObjectId &replaceId, bool &exchangeXData)
 
void convertForSave (OdDb::DwgVersion ver)
 
virtual void composeForLoad (OdDb::SaveType format, OdDb::DwgVersion version, OdDbAuditInfo *pAuditInfo)
 
virtual OdGiDrawabledrawable ()
 
virtual OdUInt32 subSetAttributes (OdGiDrawableTraits *pTraits) const
 
virtual bool subWorldDraw (OdGiWorldDraw *pWd) const
 
virtual void subViewportDraw (OdGiViewportDraw *pVd) const
 
virtual bool isPersistent () const
 
virtual OdDbStub * id () const
 
ODRX_SEALED_VIRTUAL OdResult getClassID (void *pClsid) const ODRX_SEALED
 
void setGsNode (OdGsCache *pNode)
 
OdGsCachegsNode () const
 
void xDataTransformBy (const OdGeMatrix3d &xfm)
 
bool hasFields () const
 
OdDbObjectId getField (const OdString &fieldName) const
 
OdDbObjectPtr getField (const OdString &fieldName, OdDb::OpenMode mode) const
 
virtual OdDbObjectId setField (const OdString &fieldName, OdDbField *pField)
 
virtual OdResult removeField (OdDbObjectId fieldId)
 
virtual OdDbObjectId removeField (const OdString &fieldName)
 
OdDbObjectId getFieldDictionary () const
 
OdDbObjectPtr getFieldDictionary (OdDb::OpenMode mode) const
 
virtual OdRxClasssaveAsClass (OdRxClass *pClass) const
 
- Public Member Functions inherited from OdGiDrawable
 ODRX_DECLARE_MEMBERS (OdGiDrawable)
 
virtual DrawableType drawableType () const
 
ODRX_SEALED_VIRTUAL OdUInt32 setAttributes (OdGiDrawableTraits *pTraits) const ODRX_SEALED
 
ODRX_SEALED_VIRTUAL bool worldDraw (OdGiWorldDraw *pWd) const ODRX_SEALED
 
ODRX_SEALED_VIRTUAL void viewportDraw (OdGiViewportDraw *pVd) const ODRX_SEALED
 
ODRX_SEALED_VIRTUAL OdUInt32 viewportDrawLogicalFlags (OdGiViewportDraw *pVd) const ODRX_SEALED
 
virtual OdResult getGeomExtents (OdGeExtents3d &extents) const
 
ODRX_SEALED_VIRTUAL OdUInt32 regenSupportFlags () const ODRX_SEALED
 
- 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
 
bool isKindOf (const OdRxClass *pClass) const
 
virtual OdRxObjectPtr clone () const
 
virtual OdRx::Ordering comparedTo (const OdRxObject *pOther) const
 
virtual bool isEqualTo (const OdRxObject *pOther) const
 

Static Public Member Functions

static CFxBIMDatabaseReferencePtr Create (const OdString &dwgPath, const OdString &originalPath, Error &err)
 
- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 

Protected Member Functions

 CFxBIMDatabaseReference ()
 
- Protected Member Functions inherited from OdDbObject
 OdDbObject ()
 
virtual OdResult subGetClassID (void *pClsid) const
 
virtual OdDbObjectPtr subDeepClone (OdDbIdMapping &ownerIdMap, OdDbObject *pOwner, bool bPrimary) const
 
virtual OdDbObjectPtr subWblockClone (OdDbIdMapping &ownerIdMap, OdDbObject *pOwner, bool bPrimary) const
 
- Protected Member Functions inherited from OdGiDrawable
 OdGiDrawable ()
 
virtual OdUInt32 subViewportDrawLogicalFlags (OdGiViewportDraw *vd) const
 
virtual OdUInt32 subRegenSupportFlags () const
 

Additional Inherited Members

- Protected Attributes inherited from OdDbObject
OdDbObjectImplm_pImpl
 

Detailed Description

Definition at line 32 of file FxBIMDatabaseReference.h.

Member Enumeration Documentation

◆ Flags

Enumerator
eNone 
eLoad 
eMaterials 
eMergeQueueFilled 
eConversionFinished 

Definition at line 81 of file FxBIMDatabaseReference.h.

◆ MergeFlags

Enumerator
eMF_None 
eMF_Process 
eMF_Final 

Definition at line 41 of file FxBIMDatabaseReference.h.

Constructor & Destructor Documentation

◆ ~CFxBIMDatabaseReference()

virtual CFxBIMDatabaseReference::~CFxBIMDatabaseReference ( )
virtual

◆ CFxBIMDatabaseReference()

CFxBIMDatabaseReference::CFxBIMDatabaseReference ( )
protected

Member Function Documentation

◆ applyPartialUndo()

void CFxBIMDatabaseReference::applyPartialUndo ( OdDbDwgFiler pUndoFiler,
OdRxClass pClassObj 
)
overridevirtual

Notification function called each time an Undo operation is performed this object is using partial Undo.

Parameters
pUndoFiler[in] A pointer to the undo filer with the partial undo information.
pClassObj[in] A pointer to the OdRxClass object for the class that will handle the Undo.
Remarks
An object indicates it's using the partial undo mechanism, if and only if it has set autoUndo false in all calls to assertWriteEnabled().

This member function must know which types of fields to scan, and must stop after reading what it it needs.

If the class type specified by pClassObj does not matches the class of this object, this member function must call the parent class's applyPartialUndo() and return whatever it returns.

If it does match the class of this object, this member function must use pUndoFiler to read the undo data, then typically use this object's set() method.

Throws:

Cause eNotThatKindOfClass pClassObj != OdDbObject::desc()

Reimplemented from OdDbObject.

◆ BimDatabase()

virtual CFxBIMDatabasePtr CFxBIMDatabaseReference::BimDatabase ( OdDb::OpenMode  openMode)
virtual

◆ BimFileName()

virtual const OdString& CFxBIMDatabaseReference::BimFileName ( ) const
virtual

◆ BimViewName()

virtual const OdString& CFxBIMDatabaseReference::BimViewName ( ) const
virtual

◆ Create()

static CFxBIMDatabaseReferencePtr CFxBIMDatabaseReference::Create ( const OdString dwgPath,
const OdString originalPath,
Error err 
)
static

◆ CreateEntityRefs()

virtual Error CFxBIMDatabaseReference::CreateEntityRefs ( OdDbObjectId  idOwner,
const OdGeMatrix3d trf 
)
virtual

◆ DestroyEntityRefs()

virtual Error CFxBIMDatabaseReference::DestroyEntityRefs ( )
virtual

◆ dwgInFields()

OdResult CFxBIMDatabaseReference::dwgInFields ( OdDbDwgFiler pFiler)
overridevirtual

Reads the .dwg file data of this object.

Parameters
pFiler[in] Filer object from which data are read.
Returns
Returns the filer status.

This function is called by dwgIn() to allow the object to read its data.

When overriding this function:

1) Call assertWriteEnabled(). 2) Call the parent class's dwgInFields(pFiler). 3) If it returns eOK, continue; otherwise return whatever the parent's dwgInFields(pFiler) returned. 4) Call the OdDbDwgFiler(pFiler) methods to read each of the object's data items in the order they were written. 5) Return pFiler->filerStatus().

Reimplemented from OdDbObject.

◆ dwgOutFields()

void CFxBIMDatabaseReference::dwgOutFields ( OdDbDwgFiler pFiler) const
overridevirtual

Writes the .dwg file data of this object.

Parameters
pFiler[in] Pointer to the filer to which data are written.
Remarks

This function is called by dwgIn() to allow the object to write its data.

When overriding this function:

1) Call assertReadEnabled(). 2) Call the parent class's dwgOutFields(pFiler). 3) Call the OdDbDwgFiler(pFiler) methods to write each of the object's data items in the order they were written.

Reimplemented from OdDbObject.

◆ dxfInFields()

OdResult CFxBIMDatabaseReference::dxfInFields ( OdDbDxfFiler pFiler)
overridevirtual

Reads the DXF data of this object.

Parameters
pFiler[in] Pointer to the filer from which data are read.
Returns
Returns the filer status.

This function is called by dxfIn() to allow the object to read its data.

When overriding this function:

1) Call assertWriteEnabled(). 2) Call the parent class's dwgInFields(pFiler). 3) If it returns eOK, continue; otherwise return whatever the parent's dxfInFields(pFiler) returned. 4) Call the OdDbDxfFiler(pFiler) methods to read each of the object's data items in the order they were written. 5) Return pFiler->filerStatus().

Reimplemented from OdDbObject.

◆ dxfOutFields()

void CFxBIMDatabaseReference::dxfOutFields ( OdDbDxfFiler pFiler) const
overridevirtual

Writes the DXF data of this object.

Parameters
pFiler[in] Pointer to the filer to which data are to be written.
Remarks

This function is called by dxfOut() to allow the object to write its data.

When overriding this function:

1) Call assertReadEnabled(). 2) Call the parent class's dxfOutFields(pFiler). 4) Use pFiler to call the OdDbDxfFiler methods to write each of the object's data items in the order they were written.

Reimplemented from OdDbObject.

◆ EntityRef()

virtual OdDbObjectId CFxBIMDatabaseReference::EntityRef ( size_t  index) const
virtual

◆ EntityRefCount()

virtual size_t CFxBIMDatabaseReference::EntityRefCount ( ) const
virtual

◆ Flags()

virtual int CFxBIMDatabaseReference::Flags ( ) const
virtual

◆ Insert()

virtual Error CFxBIMDatabaseReference::Insert ( )
virtual

◆ IsLocked()

virtual bool CFxBIMDatabaseReference::IsLocked ( ) const
virtual

◆ IsOn()

virtual bool CFxBIMDatabaseReference::IsOn ( ) const
virtual

◆ IsUnloaded()

virtual bool CFxBIMDatabaseReference::IsUnloaded ( )
virtual

◆ Load()

virtual Error CFxBIMDatabaseReference::Load ( )
virtual

◆ Lock()

virtual Error CFxBIMDatabaseReference::Lock ( )
virtual

◆ Merge()

Error CFxBIMDatabaseReference::Merge ( const OdString dwgPath,
int  flags 
)

◆ ODDB_DECLARE_MEMBERS()

CFxBIMDatabaseReference::ODDB_DECLARE_MEMBERS ( CFxBIMDatabaseReference  )

◆ Off()

virtual Error CFxBIMDatabaseReference::Off ( )
virtual

◆ On()

virtual Error CFxBIMDatabaseReference::On ( )
virtual

◆ ReloadFrom()

virtual Error CFxBIMDatabaseReference::ReloadFrom ( CFxBIMDatabaseReferencePtr  pNew,
OdDbObjectId  idOwner,
const OdGeMatrix3d trf 
)
virtual

◆ Remove()

virtual Error CFxBIMDatabaseReference::Remove ( )
virtual

◆ RemoveReferredObjectsFromGsModel()

virtual Error CFxBIMDatabaseReference::RemoveReferredObjectsFromGsModel ( )
virtual

◆ SetFlags()

virtual void CFxBIMDatabaseReference::SetFlags ( int  flags)
virtual

◆ SetTransform()

virtual void CFxBIMDatabaseReference::SetTransform ( const OdGeMatrix3d transform)
virtual

◆ subClose()

void CFxBIMDatabaseReference::subClose ( )
overridevirtual

Called as the first operation as this object is being closed, for database -resident objects only.

Remarks
This function is notified just before the current open operation is to be closed, giving this function the ability to perform necessary operatons.

When overriding this function:

1) If the OdDbObject's state is incorrect, throw exception.

2) Call parent class's subClose().

3) If other actions are required before close, do them.

The default implementation of this function does nothing. This function can be overridden in custom classes.

Reimplemented from OdDbObject.

◆ subHandOverTo()

void CFxBIMDatabaseReference::subHandOverTo ( OdDbObject pNewObject)
overridevirtual

Called as the first operation of the handOverTo function.

Parameters
pNewObject[in] Pointer to the object with which to replace this object in the database.
Remarks
This function allows custom classes to populate the new object.
Overriding this function in a child class allows a child instance to be notified each time an object is handed over.

This function is notified just before an object is to be handed over; giving this function the ability to cancel the handover.

When overriding this function:

1) If the OdDbObject's state is incorrect, throw exception.

2) Call parent class's subHandover().

3) If other actions are required before handover, do them.

The default implementation of this function does nothing. This function can be overridden in custom classes.

Reimplemented from OdDbObject.

◆ Transform()

virtual const OdGeMatrix3d& CFxBIMDatabaseReference::Transform ( ) const
virtual

◆ Unload()

virtual Error CFxBIMDatabaseReference::Unload ( )
virtual

◆ Unlock()

virtual Error CFxBIMDatabaseReference::Unlock ( )
virtual

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