#ifndef FILEMAN_H #define FILEMAN_H #include #include #include #define BLOCKSIZE 8 class FileMan { private: std::ifstream putfile; std::ofstream getfile; std::string getname, putname; const unsigned int max_read_len = 8; int putchunks; int putsize; int putchunksRemaining; int getchunks; int getchunksRemaining; public: FileMan(); ~FileMan(); bool isGetting(); bool isPutting(); bool openPut(const std::string &name); bool openGet(const std::string &name); void closePut(); void closeGet(); std::string getPutName(); std::string getGetName(); void cancelPut(); // closes and deletes getfile void cancelGet(); void writeGet(std::vector data); void writeBase64(std::string data); int getGetChunks(); int getGetRemainingChunks(); void setGetChunks(int chunks); std::vector readPut(); std::string readBase64(); int getPutChunks(); int getPutChunksRemaining(); int getPutSize(); }; #endif