79 static const FXchar symbol[NumUnits][8];
82 static const FXdouble factor[NumUnits];
86 static const FXchar expression[NumUnits][16];
89 static const char* divex(
const FXchar* unit,Conv& u);
90 static const FXchar* unitex(
const FXchar* unit,Conv& u);
91 static const FXchar* scalex(
const FXchar* unit,Conv& u);
92 static const FXchar* powex(
const FXchar* unit,Conv& u);
93 static const FXchar* mulex(
const FXchar* unit,Conv& u);
100 FXUnits(FXdouble mm,FXdouble aa=0.0):m(mm),a(aa){ }
106 operator FXbool()
const {
return (m || a); }
118 static FXint lookup(
const FXchar* unit);
119 static FXint lookup(
const FXString& unit);
122 static FXint span(
const FXchar* unit);
123 static FXint span(
const FXString& unit);
126 static FXulong dimensions(
const FXchar* unit);
127 static FXulong dimensions(
const FXString& unit);
130 static FXString canonical(FXulong dims);
133 static FXUnits convertFromTo(
const FXchar* srcUnit,
const FXchar* dstUnit=
nullptr);
134 static FXUnits convertFromTo(
const FXString& srcUnit,
const FXchar* dstUnit=
nullptr);
135 static FXUnits convertFromTo(
const FXchar* srcUnit,
const FXString& dstUnit);
139 static FXUnits convertToFrom(
const FXchar* dstUnit,
const FXchar* srcUnit=
nullptr);
140 static FXUnits convertToFrom(
const FXString& dstUnit,
const FXchar* srcUnit=
nullptr);
141 static FXUnits convertToFrom(
const FXchar* dstUnit,
const FXString& srcUnit);
145 static FXUnits convertFromToDims(
const FXchar* srcUnit,FXulong dims);
146 static FXUnits convertFromToDims(
const FXString& srcUnit,FXulong dims);
149 static FXUnits convertToFromDims(
const FXchar* dstUnit,FXulong dims);
150 static FXUnits convertToFromDims(
const FXString& dstUnit,FXulong dims);
Unit conversion class.
Definition: FXUnits.h:54
FXUnits & operator=(const FXUnits &org)
Assign from other units.
Definition: FXUnits.h:109
FXdouble operator()(FXdouble x) const
Convert number x according to transformation.
Definition: FXUnits.h:112
FXUnits(FXdouble mm, FXdouble aa=0.0)
Initialize only with scale.
Definition: FXUnits.h:100
FXUnits(const FXUnits &org)
Copy from other units.
Definition: FXUnits.h:103
Definition: FX4Splitter.h:28
FXUnits invert() const
Return the transformation.
Definition: FXUnits.h:115
FXUnits()
Initialize to identity.
Definition: FXUnits.h:97
FXString provides essential string manipulation capabilities in FOX.
Definition: FXString.h:42