62     template <
typename ValueType = UInt, 
typename BinSizeType = 
double>
    95       Histogram(BinSizeType min, BinSizeType max, BinSizeType bin_size) :
   109       template <
typename DataIterator>
   110       Histogram(DataIterator 
begin, DataIterator 
end, BinSizeType min, BinSizeType max, BinSizeType bin_size) :
   116         for (DataIterator it = 
begin; it != 
end; ++it)
   118           this->
inc((BinSizeType) *it);
   145         return *(std::max_element(
bins_.begin(), 
bins_.end()));
   151         return *(std::min_element(
bins_.begin(), 
bins_.end()));
   173         if (index >= 
bins_.size())
   187         if (bin_index >= 
bins_.size())
   192         return (BinSizeType)(
min_ + ((BinSizeType)bin_index + 0.5) * 
bin_size_);
   212       Size inc(BinSizeType val, ValueType increment = 1)
   215         this->
bins_[bin_index] += increment;
   220       Size incUntil(BinSizeType val, 
bool inclusive, ValueType increment = 1)
   223         for (
Size i = 0; i < bin_index; ++i)
   225          this->
bins_[i] += increment;
   229           this->
bins_[bin_index] += increment;
   234       Size incFrom(BinSizeType val, 
bool inclusive, ValueType increment = 1)
   237         for (
Size i = bin_index + 1; i < this->
bins_.size(); ++i)
   239           this->
bins_[i] += increment;
   243           this->
bins_[bin_index] += increment;
   248       template< 
typename DataIterator >
   254         for (DataIterator it = 
begin; it != 
end; ++it)
   262             histogram.
incFrom(*it, inclusive);
   273       void reset(BinSizeType min, BinSizeType max, BinSizeType bin_size)
   319         if (&histogram == 
this) 
return *
this;
   344         for (
typename std::vector<ValueType>::iterator it = 
bins_.begin(); it != 
bins_.end(); ++it)
   346           *it = (ValueType)(multiplier * log((BinSizeType)(*it + 1.0f)));
   367         if (val < min_ || val > 
max_)
   384         if (this->bin_size_ <= 0)
   391           if (this->max_ != this->min_)
   397             this->bins_ = std::vector<ValueType>(1, 0);
   404     template <
typename ValueType, 
typename BinSizeType>
   405     std::ostream & operator<<(std::ostream & os, const Histogram<ValueType, BinSizeType> & hist)
   407       for (
Size i = 0; i < hist.size(); ++i)
   409         os << hist.centerOfBin(i) << 
"\t"<< hist[i] << std::endl;
 
Histogram()
default constructor 
Definition: Histogram.h:74
 
Out of range exception. 
Definition: Exception.h:319
 
Size size() const
returns the number of bins 
Definition: Histogram.h:161
 
Histogram(const Histogram &histogram)
copy constructor 
Definition: Histogram.h:82
 
BinSizeType minBound() const
returns the lower bound 
Definition: Histogram.h:131
 
Histogram & operator=(const Histogram &histogram)
Assignment. 
Definition: Histogram.h:317
 
Size inc(BinSizeType val, ValueType increment=1)
increases the bin corresponding to value val by increment 
Definition: Histogram.h:212
 
BinSizeType binSize() const
returns the bin size 
Definition: Histogram.h:155
 
std::vector< ValueType >::const_iterator ConstIterator
Non-mutable iterator of the bins. 
Definition: Histogram.h:68
 
void reset(BinSizeType min, BinSizeType max, BinSizeType bin_size)
resets the histogram with the given range and bin size 
Definition: Histogram.h:273
 
Int overflow exception. 
Definition: Exception.h:254
 
ValueType maxValue() const
returns the highest value of all bins 
Definition: Histogram.h:143
 
ValueType operator[](Size index) const
returns the value of bin index 
Definition: Histogram.h:171
 
bool operator!=(const Histogram &histogram) const
Inequality operator. 
Definition: Histogram.h:311
 
Main OpenMS namespace. 
Definition: FeatureDeconvolution.h:46
 
BinSizeType centerOfBin(Size bin_index) const
returns the center position of the bin with the index bin_index 
Definition: Histogram.h:185
 
ValueType minValue() const
returns the lowest value of all bins 
Definition: Histogram.h:149
 
ConstIterator end() const
Non-mutable iterator pointing after the last bin. 
Definition: Histogram.h:338
 
ValueType binValue(BinSizeType val) const
returns the value of bin corresponding to the value val 
Definition: Histogram.h:200
 
BinSizeType bin_size_
Bin size. 
Definition: Histogram.h:356
 
Size incFrom(BinSizeType val, bool inclusive, ValueType increment=1)
Definition: Histogram.h:234
 
virtual ~Histogram()
destructor 
Definition: Histogram.h:124
 
Representation of a histogram. 
Definition: Histogram.h:63
 
Histogram(BinSizeType min, BinSizeType max, BinSizeType bin_size)
constructor with min, max and bin size 
Definition: Histogram.h:95
 
Size incUntil(BinSizeType val, bool inclusive, ValueType increment=1)
Definition: Histogram.h:220
 
std::vector< ValueType > bins_
Vector of bins. 
Definition: Histogram.h:358
 
static void getCumulativeHistogram(DataIterator begin, DataIterator end, bool complement, bool inclusive, Histogram< ValueType, BinSizeType > &histogram)
Definition: Histogram.h:249
 
bool operator==(const Histogram &histogram) const
Equality operator. 
Definition: Histogram.h:302
 
void applyLogTransformation(BinSizeType multiplier)
Transforms the bin values with f(x)=multiplier*log(x+1) 
Definition: Histogram.h:342
 
size_t Size
Size type e.g. used as variable which can hold result of size() 
Definition: Types.h:127
 
Size valToBin_(BinSizeType val) const
Returns the bin a given value belongs to. 
Definition: Histogram.h:364
 
void initBins_()
initialize the bins 
Definition: Histogram.h:382
 
BinSizeType maxBound() const
returns the upper bound 
Definition: Histogram.h:137
 
ConstIterator begin() const
Non-mutable iterator pointing to the first bin. 
Definition: Histogram.h:335
 
BinSizeType min_
Lower bound. 
Definition: Histogram.h:352
 
BinSizeType max_
Upper bound. 
Definition: Histogram.h:354
 
Histogram(DataIterator begin, DataIterator end, BinSizeType min, BinSizeType max, BinSizeType bin_size)
constructor with data iterator and min, max, bin_size parameters 
Definition: Histogram.h:110