/* * Copyright 2013 (c) Anna Schumaker. */ #ifndef OCARINA_FILE_H #define OCARINA_FILE_H #include #include #define FILE_VERSION 0 enum OpenMode { OPEN_READ, OPEN_WRITE, NOT_OPEN, }; class File : public std::fstream { private: OpenMode mode; std::string filename; unsigned int version; const char *find_dir(); bool open_read(); bool open_write(); public: File(const std::string &); ~File(); const char *get_filepath(); const unsigned int get_version(); bool exists(); bool open(OpenMode); void close(); std::string getline(); }; #endif /* OCARINA_FILE_H */