#include <SFSetOfHProf.h>
Inheritance diagram for SFSetOfHProf:
A SFSetOfHProf contains a set of THProfile 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 a BinningFun object that at the same time defines the number of histograms.
The histogram names will a concatenation of the name given by the user, and the bin name given by the BinningFun. The same applies to the title.
A SFSetOfHProf 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.
A SFSetOfHProf is a self-filling set of histograms, NOT a set of self-filling histograms (which is a SFROList). This means that instead of calling a Fill() of each histogram, the SFSetOfHProf object uses the BinningFun object to determine which of the histograms gets an entry, and then makes the entry in just that histogram.
Author: Benno List
Changelog:
Definition at line 59 of file SFSetOfHProf.h.
Public Member Functions | |
SFSetOfHProf (const char *name_, const char *title_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for an empty set histograms. | |
SFSetOfHProf (const char *name_, const char *title_, Int_t nbinsx, Axis_t xlow, Axis_t xup, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with equidistant binning. | |
SFSetOfHProf (const char *name_, const char *title_, Int_t nbinsx, Axis_t xlow, Axis_t xup, Axis_t ylow_, Axis_t yup_, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with equidistant binning and limited y range. | |
SFSetOfHProf (const char *name_, const char *title_, Int_t nbinsx, const Float_t *xbins, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with non-equidistant binning, taking float bin edges. | |
SFSetOfHProf (const char *name_, const char *title_, Int_t nbinsx, const Double_t *xbins, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with non-equidistant binning, taking double bin edges. | |
SFSetOfHProf (const char *name_, const char *title_, Int_t nbinsx, const Double_t *xbins, Axis_t ylow_, Axis_t yup_, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with non-equidistant binning and limited y range. | |
SFSetOfHProf (const char *name_, const char *title_, const Binning &axisbinning_, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with Binning object. | |
SFSetOfHProf (const char *name_, const char *title_, const Binning &axisbinning_, Axis_t ylow_, Axis_t yup_, Option_t *option_, const ROListPoR &hhl, const FloatFunPoR &xfun_, const FloatFunPoR &yfun_, const BaseCutPoR &cut_, const FloatFunPoR &wfun_, const BinningFunPoR &binning_, const FillIteratorPoR &iter_=0) | |
Constructor for a set of histograms with Binning object and limited y range. | |
virtual | ~SFSetOfHProf () |
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. | |
Protected 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 | |
Private Member Functions | |
SFSetOfHProf (const SFSetOfHProf &source) | |
Private copy constructor, left unimplemented: No copying! | |
SFSetOfHProf & | operator= (const SFSetOfHProf &source) |
Private assignment operator, left unimplemented: No assignment! |
|
Constructor for an empty set histograms.
Definition at line 38 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with equidistant binning.
Definition at line 53 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with equidistant binning and limited y range.
Definition at line 72 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with non-equidistant binning, taking float bin edges.
Definition at line 93 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with non-equidistant binning, taking double bin edges.
Definition at line 111 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with non-equidistant binning and limited y range.
Definition at line 129 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with Binning object.
Definition at line 149 of file SFSetOfHProf.C. References checkIterators(). |
|
Constructor for a set of histograms with Binning object and limited y range.
Definition at line 166 of file SFSetOfHProf.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 190 of file SFSetOfHProf.C. References cut, SetOfH::getBinning(), ROList::getEntry(), BinningFun::isExclusive(), iter, FillIterator::next(), FillIterator::reset(), wfun, xfun, and yfun. |
|
Checks consistency of iterators.
Definition at line 272 of file SFSetOfHProf.C. References checkOneIterator(), checkTwoIterators(), cut, SetOfH::getBinning(), wfun, xfun, and yfun. Referenced by SFSetOfHProf(). |
|
Checks consistency of iterators of two function objects.
Definition at line 228 of file SFSetOfHProf.C. Referenced by checkIterators(). |
|
Checks consistency of iterator of function object with FillIterator.
Definition at line 242 of file SFSetOfHProf.C. References NamedO::getName(), and iter. Referenced by checkIterators(). |