42 #ifndef __VALUE_HPP___
43 #define __VALUE_HPP___
51 namespace openfluid {
namespace core {
68 enum Type { NONE, BOOLEAN, INTEGER, DOUBLE, STRING,
VECTOR, MATRIX, MAP, NULLL };
83 virtual Value& operator =(
const Value& ) {
return *
this; }
87 virtual Type getType()
const = 0;
91 inline virtual bool isSimple()
const = 0;
93 inline virtual bool isCompound()
const = 0;
95 virtual void writeToStream(std::ostream& OutStm)
const = 0;
175 std::string toString()
const;
177 static bool getValueTypeFromString(
const std::string ValueTypeString,
Value::Type& ValueType);
179 static std::string getStringFromValueType(
const Value::Type ValueType);
bool isStringValue() const
Definition: Value.hpp:130
Definition: StringValue.hpp:91
virtual void writeToStream(std::ostream &OutStm) const =0
bool isVectorValue() const
Definition: Value.hpp:148
Definition: IntegerValue.hpp:106
Definition: DoubleValue.hpp:103
bool isNullValue() const
Definition: Value.hpp:139
Definition: FrameworkException.hpp:49
Definition: MapValue.hpp:134
bool isIntegerValue() const
Definition: Value.hpp:112
virtual ~Value()
Definition: Value.hpp:85
bool isMatrixValue() const
Definition: Value.hpp:157
Value(const Value &)
Definition: Value.hpp:78
bool isDoubleValue() const
Definition: Value.hpp:103
Definition: NullValue.hpp:59
Type
Definition: Value.hpp:68
bool isMapValue() const
Definition: Value.hpp:166
friend std::ostream & operator<<(std::ostream &OutStm, const Value &Val)
Definition: Value.hpp:97
Definition: MatrixValue.hpp:115
bool isBooleanValue() const
Definition: Value.hpp:121
Value()
Definition: Value.hpp:73
Definition: VectorValue.hpp:119
Definition: BooleanValue.hpp:104
virtual Value * clone() const
Definition: Value.hpp:89
#define DLLEXPORT
Definition: dllexport.hpp:51