Skyward boardcore
Loading...
Searching...
No Matches
Boardcore::Units::Unit< Kind, Ratio > Class Template Reference

#include <Units.h>

Public Member Functions

constexpr Unit (float val)
 
template<UnitKind FromKind, class FromRatio >
constexpr Unit (Unit< FromKind, FromRatio > const &from)
 
template<class TargetRatio = Ratio>
constexpr float value () const
 Return the value of the unit in the target ratio.
 
template<UnitKind TargetKind, class TargetRatio = Ratio>
constexpr operator Unit< TargetKind, TargetRatio > () const
 

Friends

template<UnitKind PKind, class PRatio >
std::istream & operator>> (std::istream &is, Unit< PKind, PRatio > &unit)
 

Detailed Description

template<UnitKind Kind, class Ratio = std::ratio<1>>
class Boardcore::Units::Unit< Kind, Ratio >

Base class to implement custom measurement units logic.

Template Parameters
KindThe kind of unit.
RatioThe ratio of the unit.

The Ratio template parameter is used to convert between different units of the same kind. For example, to convert from meters to kilometers, the ratio is 1/1000.

Definition at line 61 of file Units.h.

Constructor & Destructor Documentation

◆ Unit() [1/2]

template<UnitKind Kind, class Ratio = std::ratio<1>>
constexpr Boardcore::Units::Unit< Kind, Ratio >::Unit ( float val)
inlineexplicitconstexpr

Definition at line 64 of file Units.h.

◆ Unit() [2/2]

template<UnitKind Kind, class Ratio = std::ratio<1>>
template<UnitKind FromKind, class FromRatio >
constexpr Boardcore::Units::Unit< Kind, Ratio >::Unit ( Unit< FromKind, FromRatio > const & from)
inlineexplicitconstexpr

Definition at line 67 of file Units.h.

Member Function Documentation

◆ operator Unit< TargetKind, TargetRatio >()

template<UnitKind Kind, class Ratio = std::ratio<1>>
template<UnitKind TargetKind, class TargetRatio = Ratio>
constexpr Boardcore::Units::Unit< Kind, Ratio >::operator Unit< TargetKind, TargetRatio > ( ) const
inlineconstexpr

Definition at line 87 of file Units.h.

◆ value()

template<UnitKind Kind, class Ratio = std::ratio<1>>
template<class TargetRatio = Ratio>
constexpr float Boardcore::Units::Unit< Kind, Ratio >::value ( ) const
inlineconstexpr

Return the value of the unit in the target ratio.

Definition at line 76 of file Units.h.

Friends And Related Symbol Documentation

◆ operator>>

template<UnitKind Kind, class Ratio = std::ratio<1>>
template<UnitKind PKind, class PRatio >
std::istream & operator>> ( std::istream & is,
Unit< PKind, PRatio > & unit )
friend

The documentation for this class was generated from the following file: