All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Resonant::LevelMeasurement< T > Class Template Reference

A level meter. More...

#include <Resonant/LimiterAlgorithm.hpp>

Public Member Functions

 LevelMeasurement ()
 Creates a new level meter (no further initializations needed)
 
const T & peak () const
 Current peak value.
 
void put (T vabs, unsigned holdTime)
 Puts a new sample to the meter. More...
 
void put (T value, T vfloor, unsigned holdTime)
 Puts a new sample to the meter. More...
 
void reset ()
 Resets level to zero.
 
void reset (T value)
 Resets level to zero.
 

Protected Attributes

unsigned m_time
 
m_v1
 
m_v2
 

Detailed Description

template<class T>
class Resonant::LevelMeasurement< T >

A level meter.

This class is completely inlined.

A level meter measures signal amplitude. It is assumed that the signal is always positive (take absolute value of your data, before feeding it here, if necessary).

Member Function Documentation

template<class T>
void Resonant::LevelMeasurement< T >::put ( vabs,
unsigned  holdTime 
)
inline

Puts a new sample to the meter.

Parameters
vabsNew sample (absolute value)
holdTimeTime to hold the peak value
template<class T>
void Resonant::LevelMeasurement< T >::put ( value,
vfloor,
unsigned  holdTime 
)
inline

Puts a new sample to the meter.

Parameters
valueNew sample
vfloorFloor value
holdTimeTime to hold the peak value