cisst-saw
Loading...
Searching...
No Matches
mtsIntervalStatistics Class Reference

#include <mtsIntervalStatistics.h>

Inheritance diagram for mtsIntervalStatistics:
mtsGenericObject cmnGenericObject

Public Types

typedef unsigned long long int TimeTicksType
typedef mtsGenericObject BaseType

Public Member Functions

const double & PeriodAvg (void) const
const double & PeriodStdDev (void) const
const double & PeriodMin (void) const
const double & PeriodMax (void) const
const double & ComputeTimeAvg (void) const
const double & ComputeTimeStdDev (void) const
const double & ComputeTimeMin (void) const
const double & ComputeTimeMax (void) const
const unsigned int & NumberOfSamples (void) const
const unsigned int & NumberOfOverruns (void) const
void SetStatisticsInterval (const double &time)
const double & StatisticsInterval (void) const
void Update (const double sample, const double computeTime)
void SetCallback (mtsCallableVoidBase *callback)
template<class __classType>
void SetCallback (void(__classType::*method)(void), __classType *classInstantiation)
void Reset (void)
void SetFromExisting (const double periodAvg, const double periodStdDev, const double periodMin, const double periodMax, const double computeTimeAvg, const double computeTimeStdDev, const double computeTimeMin, const double computeTimeMax, const unsigned int numberOfSamples, const unsigned int numberOfOverruns, const double statisticsInterval)
 mtsIntervalStatistics ()
 ~mtsIntervalStatistics ()
void ToStream (std::ostream &outputStream) const override
void ToStreamRaw (std::ostream &outputStream, const char delimiter=' ', bool headerOnly=false, const std::string &headerPrefix="") const override
void SerializeRaw (std::ostream &outputStream) const override
void DeSerializeRaw (std::istream &inputStream) override
Public Member Functions inherited from mtsGenericObject
 mtsGenericObject (void)
 mtsGenericObject (double timestamp, bool automaticTimestamp, bool valid)
 mtsGenericObject (const mtsGenericObject &other)
virtual ~mtsGenericObject (void)
mtsGenericObjectoperator= (const mtsGenericObject &other)
bool SetTimestampIfAutomatic (double timestamp)
virtual bool FromStreamRaw (std::istream &inputStream, const char delimiter=' ')
size_t ScalarNumber (void) const
bool ScalarNumberIsFixed (void) const
Public Member Functions inherited from cmnGenericObject
virtual ~cmnGenericObject (void)
virtual const cmnClassServicesBaseServices (void) const =0
bool ReconstructFrom (const cmnGenericObject &other)
std::string ToString (void) const
virtual cmnLogger::StreamBufTypeGetLogMultiplexer (void) const
virtual double Scalar (const size_t CMN_UNUSED(index)) const CISST_THROW(std
virtual std::string ScalarDescription (const size_t CMN_UNUSED(index), const std::string &CMN_UNUSED(userDescription)) const

Detailed Description

Calculate the statistics (avg,std,min,max) on the vector of data that is added one sample at time. AddSample checks if the statistics need to be recalculated after a given period elapses (eg 1sec).

Member Typedef Documentation

◆ BaseType

◆ TimeTicksType

typedef unsigned long long int mtsIntervalStatistics::TimeTicksType

TimeTicks are typedef'ed as unsigned long long (64 bits)

Constructor & Destructor Documentation

◆ mtsIntervalStatistics()

mtsIntervalStatistics::mtsIntervalStatistics ( )

◆ ~mtsIntervalStatistics()

mtsIntervalStatistics::~mtsIntervalStatistics ( )
inline

Member Function Documentation

◆ ComputeTimeAvg()

const double & mtsIntervalStatistics::ComputeTimeAvg ( void ) const
inline

The measured compute time average.

◆ ComputeTimeMax()

const double & mtsIntervalStatistics::ComputeTimeMax ( void ) const
inline

Get maximum compute time.

◆ ComputeTimeMin()

const double & mtsIntervalStatistics::ComputeTimeMin ( void ) const
inline

Get minimum compute time.

◆ ComputeTimeStdDev()

const double & mtsIntervalStatistics::ComputeTimeStdDev ( void ) const
inline

The measured standard deviation for compute time average.

◆ DeSerializeRaw()

void mtsIntervalStatistics::DeSerializeRaw ( std::istream & inputStream)
overridevirtual

De-serialize the content of the object without any extra information, i.e. no class type nor format version.

Reimplemented from mtsGenericObject.

◆ NumberOfOverruns()

const unsigned int & mtsIntervalStatistics::NumberOfOverruns ( void ) const
inline

Get number of overruns, i.e. compute time greater than average period in previous interval.

◆ NumberOfSamples()

const unsigned int & mtsIntervalStatistics::NumberOfSamples ( void ) const
inline

Get number of samples used for time window

◆ PeriodAvg()

const double & mtsIntervalStatistics::PeriodAvg ( void ) const
inline

The measured period average.

◆ PeriodMax()

const double & mtsIntervalStatistics::PeriodMax ( void ) const
inline

The measured maximum period of the task

◆ PeriodMin()

const double & mtsIntervalStatistics::PeriodMin ( void ) const
inline

The measured minimum period of the task

◆ PeriodStdDev()

const double & mtsIntervalStatistics::PeriodStdDev ( void ) const
inline

The measured standard deviation for period average.

◆ Reset()

void mtsIntervalStatistics::Reset ( void )

◆ SerializeRaw()

void mtsIntervalStatistics::SerializeRaw ( std::ostream & outputStream) const
overridevirtual

Serialize the content of the object without any extra information, i.e. no class type nor format version. The "receiver" is supposed to already know what to expect.

Reimplemented from mtsGenericObject.

◆ SetCallback() [1/2]

void mtsIntervalStatistics::SetCallback ( mtsCallableVoidBase * callback)
inline

Set callback to act on updated statistics

◆ SetCallback() [2/2]

template<class __classType>
void mtsIntervalStatistics::SetCallback ( void(__classType::* method )(void),
__classType * classInstantiation )
inline

◆ SetFromExisting()

void mtsIntervalStatistics::SetFromExisting ( const double periodAvg,
const double periodStdDev,
const double periodMin,
const double periodMax,
const double computeTimeAvg,
const double computeTimeStdDev,
const double computeTimeMin,
const double computeTimeMax,
const unsigned int numberOfSamples,
const unsigned int numberOfOverruns,
const double statisticsInterval )
inline

◆ SetStatisticsInterval()

void mtsIntervalStatistics::SetStatisticsInterval ( const double & time)
inline

Time period between period statistics calculations

◆ StatisticsInterval()

const double & mtsIntervalStatistics::StatisticsInterval ( void ) const
inline

Get time period between period statistics calculations

◆ ToStream()

void mtsIntervalStatistics::ToStream ( std::ostream & outputStream) const
overridevirtual

Human readable text output

Reimplemented from mtsGenericObject.

◆ ToStreamRaw()

void mtsIntervalStatistics::ToStreamRaw ( std::ostream & outputStream,
const char delimiter = ' ',
bool headerOnly = false,
const std::string & headerPrefix = "" ) const
overridevirtual

Machine reabable text output

Reimplemented from mtsGenericObject.

◆ Update()

void mtsIntervalStatistics::Update ( const double sample,
const double computeTime )

Add one sample to compute statistics


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