DUECA/DUSIME
Loading...
Searching...
No Matches
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.
R raw () const
 Obtain the raw integer value.
void newConversion (const R i)
 Insert a new converted value into the calibrator.
R 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:
  • /home/abuild/rpmbuild/BUILD/dueca-4.3.2-build/dueca-4.3.2/extra/InputCalibrator.hxx