#include <Bins1DHist.h>
Definition at line 38 of file Bins1DHist.h.
Public Member Functions | |
virtual void | accumulate (double x, double w=1.0, double i1=0.0, double i2=0.0) |
Accumulates a data point x into a bin with weight w. | |
int | binNumber (double x) |
Returns the number of the bin in which the x value is situated. | |
Bins1DHist (const Bins1DHist &binner) | |
The copy constructor. | |
Bins1DHist () | |
The default constructor. | |
virtual double | binWidth (hippodraw::Axes::Type axis) const |
Returns the bin width parameter on the specified axis. | |
double | binWidth (int i) const |
Returns the width of each bin. | |
double | calcBinWidth (hippodraw::Axes::Type axis, int parm, bool dragging) const |
Calculates the bin width from dragging slider. | |
virtual double | calcOffset (const std::string &, int parm, bool dragging) const |
Calculates and returns a new range from dragging slider. | |
BinsBase * | clone () const |
The clone function returns an object of its own kind which is a copy of this object at this moment. | |
virtual NTuple * | createNTuple () const |
Creates a NTuple. | |
virtual void | fillDataSource (DataSource *ntuple) const |
Fills the DataSource. | |
virtual const BinnerAxis * | getBinnerOn (hippodraw::Axes::Type axis) const |
Returns the BinnerAxis object used by this object. | |
double | getHigh () const |
Returns the lower edge of the last + 1 bin through binner_axis. | |
virtual int | getMinEntries () |
Get the minimum entries/bin. | |
virtual int | getNumberOfAxes () const |
Returns the number of axes handled by the BinsBase derived class. | |
virtual int | getNumberOfEntries (int i) const |
implementation from pure base | |
virtual int | getNumberOfEntries () const |
implementation from pure base | |
virtual double | getOffset (hippodraw::Axes::Type axis) const |
Returns the offset parameter on specific axis. | |
virtual int | getOverflow () const |
implementation from pure base | |
virtual const Range & | getRange (hippodraw::Axes::Type axis) |
Returns range from binner axis. | |
virtual int | getUnderflow () const |
implementation from pure base | |
virtual double | getZValue (double x, double y) const |
Get the z value at the specified point (x,y). | |
virtual bool | hasEqualWidths () const |
Returns true if all bins have the same width. | |
bool | isDirty () |
Returns true if the re-accumulation is needed. | |
bool | isEmpty () const |
Returns true if no accumulation has yet occurred, otherwise returns false . | |
double | maxBin () |
Returns the value of the bin with the largest value. | |
double | minBin () |
Returns the value of the bin with the smallest value. | |
const std::string & | name () const |
Returns the name of the Bins container object. | |
virtual int | numberOfBins (hippodraw::Axes::Type axis) const |
Returns the number of bins on specified axis. | |
virtual void | reset () |
Resets the accumulation to zero. | |
virtual double | scaleFactor () const |
Returns the scale factor. | |
virtual void | scaleNumberOfEntries (double number) |
Sets a scale factor on the output so that the number of entries appears to be number. | |
virtual void | setBinContents (const DataSource *ntuple) |
virtual void | setBinnerOn (BinnerAxis *, hippodraw::Axes::Type axis) |
Sets a new BinnerAxis for the binner to use. | |
virtual const Range & | setBinWidth (hippodraw::Axes::Type axis, double value) |
Sets the bin width parameter on the specified axis. | |
void | setDirty () |
Sets a flag to indicate that re-binning needs to be done. | |
virtual void | setEntriesScaling (bool on) |
Sets the scaling number of entries on if on is true , otherwise turns if off. | |
virtual void | setMinEntries (int entries) |
Set the minimum entries/bin. | |
virtual void | setNumberOfBins (hippodraw::Axes::Type axis, int num_bins) |
Sets the number of bins on the the specified axis. | |
virtual void | setOffset (hippodraw::Axes::Type axis, double value) |
Sets the offset parameter on the specified axis. | |
virtual const Range & | setRange (hippodraw::Axes::Type axis, const Range &, bool hold_width=true) |
Sets the Range on the specified axis. | |
virtual | ~Bins1DHist () |
The destructor. | |
Protected Member Functions | |
virtual double | getLow (hippodraw::Axes::Type axis) const |
Returns the low value of the bins on the specified axis. | |
virtual NTuple * | prepareNTuple (unsigned int rows) const |
Prepares the NTuple. | |
Protected Attributes | |
BinnerAxis * | binner_axis |
The binner axis object. | |
bool | m_empty |
A flag set to true , when no accumulation has yet occurred, otherwise is set false . | |
bool | m_is_scaling |
A flag which is set true to enable scaling the output. | |
double | m_scale_factor |
The scale factor. | |
bool | m_values_dirty |
A flag to indicate that the objects in m_values are not correct. | |
Private Member Functions | |
virtual void | resize (int size) |
Resizes the internal arrays. | |
Private Attributes | |
std::vector< double > | m_data |
The array of binned data. | |
int | m_min_entries |
The minimum number of entries/bin. | |
double | m_moments [3] |
The moments. | |
std::vector< double > | m_variance |
The accumulated square of the weights. |
Bins1DHist | ( | ) |
The default constructor.
Definition at line 38 of file Bins1DHist.cxx.
References Bins1DHist::m_min_entries.
Referenced by Bins1DHist::clone().
Bins1DHist | ( | const Bins1DHist & | binner | ) |
The copy constructor.
Definition at line 44 of file Bins1DHist.cxx.
References Bins1DHist::m_moments.
~Bins1DHist | ( | ) | [virtual] |
void accumulate | ( | double | x, | |
double | w = 1.0 , |
|||
double | i1 = 0.0 , |
|||
double | i2 = 0.0 | |||
) | [virtual] |
Accumulates a data point x into a bin with weight w.
The remaining arguments are ignored.
Implements BinsBase.
Definition at line 115 of file Bins1DHist.cxx.
References Bins1DBase::binNumber(), Bins1DHist::m_data, BinsBase::m_empty, Bins1DHist::m_moments, and Bins1DHist::m_variance.
int binNumber | ( | double | x | ) | [inline, inherited] |
Returns the number of the bin in which the x value is situated.
Definition at line 137 of file Bins1DBase.h.
References BinnerAxis::axisBinNumber(), and Bins1DBase::binner_axis.
Referenced by Bins1DProfile::accumulate(), and Bins1DHist::accumulate().
double binWidth | ( | hippodraw::Axes::Type | axis | ) | const [virtual, inherited] |
Returns the bin width parameter on the specified axis.
If the bins have all the same width, then returns the bin width. If the bin width are determined by some algorithm, then returns a parameter used to calculate the bin widths.
Implements BinsBase.
Definition at line 125 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, BinnerAxis::getConstWid(), and hippodraw::Axes::X.
double binWidth | ( | int | i | ) | const [inherited] |
Returns the width of each bin.
Returns the width of the bin with index i. The first bin has index 0 and the last bin has index of number of bins minus 1.
Definition at line 113 of file Bins1DBase.cxx.
References BinnerAxis::axisBinWidth(), and Bins1DBase::binner_axis.
Referenced by Bins1DProfile::fillDataSource(), and Bins1DHist::fillDataSource().
double calcBinWidth | ( | hippodraw::Axes::Type | axis, | |
int | parm, | |||
bool | dragging | |||
) | const [virtual, inherited] |
Calculates the bin width from dragging slider.
Implements BinsBase.
Definition at line 146 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, BinnerAxis::calcBinWidth(), and hippodraw::Axes::X.
double calcOffset | ( | const std::string & | axis, | |
int | parm, | |||
bool | dragging | |||
) | const [virtual, inherited] |
Calculates and returns a new range from dragging slider.
Implements BinsBase.
Definition at line 155 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, and BinnerAxis::calcOffset().
BinsBase * clone | ( | ) | const [virtual] |
The clone function returns an object of its own kind which is a copy of this object at this moment.
Implements BinsBase.
Definition at line 54 of file Bins1DHist.cxx.
References Bins1DHist::Bins1DHist().
NTuple * createNTuple | ( | ) | const [virtual] |
Creates a NTuple.
Creates and returns an NTuple based on the contents of the bins. The receiver takes possession of the NTuple object. The columns in the NTuple are in order: X position, value, X width, and error on value.
Implements BinsBase.
Definition at line 131 of file Bins1DHist.cxx.
References Bins1DHist::fillDataSource(), Bins1DHist::m_data, Bins1DBase::prepareNTuple(), and num_util::size().
void fillDataSource | ( | DataSource * | ntuple | ) | const [virtual] |
Fills the DataSource.
Clears and fills the DataSource based on the contents of the bins. The resulting DataSource is follows the standard defined in hippodraw::DataPoint2DTuple or hippodraw::DataPoint3DTuple.
Implements BinsBase.
Definition at line 145 of file Bins1DHist.cxx.
References Bins1DBase::binWidth(), Bins1DBase::getLow(), Bins1DHist::m_data, BinsBase::m_is_scaling, Bins1DHist::m_min_entries, BinsBase::m_scale_factor, Bins1DHist::m_variance, DataSource::rows(), hippodraw::DataPoint3DTuple::SIZE, hippodraw::DataPoint3DTuple::X, hippodraw::Axes::X, hippodraw::DataPoint3DTuple::XERR, hippodraw::DataPoint3DTuple::Y, and hippodraw::DataPoint3DTuple::YERR.
Referenced by Bins1DHist::createNTuple().
const BinnerAxis * getBinnerOn | ( | hippodraw::Axes::Type | axis | ) | const [virtual, inherited] |
Returns the BinnerAxis object used by this object.
Implements BinsBase.
Definition at line 59 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, and hippodraw::Axes::X.
double getHigh | ( | ) | const [inherited] |
Returns the lower edge of the last + 1 bin through binner_axis.
Definition at line 85 of file Bins1DBase.cxx.
References BinnerAxis::axisGetHigh(), and Bins1DBase::binner_axis.
double getLow | ( | hippodraw::Axes::Type | axis | ) | const [protected, virtual, inherited] |
Returns the low value of the bins on the specified axis.
Implements BinsBase.
Definition at line 78 of file Bins1DBase.cxx.
References BinnerAxis::axisGetLow(), Bins1DBase::binner_axis, and hippodraw::Axes::X.
Referenced by Bins1DProfile::fillDataSource(), and Bins1DHist::fillDataSource().
int getMinEntries | ( | ) | [virtual] |
Get the minimum entries/bin.
Reimplemented from BinsBase.
Definition at line 306 of file Bins1DHist.cxx.
References Bins1DHist::m_min_entries.
int getNumberOfAxes | ( | ) | const [virtual, inherited] |
Returns the number of axes handled by the BinsBase derived class.
Implements BinsBase.
Definition at line 53 of file Bins1DBase.cxx.
int getNumberOfEntries | ( | int | i | ) | const [virtual] |
implementation from pure base
Implements Bins1DBase.
Definition at line 98 of file Bins1DHist.cxx.
References Bins1DHist::m_data.
int getNumberOfEntries | ( | ) | const [virtual] |
implementation from pure base
Implements BinsBase.
Definition at line 92 of file Bins1DHist.cxx.
References Bins1DHist::m_data.
double getOffset | ( | hippodraw::Axes::Type | axis | ) | const [virtual, inherited] |
Returns the offset parameter on specific axis.
Implements BinsBase.
Definition at line 165 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, BinnerAxis::getOffset(), and hippodraw::Axes::X.
int getOverflow | ( | ) | const [virtual] |
implementation from pure base
Implements BinsBase.
Definition at line 110 of file Bins1DHist.cxx.
References Bins1DHist::m_data.
const Range & getRange | ( | hippodraw::Axes::Type | axis | ) | [virtual, inherited] |
Returns range from binner axis.
Implements BinsBase.
Definition at line 195 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, BinnerAxis::getRange(), and hippodraw::Axes::X.
int getUnderflow | ( | ) | const [virtual] |
implementation from pure base
Implements BinsBase.
Definition at line 105 of file Bins1DHist.cxx.
References Bins1DHist::m_data.
double getZValue | ( | double | x, | |
double | y | |||
) | const [virtual, inherited] |
Get the z value at the specified point (x,y).
Reimplemented in Bins2DHist, and Bins2DProfile.
Definition at line 74 of file BinsBase.cxx.
Referenced by BinningProjector::getZValue().
bool hasEqualWidths | ( | ) | const [virtual, inherited] |
Returns true
if all bins have the same width.
Implements BinsBase.
Definition at line 107 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, and BinnerAxis::hasEqualWidths().
bool isDirty | ( | ) | [inherited] |
Returns true
if the re-accumulation is needed.
Definition at line 59 of file BinsBase.cxx.
References BinsBase::m_values_dirty.
bool isEmpty | ( | ) | const [inherited] |
Returns true
if no accumulation has yet occurred, otherwise returns false
.
Definition at line 81 of file BinsBase.cxx.
References BinsBase::m_empty.
double maxBin | ( | ) |
Returns the value of the bin with the largest value.
Definition at line 77 of file Bins1DHist.cxx.
References Bins1DHist::m_data.
double minBin | ( | ) |
Returns the value of the bin with the smallest value.
Definition at line 72 of file Bins1DHist.cxx.
References Bins1DHist::m_data.
const string & name | ( | ) | const [inherited] |
Returns the name of the Bins container object.
Definition at line 54 of file BinsBase.cxx.
References BinsBase::m_name.
Referenced by BinsBaseXML::createElement().
int numberOfBins | ( | hippodraw::Axes::Type | axis | ) | const [virtual, inherited] |
Returns the number of bins on specified axis.
If a BinnerAxis object does not exist, returns 0.
Implements BinsBase.
Definition at line 90 of file Bins1DBase.cxx.
References BinnerAxis::axisNumberOfBins(), Bins1DBase::binner_axis, and hippodraw::Axes::X.
Referenced by Bins1DProfile::fillDataSource(), and Bins1DBase::resize().
NTuple * prepareNTuple | ( | unsigned int | rows | ) | const [protected, virtual, inherited] |
Prepares the NTuple.
Creates and returns the NTuple that will be filled from the binner's values. The NTuple will have rows rows and 4 columns.
Implements BinsBase.
Definition at line 212 of file Bins1DBase.cxx.
References hippodraw::DataPoint2DTuple::ERROR(), NTuple::setLabels(), and hippodraw::DataPoint2DTuple::WIDTH().
Referenced by Bins1DProfile::createNTuple(), and Bins1DHist::createNTuple().
void reset | ( | ) | [virtual] |
Resets the accumulation to zero.
Implements BinsBase.
Definition at line 82 of file Bins1DHist.cxx.
References Bins1DHist::m_data, BinsBase::m_empty, Bins1DHist::m_moments, BinsBase::m_values_dirty, and Bins1DHist::m_variance.
Referenced by Bins1DHist::resize().
void resize | ( | int | size | ) | [private, virtual] |
Resizes the internal arrays.
Implements Bins1DBase.
Definition at line 63 of file Bins1DHist.cxx.
References Bins1DHist::m_data, BinsBase::m_values_dirty, Bins1DHist::m_variance, and Bins1DHist::reset().
double scaleFactor | ( | ) | const [virtual, inherited] |
Returns the scale factor.
Used to convert the projected values to number of entries in a bin.
Reimplemented from BinsBase.
Definition at line 119 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, and BinnerAxis::scaleFactorWid().
void scaleNumberOfEntries | ( | double | number | ) | [virtual, inherited] |
Sets a scale factor on the output so that the number of entries appears to be number.
This feature might be used, for example, to compare two histograms that have different number of entires by normalizing one to the other.
Definition at line 88 of file BinsBase.cxx.
References BinsBase::m_scale_factor.
void setBinContents | ( | const DataSource * | ntuple | ) | [virtual] |
Implements BinsBase.
Definition at line 283 of file Bins1DHist.cxx.
References Bins1DHist::m_data, Bins1DHist::m_variance, num_util::size(), hippodraw::DataPoint3DTuple::XERR, hippodraw::DataPoint3DTuple::Y, and hippodraw::DataPoint3DTuple::YERR.
void setBinnerOn | ( | BinnerAxis * | binner, | |
hippodraw::Axes::Type | axis | |||
) | [virtual, inherited] |
Sets a new BinnerAxis for the binner to use.
The old one, if any, will be destroyed.
Implements BinsBase.
Definition at line 66 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, BinsBase::m_values_dirty, Bins1DBase::resize(), and hippodraw::Axes::X.
const Range & setBinWidth | ( | hippodraw::Axes::Type | axis, | |
double | value | |||
) | [virtual, inherited] |
Sets the bin width parameter on the specified axis.
Implements BinsBase.
Definition at line 133 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, Bins1DBase::resize(), BinnerAxis::setBinWidth(), and hippodraw::Axes::X.
void setDirty | ( | ) | [inherited] |
Sets a flag to indicate that re-binning needs to be done.
Definition at line 64 of file BinsBase.cxx.
References BinsBase::m_values_dirty.
Referenced by ProfileProjector::changedNTuple(), Profile2DProjector::changedNTuple(), DyHist2DProjector::changedNTuple(), and DyHist1DProjector::changedNTuple().
void setEntriesScaling | ( | bool | on | ) | [virtual, inherited] |
Sets the scaling number of entries on if on is true
, otherwise turns if off.
Definition at line 95 of file BinsBase.cxx.
References BinsBase::m_is_scaling.
void setMinEntries | ( | int | entries | ) | [virtual] |
Set the minimum entries/bin.
Reimplemented from BinsBase.
Definition at line 299 of file Bins1DHist.cxx.
References Bins1DHist::m_min_entries.
void setNumberOfBins | ( | hippodraw::Axes::Type | axis, | |
int | number | |||
) | [virtual, inherited] |
Sets the number of bins on the the specified axis.
Implements BinsBase.
Definition at line 97 of file Bins1DBase.cxx.
References BinnerAxis::axisSetNumberOfBins(), Bins1DBase::binner_axis, Bins1DBase::resize(), and hippodraw::Axes::X.
void setOffset | ( | hippodraw::Axes::Type | axis, | |
double | value | |||
) | [virtual, inherited] |
Sets the offset parameter on the specified axis.
Implements BinsBase.
Definition at line 174 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, BinnerAxis::setOffset(), and hippodraw::Axes::X.
const Range & setRange | ( | hippodraw::Axes::Type | axis, | |
const Range & | , | |||
bool | hold_width = true | |||
) | [virtual, inherited] |
Sets the Range on the specified axis.
If hold_width is true
, the bin width parameter will be held constant, otherwise it is adjusted to keep the same number of bins for the new range.
Implements BinsBase.
Definition at line 183 of file Bins1DBase.cxx.
References Bins1DBase::binner_axis, Bins1DBase::resize(), BinnerAxis::setRange(), and hippodraw::Axes::X.
BinnerAxis* binner_axis [protected, inherited] |
The binner axis object.
Definition at line 40 of file Bins1DBase.h.
Referenced by Bins1DBase::binNumber(), Bins1DBase::Bins1DBase(), Bins1DBase::binWidth(), Bins1DBase::calcBinWidth(), Bins1DBase::calcOffset(), Bins1DBase::getBinnerOn(), Bins1DBase::getHigh(), Bins1DBase::getLow(), Bins1DBase::getOffset(), Bins1DBase::getRange(), Bins1DBase::hasEqualWidths(), Bins1DBase::numberOfBins(), Bins1DBase::scaleFactor(), Bins1DBase::setBinnerOn(), Bins1DBase::setBinWidth(), Bins1DBase::setNumberOfBins(), Bins1DBase::setOffset(), Bins1DBase::setRange(), and Bins1DBase::~Bins1DBase().
std::vector< double > m_data [private] |
The array of binned data.
The range of the index is 1 to m_num_bins.( 0 refers to underflow while m_num_bins + 1 refers to overflow )
Definition at line 45 of file Bins1DHist.h.
Referenced by Bins1DHist::accumulate(), Bins1DHist::createNTuple(), Bins1DHist::fillDataSource(), Bins1DHist::getNumberOfEntries(), Bins1DHist::getOverflow(), Bins1DHist::getUnderflow(), Bins1DHist::maxBin(), Bins1DHist::minBin(), Bins1DHist::reset(), Bins1DHist::resize(), and Bins1DHist::setBinContents().
bool m_empty [protected, inherited] |
A flag set to true
, when no accumulation has yet occurred, otherwise is set false
.
Definition at line 58 of file BinsBase.h.
Referenced by Bins2DProfile::accumulate(), Bins2DHist::accumulate(), Bins1DProfile::accumulate(), Bins1DHist::accumulate(), BinsBase::isEmpty(), Bins2DProfile::reset(), Bins2DHist::reset(), Bins1DProfile::reset(), and Bins1DHist::reset().
bool m_is_scaling [protected, inherited] |
A flag which is set true
to enable scaling the output.
Definition at line 50 of file BinsBase.h.
Referenced by Bins2DHist::fillDataSource(), Bins1DHist::fillDataSource(), and BinsBase::setEntriesScaling().
int m_min_entries [private] |
The minimum number of entries/bin.
Definition at line 54 of file Bins1DHist.h.
Referenced by Bins1DHist::Bins1DHist(), Bins1DHist::fillDataSource(), Bins1DHist::getMinEntries(), and Bins1DHist::setMinEntries().
double m_moments[3] [private] |
The moments.
Definition at line 51 of file Bins1DHist.h.
Referenced by Bins1DHist::accumulate(), Bins1DHist::Bins1DHist(), and Bins1DHist::reset().
double m_scale_factor [protected, inherited] |
The scale factor.
This data member is used to scale the output so that the total number of entries has this value.
Definition at line 46 of file BinsBase.h.
Referenced by Bins2DHist::fillDataSource(), Bins1DHist::fillDataSource(), and BinsBase::scaleNumberOfEntries().
bool m_values_dirty [mutable, protected, inherited] |
A flag to indicate that the objects in m_values are not correct.
Definition at line 53 of file BinsBase.h.
Referenced by Bins1DBase::Bins1DBase(), Bins2DBase::Bins2DBase(), BinsBase::isDirty(), Bins1DHist::reset(), Bins2DBase::resize(), Bins1DProfile::resize(), Bins1DHist::resize(), Bins2DBase::setBinnerOn(), Bins1DBase::setBinnerOn(), Bins2DBase::setBinWidth(), BinsBase::setDirty(), and Bins2DBase::setOffset().
std::vector< double > m_variance [private] |
The accumulated square of the weights.
Definition at line 48 of file Bins1DHist.h.
Referenced by Bins1DHist::accumulate(), Bins1DHist::fillDataSource(), Bins1DHist::reset(), Bins1DHist::resize(), and Bins1DHist::setBinContents().