00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #if !defined(_hyp_registry_h_)
00029 #define _hyp_registry_h_
00030
00031 #ifndef hyp_KERNEL_CORE_INSIDE
00032 #error Inclusion not allowed (include hyp.kernel.core.h instead)
00033 #endif
00034
00035
00036 class CStdRegistryFile;
00037
00038 class hyp_ker_DLL CStdRegistry :
00039 protected CDir
00040 {
00041 public:
00042 CStdRegistry(const std::string&);
00043 virtual ~CStdRegistry();
00044
00045 CStdRegistryFile* GetRegistryFile(const std::string&);
00046 inline CStdRegistryFile* GetRegistryFile() const {
00047 hyp_ASSERT(m_pCurrentRegistryFile);
00048 return m_pCurrentRegistryFile;
00049 };
00050
00051 CStdRegistryFile* CreateRegistryFile(const std::string&);
00052 void DeleteRegistryFile(const std::string&);
00053
00058 inline bool IsInRegistry(const std::string& Name) {
00059 return IsInDir(Name);
00060 }
00061
00065 inline std::string GetPathofRegistry() const {
00066 return GetPath();
00067 }
00068
00069 private:
00070 CStdRegistryFile* m_pCurrentRegistryFile;
00071 };
00072
00073
00074
00075 #endif