CFx SDK Documentation  2020SP3
DbPageController.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 #ifndef _ODDBPAGECONTROLLER_INCLUDED_
27 #define _ODDBPAGECONTROLLER_INCLUDED_
28 
29 #include "RxObject.h"
30 #include "DbExport.h"
31 
32 class OdDbDatabase;
33 class OdDbObjectId;
34 class OdStreamBuf;
36 
41 namespace OdDb
42 {
53  {
61  kUnload = 0x01,
68  kPage = 0x02
69  };
70 }
71 
82 {
83 public:
84  typedef OdInt64 Key;
85 
101  virtual int pagingType() const = 0;
102 
111  virtual OdStreamBufPtr read(Key key) = 0;
112 
128  virtual bool write(Key& key, OdStreamBuf* pStreamBuf) = 0;
129 
137  virtual void setDatabase(OdDbDatabase* pDb) = 0;
138 
142  virtual OdDbDatabase* database() = 0;
143 
163  virtual OdResult subPage(const OdDbObjectId& objectId);
164 };
165 
170 
181 
182 #endif // _ODDBPAGECONTROLLER_INCLUDED_
183 
184 
185 
OdResult
OdResult
Definition: OdResult.h:29
DbExport.h
OdDbDatabase
Definition: DbDatabase.h:421
OdDbPageControllerPtr
OdSmartPtr< OdDbPageController > OdDbPageControllerPtr
Definition: DbPageController.h:169
OdInt64
Definition: Int64.h:43
OdDbPageController::read
virtual OdStreamBufPtr read(Key key)=0
OdDbPageController::subPage
virtual OdResult subPage(const OdDbObjectId &objectId)
OdRxObject
Definition: RxObject.h:564
OdDbObjectId
Definition: DbObjectId.h:99
odDbPageObjects
TOOLKIT_EXPORT void odDbPageObjects(OdDbDatabase *pDb)
OdDb::PagingType
PagingType
Definition: DbPageController.h:53
OdDb::kPage
@ kPage
Definition: DbPageController.h:68
RxObject.h
OdDbPageController::Key
OdInt64 Key
Definition: DbPageController.h:84
OdDbPageController::pagingType
virtual int pagingType() const =0
OdSmartPtr< OdStreamBuf >
OdDbPageController::setDatabase
virtual void setDatabase(OdDbDatabase *pDb)=0
OdStreamBufPtr
OdSmartPtr< OdStreamBuf > OdStreamBufPtr
Definition: DbPageController.h:34
OdDbPageController::write
virtual bool write(Key &key, OdStreamBuf *pStreamBuf)=0
OdDb::kUnload
@ kUnload
Definition: DbPageController.h:61
OdStreamBuf
Definition: OdStreamBuf.h:67
OdDbPageController
Definition: DbPageController.h:82
OdDb
Definition: Db2dPolyline.h:50
TOOLKIT_EXPORT
#define TOOLKIT_EXPORT
Definition: DbExport.h:40
OdDbPageController::database
virtual OdDbDatabase * database()=0