40 #ifndef __OPENFLUID_CORE_MAPVALUE_HPP__ 
   41 #define __OPENFLUID_CORE_MAPVALUE_HPP__ 
   57 namespace openfluid { 
namespace core {
 
  138     typedef std::map<std::string,std::shared_ptr<Value> > 
Map_t;
 
  175     void writeToStream(std::ostream& OutStm) 
const;
 
  178     { writeToStream(OutStm); }
 
  185     void set(
const std::string& Key, 
Value* Element);
 
  192     inline void setDouble(
const std::string& Key, 
const double& Val)
 
  201     inline void setInteger(
const std::string& Key, 
const long& Val)
 
  209     inline void setBoolean(
const std::string& Key, 
const bool& Val)
 
  217     inline void setString(
const std::string& Key, 
const std::string& Val)
 
  248     Value& operator[](
const std::string& Key);
 
  255     Value& at(
const std::string& Key);
 
  262     const Value& at(
const std::string& Key) 
const;
 
  270     { 
return at(Key).asDoubleValue().get(); };
 
  278     { 
return at(Key).asIntegerValue().get(); };
 
  286     { 
return at(Key).asBooleanValue().get(); };
 
  293     inline std::string 
getString(
const std::string& Key)
 const 
  294     { 
return at(Key).asStringValue().get(); };
 
  324     bool remove(
const std::string& Key);
 
  330     inline unsigned long getSize()
 const { 
return m_Value.size(); };
 
  336     unsigned long size()
 const { 
return m_Value.size(); };
 
  343     inline bool isKeyExist(
const std::string& Key)
 const { 
return (m_Value.find(Key) != m_Value.end()); };
 
  349     std::vector<std::string> getKeys() 
const;
 
  361     { 
return m_Value.begin(); }
 
  368     { 
return m_Value.begin(); }
 
  375     { 
return m_Value.end(); }
 
  382     { 
return m_Value.end(); }
 
Definition: VectorValue.hpp:118
void writeQuotedToStream(std::ostream &OutStm) const 
Definition: MapValue.hpp:177
void setVectorValue(const std::string &Key, const VectorValue &Val)
Definition: MapValue.hpp:225
Value * clone() const 
Definition: MapValue.hpp:172
MatrixValue getMatrixValue(const std::string &Key) const 
Definition: MapValue.hpp:309
const MatrixValue & asMatrixValue() const 
void setMapValue(const std::string &Key, const MapValue &Val)
Definition: MapValue.hpp:241
VectorValue getVectorValue(const std::string &Key) const 
Definition: MapValue.hpp:301
Definition: CompoundValue.hpp:50
MapValue getMapValue(const std::string &Key) const 
Definition: MapValue.hpp:317
const MapValue & asMapValue() const 
bool isKeyExist(const std::string &Key) const 
Definition: MapValue.hpp:343
double getDouble(const std::string &Key) const 
Definition: MapValue.hpp:269
Type getType() const 
Definition: MapValue.hpp:169
Definition: MapValue.hpp:134
Definition: DoubleValue.hpp:102
unsigned long getSize() const 
Definition: MapValue.hpp:330
std::string getString(const std::string &Key) const 
Definition: MapValue.hpp:293
const_iterator end() const 
Definition: MapValue.hpp:381
const_iterator begin() const 
Definition: MapValue.hpp:367
Map_t::const_iterator const_iterator
Definition: MapValue.hpp:142
bool getBoolean(const std::string &Key) const 
Definition: MapValue.hpp:285
long getInteger(const std::string &Key) const 
Definition: MapValue.hpp:277
Definition: BooleanValue.hpp:103
unsigned long size() const 
Definition: MapValue.hpp:336
iterator begin()
Definition: MapValue.hpp:360
Definition: StringValue.hpp:91
Type
Definition: Value.hpp:68
MapValue(const Map_t &Val)
Definition: MapValue.hpp:162
const VectorValue & asVectorValue() const 
void setBoolean(const std::string &Key, const bool &Val)
Definition: MapValue.hpp:209
void setMatrixValue(const std::string &Key, const MatrixValue &Val)
Definition: MapValue.hpp:233
void setDouble(const std::string &Key, const double &Val)
Definition: MapValue.hpp:192
void setString(const std::string &Key, const std::string &Val)
Definition: MapValue.hpp:217
Map_t::iterator iterator
Definition: MapValue.hpp:140
Definition: MatrixValue.hpp:114
std::map< std::string, std::shared_ptr< Value > > Map_t
Definition: MapValue.hpp:138
#define OPENFLUID_API
Definition: dllexport.hpp:87
Definition: IntegerValue.hpp:105
iterator end()
Definition: MapValue.hpp:374
MapValue()
Definition: MapValue.hpp:155
void setInteger(const std::string &Key, const long &Val)
Definition: MapValue.hpp:201