48 m_bStaleBigness(true),
49 m_bStaleDimension(true),
50 m_bExplicitNonDBFlag(false),
51 m_bExplicitDBFlag(false),
59 m_bStaleBigness(true),
60 m_bStaleDimension(true),
61 m_bExplicitNonDBFlag(false),
62 m_bExplicitDBFlag(false),
65 ParseString(unitString);
70 m_dBigness(src.m_dBigness),
71 m_CUEVec(src.m_CUEVec),
72 m_bStaleBigness(src.m_bStaleBigness),
73 m_bStaleDimension(src.m_bStaleDimension),
74 m_bExplicitNonDBFlag(src.m_bExplicitNonDBFlag),
75 m_bExplicitDBFlag(src.m_bExplicitDBFlag),
76 m_bDBFlag(src.m_bDBFlag)
84 if (src.
m_CUD ==
nullptr)
112 const double &GetBigness()
const;
123 double GetBias()
const;
186 return ( (*this->GetDimension() == *rhs.
GetDimension()) &&
188 (this->GetBias() == rhs.
GetBias()));
193 return !(*
this == rhs);
198 bool IsOfType(
int quantityTypeID);
199 bool IsOfType(
const std::string &quantityName);
204 return this->GetDimension()->IsDimensionless();
208 bool IsDecibel()
const;
212 return this->m_strUnit.empty();
217 double GetDecibelLogScaleFactor()
const;
225 m_bExplicitDBFlag =
true;
226 m_bExplicitNonDBFlag =
false;
233 m_bExplicitDBFlag =
false;
234 m_bExplicitNonDBFlag =
true;
250 m_bStaleBigness =
true;
251 m_bStaleDimension =
true;
256 m_bExplicitDBFlag =
false;
263 void ParseString(
const std::string &unitString);
268 std::ostream & PrintSelf(std::ostream &output)
const;
271 void BuildDimension()
const;
272 void ComputeBigness()
const;
304 return pow(argref, 0.5);
307inline std::ostream & operator<<(std::ostream &out,
const CCompoundUnit &ccu)
313inline std::ostream& operator<< (std::ostream& out,
const CCompoundUnit* ccu)
Definition: CompoundUnitElement.h:16
Definition: CompoundUnit.h:40
void DecibelModeOn()
Definition: CompoundUnit.h:219
void clear()
Definition: CompoundUnit.h:242
double m_dBigness
Definition: CompoundUnit.h:281
std::string m_strUnit
Definition: CompoundUnit.h:280
CCompoundUnit operator/(const CCompoundUnit &rhs) const
Definition: CompoundUnit.h:171
std::vector< CCompoundUnitElement > CUEVecType
Definition: CompoundUnit.h:42
CUnitDimension * m_CUD
Definition: CompoundUnit.h:283
bool m_bExplicitDBFlag
Definition: CompoundUnit.h:287
CUEVecType m_CUEVec
Definition: CompoundUnit.h:282
CCompoundUnit(const CCompoundUnit &src)
Definition: CompoundUnit.h:69
CCompoundUnit & Raise(CCompoundUnitElement::ExponentType)
Definition: CompoundUnit.cpp:594
bool m_bStaleBigness
Definition: CompoundUnit.h:284
const CUnitDimension * GetDimension() const
Definition: CompoundUnit.cpp:235
const double & GetBigness() const
Definition: CompoundUnit.cpp:251
void DecibelModeOff()
Definition: CompoundUnit.h:230
bool IsUnitEmpty() const
Definition: CompoundUnit.h:210
CCompoundUnit()
Definition: CompoundUnit.h:46
CCompoundUnit & operator=(const CCompoundUnit &rhs)
Definition: CompoundUnit.h:132
bool operator==(const CCompoundUnit &rhs) const
Definition: CompoundUnit.h:184
CCompoundUnit(const std::string &unitString)
Definition: CompoundUnit.h:57
virtual ~CCompoundUnit()
Definition: CompoundUnit.h:95
std::string GetString() const
Definition: CompoundUnit.h:265
bool m_bStaleDimension
Definition: CompoundUnit.h:285
bool m_bDBFlag
Definition: CompoundUnit.h:288
bool m_bExplicitNonDBFlag
Definition: CompoundUnit.h:286
CCompoundUnit operator*(const CCompoundUnit &rhs) const
Definition: CompoundUnit.h:166
bool operator!=(const CCompoundUnit &rhs) const
Definition: CompoundUnit.h:191
bool IsDimensionless() const
Definition: CompoundUnit.h:202
double GetBias() const
Definition: CompoundUnit.cpp:290
Definition: SnapValue.h:38
Definition: UnitDimension.h:22