40#ifndef __OPENFLUID_CORE_VALUE_HPP__
41#define __OPENFLUID_CORE_VALUE_HPP__
66 enum Type { NONE,
BOOLEAN, INTEGER, DOUBLE, STRING, VECTOR, MATRIX, MAP, TREE, NULLL };
123 return getType() == Value::DOUBLE;
145 return getType() == Value::INTEGER;
167 return getType() == Value::BOOLEAN;
189 return getType() == Value::STRING;
211 return getType() == Value::NULLL;
233 return getType() == Value::VECTOR;
255 return getType() == Value::MATRIX;
277 return getType() == Value::MAP;
299 return getType() == Value::TREE;
Definition FrameworkException.hpp:51
Definition BooleanValue.hpp:81
Definition DoubleValue.hpp:81
Definition IntegerValue.hpp:80
Definition MapValue.hpp:93
Definition MatrixValue.hpp:85
Definition NullValue.hpp:66
Definition StringValue.hpp:83
Definition TreeValue.hpp:66
virtual bool isCompound() const =0
virtual bool convert(Value &) const
Definition Value.hpp:99
IntegerValue & asIntegerValue()
bool isMapValue() const
Definition Value.hpp:275
virtual Value * clone() const
Definition Value.hpp:94
virtual void writeToStream(std::ostream &OutStm) const =0
const MapValue & asMapValue() const
bool isDoubleValue() const
Definition Value.hpp:121
const IntegerValue & asIntegerValue() const
MatrixValue & asMatrixValue()
const TreeValue & asTreeValue() const
bool isVectorValue() const
Definition Value.hpp:231
virtual Type getType() const =0
bool isIntegerValue() const
Definition Value.hpp:143
bool isBooleanValue() const
Definition Value.hpp:165
const NullValue & asNullValue() const
virtual Value & operator=(const Value &)
Definition Value.hpp:77
bool isStringValue() const
Definition Value.hpp:187
const BooleanValue & asBooleanValue() const
virtual Value & operator=(Value &&)
Definition Value.hpp:85
static bool getValueTypeFromString(const std::string &ValueTypeString, Value::Type &ValueType)
bool isMatrixValue() const
Definition Value.hpp:253
const MatrixValue & asMatrixValue() const
friend std::ostream & operator<<(std::ostream &OutStm, const Value &Val)
Definition Value.hpp:112
DoubleValue & asDoubleValue()
StringValue & asStringValue()
Value(const Value &)=default
const StringValue & asStringValue() const
BooleanValue & asBooleanValue()
bool isTreeValue() const
Definition Value.hpp:297
VectorValue & asVectorValue()
Type
Definition Value.hpp:66
@ BOOLEAN
Definition Value.hpp:66
virtual bool isSimple() const =0
NullValue & asNullValue()
bool isNullValue() const
Definition Value.hpp:209
static std::string getStringFromValueType(const Value::Type ValueType)
virtual void writeQuotedToStream(std::ostream &OutStm) const =0
TreeValue & asTreeValue()
std::string toString() const
const VectorValue & asVectorValue() const
const DoubleValue & asDoubleValue() const
Definition VectorValue.hpp:85
#define OPENFLUID_API
Definition dllexport.hpp:86
Definition ApplicationException.hpp:47