14 #include <biogears/cdm/properties/SEScalar.h>
15 #include <biogears/cdm/properties/SEUnitScalar.h>
16 #include <biogears/cdm/utils/unitconversion/CompoundUnit.h>
18 CDM_BIND_DECL(ScalarData)
23 template <
typename Unit>
31 void Clear()
override;
32 void Invalidate()
override;
33 bool IsValid()
const override;
41 void SetValue(
double d,
const Unit& unit);
42 virtual double GetValue(
const Unit& unit)
const;
43 virtual double GetValue()
const final;
45 double GetValue(
const char* unit)
const override;
46 double GetValue(
const std::string& unit)
const override;
48 const Unit* GetUnit()
const override;
51 SEScalarQuantity& IncrementValue(
double d,
const std::string& unit)
override;
55 SEScalarQuantity& DecrementValue(
double d,
const std::string& unit)
override;
82 virtual void ToString(std::ostream& str)
const override;
84 const Unit* GetCompoundUnit(
const char* unit)
const override;
85 const Unit* GetCompoundUnit(
const std::string& unit)
const override;
104 template <
class Unit>
113 template <
class Unit>
123 #include <biogears/cdm/properties/SEScalarQuantity.inl>
bool operator>=(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:127
bool operator<=(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:125
bool IsReadOnly() const
Definition: SEScalar.cpp:177
Definition: SEScalar.h:33
void Copy(const std::vector< T * > &from, std::vector< T * > &to)
Definition: Macros.h:69
const Unit * m_unit
Definition: SEScalarQuantity.h:91
void Override(const SEScalar &from, SEScalar &to)
Definition: SEScalar.h:145
Definition: SEScalarQuantity.h:24
SEScalar operator+(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:120
CPScalar & operator*=(CPScalar &lhs, const T &rhs)
Definition: PScalar.h:376
bool operator!=(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:129
SEScalarQuantity & IncrementValue(double d, const char *unit) override
SEScalar operator/(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:122
void ValueOverride(SEScalar &s, double value)
Definition: SEScalar.h:154
SEScalar operator*(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:123
Class corresponding to the ScalarData schema type.
Definition: Properties.hxx:3007
bool operator==(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:128
void SetValue(double d, const Unit &unit)
bool operator>(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:126
bool operator<(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:124
CPScalar & operator/=(CPScalar &lhs, const T &rhs)
Definition: PScalar.h:396
SEScalar operator-(double lhs, const SEScalar &rhs)
Definition: SEScalar.h:121
void SetReadOnly(bool b)
Definition: SEScalar.cpp:172
virtual bool Set(const SEScalarQuantity< Unit > &s)
Definition: SEUnitScalar.h:18
Definition: SEElectricalCircuit.h:18
void IncrementOverride(SEScalar &s, double value)
Definition: SEScalar.h:162