Jpp  master_rocky-43-ge265d140c
the software that should make you happy
Public Member Functions | Private Attributes | List of all members
JMATH::JQuantile_t Struct Reference

Auxiliary data structure for average. More...

#include <JQuantile_t.hh>

Public Member Functions

 JQuantile_t ()
 Default constructor. More...
 
void reset ()
 Reset. More...
 
void put (const double x)
 Put value. More...
 
double getMean () const
 Get mean value. More...
 
double getMean (const double value) const
 Get mean value. More...
 

Private Attributes

std::vector< double > buffer
 

Detailed Description

Auxiliary data structure for average.

The determination of the average should be independent of the order of the input values.

Definition at line 25 of file JQuantile_t.hh.

Constructor & Destructor Documentation

◆ JQuantile_t()

JMATH::JQuantile_t::JQuantile_t ( )
inline

Default constructor.

Definition at line 29 of file JQuantile_t.hh.

30  {
31  reset();
32  }
void reset()
Reset.
Definition: JQuantile_t.hh:38

Member Function Documentation

◆ reset()

void JMATH::JQuantile_t::reset ( )
inline

Reset.

Definition at line 38 of file JQuantile_t.hh.

39  {
40  buffer.clear();
41  }
std::vector< double > buffer
Definition: JQuantile_t.hh:90

◆ put()

void JMATH::JQuantile_t::put ( const double  x)
inline

Put value.

Parameters
xvalue

Definition at line 49 of file JQuantile_t.hh.

50  {
51  buffer.push_back(x);
52  }

◆ getMean() [1/2]

double JMATH::JQuantile_t::getMean ( ) const
inline

Get mean value.

Returns
mean value

Definition at line 60 of file JQuantile_t.hh.

61  {
62  using namespace std;
63 
64  if (!buffer.empty()) {
65 
66  sort(buffer.begin(), buffer.end());
67 
68  return accumulate(buffer.begin(), buffer.end(), 0.0) / buffer.size();
69  }
70 
71  THROW(JDivisionByZero, "JQuantile_t::getMean()");
72  }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:712
void accumulate(T &value, JBool< false > option)
Accumulation of value.
Definition: JSTDTypes.hh:14

◆ getMean() [2/2]

double JMATH::JQuantile_t::getMean ( const double  value) const
inline

Get mean value.

Parameters
valuedefault value
Returns
mean value

Definition at line 81 of file JQuantile_t.hh.

82  {
83  if (!buffer.empty())
84  return getMean();
85  else
86  return value;
87  }
double getMean() const
Get mean value.
Definition: JQuantile_t.hh:60

Member Data Documentation

◆ buffer

std::vector<double> JMATH::JQuantile_t::buffer
mutableprivate

Definition at line 90 of file JQuantile_t.hh.


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