diff options
author | Ken Martin <ken.martin@kitware.com> | 2002-08-28 18:51:10 (GMT) |
---|---|---|
committer | Ken Martin <ken.martin@kitware.com> | 2002-08-28 18:51:10 (GMT) |
commit | d0be2896d7191e56818aaac48f7177b9d92a9693 (patch) | |
tree | 42c3a9c07f1ccd9fe8683051c921463e9d639dc7 /Source/cmake.h | |
parent | 4855fe5c10841fd3641b7405522de3278732987f (diff) | |
download | CMake-d0be2896d7191e56818aaac48f7177b9d92a9693.zip CMake-d0be2896d7191e56818aaac48f7177b9d92a9693.tar.gz CMake-d0be2896d7191e56818aaac48f7177b9d92a9693.tar.bz2 |
changed cache manager and registered generators to no longer be singletons
Diffstat (limited to 'Source/cmake.h')
-rw-r--r-- | Source/cmake.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/Source/cmake.h b/Source/cmake.h index 9213759..9063794 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -14,7 +14,9 @@ PURPOSE. See the above copyright notices for more information. =========================================================================*/ - +// This class represents a cmake invocation. It is the top level class when +// running cmake. Most cmake based GUIS should primarily create an instance +// of this class and communicate with it. #include "cmMakefile.h" #include "cmStandardIncludes.h" @@ -62,6 +64,21 @@ class cmake */ cmake(); ~cmake(); + + ///! Create a named generator + cmMakefileGenerator* CreateGenerator(const char* name); + ///! Register a generator + void RegisterGenerator(cmMakefileGenerator*); + ///! Get the names of the current registered generators + void GetRegisteredGenerators(std::vector<std::string>& names); + + ///! get the cmCachemManager used by this invocation of cmake + cmCacheManager *GetCacheManager() { + return &m_CacheManager; } + +protected: + std::map<cmStdString, cmMakefileGenerator*> m_RegisteredGenerators; + cmCacheManager m_CacheManager; private: bool m_Verbose; bool m_Local; |