40 #ifndef __OPENFLUID_CORE_MAPVALUE_HPP__
41 #define __OPENFLUID_CORE_MAPVALUE_HPP__
96 typedef std::map<std::string,std::shared_ptr<Value>>
Map_t;
153 writeToStream(OutStm);
168 inline void setDouble(
const std::string& Key,
const double& Val)
179 inline void setInteger(
const std::string& Key,
const long& Val)
189 inline void setBoolean(
const std::string& Key,
const bool& Val)
199 inline void setString(
const std::string& Key,
const std::string& Val)
252 const Value&
at(
const std::string& Key)
const;
261 return at(Key).asDoubleValue().get();
271 return at(Key).asIntegerValue().get();
281 return at(Key).asBooleanValue().get();
289 inline std::string
getString(
const std::string& Key)
const
291 return at(Key).asStringValue().get();
336 return m_Value.size();
345 return m_Value.size();
355 return (m_Value.find(Key) != m_Value.end());
375 return m_Value.begin();
384 return m_Value.begin();
393 return m_Value.end();
402 return m_Value.end();
Definition: BooleanValue.hpp:81
Definition: CompoundValue.hpp:52
Definition: DoubleValue.hpp:81
Definition: IntegerValue.hpp:80
Definition: MapValue.hpp:93
MapValue & operator=(const MapValue &Other)=default
void writeQuotedToStream(std::ostream &OutStm) const override
Definition: MapValue.hpp:151
MapValue & operator=(const Value &Other) override
std::string getString(const std::string &Key) const
Definition: MapValue.hpp:289
Value * clone() const override
Definition: MapValue.hpp:144
void setBoolean(const std::string &Key, const bool &Val)
Definition: MapValue.hpp:189
void setMapValue(const std::string &Key, const MapValue &Val)
Definition: MapValue.hpp:229
std::map< std::string, std::shared_ptr< Value > > Map_t
Definition: MapValue.hpp:96
MapValue & operator=(Value &&Other) override
Value & at(const std::string &Key)
bool getBoolean(const std::string &Key) const
Definition: MapValue.hpp:279
unsigned long getSize() const
Definition: MapValue.hpp:334
void set(const std::string &Key, Value *Element)
MapValue(const Map_t &Val)
Definition: MapValue.hpp:126
iterator begin()
Definition: MapValue.hpp:373
MapValue & operator=(MapValue &&Other)=default
Value & operator[](const std::string &Key)
void setString(const std::string &Key, const std::string &Val)
Definition: MapValue.hpp:199
void setMatrixValue(const std::string &Key, const MatrixValue &Val)
Definition: MapValue.hpp:219
bool remove(const std::string &Key)
void setDouble(const std::string &Key, const double &Val)
Definition: MapValue.hpp:168
MapValue(const MapValue &Val)
MatrixValue getMatrixValue(const std::string &Key) const
Definition: MapValue.hpp:309
const Value & at(const std::string &Key) const
unsigned long size() const
Definition: MapValue.hpp:343
Map_t::iterator iterator
Definition: MapValue.hpp:98
iterator end()
Definition: MapValue.hpp:391
void setVectorValue(const std::string &Key, const VectorValue &Val)
Definition: MapValue.hpp:209
long getInteger(const std::string &Key) const
Definition: MapValue.hpp:269
const_iterator end() const
Definition: MapValue.hpp:400
void setInteger(const std::string &Key, const long &Val)
Definition: MapValue.hpp:179
MapValue()
Definition: MapValue.hpp:113
Map_t::const_iterator const_iterator
Definition: MapValue.hpp:100
VectorValue getVectorValue(const std::string &Key) const
Definition: MapValue.hpp:299
Type getType() const override
Definition: MapValue.hpp:139
const_iterator begin() const
Definition: MapValue.hpp:382
bool isKeyExist(const std::string &Key) const
Definition: MapValue.hpp:353
double getDouble(const std::string &Key) const
Definition: MapValue.hpp:259
MapValue getMapValue(const std::string &Key) const
Definition: MapValue.hpp:319
std::vector< std::string > getKeys() const
void writeToStream(std::ostream &OutStm) const override
Definition: MatrixValue.hpp:85
Definition: StringValue.hpp:83
const VectorValue & asVectorValue() const
const MatrixValue & asMatrixValue() const
const MapValue & asMapValue() const
Type
Definition: Value.hpp:66
@ MAP
Definition: Value.hpp:66
Definition: VectorValue.hpp:85
#define OPENFLUID_API
Definition: dllexport.hpp:86
Definition: ApplicationException.hpp:47