#ifndef ZOOST_UTILS_H #define ZOOST_UTILS_H #include struct zoostDateTime { int year{}; int mon{}; int day{}; int hour{}; int min{}; int sec{}; int msec{}; }; class zoostPath { public: zoostPath(); public: bool CreateConfigDir(const std::string& appName); bool GetConfigDir(const std::string& appName, std::string& dir); bool GetBinaryPath(std::string& path); bool GetBinaryDir(std::string& dir); bool GetHome(std::string& path); bool GetConfigFile(const std::string& appName, const std::string& fileName, std::string& path); void SetConfigDirName(const std::string& name); void SetConfigDir(const std::string& path); std::string GetParentPath(const std::string& path); std::string GetErrorMsg() const; private: std::string configDir_{}; std::string configDirName_{".config"}; std::string errMsg_; }; class zoostUtils { public: static zoostDateTime CurrentTime(); static void SetConfigDir(const std::string& path); public: static std::string gConfigDir; }; #endif // ZOOST_UTILS_H