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 };
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
const TreeValue & asTreeValue() const
bool isMapValue() const
Definition: Value.hpp:275
virtual void writeToStream(std::ostream &OutStm) const =0
bool isDoubleValue() const
Definition: Value.hpp:121
const VectorValue & asVectorValue() 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 StringValue & asStringValue() const
bool isStringValue() const
Definition: Value.hpp:187
const MatrixValue & asMatrixValue() const
IntegerValue & asIntegerValue()
const DoubleValue & asDoubleValue() const
TreeValue & asTreeValue()
const IntegerValue & asIntegerValue() const
static bool getValueTypeFromString(const std::string &ValueTypeString, Value::Type &ValueType)
virtual Value & operator=(const Value &)
Definition: Value.hpp:77
bool isMatrixValue() const
Definition: Value.hpp:253
virtual Value * clone() const
Definition: Value.hpp:94
const BooleanValue & asBooleanValue() const
VectorValue & asVectorValue()
friend std::ostream & operator<<(std::ostream &OutStm, const Value &Val)
Definition: Value.hpp:112
Value(const Value &)=default
NullValue & asNullValue()
virtual Value & operator=(Value &&)
Definition: Value.hpp:85
MatrixValue & asMatrixValue()
const MapValue & asMapValue() const
bool isTreeValue() const
Definition: Value.hpp:297
const NullValue & asNullValue() const
StringValue & asStringValue()
Type
Definition: Value.hpp:66
@ VECTOR
Definition: Value.hpp:66
@ TREE
Definition: Value.hpp:66
@ STRING
Definition: Value.hpp:66
@ MAP
Definition: Value.hpp:66
@ MATRIX
Definition: Value.hpp:66
@ DOUBLE
Definition: Value.hpp:66
@ NULLL
Definition: Value.hpp:66
@ BOOLEAN
Definition: Value.hpp:66
@ INTEGER
Definition: Value.hpp:66
DoubleValue & asDoubleValue()
virtual bool isSimple() const =0
bool isNullValue() const
Definition: Value.hpp:209
BooleanValue & asBooleanValue()
static std::string getStringFromValueType(const Value::Type ValueType)
virtual void writeQuotedToStream(std::ostream &OutStm) const =0
std::string toString() const
Definition: VectorValue.hpp:85
#define OPENFLUID_API
Definition: dllexport.hpp:86
Definition: ApplicationException.hpp:47