1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
/*=========================================================================
Program: CMake - Cross-Platform Makefile Generator
Module: $RCSfile: cmPropertyMap.h,v $
Language: C++
Date: $Date: 2008-01-17 23:13:55 $
Version: $Revision: 1.2 $
Copyright (c) 2002 Kitware, Inc., Insight Consortium. All rights reserved.
See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
#ifndef cmPropertyMap_h
#define cmPropertyMap_h
#include "cmProperty.h"
class cmake;
class cmPropertyMap : public std::map<cmStdString,cmProperty>
{
public:
cmProperty *GetOrCreateProperty(const char *name);
void SetProperty(const char *name, const char *value,
cmProperty::ScopeType scope);
void AppendProperty(const char* name, const char* value,
cmProperty::ScopeType scope);
const char *GetPropertyValue(const char *name,
cmProperty::ScopeType scope,
bool &chain) const;
void SetCMakeInstance(cmake *cm) { this->CMakeInstance = cm; };
cmPropertyMap() { this->CMakeInstance = 0;};
private:
cmake *CMakeInstance;
};
#endif
|