Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Math::Interval< T > Class Template Reference

#include <Math.h>

Collaboration diagram for Harlinn::Math::Interval< T >:
[legend]

Public Types

using value_type = T
 

Public Member Functions

constexpr Interval ()=default
 
constexpr Interval (value_type v)
 
constexpr Interval (value_type low, value_type high)
 
constexpr Intervaloperator= (value_type v)
 
constexpr value_type UpperBound () const
 
constexpr value_type LowerBound () const
 
constexpr value_type Midpoint () const
 
constexpr value_type Width () const
 
constexpr value_type operator[] (size_t i) const
 
constexpr operator value_type () const
 
constexpr bool Exactly (value_type v) const
 
constexpr bool operator== (value_type v) const
 
constexpr Interval operator- () const
 
constexpr Interval operator+ (const Interval &i) const
 
constexpr Interval operator- (const Interval &i) const
 
constexpr Interval operator* (const Interval &i) const
 
constexpr Interval operator/ (const Interval &i) const
 
constexpr bool operator== (const Interval &i) const
 
constexpr bool operator!= (value_type f) const
 
std::string ToString () const
 
constexpr Intervaloperator+= (Interval i)
 
constexpr Intervaloperator-= (Interval i)
 
constexpr Intervaloperator*= (Interval i)
 
constexpr Intervaloperator/= (Interval i)
 
constexpr Intervaloperator+= (value_type f)
 
constexpr Intervaloperator-= (value_type f)
 
constexpr Intervaloperator*= (value_type f)
 
constexpr Intervaloperator/= (value_type f)
 

Static Public Member Functions

static constexpr Interval FromValueAndError (value_type v, value_type err)
 

Private Member Functions

constexpr Interval (value_type low, value_type high, bool)
 

Private Attributes

value_type lowerBound_ = static_cast< value_type >( 0 )
 
value_type upperBound_ = static_cast< value_type >( 0 )
 

Member Typedef Documentation

◆ value_type

template<typename T >
using Harlinn::Math::Interval< T >::value_type = T

Constructor & Destructor Documentation

◆ Interval() [1/4]

template<typename T >
Harlinn::Math::Interval< T >::Interval ( )
constexprdefault

◆ Interval() [2/4]

template<typename T >
Harlinn::Math::Interval< T >::Interval ( value_type v)
inlineexplicitconstexpr

◆ Interval() [3/4]

template<typename T >
Harlinn::Math::Interval< T >::Interval ( value_type low,
value_type high )
inlineconstexpr

◆ Interval() [4/4]

template<typename T >
Harlinn::Math::Interval< T >::Interval ( value_type low,
value_type high,
bool  )
inlineconstexprprivate

Member Function Documentation

◆ Exactly()

template<typename T >
bool Harlinn::Math::Interval< T >::Exactly ( value_type v) const
inlineconstexpr

◆ FromValueAndError()

template<typename T >
static constexpr Interval Harlinn::Math::Interval< T >::FromValueAndError ( value_type v,
value_type err )
inlinestaticconstexpr

◆ LowerBound()

template<typename T >
value_type Harlinn::Math::Interval< T >::LowerBound ( ) const
inlineconstexpr

◆ Midpoint()

template<typename T >
value_type Harlinn::Math::Interval< T >::Midpoint ( ) const
inlineconstexpr

◆ operator value_type()

template<typename T >
Harlinn::Math::Interval< T >::operator value_type ( ) const
inlineexplicitconstexpr

◆ operator!=()

template<typename T >
bool Harlinn::Math::Interval< T >::operator!= ( value_type f) const
inlineconstexpr

◆ operator*()

template<typename T >
Interval Harlinn::Math::Interval< T >::operator* ( const Interval< T > & i) const
inlineconstexpr

◆ operator*=() [1/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator*= ( Interval< T > i)
inlineconstexpr

◆ operator*=() [2/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator*= ( value_type f)
inlineconstexpr

◆ operator+()

template<typename T >
Interval Harlinn::Math::Interval< T >::operator+ ( const Interval< T > & i) const
inlineconstexpr

◆ operator+=() [1/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator+= ( Interval< T > i)
inlineconstexpr

◆ operator+=() [2/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator+= ( value_type f)
inlineconstexpr

◆ operator-() [1/2]

template<typename T >
Interval Harlinn::Math::Interval< T >::operator- ( ) const
inlineconstexpr

◆ operator-() [2/2]

template<typename T >
Interval Harlinn::Math::Interval< T >::operator- ( const Interval< T > & i) const
inlineconstexpr

◆ operator-=() [1/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator-= ( Interval< T > i)
inlineconstexpr

◆ operator-=() [2/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator-= ( value_type f)
inlineconstexpr

◆ operator/()

template<typename T >
Interval< FloatT > Harlinn::Math::Interval< FloatT >::operator/ ( const Interval< T > & i) const
inlineconstexpr

◆ operator/=() [1/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator/= ( Interval< T > i)
inlineconstexpr

◆ operator/=() [2/2]

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator/= ( value_type f)
inlineconstexpr

◆ operator=()

template<typename T >
Interval & Harlinn::Math::Interval< T >::operator= ( value_type v)
inlineconstexpr

◆ operator==() [1/2]

template<typename T >
bool Harlinn::Math::Interval< T >::operator== ( const Interval< T > & i) const
inlineconstexpr

◆ operator==() [2/2]

template<typename T >
bool Harlinn::Math::Interval< T >::operator== ( value_type v) const
inlineconstexpr

◆ operator[]()

template<typename T >
value_type Harlinn::Math::Interval< T >::operator[] ( size_t i) const
inlineconstexpr

◆ ToString()

template<typename T >
std::string Harlinn::Math::Interval< T >::ToString ( ) const

◆ UpperBound()

template<typename T >
value_type Harlinn::Math::Interval< T >::UpperBound ( ) const
inlineconstexpr

◆ Width()

template<typename T >
value_type Harlinn::Math::Interval< T >::Width ( ) const
inlineconstexpr

Member Data Documentation

◆ lowerBound_

template<typename T >
value_type Harlinn::Math::Interval< T >::lowerBound_ = static_cast< value_type >( 0 )
private

◆ upperBound_

template<typename T >
value_type Harlinn::Math::Interval< T >::upperBound_ = static_cast< value_type >( 0 )
private

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