#include <SFMatrixOfH2F.h>
Inheritance diagram for SFMatrixOfH2F:
A SFMatrixOfH2F contains a set of 1-dimensional TH2F histograms; these histograms are (normally) all created by the constructor. The histograms share the same axis binning, and their names and titles are created using two BinningFun objects that at the same time define the number of histograms.
The histogram names will a concatenation of the name given by the user, and the bin names given by the BinningFun objects. The same applies to the title.
A SFMatrixOfH2F is a convenient tool to create a large set of histograms at the same time.
Functions exist to add, multiply, and divide sets of histograms. These operations are performed on pairs of corresponding histograms, if possible.
Author: Jenny Böhme, Benno List
Changelog:
Definition at line 54 of file SFMatrixOfH2F.h.
Public Member Functions | |
SFMatrixOfH2F (const char *name_, const char *title_, Int_t nbinsx, Axis_t xlow, Axis_t xup, Int_t nbinsy, Axis_t ylow, Axis_t yup, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning1_, const BinningFunPoR &binning2_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with equidistant x and y binnings. | |
SFMatrixOfH2F (const char *name_, const char *title_, Int_t nbinsx, const Double_t *xbins, Int_t nbinsy, Axis_t ylow, Axis_t yup, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning1_, const BinningFunPoR &binning2_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with non-equidistant x and equidistant y binnings. | |
SFMatrixOfH2F (const char *name_, const char *title_, Int_t nbinsx, Axis_t xlow, Axis_t xup, Int_t nbinsy, const Double_t *ybins, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning1_, const BinningFunPoR &binning2_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with equidistant x and non-equidistant y binnings. | |
SFMatrixOfH2F (const char *name_, const char *title_, Int_t nbinsx, const Double_t *xbins, Int_t nbinsy, const Double_t *ybins, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning1_, const BinningFunPoR &binning2_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with non-equidistant x and y binnings taking doubles. | |
SFMatrixOfH2F (const char *name_, const char *title_, Int_t nbinsx, const Float_t *xbins, Int_t nbinsy, const Float_t *ybins, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning1_, const BinningFunPoR &binning2_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with non-equidistant x and y binnings taking floats. | |
SFMatrixOfH2F (const char *name_, const char *title_, const Binning &xbinning, const Binning &ybinning, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning1_, const BinningFunPoR &binning2_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms, taking 2 Binning objects. | |
virtual | ~SFMatrixOfH2F () |
Virtual destructor. | |
virtual void | Fill () |
The Self-filler method. | |
FloatFun * | getXFun () const |
Returns a pointer to the abscissa function object. | |
FloatFun * | getYFun () const |
Returns a pointer to the ordinate function object. | |
BaseCut * | getCut () const |
Returns a pointer to the cut function object. | |
FloatFun * | getWFun () const |
Returns a pointer to the weight function object. | |
FillIterator * | getIter () const |
Returns a pointer to the iterator object. | |
Protected Member Functions | |
void | checkIterators (const char *name) |
Checks consistency of iterators. | |
template<class Fun1, class Fun2> void | checkTwoIterators (const char *name, const char *fun1name, Fun1 *fun1, const char *fun2name, Fun2 *fun2) |
Checks consistency of iterators of two function objects. | |
template<class Fun> void | checkOneIterator (const char *name, const char *funname, Fun *fun) |
Checks consistency of iterator of function object with FillIterator. | |
Private Member Functions | |
SFMatrixOfH2F (const SFMatrixOfH2F &source) | |
Private copy constructor, left unimplemented: No copying! | |
SFMatrixOfH2F & | operator= (const SFMatrixOfH2F &source) |
Private assignment, left unimplemented: No assignment! | |
Private Attributes | |
FloatFun * | xfun |
Function object defining abscissa (what to plot on x). | |
FloatFun * | yfun |
Function object defining ordinate (what to plot on y). | |
BaseCut * | cut |
optional Function object defining a cut (0 means: no cut) | |
FloatFun * | wfun |
optional Function object defining weight (0 means: weight 1) | |
FillIterator * | iter |
optional Iterator object for more than 1 entry per Fill() call |
|
Constructor for a set of histograms with equidistant x and y binnings.
Definition at line 36 of file SFMatrixOfH2F.C. References checkIterators(). |
|
Constructor for a set of histograms with non-equidistant x and equidistant y binnings.
Definition at line 58 of file SFMatrixOfH2F.C. References checkIterators(). |
|
Constructor for a set of histograms with equidistant x and non-equidistant y binnings.
Definition at line 79 of file SFMatrixOfH2F.C. References checkIterators(). |
|
Constructor for a set of histograms with non-equidistant x and y binnings taking doubles.
Definition at line 100 of file SFMatrixOfH2F.C. References checkIterators(). |
|
Constructor for a set of histograms with non-equidistant x and y binnings taking floats.
Definition at line 120 of file SFMatrixOfH2F.C. References checkIterators(). |
|
Constructor for a set of histograms, taking 2 Binning objects.
Definition at line 140 of file SFMatrixOfH2F.C. References checkIterators(). |
|
The Self-filler method. Fill() evaluates the cut object to see whether an event fulfills the cut defined by the cut object, then evaluates the BinningFun object to see into which histogram to make an entry, then evaluates the xfun object to get the abscissa and the wfun object to obtain the weight. Optionally, the iter object serves as iterator. Implements SFO. Definition at line 163 of file SFMatrixOfH2F.C. References cut, SetOfH::getBinning(), MatrixOfH::getBinNumber(), ROList::getEntries(), ROList::getEntry(), ROList::IndexType, BinningFun::isExclusive(), iter, FillIterator::next(), FillIterator::reset(), wfun, xfun, and yfun. |
|
Checks consistency of iterators.
Definition at line 301 of file SFMatrixOfH2F.C. References checkOneIterator(), checkTwoIterators(), cut, SetOfH::getBinning(), wfun, xfun, and yfun. Referenced by SFMatrixOfH2F(). |
|
Checks consistency of iterators of two function objects.
Definition at line 257 of file SFMatrixOfH2F.C. Referenced by checkIterators(). |
|
Checks consistency of iterator of function object with FillIterator.
Definition at line 271 of file SFMatrixOfH2F.C. References NamedO::getName(), and iter. Referenced by checkIterators(). |