Unit conversion class to convert values between physical unit systems. More...
#include <unit_converter.h>
Public Member Functions | |
| cUnitConverter (char const *_kind, char const *_name, char const *_symbol, double _factor=1.0, double _offset=0.0, int _decimal_places=1) | |
| int | GetDecimalPlaces (void) const |
| Return the number of decimal places for printing values in the external unit system. More... | |
| double | GetFactor (void) const |
| Return the conversion factor from internal to external units. More... | |
| char const * | GetKind (void) const |
| Return the kind of unit converted (something like "angle" or "time") More... | |
| char const * | GetName (void) const |
| Return the name of the external unit (something like "degrees" or "milliseconds") More... | |
| double | GetOffset (void) const |
| Return the conversion offset from internal to external units. More... | |
| char const * | GetSymbol (void) const |
| Return the symbol of the external unit (something like "deg" or "ms") More... | |
| double | ToExternal (double internal) const |
| cSimpleVector | ToExternal (cSimpleVector &internal) const |
| std::vector< double > | ToExternal (std::vector< double > const &internal) const |
| double | ToInternal (double external) const |
| cSimpleVector | ToInternal (cSimpleVector &external) const |
| std::vector< double > | ToInternal (std::vector< double > const &external) const |
Protected Attributes | |
| int | decimal_places |
| A usefull number of decimal places for printing values in the external unit system. More... | |
| double | factor |
| the conversion factor from internal to external units More... | |
| char const * | kind |
| the kind of unit to be converted (something like "angle" or "time") More... | |
| char const * | name |
| the name of the external unit (something like "degrees" or "milliseconds") More... | |
| double | offset |
| the conversion offset from internal to external units More... | |
| char const * | symbol |
| the symbol of the external unit (something like "deg" or "ms") More... | |
Unit conversion class to convert values between physical unit systems.
An object of this class can be configured to convert values of a physical unit between 2 physical unit systems. An angle value given in degrees can e.g. be converted from/to radians or vice versa by an object of this class.
Definition at line 75 of file unit_converter.h.
| USING_NAMESPACE_SDH cUnitConverter::cUnitConverter | ( | char const * | _kind, |
| char const * | _name, | ||
| char const * | _symbol, | ||
| double | _factor = 1.0, |
||
| double | _offset = 0.0, |
||
| int | _decimal_places = 1 |
||
| ) |
Constructor of cUnitConverter class.
At construction time the conversion parameters - a factor and an offset - must be provided along with elements that describe the unit of a value
| _kind | - a string describing the kind of unit to be converted (something like "angle" or "time") |
| _name | - the name of the external unit (something like "degrees" or "milliseconds") |
| _symbol | - the symbol of the external unit (something like "deg" or "ms") |
| _factor | - the conversion factor from internal to external units |
| _offset | - the conversion offset from internal to external units |
| _decimal_places | - A usefull number of decimal places for printing values in the external unit system |
Definition at line 68 of file unit_converter.cpp.
| int cUnitConverter::GetDecimalPlaces | ( | void | ) | const |
Return the number of decimal places for printing values in the external unit system.
Definition at line 191 of file unit_converter.cpp.
| double cUnitConverter::GetFactor | ( | void | ) | const |
Return the conversion factor from internal to external units.
Definition at line 175 of file unit_converter.cpp.
| char const * cUnitConverter::GetKind | ( | void | ) | const |
Return the kind of unit converted (something like "angle" or "time")
Definition at line 154 of file unit_converter.cpp.
| char const * cUnitConverter::GetName | ( | void | ) | const |
Return the name of the external unit (something like "degrees" or "milliseconds")
Definition at line 161 of file unit_converter.cpp.
| double cUnitConverter::GetOffset | ( | void | ) | const |
Return the conversion offset from internal to external units.
Definition at line 183 of file unit_converter.cpp.
| char const * cUnitConverter::GetSymbol | ( | void | ) | const |
Return the symbol of the external unit (something like "deg" or "ms")
Definition at line 168 of file unit_converter.cpp.
| double cUnitConverter::ToExternal | ( | double | internal | ) | const |
Convert single value internal given in internal units into external units. Returns internal * factor + offset
Definition at line 82 of file unit_converter.cpp.
| cSimpleVector cUnitConverter::ToExternal | ( | cSimpleVector & | internal | ) | const |
Convert values in simple array internal, each given in internal units into external units. Returns a simple array with each valid element converted with internal[i] * factor + offset
Only valid entries of the internal vector are converted.
Definition at line 89 of file unit_converter.cpp.
| std::vector< double > cUnitConverter::ToExternal | ( | std::vector< double > const & | internal | ) | const |
Convert values in vector internal, each given in internal units into external units. Returns a vector with each element converted with internal[i] * factor + offset
Definition at line 103 of file unit_converter.cpp.
| double cUnitConverter::ToInternal | ( | double | external | ) | const |
Convert value external given in external units into internal units. Returns (external - offset) / factor
Definition at line 118 of file unit_converter.cpp.
| cSimpleVector cUnitConverter::ToInternal | ( | cSimpleVector & | external | ) | const |
Convert values in simple array external, each given in external units into internal units. Returns a simple array with each valid element converted with external[i] * factor + offset
Only valid entries of the external vector are converted.
Definition at line 125 of file unit_converter.cpp.
| std::vector< double > cUnitConverter::ToInternal | ( | std::vector< double > const & | external | ) | const |
Convert values in vector external, each given in external units into internal units. Returns a vector with each valid element converted with external[i] * factor + offset
Definition at line 139 of file unit_converter.cpp.
|
protected |
A usefull number of decimal places for printing values in the external unit system.
Definition at line 198 of file unit_converter.h.
|
protected |
the conversion factor from internal to external units
Definition at line 192 of file unit_converter.h.
|
protected |
the kind of unit to be converted (something like "angle" or "time")
Definition at line 183 of file unit_converter.h.
|
protected |
the name of the external unit (something like "degrees" or "milliseconds")
Definition at line 186 of file unit_converter.h.
|
protected |
the conversion offset from internal to external units
Definition at line 195 of file unit_converter.h.
|
protected |
the symbol of the external unit (something like "deg" or "ms")
Definition at line 189 of file unit_converter.h.