1 #pragma once 2 3 #include <stdio.h> 4 5 #include "accessor.h" 6 7 /* A host filesystem file accessor, providing flexpages corresponding to file 8 regions. */ 9 10 class HostFileAccessor : public Accessor 11 { 12 protected: 13 const char *_path; 14 FILE *_fp; 15 16 public: 17 explicit HostFileAccessor(const char *path, fileid_t fileid); 18 19 virtual void close(); 20 21 virtual void open(); 22 23 /* Data transfer methods. */ 24 25 virtual void fill(Flexpage *flexpage); 26 27 virtual void flush(Flexpage *flexpage); 28 }; 29 30 // vim: tabstop=4 expandtab shiftwidth=4