00001 #ifndef HEADER_PATH_H
00002 #define HEADER_PATH_H
00003
00004 #include <string>
00005
00006
00007
00008
00009 class Path {
00010 private:
00011 std::string m_path;
00012 private:
00013 static Path dataPath(const std::string &file, bool writeable);
00014 explicit Path(const std::string &file);
00015 public:
00016 static Path dataReadPath(const std::string &file);
00017 static Path dataWritePath(const std::string &file);
00018
00019 static Path dataSystemPath(const std::string &file);
00020 static Path dataUserPath(const std::string &file);
00021
00022 std::string getPosixName() const { return m_path; }
00023 std::string getNative() const;
00024 bool exists() const;
00025 };
00026
00027 #endif
00028