27 #ifndef _ODDBXOBJECT_INCLUDED_
28 #define _ODDBXOBJECT_INCLUDED_
80 #define ODDB_DECLARE_MEMBERS(ClassName)\
82 ClassName(OdDbObjectImpl* pImpl); \
84 ODRX_DECLARE_MEMBERS (ClassName)
94 #define DBOBJECT_CONSTR(ClassName) OdSmartPtr<ClassName> (new ClassName, kOdRxObjAttach)
254 {
return getDbHandle (); }
427 bool eraseIt =
true);
485 bool keepXData =
true,
bool
534 bool swapXdata =
false,
535 bool swapExtDict =
false);
562 bool swapXdata =
false,
563 bool swapExtDict =
false);
914 bool autoUndo =
true,
915 bool recordModified =
true);
1170 virtual
void appendToOwner(
1181 void setOdDbObjectIdsInFlux();
1187 bool isOdDbObjectIdsInFlux() const;
1199 virtual
void copied(
1214 virtual
void erased(
1216 bool erasing =
true);
1229 virtual
void goodbye(
1241 virtual
void openedForModify(
1255 virtual
void modified(
1275 virtual
void subObjModified(
1292 virtual
void modifyUndone(
1309 virtual
void modifiedXData(
1325 virtual
void unappended(
1340 virtual
void reappended(
1346 bool isAProxy() const;
1357 virtual
void objectClosed(
1386 virtual
void modifiedGraphics(
1404 virtual
void copyFrom(
1411 bool hasSaveVersionOverride() const;
1422 void setHasSaveVersionOverride(
1423 bool hasSaveVersionOverride);
1466 bool& exchangeXData);
1495 bool& exchangeXData);
1552 virtual
bool subWorldDraw(
1555 virtual
void subViewportDraw(
1566 virtual
bool isPersistent() const;
1570 virtual OdDbStub*
id() const;
1631 void xDataTransformBy(
1637 bool hasFields() const;
1718 friend class OdDbSystemInternals;
1721 friend class OdDbObjectImpl;
1722 OdDbObjectImpl* m_pImpl;
1759 return oddbEntGet(
id.safeOpenObject(), regapps);
TOOLKIT_EXPORT OdResult oddbEntMake(OdDbDatabase *pDb, OdResBuf *pRb, OdDbObjectPtr &pObj)
OdSmartPtr< OdDbXrecord > OdDbXrecordPtr
TOOLKIT_EXPORT OdResult oddbEntMod(OdDbObject *pObj, OdResBuf *pRb)
TOOLKIT_EXPORT OdDbObjectId oddbEntLast(OdDbDatabase *db)
TOOLKIT_EXPORT OdResBufPtr oddbEntGet(const OdDbObject *pObj, const OdString ®apps=OdString::kEmpty)
TOOLKIT_EXPORT OdResult oddbEntMakeX(OdDbDatabase *pDb, OdResBuf *pRb, OdDbObjectPtr &pObj)
TOOLKIT_EXPORT OdDbObjectId oddbEntNext(OdDbObjectId id, OdDbDatabase *db)
void swapIdWith(OdDbObjectId otherId, bool swapXdata=false, bool swapExtDict=false)
virtual void subSwapIdWith(const OdDbObjectId &otherId, bool swapXdata=false, bool swapExtDict=false)
bool isReallyClosing() const
void disableUndoRecording(bool disable)
virtual void applyPartialUndo(OdDbDwgFiler *pUndoFiler, OdRxClass *pClassObj)
OdDbObjectIdArray getPersistentReactors() const
OdDbObjectId objectId() const
OdDbHandle handle() const
virtual void xmitPropagateModify() const
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler)
bool isNotifyEnabled() const
void dwgIn(OdDbDwgFiler *pFiler)
bool isModifiedXData() const
ODRX_SEALED_VIRTUAL OdDbObjectPtr deepClone(OdDbIdMapping &ownerIdMap, OdDbObject *pOwner, bool bPrimary=true) const ODRX_SEALED
OdDbHandle getDbHandle() const
virtual OdResult subOpen(OdDb::OpenMode mode)
OdDbDwgFiler * undoFiler()
bool isUndoRecordingDisabled() const
bool isEraseStatusToggled() const
virtual void addPersistentReactor(const OdDbObjectId &objId)
OdDbObjectId extensionDictionary() const
void assertWriteEnabled(bool autoUndo=true, bool recordModified=true)
void handOverTo(OdDbObject *pNewObject, bool keepXData=true, bool keepExtDict=true)
bool isReadEnabled() const
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler)
virtual OdDb::DuplicateRecordCloning mergeStyle() const
void addReactor(OdDbObjectReactor *pReactor) const
virtual OdResBufPtr xData(const OdString ®appName=OdString::kEmpty) const
OdResult erase(bool eraseIt=true)
ODDB_DECLARE_MEMBERS(OdDbObject)
void removeReactor(OdDbObjectReactor *pReactor) const
void dwgOut(OdDbDwgFiler *pFiler) const
virtual void removePersistentReactor(const OdDbObjectId &objId)
virtual OdResult dxfInFields_R12(OdDbDxfFiler *pFiler)
bool hasPersistentReactor(const OdDbObjectId &objId) const
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const
bool releaseExtensionDictionary()
OdDbXrecordPtr createXrecord(const OdString &xrecordName, OdDb::DuplicateRecordCloning style=OdDb::kDrcIgnore)
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const
virtual void subHandOverTo(OdDbObject *pNewObject)
virtual void recvPropagateModify(const OdDbObject *pSubObj)
virtual OdResult dxfIn(OdDbDxfFiler *pFiler)
virtual void setXData(const OdResBuf *pRb)
OdDbObjectReactorArray getTransientReactors() const
virtual OdResult subErase(bool erasing)
virtual void dxfOutFields_R12(OdDbDxfFiler *pFiler) const
virtual void audit(OdDbAuditInfo *pAuditInfo)
OdDbDatabase * database() const
virtual void dxfOut(OdDbDxfFiler *pFiler) const
bool isWriteEnabled() const
virtual void setOwnerId(OdDbObjectId ownerId)
bool isModifiedGraphics() const
void assertReadEnabled() const
OdDbObjectId ownerId() const
void assertNotifyEnabled() const
void createExtensionDictionary()
OdError_XdataSizeExceeded(const OdDbObjectId &objectId)
FIRSTDLL_EXPORT_STATIC static const OdString kEmpty
GLint GLint GLint GLsizei GLsizei GLenum format