Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cValueCurveT< TYPE > Class Template Reference

#include <cValueCurve.h>

Public Types

typedef cValueCurveT< TYPETHIS_t
 
typedef TYPE VALUE_t
 value/dimension type. like DVALUE_t More...
 

Public Member Functions

 cValueCurveT () noexcept
 
 cValueCurveT (const THIS_t &src)
 
THIS_toperator= (const THIS_t &src)
 
bool isEmpty () const noexcept
 
void Init ()
 
ITERATE_t get_EnumQty () const
 
VALUE_t EnumValue (ITERATE_t i) const
 
VALUE_t EnumValueCheck (ITERATE_t i) const
 
VALUE_t GetLinearN (ITERATE_t iSelect, ITERATE_t iSelectRange) const
 
VALUE_t GetLinear1 (float fOne) const
 
void SetValues (ITERATE_t iQty, const VALUE_t *pnVals)
 
void SetValuesRange (VALUE_t nLo, VALUE_t nHi)
 

Static Public Member Functions

static VALUE_t GRAYCALL GetLinearA (const VALUE_t *pnArray, ITERATE_t iQty, ITERATE_t iSelect, ITERATE_t iSelectRange)
 

Protected Attributes

cArrayVal< VALUE_tm_aValues
 array of values for defining the curve. values spaced evenly. More...
 

Detailed Description

template<typename TYPE = float>
class GrayLib::cValueCurveT< TYPE >

Describe an arbitrary curve/spline for a range with an array of values. (not a true spline of course) Sample values spaced evenly. For a curve of uneven/arbitrary spaced values use ... ??

Member Typedef Documentation

◆ THIS_t

template<typename TYPE = float>
typedef cValueCurveT<TYPE> GrayLib::cValueCurveT< TYPE >::THIS_t

◆ VALUE_t

template<typename TYPE = float>
typedef TYPE GrayLib::cValueCurveT< TYPE >::VALUE_t

value/dimension type. like DVALUE_t

Constructor & Destructor Documentation

◆ cValueCurveT() [1/2]

template<typename TYPE = float>
GrayLib::cValueCurveT< TYPE >::cValueCurveT ( )
inlinenoexcept

◆ cValueCurveT() [2/2]

template<typename TYPE = float>
GrayLib::cValueCurveT< TYPE >::cValueCurveT ( const THIS_t src)
inline

Member Function Documentation

◆ EnumValue()

template<typename TYPE = float>
VALUE_t GrayLib::cValueCurveT< TYPE >::EnumValue ( ITERATE_t  i) const
inline

◆ EnumValueCheck()

template<typename TYPE = float>
VALUE_t GrayLib::cValueCurveT< TYPE >::EnumValueCheck ( ITERATE_t  i) const
inline

◆ get_EnumQty()

template<typename TYPE = float>
ITERATE_t GrayLib::cValueCurveT< TYPE >::get_EnumQty ( ) const
inline

◆ GetLinear1()

template<typename TYPE = float>
VALUE_t GrayLib::cValueCurveT< TYPE >::GetLinear1 ( float  fOne) const
inline

Get Linear interpolation value from table. ASSUME fOne is a value in the range 0 to 1.0f

◆ GetLinearA()

template<typename TYPE = float>
static VALUE_t GRAYCALL GrayLib::cValueCurveT< TYPE >::GetLinearA ( const VALUE_t pnArray,
ITERATE_t  iQty,
ITERATE_t  iSelect,
ITERATE_t  iSelectRange 
)
inlinestatic

Get Linear interpolation value from table.

◆ GetLinearN()

template<typename TYPE = float>
VALUE_t GrayLib::cValueCurveT< TYPE >::GetLinearN ( ITERATE_t  iSelect,
ITERATE_t  iSelectRange 
) const
inline

Get Linear interpolation value from table. Percent = iSelect / iSelectRange

◆ Init()

template<typename TYPE = float>
void GrayLib::cValueCurveT< TYPE >::Init ( )
inline

◆ isEmpty()

template<typename TYPE = float>
bool GrayLib::cValueCurveT< TYPE >::isEmpty ( ) const
inlinenoexcept

◆ operator=()

template<typename TYPE = float>
THIS_t& GrayLib::cValueCurveT< TYPE >::operator= ( const THIS_t src)
inline

◆ SetValues()

template<typename TYPE = float>
void GrayLib::cValueCurveT< TYPE >::SetValues ( ITERATE_t  iQty,
const VALUE_t pnVals 
)
inline

Set this to some array of values.

◆ SetValuesRange()

template<typename TYPE = float>
void GrayLib::cValueCurveT< TYPE >::SetValuesRange ( VALUE_t  nLo,
VALUE_t  nHi 
)
inline

Set this to just a simple lo,hi range.

Member Data Documentation

◆ m_aValues

template<typename TYPE = float>
cArrayVal<VALUE_t> GrayLib::cValueCurveT< TYPE >::m_aValues
protected

array of values for defining the curve. values spaced evenly.


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