1 #pragma once 2 3 #include "accessor.h" 4 5 /* A block file accessor, providing flexpages corresponding to the regions of 6 loaded files. */ 7 8 class BlockFileAccessor : public Accessor 9 { 10 protected: 11 char *_data; 12 13 /* Data transfer helper methods. */ 14 15 virtual void fill_populated(Flexpage *flexpage); 16 17 virtual void flush_populated(Flexpage *flexpage); 18 19 public: 20 explicit BlockFileAccessor(const char *path, fileid_t fileid); 21 22 virtual void set_size(offset_t size); 23 }; 24 25 // vim: tabstop=4 expandtab shiftwidth=4