boca::Range< Value_ > Class Template Reference

Range between two values. More...

#include <Range.hh>

Public Member Functions

 Range ()
 
 Range (Value_ min, Value_ max)
 
 Range (Value_ degenerate)
 
template<typename Value_2_ >
 Range (Value_2_ min, Value_2_ max)
 
template<typename Value_2_ >
 Range (Range< Value_2_ > const &range)
 
void SetMin (Value_ min)
 
void SetMax (Value_ max)
 
void Set (Value_ min, Value_ max)
 
void Set (std::pair< Value_, Value_ > const pair)
 
void Widen (Range< Value_ > const &bound)
 
void Widen (double factor)
 
void WidenMin (Value_ min)
 
void WidenMax (Value_ max)
 
Value_ Min () const
 
Value_ Max () const
 
Value_ Floor () const
 
Value_ Ceil () const
 
bool Inside (Value_ value) const
 
bool Outside (Value_ value) const
 
template<typename Value_2_ >
Value_ Constrain (Value_2_ value)
 
Value_ Length () const
 
Value_ Sum () const
 
 operator bool () const
 
template<typename Value_2_ >
Range< ValueProduct< Value_, Value_2_ > > Scale (Value_2_ const &scalar) const
 
void Log ()
 

Friends

template<typename Value_2_ >
Range< ValueProduct< Value_, Value_2_ > > operator* (Range const &range, Value_2_ const &scalar)
 
template<typename Value_2_ >
Range< ValueQuotient< Value_, Value_2_ > > operator/ (Range const &range, Value_2_ const &scalar)
 
auto & operator<< (std::ostream &stream, Range const &range)
 Output stream operator. More...
 

Detailed Description

template<typename Value_>
class boca::Range< Value_ >

Range between two values.

Constructor & Destructor Documentation

template<typename Value_>
boca::Range< Value_ >::Range ( )
inline
template<typename Value_>
boca::Range< Value_ >::Range ( Value_  min,
Value_  max 
)
inline
template<typename Value_>
boca::Range< Value_ >::Range ( Value_  degenerate)
inline
template<typename Value_>
template<typename Value_2_ >
boca::Range< Value_ >::Range ( Value_2_  min,
Value_2_  max 
)
inline
template<typename Value_>
template<typename Value_2_ >
boca::Range< Value_ >::Range ( Range< Value_2_ > const &  range)
inline

Member Function Documentation

template<typename Value_>
Value_ boca::Range< Value_ >::Ceil ( ) const
inline
template<typename Value_>
template<typename Value_2_ >
Value_ boca::Range< Value_ >::Constrain ( Value_2_  value)
inline
template<typename Value_>
Value_ boca::Range< Value_ >::Floor ( ) const
inline
template<typename Value_>
bool boca::Range< Value_ >::Inside ( Value_  value) const
inline
template<typename Value_>
Value_ boca::Range< Value_ >::Length ( ) const
inline
template<typename Value_>
void boca::Range< Value_ >::Log ( )
inline
template<typename Value_>
Value_ boca::Range< Value_ >::Max ( ) const
inline
template<typename Value_>
Value_ boca::Range< Value_ >::Min ( ) const
inline
template<typename Value_>
boca::Range< Value_ >::operator bool ( ) const
inline
template<typename Value_>
bool boca::Range< Value_ >::Outside ( Value_  value) const
inline
template<typename Value_>
template<typename Value_2_ >
Range<ValueProduct<Value_, Value_2_> > boca::Range< Value_ >::Scale ( Value_2_ const &  scalar) const
inline
template<typename Value_>
void boca::Range< Value_ >::Set ( Value_  min,
Value_  max 
)
inline
template<typename Value_>
void boca::Range< Value_ >::Set ( std::pair< Value_, Value_ > const  pair)
inline
template<typename Value_>
void boca::Range< Value_ >::SetMax ( Value_  max)
inline
template<typename Value_>
void boca::Range< Value_ >::SetMin ( Value_  min)
inline
template<typename Value_>
Value_ boca::Range< Value_ >::Sum ( ) const
inline
template<typename Value_>
void boca::Range< Value_ >::Widen ( Range< Value_ > const &  bound)
inline
template<typename Value_>
void boca::Range< Value_ >::Widen ( double  factor)
inline
template<typename Value_>
void boca::Range< Value_ >::WidenMax ( Value_  max)
inline
template<typename Value_>
void boca::Range< Value_ >::WidenMin ( Value_  min)
inline

Friends And Related Function Documentation

template<typename Value_>
template<typename Value_2_ >
Range<ValueProduct<Value_, Value_2_> > operator* ( Range< Value_ > const &  range,
Value_2_ const &  scalar 
)
friend
template<typename Value_>
template<typename Value_2_ >
Range<ValueQuotient<Value_, Value_2_> > operator/ ( Range< Value_ > const &  range,
Value_2_ const &  scalar 
)
friend
template<typename Value_>
auto& operator<< ( std::ostream &  stream,
Range< Value_ > const &  range 
)
friend

Output stream operator.


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