Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages   Examples  

hyp.ker.registry.h

00001 /*
00002 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
00003  Hyperion Pattern.
00004  Hyperion Pattern is a part of the Hyperion Project.
00005 ----------------------------------------------------------
00006  Copyright (c) 2001 Pierre Rebours.
00007 
00008  This library is free software; you can redistribute it and/or
00009  modify it under the terms of the GNU Lesser General Public
00010  License as published by the Free Software Foundation; either
00011  version 2.1 of the License, or (at your option) any later version.
00012 
00013  This library is distributed in the hope that it will be useful,
00014  but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00016  
00017  See hyp.license.txt file for more information about the license.
00018  
00019  Web: http://lagrandeporte.multimania.com/hyperion
00020  Email: pierre_rebours@yahoo.com
00021 ----------------------------------------------------------
00022  CVS
00023  $Log$
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

Top of Page
written by Pierre Rebours © 2000-2001. Terms of Use.