31#ifndef ETL_MEAN_INCLUDED
32#define ETL_MEAN_INCLUDED
43 namespace private_mean
48 template <
typename TInput,
typename TCalc>
57 template <
typename TCalc>
66 template <
typename TCalc>
69 typedef double calc_t;
76 template <
typename TInput,
typename TCalc = TInput>
83 typedef typename private_mean::mean_traits<TInput, TCalc>::calc_t calc_t;
98 template <
typename TIterator>
99 mean(TIterator first, TIterator last)
118 template <
typename TIterator>
119 void add(TIterator first, TIterator last)
121 while (first != last)
141 template <
typename TIterator>
158 double n = double(counter);
159 mean_value = sum / n;
171 operator double()
const
181 return size_t(counter);
199 mutable double mean_value;
200 mutable bool recalculate;
Mean.
Definition: mean.h:80
mean(TIterator first, TIterator last)
Constructor.
Definition: mean.h:99
mean()
Constructor.
Definition: mean.h:90
void clear()
Clear the correlation.
Definition: mean.h:187
size_t count() const
Get the total number added entries.
Definition: mean.h:179
void operator()(TInput value)
Definition: mean.h:132
void add(TIterator first, TIterator last)
Add a range.
Definition: mean.h:119
void add(TInput value)
Add a pair of values.
Definition: mean.h:108
double get_mean() const
Get the mean.
Definition: mean.h:150
bitset_ext
Definition: absolute.h:38
Definition: functional.h:125
Types for generic mean.
Definition: mean.h:50