FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcDbObject.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
20#include "..\acdb17\AcDb.h"
21#include "..\acad\Acad.h"
22
23template < typename Param1 > class AcArrayMemCopyReallocator;
24class AcDbAuditInfo;
25class AcDbDatabase;
26class AcDbDictionary;
27class AcDbDwgFiler;
28class AcDbDxfFiler;
29class AcDbEntity;
30class AcDbField;
31class AcDbHandle;
32class AcDbIdMapping;
33class AcDbObjectId;
36class AcGeMatrix3d;
37class AcGiDrawable;
40class AcGiWorldDraw;
41class AcGsNode;
42class AcRxClass;
43class AcRxObject;
44class AcDbObjectImpl;
45struct resbuf;
46
48{
49public:
51
52 bool hasFields(void)const ;
55 bool isUndoRecordingDisabled(void)const ;
56 AcDbVoidPtrArray const * reactors(void)const ;
57 AcDbDatabase * database(void)const ;
62 AcDbObjectId ownerId(void)const ;
63 Acad::ErrorStatus cancel(void);
64 Acad::ErrorStatus close(void);
65 Acad::ErrorStatus closeAndPage(int = 0);
66 Acad::ErrorStatus createExtensionDictionary(void);
67 Acad::ErrorStatus downgradeOpen(void);
69 Acad::ErrorStatus dwgIn( AcDbDwgFiler *);
70 Acad::ErrorStatus dwgOut( AcDbDwgFiler *)const ;
71 Acad::ErrorStatus dxfIn( AcDbDxfFiler *);
72 Acad::ErrorStatus dxfOut( AcDbDxfFiler *, Adesk::Boolean,unsigned char *)const ;
73 Acad::ErrorStatus erase(Adesk::Boolean = true);
74 Acad::ErrorStatus getBinaryData(wchar_t const *,long &,char * &)const ;
75 Acad::ErrorStatus getField(wchar_t const *, AcDbField * &, AcDb::OpenMode)const ;
76 Acad::ErrorStatus getField(wchar_t const *, AcDbObjectId &)const ;
77 Acad::ErrorStatus getFieldDictionary( AcDbDictionary * &, AcDb::OpenMode)const ;
79 Acad::ErrorStatus handOverTo( AcDbObject *, Adesk::Boolean = 1, Adesk::Boolean = 1);
80 Acad::ErrorStatus releaseExtensionDictionary(void);
81 Acad::ErrorStatus setBinaryData(wchar_t const *,long,char const *);
83 Acad::ErrorStatus upgradeFromNotify(Adesk::Boolean &);
84 Acad::ErrorStatus upgradeOpen(void);
85 Acad::ErrorStatus xDataTransformBy( AcGeMatrix3d const &);
102 virtual ~AcDbObject(void);
103 virtual AcDbObjectId id(void)const ;
104 virtual AcGiDrawable * drawable(void);
105 virtual AcGsNode * gsNode(void)const ;
106 virtual AcRxObject * clone(void)const ;
108 virtual Acad::ErrorStatus applyPartialUndo( AcDbDwgFiler *, AcRxClass *);
109 virtual Acad::ErrorStatus audit( AcDbAuditInfo *);
110 virtual Acad::ErrorStatus copyFrom( AcRxObject const *);
111 virtual Acad::ErrorStatus decomposeForSave( AcDb::AcDbDwgVersion, AcDbObject * &, AcDbObjectId &,int &);
112 virtual Acad::ErrorStatus deepClone( AcDbObject *, AcDbObject * &, AcDbIdMapping &, Adesk::Boolean = 1)const ;
113 virtual Acad::ErrorStatus dwgInFields( AcDbDwgFiler *);
114 virtual Acad::ErrorStatus dwgOutFields( AcDbDwgFiler *)const ;
115 virtual Acad::ErrorStatus dxfInFields( AcDbDxfFiler *);
116 virtual Acad::ErrorStatus dxfOutFields( AcDbDxfFiler *)const ;
117 virtual Acad::ErrorStatus getClassID( _GUID *)const ;
120 virtual Acad::ErrorStatus removeField( AcDbObjectId);
121 virtual Acad::ErrorStatus removeField(wchar_t const *);
122 virtual Acad::ErrorStatus removeField(wchar_t const *, AcDbObjectId &);
123 virtual Acad::ErrorStatus removePersistentReactor( AcDbObjectId);
124 virtual Acad::ErrorStatus setField(wchar_t const *, AcDbField *, AcDbObjectId &);
125 virtual Acad::ErrorStatus setOwnerId( AcDbObjectId);
126 virtual Acad::ErrorStatus setXData( resbuf const *);
127 virtual Acad::ErrorStatus subCancel(void);
128 virtual Acad::ErrorStatus subClose(void);
129 virtual Acad::ErrorStatus subErase(Adesk::Boolean);
130 virtual Acad::ErrorStatus subHandOverTo( AcDbObject *);
131 virtual Acad::ErrorStatus subOpen( AcDb::OpenMode);
132 virtual Acad::ErrorStatus subSwapIdWith( AcDbObjectId, Adesk::Boolean = 0, Adesk::Boolean = 0);
133 virtual Acad::ErrorStatus swapReferences( AcDbIdMapping const &);
134 virtual Acad::ErrorStatus wblockClone( AcRxObject *, AcDbObject * &, AcDbIdMapping &, Adesk::Boolean = 1)const ;
137 virtual Adesk::Boolean isPersistent(void)const ;
139 virtual resbuf * xData(wchar_t const * = NULL)const;
140 virtual unsigned long setAttributes( AcGiDrawableTraits *);
142 virtual void cancelled( AcDbObject const *);
143 virtual void copied( AcDbObject const *, AcDbObject const *);
144 virtual void erased( AcDbObject const *,Adesk::Boolean);
145 virtual void goodbye( AcDbObject const *);
146 virtual void modified( AcDbObject const *);
147 virtual void modifiedGraphics( AcDbEntity const *);
148 virtual void modifiedXData( AcDbObject const *);
149 virtual void modifyUndone( AcDbObject const *);
150 virtual void objectClosed( AcDbObjectId const );
151 virtual void openedForModify( AcDbObject const *);
152 virtual void reappended( AcDbObject const *);
153 virtual void recvPropagateModify( AcDbObject const *);
154 virtual void setGsNode( AcGsNode *);
155 virtual void subObjModified( AcDbObject const *, AcDbObject const *);
156 virtual void unappended( AcDbObject const *);
158 virtual void xmitPropagateModify(void)const ;
160 void assertNotifyEnabled(void)const ;
161 void assertReadEnabled(void)const ;
164 void getAcDbHandle( AcDbHandle &)const ;
168
170 virtual Acad::ErrorStatus subDeepClone(AcDbObject *, AcDbObject * &, AcDbIdMapping &, Adesk::Boolean = 1)const;
171 virtual Acad::ErrorStatus subWblockClone(AcRxObject *, AcDbObject * &, AcDbIdMapping &, Adesk::Boolean = 1)const;
172 virtual Acad::ErrorStatus subGetClassID(_GUID *)const;
173
174protected:
177
178friend class AcDbObjectImpl;
179protected:
180 AcDbObjectImpl* m_pImpl;
181};
virtual Acad::ErrorStatus getObjectSaveVersion(AcDbDwgFiler const *, AcDb::AcDbDwgVersion &, AcDb::MaintenanceReleaseVersion &)
Acad::ErrorStatus closeAndPage(int=0)
Acad::ErrorStatus cancel(void)
virtual AcGiDrawable * drawable(void)
virtual Acad::ErrorStatus wblockClone(AcRxObject *, AcDbObject *&, AcDbIdMapping &, Adesk::Boolean=1) const
bool isUndoRecordingDisabled(void) const
Adesk::Boolean isModifiedGraphics(void) const
Acad::ErrorStatus downgradeOpen(void)
virtual Acad::ErrorStatus subSwapIdWith(AcDbObjectId, Adesk::Boolean=0, Adesk::Boolean=0)
AcDbObjectId ownerId(void) const
virtual Acad::ErrorStatus removeField(wchar_t const *)
Acad::ErrorStatus dwgIn(AcDbDwgFiler *)
virtual Adesk::Boolean worldDraw(AcGiWorldDraw *)
virtual Acad::ErrorStatus subDeepClone(AcDbObject *, AcDbObject *&, AcDbIdMapping &, Adesk::Boolean=1) const
virtual Acad::ErrorStatus subOpen(AcDb::OpenMode)
Acad::ErrorStatus close(void)
virtual void subObjModified(AcDbObject const *, AcDbObject const *)
Acad::ErrorStatus erase(Adesk::Boolean=true)
AcDbObjectImpl * m_pImpl
Definition AcDbObject.h:180
Acad::ErrorStatus getField(wchar_t const *, AcDbField *&, AcDb::OpenMode) const
Adesk::Boolean isUndoing(void) const
virtual void reappended(AcDbObject const *)
virtual void modified(AcDbObject const *)
virtual Acad::ErrorStatus subClose(void)
virtual Acad::ErrorStatus swapReferences(AcDbIdMapping const &)
virtual Acad::ErrorStatus applyPartialUndo(AcDbDwgFiler *, AcRxClass *)
virtual Adesk::UInt32 subSetAttributes(AcGiDrawableTraits *pTraits)
virtual Acad::ErrorStatus dxfInFields(AcDbDxfFiler *)
virtual Acad::ErrorStatus deepClone(AcDbObject *, AcDbObject *&, AcDbIdMapping &, Adesk::Boolean=1) const
void setHasSaveVersionOverride(bool)
virtual Acad::ErrorStatus getClassID(_GUID *) const
bool hasPersistentReactor(AcDbObjectId) const
virtual void modifiedXData(AcDbObject const *)
AcDbDwgFiler * undoFiler(void)
virtual Acad::ErrorStatus copyFrom(AcRxObject const *)
virtual void modifiedGraphics(AcDbEntity const *)
virtual Acad::ErrorStatus subGetClassID(_GUID *) const
Adesk::Boolean isNotifying(void) const
Acad::ErrorStatus swapIdWith(AcDbObjectId, Adesk::Boolean=0, Adesk::Boolean=0)
virtual void objectClosed(AcDbObjectId const)
virtual Acad::ErrorStatus subCancel(void)
Adesk::Boolean isReallyClosing(void) const
Acad::ErrorStatus getObjectBirthVersion(AcDb::AcDbDwgVersion &, AcDb::MaintenanceReleaseVersion &)
Acad::ErrorStatus handOverTo(AcDbObject *, Adesk::Boolean=1, Adesk::Boolean=1)
virtual resbuf * xData(wchar_t const *=NULL) const
AcDbObjectId getFieldDictionary(void) const
virtual void openedForModify(AcDbObject const *)
virtual Acad::ErrorStatus setOwnerId(AcDbObjectId)
AcDbObject(void)
void addReactor(AcDbObjectReactor *) const
virtual Acad::ErrorStatus removeField(AcDbObjectId)
virtual void copied(AcDbObject const *, AcDbObject const *)
Acad::ErrorStatus downgradeToNotify(Adesk::Boolean)
virtual void viewportDraw(AcGiViewportDraw *)
Adesk::Boolean isEraseStatusToggled(void) const
virtual Acad::ErrorStatus decomposeForSave(AcDb::AcDbDwgVersion, AcDbObject *&, AcDbObjectId &, int &)
AcDbDatabase * database(void) const
Acad::ErrorStatus setBinaryData(wchar_t const *, long, char const *)
virtual void recvPropagateModify(AcDbObject const *)
void removeReactor(AcDbObjectReactor *) const
virtual void addPersistentReactor(AcDbObjectId)
Adesk::Boolean isReadEnabled(void) const
virtual Adesk::Boolean isPersistent(void) const
virtual Acad::ErrorStatus setXData(resbuf const *)
Acad::ErrorStatus getBinaryData(wchar_t const *, long &, char *&) const
Adesk::Boolean isModifiedXData(void) const
virtual AcDb::DuplicateRecordCloning mergeStyle(void) const
void assertNotifyEnabled(void) const
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler *) const
virtual Acad::ErrorStatus removePersistentReactor(AcDbObjectId)
virtual Acad::ErrorStatus audit(AcDbAuditInfo *)
virtual Acad::ErrorStatus dwgInFields(AcDbDwgFiler *)
Acad::ErrorStatus upgradeFromNotify(Adesk::Boolean &)
ACRX_DECLARE_MEMBERS(AcDbObject)
virtual Acad::ErrorStatus setField(wchar_t const *, AcDbField *, AcDbObjectId &)
virtual void subViewportDraw(AcGiViewportDraw *)
virtual Adesk::Boolean subWorldDraw(AcGiWorldDraw *)
Adesk::Boolean isAProxy(void) const
virtual void xmitPropagateModify(void) const
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler *) const
Adesk::Boolean isNotifyEnabled(void) const
virtual void unappended(AcDbObject const *)
AcDbVoidPtrArray const * reactors(void) const
bool hasFields(void) const
virtual void modifyUndone(AcDbObject const *)
AcDbObject(AcDbSystemInternals *)
Acad::ErrorStatus upgradeOpen(void)
void disableUndoRecording(Adesk::Boolean)
void assertReadEnabled(void) const
virtual AcRxObject * clone(void) const
virtual AcGsNode * gsNode(void) const
Acad::ErrorStatus releaseExtensionDictionary(void)
Acad::ErrorStatus dxfIn(AcDbDxfFiler *)
Adesk::Boolean isNewObject(void) const
virtual void setGsNode(AcGsNode *)
virtual Acad::ErrorStatus subHandOverTo(AcDbObject *)
virtual Acad::ErrorStatus subWblockClone(AcRxObject *, AcDbObject *&, AcDbIdMapping &, Adesk::Boolean=1) const
virtual Acad::ErrorStatus getObjectSaveVersion(AcDbDxfFiler const *, AcDb::AcDbDwgVersion &, AcDb::MaintenanceReleaseVersion &)
virtual Acad::ErrorStatus subErase(Adesk::Boolean)
Adesk::Boolean isModified(void) const
Adesk::Boolean isErased(void) const
virtual AcDbObjectId id(void) const
Acad::ErrorStatus dwgOut(AcDbDwgFiler *) const
AcDbObjectId extensionDictionary(void) const
void setAcDbObjectIdsInFlux(void)
Acad::ErrorStatus createExtensionDictionary(void)
Acad::ErrorStatus dxfOut(AcDbDxfFiler *, Adesk::Boolean, unsigned char *) const
Adesk::Boolean isAcDbObjectIdsInFlux(void) const
virtual void cancelled(AcDbObject const *)
bool hasSaveVersionOverride(void)
virtual void goodbye(AcDbObject const *)
virtual ~AcDbObject(void)
virtual unsigned long setAttributes(AcGiDrawableTraits *)
virtual void erased(AcDbObject const *, Adesk::Boolean)
Adesk::Boolean isCancelling(void) const
Acad::ErrorStatus xDataTransformBy(AcGeMatrix3d const &)
void assertWriteEnabled(Adesk::Boolean=1, Adesk::Boolean=1)
Acad::ErrorStatus getField(wchar_t const *, AcDbObjectId &) const
Acad::ErrorStatus getFieldDictionary(AcDbDictionary *&, AcDb::OpenMode) const
Adesk::Boolean isTransactionResident(void) const
AcDbObjectId objectId(void) const
virtual Acad::ErrorStatus removeField(wchar_t const *, AcDbObjectId &)
void getAcDbHandle(AcDbHandle &) const
Adesk::Boolean isWriteEnabled(void) const
Frx::Boolean Boolean
Definition AddStruct.h:46