HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Friends
au::QuantityPoint< UnitT, RepT > Class Template Reference

Public Types

using Rep = RepT
 
using Unit = UnitT
 
using Diff = Quantity<Unit, Rep>
 

Public Member Functions

template<typename OtherUnit , typename OtherRep , typename Enable = EnableIfImplicitOkIs<true, OtherUnit, OtherRep>>
constexpr QuantityPoint (QuantityPoint< OtherUnit, OtherRep > other)
 
template<typename OtherUnit , typename OtherRep , typename Enable = EnableIfImplicitOkIs<false, OtherUnit, OtherRep>, typename ThisUnusedTemplateParameterDistinguishesUsFromTheAboveConstructor = void>
constexpr QuantityPoint (QuantityPoint< OtherUnit, OtherRep > other)=delete
 
constexpr QuantityPoint (Zero)=delete
 
template<typename NewRep , typename NewUnit , typename = std::enable_if_t<IsUnit<NewUnit>::value>>
constexpr auto as (NewUnit u) const
 
template<typename NewUnit , typename = std::enable_if_t<IsUnit<NewUnit>::value>>
constexpr auto as (NewUnit u) const
 
template<typename NewRep , typename NewUnit , typename = std::enable_if_t<IsUnit<NewUnit>::value>>
constexpr NewRep in (NewUnit u) const
 
template<typename NewUnit , typename = std::enable_if_t<IsUnit<NewUnit>::value>>
constexpr Rep in (NewUnit u) const
 
template<typename NewRep , typename NewUnit >
constexpr auto as (QuantityPointMaker< NewUnit >) const
 
template<typename NewUnit >
constexpr auto as (QuantityPointMaker< NewUnit >) const
 
template<typename NewRep , typename NewUnit >
constexpr NewRep in (QuantityPointMaker< NewUnit >) const
 
template<typename NewUnit >
constexpr Rep in (QuantityPointMaker< NewUnit >) const
 
template<typename U >
constexpr auto as () const -> decltype(as(U{}))
 
template<typename U , typename R , typename = std::enable_if_t<IsUnit<U>::value>>
constexpr auto as () const
 
template<typename U >
constexpr auto in () const -> decltype(in(U{}))
 
template<typename U , typename R , typename = std::enable_if_t<IsUnit<U>::value>>
constexpr auto in () const
 
template<typename NewUnit >
constexpr auto coerce_as (NewUnit) const
 
template<typename NewRep , typename NewUnit >
constexpr auto coerce_as (NewUnit) const
 
template<typename NewUnit >
constexpr auto coerce_in (NewUnit) const
 
template<typename NewRep , typename NewUnit >
constexpr auto coerce_in (NewUnit) const
 
template<typename U >
Rep & data_in (const QuantityPointMaker< U > &)
 
template<typename U >
Rep & data_in (const U &)
 
template<typename U >
const Rep & data_in (const QuantityPointMaker< U > &) const
 
template<typename U >
const Rep & data_in (const U &) const
 
constexpr QuantityPointoperator+= (Diff diff)
 
constexpr QuantityPointoperator-= (Diff diff)
 

Static Public Attributes

static constexpr Unit unit {}
 

Friends

struct QuantityPointMaker< Unit >
 
constexpr friend bool operator== (QuantityPoint a, QuantityPoint b)
 
constexpr friend bool operator!= (QuantityPoint a, QuantityPoint b)
 
constexpr friend bool operator>= (QuantityPoint a, QuantityPoint b)
 
constexpr friend bool operator> (QuantityPoint a, QuantityPoint b)
 
constexpr friend bool operator<= (QuantityPoint a, QuantityPoint b)
 
constexpr friend bool operator< (QuantityPoint a, QuantityPoint b)
 
constexpr friend Diff operator- (QuantityPoint a, QuantityPoint b)
 
constexpr friend auto operator+ (Diff d, QuantityPoint p)
 
constexpr friend auto operator+ (QuantityPoint p, Diff d)
 
constexpr friend auto operator- (QuantityPoint p, Diff d)
 

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