CFx SDK Documentation  2023 SP0
DbUndoController.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 #ifndef _ODDBUNDOCONTROLLER_INCLUDED_
26 #define _ODDBUNDOCONTROLLER_INCLUDED_
27 
28 #include "RxObject.h"
29 #include "RxIterator.h"
30 #include "DbRootExport.h"
31 
32 class OdStreamBuf;
33 
38 {
39 protected:
41 public:
43 
44  virtual OdUInt32 options() const = 0;
45 };
46 
48 
49 
57 {
58 public:
59  enum
60  {
61  kDefault = 0,
62  kBlockBegin = 1,
63  kBlockEnd = 2,
64  kMarker = 3
65  };
66 
75  virtual void pushData(OdStreamBuf* pStream, OdUInt32 nSize, OdUInt32 opt = kDefault) = 0;
76 
81  virtual bool hasData() const = 0;
82 
91  virtual OdUInt32 popData(OdStreamBuf* pStream) = 0;
92 
94 
95  virtual void clearData() = 0;
96 };
97 
102 
103 
104 #endif // _ODDBUNDOCONTROLLER_INCLUDED_
105 
106 
107 
@ kDefault
Definition: BrEnums.h:102
#define DBROOT_EXPORT
Definition: DbRootExport.h:39
OdSmartPtr< OdDbUndoController > OdDbUndoControllerPtr
OdSmartPtr< OdDbUndoControllerRecord > OdDbUndoControllerRecordPtr
unsigned int OdUInt32
#define ODRX_ABSTRACT
virtual void pushData(OdStreamBuf *pStream, OdUInt32 nSize, OdUInt32 opt=kDefault)=0
virtual bool hasData() const =0
virtual void clearData()=0
virtual OdRxIteratorPtr newRecordStackIterator() const =0
ODRX_DECLARE_MEMBERS(OdDbUndoController)
virtual OdUInt32 popData(OdStreamBuf *pStream)=0
ODRX_DECLARE_MEMBERS(OdDbUndoControllerRecord)
virtual OdUInt32 options() const =0