Dynalib Utils
IBufferCachePage.h
Go to the documentation of this file.
1 
12 #ifndef IBUFFERCACHEPAGE_H
13 #define IBUFFERCACHEPAGE_H
14 
15 #include "DynaBuffer.h"
16 #include "ICacheConst.h"
17 #include "ICachePage.h"
18 
19 template <typename T> class IBufferCachePage : public ICachePage<T> {
20 protected:
21  bool _isDirty = false;
22 
23 public:
24  IBufferCachePage() = default;
25  virtual ~IBufferCachePage() = default;
26  virtual bool isFull() = 0;
27  virtual index_t getFileOffset() = 0;
28  virtual DynaBuffer* getBuffer() = 0;
29  virtual index_t getPageIndex() = 0;
30  virtual void setFileOffset(index_t fileOffset) = 0;
31  virtual void setBuffer(DynaBuffer* buffer) = 0;
32 };
33 
34 #endif //IBUFFERCACHEPAGE_H
virtual void setFileOffset(index_t fileOffset)=0
IBufferCachePage()=default
virtual bool isFull()=0
Definition: ICachePage.h:18
int64_t index_t
Definition: ICacheConst.h:19
virtual index_t getPageIndex()=0
virtual void setBuffer(DynaBuffer *buffer)=0
bool _isDirty
Definition: IBufferCachePage.h:21
virtual ~IBufferCachePage()=default
virtual index_t getFileOffset()=0
Definition: IBufferCachePage.h:19
virtual DynaBuffer * getBuffer()=0
Definition: DynaBuffer.h:20