CFx SDK Documentation  2023 SP0
RxEvent.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 
25 
26 
27 #ifndef _ODRX_EVENT_H__
28 #define _ODRX_EVENT_H__
29 
30 #include "TD_PackPush.h"
31 
32 #include "RxObject.h"
33 #include "DbExport.h" //FELIX_CHANGE
34 
35 #define ODRX_EVENT_OBJ OD_T("OdRxEvent")
36 
37 class OdDbDatabase;
38 class OdGeMatrix3d;
39 class OdDbIdMapping;
40 class OdGePoint3d;
41 class OdDbObjectId;
42 
56 {
57 public:
59 
73  virtual void dwgFileOpened(
74  OdDbDatabase* pDb,
75  const OdString& filename);
76 
90  OdDbDatabase* pDb);
91 
104  virtual void databaseConstructed(
105  OdDbDatabase* pDb);
106 
115  virtual void databaseToBeDestroyed(
116  OdDbDatabase* pDb);
117 
132  virtual void beginSave(
133  OdDbDatabase* pDb,
134  const OdString& intendedName);
135 
150  virtual void saveComplete(
151  OdDbDatabase* pDb,
152  const OdString& actualName);
153 
166  virtual void abortSave(
167  OdDbDatabase* pDb);
168 
169  // DXF In/Out Events.
170 
183  virtual void beginDxfIn(
184  OdDbDatabase* pDb);
185 
198  virtual void abortDxfIn(
199  OdDbDatabase* pDb);
200 
213  virtual void dxfInComplete(
214  OdDbDatabase* pDb);
215 
216 
229  virtual void beginDxfOut(
230  OdDbDatabase* pDb);
231 
232 
245  virtual void abortDxfOut(
246  OdDbDatabase* pDb);
247 
248 
261  virtual void dxfOutComplete(
262  OdDbDatabase* pDb);
263 
264  // Insert Events.
265 
284  virtual void beginInsert(
285  OdDbDatabase* pToDb,
286  const OdString& blockName,
287  OdDbDatabase* pFromDb);
288 
307  virtual void beginInsert(
308  OdDbDatabase* pToDb,
309  const OdGeMatrix3d& xfm,
310  OdDbDatabase* pFromDb);
311 
333  virtual void otherInsert(
334  OdDbDatabase* pToDb,
335  OdDbIdMapping& idMap,
336  OdDbDatabase* pFromDb);
337 
351  virtual void abortInsert(
352  OdDbDatabase* pToDb);
353 
367  virtual void endInsert(
368  OdDbDatabase* pToDb);
369 
370  // Wblock Events.
371 
377  virtual void wblockNotice(
378  OdDbDatabase* pFromDb);
379 
400  virtual void beginWblock(
401  OdDbDatabase* pToDb,
402  OdDbDatabase* pFromDb,
403  const OdGePoint3d& insertionPoint);
404 
425  virtual void beginWblock(
426  OdDbDatabase* pToDb,
427  OdDbDatabase* pFromDb,
428  OdDbObjectId blockId);
429 
448  virtual void beginWblock(
449  OdDbDatabase* pToDb,
450  OdDbDatabase* pFromDb);
451 
452 
473  virtual void otherWblock(
474  OdDbDatabase* pToDb,
475  OdDbIdMapping& idMap,
476  OdDbDatabase* pFromDb);
477 
493  virtual void abortWblock(
494  OdDbDatabase* pToDb);
495 
511  virtual void endWblock(
512  OdDbDatabase* pToDb);
513 
533  virtual void beginWblockObjects(
534  OdDbDatabase* pFromDb,
535  OdDbIdMapping& idMap);
536 
537  // Deep Clone Events.
538 
553  virtual void beginDeepClone(
554  OdDbDatabase* pToDb,
555  OdDbIdMapping& idMap);
556 
577  virtual void beginDeepCloneXlation(
578  OdDbIdMapping& idMap);
579 
597  virtual void abortDeepClone(
598  OdDbIdMapping& idMap);
599 
613  virtual void endDeepClone(
614  OdDbIdMapping& idMap);
615 
616  // Partial Open Events.
617 
630  virtual void partialOpenNotice(
631  OdDbDatabase* pDb);
632 
633 };
634 
639 
648 {
649 public:
651 
656  virtual void addReactor(
657  OdRxEventReactor* pReactor) = 0;
658 
663  virtual void removeReactor(
664  OdRxEventReactor* pReactor) = 0;
665 };
666 
671 
672 
674 
675 #include "TD_PackPop.h"
676 
677 #endif //_ODRX_EVENT_H__
678 
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
OdSmartPtr< OdRxEvent > OdRxEventPtr
Definition: RxEvent.h:670
TOOLKIT_EXPORT OdRxEventPtr odrxEvent()
OdSmartPtr< OdRxEventReactor > OdRxEventReactorPtr
Definition: RxEvent.h:638
virtual void addReactor(OdRxEventReactor *pReactor)=0
ODRX_DECLARE_MEMBERS(OdRxEvent)
virtual void removeReactor(OdRxEventReactor *pReactor)=0
virtual void databaseConstructed(OdDbDatabase *pDb)
virtual void beginSave(OdDbDatabase *pDb, const OdString &intendedName)
virtual void otherWblock(OdDbDatabase *pToDb, OdDbIdMapping &idMap, OdDbDatabase *pFromDb)
virtual void endInsert(OdDbDatabase *pToDb)
virtual void beginDxfOut(OdDbDatabase *pDb)
virtual void abortWblock(OdDbDatabase *pToDb)
virtual void databaseToBeDestroyed(OdDbDatabase *pDb)
virtual void abortDxfOut(OdDbDatabase *pDb)
virtual void wblockNotice(OdDbDatabase *pFromDb)
virtual void beginInsert(OdDbDatabase *pToDb, const OdString &blockName, OdDbDatabase *pFromDb)
virtual void abortDxfIn(OdDbDatabase *pDb)
virtual void dxfInComplete(OdDbDatabase *pDb)
virtual void endDeepClone(OdDbIdMapping &idMap)
virtual void dxfOutComplete(OdDbDatabase *pDb)
virtual void beginInsert(OdDbDatabase *pToDb, const OdGeMatrix3d &xfm, OdDbDatabase *pFromDb)
virtual void abortDeepClone(OdDbIdMapping &idMap)
virtual void otherInsert(OdDbDatabase *pToDb, OdDbIdMapping &idMap, OdDbDatabase *pFromDb)
ODRX_DECLARE_MEMBERS(OdRxEventReactor)
virtual void beginWblock(OdDbDatabase *pToDb, OdDbDatabase *pFromDb)
virtual void beginDeepClone(OdDbDatabase *pToDb, OdDbIdMapping &idMap)
virtual void dwgFileOpened(OdDbDatabase *pDb, const OdString &filename)
virtual void initialDwgFileOpenComplete(OdDbDatabase *pDb)
virtual void beginWblock(OdDbDatabase *pToDb, OdDbDatabase *pFromDb, const OdGePoint3d &insertionPoint)
virtual void partialOpenNotice(OdDbDatabase *pDb)
virtual void abortSave(OdDbDatabase *pDb)
virtual void beginWblockObjects(OdDbDatabase *pFromDb, OdDbIdMapping &idMap)
virtual void beginWblock(OdDbDatabase *pToDb, OdDbDatabase *pFromDb, OdDbObjectId blockId)
virtual void saveComplete(OdDbDatabase *pDb, const OdString &actualName)
virtual void endWblock(OdDbDatabase *pToDb)
virtual void beginDeepCloneXlation(OdDbIdMapping &idMap)
virtual void abortInsert(OdDbDatabase *pToDb)
virtual void beginDxfIn(OdDbDatabase *pDb)