GME  13
Path.h
Go to the documentation of this file.
00001 
00023 #pragma once
00024 
00025 #include <string>
00026 #include <apr_pools.h>
00027 struct svn_error_t;
00028 
00032 class Path  
00033 {
00034 private:
00035         // the path to be stored
00036         std::string m_path;
00037         apr_pool_t* m_pool;
00038 
00039         svn_error_t *m_error_occured;
00040 
00046         void init(const char * pi_path, apr_pool_t* pool);
00047 
00048 public:
00056         Path(const std::string & pi_path, apr_pool_t* pool);
00057 
00064         Path(const char * pi_path, apr_pool_t* pool);
00065 
00071         Path(const Path & pi_path);
00072 
00076         Path& operator=(const Path&);
00077 
00081         const std::string &
00082                 path() const;
00083 
00087         const char * 
00088                 c_str() const;
00089 
00090         svn_error_t * 
00091                 error_occured() const;
00092 
00099         static bool isValid(const char *path);
00100 };