#ifndef MYX_FILESYSTEM_PATHS_HPP_ #define MYX_FILESYSTEM_PATHS_HPP_ #include #include #include namespace myx { namespace filesystem { class Paths { QDir m_prefixDirectory; QDir m_binaryDirectory; QDir m_configDirectory; QDir m_cacheDirectory; QDir m_tempDirectory; QDir m_dataDirectory; QDir m_homeDirectory; QString m_executableFileName; QString m_configFileName; QFileInfo m_executableFilePath; QFileInfo m_configFilePath; public: Paths(); QDir prefixDirectory() const; void setPrefixDirectory( const QString& prefixDirectory ); QDir binaryDirectory() const; void setBinaryDirectory( const QString& binaryDirectory ); QDir configDirectory() const; void setConfigDirectory( const QString& configDirectory ); QDir cacheDirectory() const; void setCacheDirectory( const QString& cacheDirectory ); QDir tempDirectory() const; void setTempDirectory( const QString& tempDirectory ); QDir dataDirectory() const; void setDataDirectory( const QString& dataDirectory ); QString executableFileName() const; void setExecutableFileName( const QString& executableFileName ); QString configFileName() const; void setConfigFileName( const QString& configFileName ); QFileInfo executableFilePath() const; void setExecutableFilePath( const QFileInfo& executableFilePath ); QFileInfo configFilePath() const; void setConfigFilePath( const QFileInfo& configFilePath ); bool updatePaths(); bool makeDefaultDirectories(); QString findConfigFile( const QString& defaultConfigFile = "" ); }; // class Paths } // namespace filesystem } // namespace myx #endif // MYX_FILESYSTEM_PATHS_HPP_