39 data->mParams.get(inName, param);
42 return get(data->mParentContext, inName);
55 data->mParams.set(inName, inParam);
62 typedef std::map<std::string, ParameterSharedPtr> DataMap;
68 if(data->mParentContext) {
71 parentData->mParams.getValueMap(outParams);
72 DataMap::iterator param = outParams.begin();
73 DataMap::iterator pEnd = outParams.end();
74 for(; param != pEnd; ++param) {
76 data->mParams.get((*param).first, newValue);
79 outParams[(*param).first] = newValue;
84 data->mParams.getValueMap(outParams);
93 typedef std::map<std::string, ParameterSharedPtr> DataMap;
100 data->mParams.getValueMap(outParams);
112 mParameters.get(inContext, data);
116 data = boost::shared_ptr < ParamData > (
new ParamData());
117 data->mParentContext = inParentContext;
118 mParameters.set(inContext, data);
140 if(
this != &source) {
boost::shared_ptr< Parameter > ParameterSharedPtr
void registerContext(const ParameterContext &inContext, const ParameterContext &inParentContext=ParameterContext())
bool remove(const KeyType &inKey)
ParameterMap & operator=(const ParameterMap &source)
The Error object thrown by different methods of EdifOM.
ParameterContext getNewContext()
SymTab< ParameterContext, ParamDataPtr > mParameters
bool get(const KeyType &inKey, ValueType &outValue) const
void set(const ParameterContext &inContext, const std::string &inName, const ParameterSharedPtr &inParam)
void unregisterContext(const ParameterContext &inContext)
void getAllParameters(const ParameterContext &inContext, std::map< std::string, ParameterSharedPtr > &outParams) const
boost::shared_ptr< ParamData > ParamDataPtr
void getOverriddenParameters(const ParameterContext &inContext, std::map< std::string, ParameterSharedPtr > &outParams) const
bool isContextRegistered(const ParameterContext &inContext) const
ParameterSharedPtr get(const ParameterContext &inContext, const std::string &inName) const
ParameterContext mNextContext