Rivet
1.8.0
|
The projection handler is a central repository for histograms (and other analysis stats objects) to be used in a Rivet analysis run. This eliminates the need for analysis classes to contain large numbers of histogram pointer members, and allows histograms to be accessed via more user-friendly names than C++ variable names allow. More...
#include <HistoHandler.hh>
Public Member Functions | |
void | clear () |
Histo registration. */ | |
const AnalysisObject * | registerAnalysisObject (const Analysis &parent, const AnalysisObject &histo, const string &name) |
Copy an analysis object into a central collection and return the copy. | |
Histo retrieval. */ | |
const AnalysisObject * | getAnalysisObject (const Analysis &parent, const string &name) const |
Retrieve a named histo for the given Analysis parent (const version). | |
AnalysisObject * | getAnalysisObject (const Analysis &parent, const string &name) |
Retrieve a named histo for the given Analysis parent (non-const version). | |
Static Public Member Functions | |
static HistoHandler & | getInstance () |
Singleton getter function. |
The projection handler is a central repository for histograms (and other analysis stats objects) to be used in a Rivet analysis run. This eliminates the need for analysis classes to contain large numbers of histogram pointer members, and allows histograms to be accessed via more user-friendly names than C++ variable names allow.
The core of the HistoHandler design is that it is a singleton class, essentially a wrapper around a map of AnalysisObject*
, indexed by a hash of the registering object and its local name for the registered projection.
void Rivet::HistoHandler::clear | ( | ) |
Histo clearing method: deletes all known histos and empties the reference collections.