OpenStudio:utilities
Loading...
Searching...
No Matches
openstudio::TemperatureUnit Class Reference

#include <TemperatureUnit.hpp>

+ Inheritance diagram for openstudio::TemperatureUnit:

Public Member Functions

Constructors and Destructors
virtual ~TemperatureUnit () override=default
 
- Public Member Functions inherited from openstudio::Unit
 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.
 
Unitoperator*= (const Unit &rUnit)
 Multiply-assign operator.
 
Unitoperator/= (const Unit &rUnit)
 Divide-assign operator.
 
Unitpow (int expNum, int expDenom=1, bool okToCallFactory=true)
 Raise Unit to a rational power.
 
template<typename T >
cast () const
 Cast to type T.
 
template<typename T >
boost::optional< T > optionalCast () const
 Cast to boost::optional<T>.
 

Related Symbols

(Note that these are not member symbols.)

using OptionalTemperatureUnit = boost::optional<TemperatureUnit>
 
using TemperatureUnitVector = std::vector<TemperatureUnit>
 

Mathematical Operators

bool isAbsolute () const
 
void setAsAbsolute ()
 
void setAsRelative ()
 

Detailed Description

TemperatureUnit is an abstract Unit for handling temperatures.

Temperatures can be absolute or relative. The temperature of a material is absolute temperature. Temperature differences are relative temperatures. In the former case C != K (F != R), but in the latter, C == K (F == R).

There are no public constructors, because this is an abstract class. By default, derived classes should set absoute=true. Temperatures that start as relative should be handled by regular Unit classes.

Constructor & Destructor Documentation

◆ ~TemperatureUnit()

virtual openstudio::TemperatureUnit::~TemperatureUnit ( )
overridevirtualdefault

Member Function Documentation

◆ isAbsolute()

bool openstudio::TemperatureUnit::isAbsolute ( ) const

◆ setAsAbsolute()

void openstudio::TemperatureUnit::setAsAbsolute ( )

◆ setAsRelative()

void openstudio::TemperatureUnit::setAsRelative ( )

Friends And Related Symbol Documentation

◆ OptionalTemperatureUnit

using OptionalTemperatureUnit = boost::optional<TemperatureUnit>
related

◆ TemperatureUnitVector

using TemperatureUnitVector = std::vector<TemperatureUnit>
related