/* */ #ifndef _D_ABSTRACT_DISK_WRITER_H_ #define _D_ABSTRACT_DISK_WRITER_H_ #include "DiskWriter.h" class AbstractDiskWriter:public DiskWriter { protected: int fd; void createFile(string filename, int addFlags = 0); void writeDataInternal(const char* data, int len); int readDataInternal(char* data, int len); public: AbstractDiskWriter(); virtual ~AbstractDiskWriter(); void closeFile(); void openExistingFile(string filename); string sha1Sum(long long int offset, long long int length); void seek(long long int offset); void writeData(const char* data, int len, long long int offset); int readData(char* data, int len, long long int offset); }; #endif // _D_ABSTRACT_DISK_WRITER_H_