DUECA/DUSIME
Loading...
Searching...
No Matches
Public Member Functions | List of all members
InputCalibrator< T, R > Class Template Reference

Class that performs calibration and scaling of an incoming integer value from an A/D converter or other input device. More...

#include <InputCalibrator.hxx>

Public Member Functions

 InputCalibrator (const R in_min, const R in_max, const T &c, unsigned int idx=0)
 Constructor.
 
 ~InputCalibrator ()
 Destructor.
 
 operator double () const
 Obtain the converted value.
 
raw () const
 Obtain the raw integer value.
 
void newConversion (const R i)
 Insert a new converted value into the calibrator.
 
bitDifference (const double r) const
 Return the difference between the given value and the measured value in bit domain.
 
unsigned int index () const
 The index is a variable for user convenience, e.g.
 
std::ostream & print (std::ostream &os) const
 Print to stream, for debugging purposes.
 

Detailed Description

template<class T, class R = int>
class InputCalibrator< T, R >

Class that performs calibration and scaling of an incoming integer value from an A/D converter or other input device.

It is a templated class, and the template parameter must be a class capable of scaling the incoming values.

Constructor & Destructor Documentation

◆ InputCalibrator()

template<class T , class R = int>
InputCalibrator< T, R >::InputCalibrator ( const R in_min,
const R in_max,
const T & c,
unsigned int idx = 0 )

Constructor.

Takes a converter as argument.

Parameters
in_minMinimum integer value
in_maxMaximum integer value
cConverter of (template) type T, the operation operator() (const double x) should exist for values between in_min and in_max, and should produce the required converted/scaled value.
idxOptional index to be stored with the calibrator.

Member Function Documentation

◆ bitDifference()

template<class T , class R = int>
R InputCalibrator< T, R >::bitDifference ( const double r) const

Return the difference between the given value and the measured value in bit domain.

Parameters
rValue for comparison
Returns
  • 0 if the difference is 1 bit or less
  • 1 if the value is two bits larger
  • -1 if the value is two bits smaller
  • 2 respectively -2 if the value is three bits or more larger or smaller.

◆ index()

template<class T , class R = int>
unsigned int InputCalibrator< T, R >::index ( ) const
inline

The index is a variable for user convenience, e.g.

to remember where in an array of raw data the input value is stored.


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