17 #ifndef HPP_STATISTICS_BIN_HH
18 # define HPP_STATISTICS_BIN_HH
28 namespace statistics {
39 const std::size_t&
freq ()
const
46 std::size_t operator ++()
53 std::size_t operator ++(
int)
59 virtual std::ostream&
print (std::ostream& os)
const
61 return printValue (os << freq () <<
" - ");
65 virtual std::ostream&
printValue (std::ostream& os)
const = 0;
84 template <
typename T >
96 virtual std::size_t
freq (
const T& bin)
const;
114 return bins_.size ();
118 virtual std::ostream&
print (std::ostream& os)
const;
128 return bins_.begin();
151 virtual T&
increment (
const T& bin) __attribute__ ((deprecated));
164 template <
typename T >
172 namespace statistics {
173 template <
typename T >
178 for (; it != bins_.end (); it++) {
181 it = bins_.insert (it, b);
186 it = bins_.insert (it, b);
191 template <
typename T >
196 for (; it != bins_.end (); it++) {
199 it = bins_.insert (it, b);
204 it = bins_.insert (it, b);
209 template <
typename T>
213 it != bins_.end (); it++) {
223 template <
typename T>
template <
typename U >
229 template <
typename T >
233 if (it == bins_.end ()) {
239 template <
typename T >
243 if (it == bins_.end ()) {
249 template <
typename T >
253 template <
typename T >
257 for (it = begin(); it != end(); it++) {
258 it->print (os) << std::endl;
260 os <<
"Total number of observations: " << numberOfObservations ();
264 template <
typename T >
267 return ss.
print (os);
virtual std::ostream & print(std::ostream &os) const
Print the bin.
Definition: bin.hh:59
const std::size_t & freq() const
Return the number of element in the bin.
Definition: bin.hh:39
Bin()
Constructor.
Definition: bin.hh:69
virtual std::ostream & printValue(std::ostream &os) const =0
Print the inner value of the bin.
virtual std::size_t freq(const T &bin) const
Definition: bin.hh:230
virtual iterator insert(const T &bin)
Definition: bin.hh:192
const_iterator end() const
Definition: bin.hh:133
void clear()
Remove all element.
Definition: bin.hh:139
virtual Proba_t relativeFreq(const T &bin) const
Definition: bin.hh:240
const_iterator find(const T &bin) const
Definition: bin.hh:210
virtual T & increment(const T &bin) __attribute__((deprecated))
Definition: bin.hh:174
Container::const_iterator const_iterator
Definition: bin.hh:90
Container::iterator iterator
Definition: bin.hh:89
std::list< T > Container
Definition: bin.hh:88
virtual std::ostream & print(std::ostream &os) const
Put the results in a stream.
Definition: bin.hh:254
unsigned int numberOfBins() const
Return the number of bins.
Definition: bin.hh:112
const_iterator begin() const
Definition: bin.hh:126
Statistics()
Constructor.
Definition: bin.hh:250
const_iterator find(const U &value) const
Definition: bin.hh:224
std::size_t numberOfObservations() const
Definition: bin.hh:106
#define HPP_STATISTICS_DLLAPI
Definition: config.hh:64
double Proba_t
Definition: fwd.hh:22
std::ostream & operator<<(std::ostream &os, const hpp::statistics::Bin &b)
Definition: bin.hh:76
Implementation.
Definition: main.hh:17