#include <WhUnit.hpp>
Related Symbols | |
(Note that these are not member symbols.) | |
using | OptionalWhUnit = boost::optional<WhUnit> |
using | WhUnitVector = std::vector<WhUnit> |
Create Functions Used by UnitFactory | |
WhUnit | createWhPower () |
WhUnit | createWhTime () |
WhUnit | createWhLength () |
WhUnit | createWhTemperature () |
WhUnit | createWhElectricCurrent () |
WhUnit | createWhLuminousIntensity () |
WhUnit | createWhAmountOfSubstance () |
WhUnit | createWhAngle () |
WhUnit | createWhSolidAngle () |
WhUnit | createWhPeople () |
WhUnit | createWhCycle () |
WhUnit | createWhCurrency () |
WhUnit | createWhEnergy () |
WhUnit | createWhElectricalPotential () |
Volt (V) = W/A. | |
WhUnit | createWhElectricResistance () |
Ohm (ohm) = V/A = W/A^2. | |
WhUnit | createWhLuminousFlux () |
Lumen (lm) = cd*sr. | |
WhUnit | createWhIlluminance () |
Lux (lux or lx) = lm/m^2 = cd*sr/m^2. | |
![]() | |
using | OptionalUnit = boost::optional<Unit> |
using | UnitVector = std::vector<Unit> |
Constructors and Destructors | |
WhUnit (const WhExpnt &exponents=WhExpnt(), int scaleExponent=0, const std::string &prettyString="") | |
Default constructor. | |
WhUnit (const std::string &scaleAbbreviation, const WhExpnt &exponents=WhExpnt(), const std::string &prettyString="") | |
Alternate constructor. | |
virtual | ~WhUnit () override=default |
Additional Inherited Members | |
![]() | |
Unit (int scaleExponent=0, const std::string &prettyString="") | |
Default constructor. | |
Unit (const std::string &scaleAbbreviation, const std::string &prettyString="") | |
Constructor using scale abbreviations registered in ScaleFactory. | |
virtual | ~Unit ()=default |
Unit | clone () const |
Deep copy constructor. | |
Unit | cloneToMixed () const |
Deep copy constructor that discards system designation. | |
std::vector< std::string > | baseUnits () const |
Returns base units already available in Unit. | |
bool | isBaseUnit (const std::string &baseUnit) const |
Returns true if baseUnit is available in Unit. | |
int | baseUnitExponent (const std::string &baseUnit) const |
Base unit exponent getter. Returns 0 if baseUnit not present. */. | |
void | setBaseUnitExponent (const std::string &baseUnit, int exponent) |
Sets baseUnit^exponent. If baseUnit not yet present, is added and return value is true. | |
Scale | scale () const |
Scale getter. | |
bool | setScale (int scaleExponent) |
Sets the scale to the one registered in ScaleFactory for 10^scaleExponent. | |
bool | setScale (const std::string &scaleAbbreviation) |
Sets the scale to the one registered in ScaleFactory under scaleAbbreviation. | |
std::string | standardString (bool withScale=true) const |
Returns the standard output string for this unit. | |
std::string | prettyString (bool withScale=true) const |
Returns the preferred output string for this unit. | |
void | setPrettyString (const std::string &str) |
Setter for prettyString (do not include scale abbreviation). | |
std::string | print (bool withScale=true) const |
Returns prettyString(withScale) if it exists; otherwise returns standardString(withScale). | |
UnitSystem | system () const |
Getter for this Unit's system. | |
bool | operator== (const Unit &rUnit) const |
Equality for units. | |
Unit & | operator*= (const Unit &rUnit) |
Multiply-assign operator. | |
Unit & | operator/= (const Unit &rUnit) |
Divide-assign operator. | |
Unit & | pow (int expNum, int expDenom=1, bool okToCallFactory=true) |
Raise Unit to a rational power. | |
template<typename T > | |
T | cast () const |
Cast to type T. | |
template<typename T > | |
boost::optional< T > | optionalCast () const |
Cast to boost::optional<T>. | |
WhUnit is a Unit with baseUnits W, h, m, K, and people.
setBaseUnitExponent throws and exception if any other string is passed in as a baseUnit. WhUnit.hpp declares related operators and UnitFactory callback functions.
openstudio::WhUnit::WhUnit | ( | const WhExpnt & | exponents = WhExpnt(), |
int | scaleExponent = 0, | ||
const std::string & | prettyString = "" ) |
Default constructor.
Example:
WhUnit myEnergy(WhExpnt(1,1),3,"Wh"); std::cout << myEnergy; // produces "kWh"
[in] | exponents | holds the exponents for each base unit. |
[in] | scaleExponent | exponent for scale. For instance 3 for kilo. |
[in] | prettyString | optional string to use in place of standardString. |
openstudio::WhUnit::WhUnit | ( | const std::string & | scaleAbbreviation, |
const WhExpnt & | exponents = WhExpnt(), | ||
const std::string & | prettyString = "" ) |
Alternate constructor.
Specify the abbreviation of the scale, rather than its exponent. Example:
WhUnit myEnergy("k",WhExpnt(1,1),"Wh"); std::cout << myEnergy; // produces "kWh"
[in] | scaleAbbreviation | is string equal to a scale abbreviation. For instance "k" for kilo. |
[in] | exponents | holds the exponents for each base unit. |
[in] | prettyString | optional string to use in place of standardString. |
|
overridevirtualdefault |
|
related |
|
related |
|
related |
|
related |
|
related |
Volt (V) = W/A.
|
related |
|
related |
Ohm (ohm) = V/A = W/A^2.
|
related |
|
related |
Lux (lux or lx) = lm/m^2 = cd*sr/m^2.
|
related |
|
related |
Lumen (lm) = cd*sr.
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |