X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FUtils%2FFolders.h;h=495f149bb080c5a2c8bcdd0cd15c703254f51a49;hb=63b9ec8b134f9b42e899bec74bc0e6335d3afb47;hp=d511ac221c5d7d3261b33940a41f0ae7c1154809;hpb=71a5b4590a18bf663b97b8a52078754899dcf345;p=lugaru.git diff --git a/Source/Utils/Folders.h b/Source/Utils/Folders.h index d511ac2..495f149 100644 --- a/Source/Utils/Folders.h +++ b/Source/Utils/Folders.h @@ -27,6 +27,18 @@ along with Lugaru. If not, see . #define DATA_DIR "Data" #endif +struct FileNotFoundException: public std::exception +{ + std::string errorText; + FileNotFoundException (const std::string& filename) { + errorText = filename + " could not be found"; + } + + const char * what () const throw () { + return errorText.c_str(); + } +}; + class Folders { static const std::string dataDir; @@ -44,6 +56,8 @@ public: /* Returns full path for config file */ static std::string getConfigFilePath(); + static FILE* openMandatoryFile(std::string filename, const char* mode); + private: static const char* getHomeDirectory(); static std::string getGenericDirectory(const char* ENVVAR, const std::string fallback);