#pragma once #include #include #include #include namespace dchat { // Throws runtime exception on failure boost::filesystem::path getHomeDir(); // Creates directory if it doesn't exist (recursively). Throws boost exception on failure boost::filesystem::path getDchatDir(); // Creates directory if it doesn't exist (recursively). Throws boost exception on failure boost::filesystem::path getImagesDir(); using LoadBindsCallbackFunc = std::function; // @callbackFunc can't be nullptr void loadBindsFromFile(LoadBindsCallbackFunc callbackFunc); void replaceBindsInFile(const std::unordered_map &binds); }