Gaudi Framework, version v23r0 |
Home | Generated: Mon Jan 30 2012 |
Templated base class providing common histogramming methods for GaudiAlgorithm and GaudiTool like classes. More...
#include <GaudiAlg/GaudiHistos.h>
Public Types | |
typedef GaudiAlg::HistoID | HistoID |
the actual type for histogram identifier | |
typedef GaudiAlg::Histo1DMapID | Histo1DMapID |
the actual type for (ID)->(1D histogram) mapping | |
typedef GaudiAlg::Histo1DMapTitle | Histo1DMapTitle |
the actual type for title->(1D histogram) mapping | |
typedef GaudiAlg::Histo2DMapID | Histo2DMapID |
the actual type for (ID)->(2D histogram) mapping | |
typedef GaudiAlg::Histo2DMapTitle | Histo2DMapTitle |
the actual type for title->(2D histogram) mapping | |
typedef GaudiAlg::Histo3DMapID | Histo3DMapID |
the actual type for (ID)->(3D histogram) mapping | |
typedef GaudiAlg::Histo3DMapTitle | Histo3DMapTitle |
the actual type for title->(3D histogram) mapping | |
typedef GaudiAlg::Profile1DMapID | Profile1DMapID |
the actual type for (ID)->(1D profile histogram) mapping | |
typedef GaudiAlg::Profile1DMapTitle | Profile1DMapTitle |
the actual type for title->(1D profile histogram) mapping | |
typedef GaudiAlg::Profile2DMapID | Profile2DMapID |
the actual type for (ID)->(2D profile histogram) mapping | |
typedef GaudiAlg::Profile2DMapTitle | Profile2DMapTitle |
the actual type for title->(2D profile histogram) mapping | |
typedef GaudiAlg::HistoBinEdges | HistoBinEdges |
Edges for variable binning. | |
Public Member Functions | |
AIDA::IHistogram1D * | plot1D (const double value, const std::string &title, const double low, const double high, const unsigned long bins=100, const double weight=1.0) const |
fill the 1D histogram (book on demand) | |
AIDA::IHistogram1D * | plot (const double value, const std::string &title, const double low, const double high, const unsigned long bins=100, const double weight=1.0) const |
fill the 1D histogram (book on demand) | |
AIDA::IHistogram1D * | plot1D (const double value, const Gaudi::Histo1DDef &hdef, const double weight=1.0) const |
fill the 1D histogram (book on demand) | |
AIDA::IHistogram1D * | plot (const double value, const Gaudi::Histo1DDef &hdef, const double weight=1.0) const |
fill the 1D histogram (book on demand) | |
AIDA::IHistogram1D * | plot1D (const double value, const HistoID &ID, const std::string &title, const double low, const double high, const unsigned long bins=100, const double weight=1.0) const |
fill the 1D histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram1D * | plot (const double value, const HistoID &ID, const std::string &title, const double low, const double high, const unsigned long bins=100, const double weight=1.0) const |
fill the 1D histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram1D * | plot1D (const double value, const HistoID &ID, const Gaudi::Histo1DDef &hdef, const double weight=1.0) const |
fill the 1D histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram1D * | plot (const double value, const HistoID &ID, const Gaudi::Histo1DDef &hdef, const double weight=1.0) const |
fill the 1D histogram (book on demand) | |
template<class FUNCTION , class OBJECT > | |
AIDA::IHistogram1D * | plot (const FUNCTION &func, OBJECT first, OBJECT last, const std::string &title, const double low, const double high, const unsigned long bins=100) const |
fill the 1D histogram with information from [first,last) sequence | |
template<class FUNCTION , class OBJECT > | |
AIDA::IHistogram1D * | plot (const FUNCTION &func, OBJECT first, OBJECT last, const HistoID &ID, const std::string &title, const double low, const double high, const unsigned long bins=100) const |
fill the 1D histogram with forced ID and information from [first,last) sequence | |
template<class FUNCTION , class OBJECT , class WEIGHT > | |
AIDA::IHistogram1D * | plot (const FUNCTION &func, OBJECT first, OBJECT last, const std::string &title, const double low, const double high, const unsigned long bins, const WEIGHT &weight) const |
book and fill the 1D histogram with information from [first,last) sequence with given weight | |
template<class FUNCTION , class OBJECT , class WEIGHT > | |
AIDA::IHistogram1D * | plot (const FUNCTION &func, OBJECT first, OBJECT last, const HistoID &ID, const std::string &title, const double low, const double high, const unsigned long bins, const WEIGHT &weight) const |
book and fill the 1D histogram with forced ID and information from [first,last) sequence with given weight | |
AIDA::IHistogram1D * | plot1D (const double value, const std::string &title, const HistoBinEdges &edges, const double weight=1.0) const |
Fill the 1D variable binning histogram (book on demand) | |
AIDA::IHistogram1D * | plot1D (const double value, const HistoID &ID, const std::string &title, const HistoBinEdges &edges, const double weight=1.0) const |
fill the 1D variable binning histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram2D * | plot2D (const double valueX, const double valueY, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const unsigned long binsX=50, const unsigned long binsY=50, const double weight=1.0) const |
fill the 2D histogram (book on demand) | |
AIDA::IHistogram2D * | plot2D (const double valueX, const double valueY, const HistoID &ID, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const unsigned long binsX=50, const unsigned long binsY=50, const double weight=1.0) const |
fill the 2D histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram2D * | plot2D (const double valueX, const double valueY, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const double weight=1.0) const |
Fill the 2D variable binning histogram (book on demand) | |
AIDA::IHistogram2D * | plot2D (const double valueX, const double valueY, const HistoID &ID, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const double weight=1.0) const |
fill the 2D variable histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram3D * | plot3D (const double valueX, const double valueY, const double valueZ, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const double lowZ, const double highZ, const unsigned long binsX=10, const unsigned long binsY=10, const unsigned long binsZ=10, const double weight=1.0) const |
fill the 3D histogram (book on demand) | |
AIDA::IHistogram3D * | plot3D (const double valueX, const double valueY, const double valueZ, const HistoID &ID, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const double lowZ, const double highZ, const unsigned long binsX=10, const unsigned long binsY=10, const unsigned long binsZ=10, const double weight=1.0) const |
fill the 3D histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram3D * | plot3D (const double valueX, const double valueY, const double valueZ, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const HistoBinEdges &edgesZ, const double weight=1.0) const |
Fill the 3D variable binning histogram (book on demand) | |
AIDA::IHistogram3D * | plot3D (const double valueX, const double valueY, const double valueZ, const HistoID &ID, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const HistoBinEdges &edgesZ, const double weight=1.0) const |
fill the 3D histogram with forced ID assignment (book on demand) | |
AIDA::IProfile1D * | profile1D (const double valueX, const double valueY, const std::string &title, const double lowX, const double highX, const unsigned long binsX=100, const std::string &opt="", const double lowY=-std::numeric_limits< double >::max(), const double highY=std::numeric_limits< double >::max(), const double weight=1.0) const |
fill the 1D profile histogram (book on demand) | |
AIDA::IProfile1D * | profile1D (const double valueX, const double valueY, const HistoID &ID, const std::string &title, const double lowX, const double highX, const unsigned long binsX=100, const std::string &opt="", const double lowY=-std::numeric_limits< double >::max(), const double highY=std::numeric_limits< double >::max(), const double weight=1.0) const |
fill the 1D profile histogram with forced ID assignment (book on demand) | |
AIDA::IProfile1D * | profile1D (const double valueX, const double valueY, const std::string &title, const HistoBinEdges &edges, const double weight=1.0) const |
fill the 1D variable binning profile histogram (book on demand) | |
AIDA::IProfile1D * | profile1D (const double valueX, const double valueY, const HistoID &ID, const std::string &title, const HistoBinEdges &edges, const double weight=1.0) const |
fill the 1D variable binning profile histogram with forced ID assignment (book on demand) | |
AIDA::IProfile2D * | profile2D (const double valueX, const double valueY, const double valueZ, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const unsigned long binsX=50, const unsigned long binsY=50, const double weight=1.0) const |
fill the 2D profile histogram (book on demand) | |
AIDA::IProfile2D * | profile2D (const double valueX, const double valueY, const double valueZ, const HistoID &ID, const std::string &title, const double lowX, const double highX, const double lowY, const double highY, const unsigned long binsX=50, const unsigned long binsY=50, const double weight=1.0) const |
fill the 2D profile histogram with forced ID assignment (book on demand) | |
AIDA::IProfile2D * | profile2D (const double valueX, const double valueY, const double valueZ, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const double weight=1.0) const |
fill the 2D variable binning profile histogram (book on demand) | |
AIDA::IProfile2D * | profile2D (const double valueX, const double valueY, const double valueZ, const HistoID &ID, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const double weight=1.0) const |
fill the 2D variable binning profile histogram with forced ID assignment (book on demand) | |
AIDA::IHistogram1D * | book1D (const std::string &title, const double low=0, const double high=100, const unsigned long bins=100) const |
book the 1D histogram | |
AIDA::IHistogram1D * | book (const std::string &title, const double low=0, const double high=100, const unsigned long bins=100) const |
book the 1D histogram | |
AIDA::IHistogram1D * | book (const Gaudi::Histo1DDef &hdef) const |
book the 1D histogram | |
AIDA::IHistogram1D * | book1D (const HistoID &ID, const std::string &title, const double low=0, const double high=100, const unsigned long bins=100) const |
book the 1D histogram with forced ID | |
AIDA::IHistogram1D * | book (const HistoID &ID, const std::string &title, const double low=0, const double high=100, const unsigned long bins=100) const |
book the 1D histogram with forced ID | |
AIDA::IHistogram1D * | book (const HistoID &ID, const Gaudi::Histo1DDef &hdef) const |
book the 1D histogram with forced ID | |
AIDA::IHistogram1D * | book1D (const std::string &title, const HistoBinEdges &edges) const |
book the 1D variable binning histogram | |
AIDA::IHistogram1D * | book1D (const HistoID &ID, const std::string &title, const HistoBinEdges &edges) const |
book the 1D variable binning histogram with given ID | |
AIDA::IHistogram2D * | book2D (const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=50, const double lowY=0, const double highY=100, const unsigned long binsY=50) const |
book the 2D histogram | |
AIDA::IHistogram2D * | book2D (const HistoID &ID, const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=50, const double lowY=0, const double highY=100, const unsigned long binsY=50) const |
book the 2D histogram with forced ID | |
AIDA::IHistogram2D * | book2D (const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY) const |
book the 2D variable binning histogram | |
AIDA::IHistogram2D * | book2D (const HistoID &ID, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY) const |
book the 2D variable binning histogram with given ID | |
AIDA::IHistogram3D * | book3D (const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=10, const double lowY=0, const double highY=100, const unsigned long binsY=10, const double lowZ=0, const double highZ=100, const unsigned long binsZ=10) const |
book the 3D histogram | |
AIDA::IHistogram3D * | book3D (const HistoID &ID, const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=10, const double lowY=0, const double highY=100, const unsigned long binsY=10, const double lowZ=0, const double highZ=100, const unsigned long binsZ=10) const |
book the 3D histogram with forced ID | |
AIDA::IHistogram3D * | book3D (const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const HistoBinEdges &edgesZ) const |
book the 3D variable binning histogram | |
AIDA::IHistogram3D * | book3D (const HistoID &ID, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY, const HistoBinEdges &edgesZ) const |
book the 3D variable binning histogram with given ID | |
AIDA::IProfile1D * | bookProfile1D (const std::string &title, const double low=0, const double high=100, const unsigned long bins=100, const std::string &opt="", const double lowY=-std::numeric_limits< double >::max(), const double highY=std::numeric_limits< double >::max()) const |
book the 1D profile histogram | |
AIDA::IProfile1D * | bookProfile1D (const HistoID &ID, const std::string &title, const double low=0, const double high=100, const unsigned long bins=100, const std::string &opt="", const double lowY=-std::numeric_limits< double >::max(), const double highY=std::numeric_limits< double >::max()) const |
book the 1D profile histogram | |
AIDA::IProfile1D * | bookProfile1D (const std::string &title, const HistoBinEdges &edges) const |
book the 1D profile histogram | |
AIDA::IProfile1D * | bookProfile1D (const HistoID &ID, const std::string &title, const HistoBinEdges &edges) const |
book the 1D profile histogram | |
AIDA::IProfile2D * | bookProfile2D (const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=50, const double lowY=0, const double highY=100, const unsigned long binsY=50) const |
book the 2D profile histogram | |
AIDA::IProfile2D * | bookProfile2D (const HistoID &ID, const std::string &title, const double lowX=0, const double highX=100, const unsigned long binsX=50, const double lowY=0, const double highY=100, const unsigned long binsY=50) const |
book the 2D profile histogram with forced ID | |
AIDA::IProfile2D * | bookProfile2D (const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY) const |
book the 2D profile histogram | |
AIDA::IProfile2D * | bookProfile2D (const HistoID &ID, const std::string &title, const HistoBinEdges &edgesX, const HistoBinEdges &edgesY) const |
book the 2D profile histogram with forced ID | |
AIDA::IHistogram1D * | fill (AIDA::IHistogram1D *histo, const double value, const double weight, const std::string &title="") const |
fill the 1D histogram with the value and weight | |
AIDA::IHistogram2D * | fill (AIDA::IHistogram2D *histo, const double valueX, const double valueY, const double weight, const std::string &title="") const |
fill the 2D histogram with the value and weight | |
AIDA::IHistogram3D * | fill (AIDA::IHistogram3D *histo, const double valueX, const double valueY, const double valueZ, const double weight, const std::string &title="") const |
fill the 3D histogram with the value and weight | |
AIDA::IProfile1D * | fill (AIDA::IProfile1D *histo, const double valueX, const double valueY, const double weight, const std::string &title="") const |
fill the 1D profile histogram with the values and weight | |
AIDA::IProfile2D * | fill (AIDA::IProfile2D *histo, const double valueX, const double valueY, const double valueZ, const double weight, const std::string &title="") const |
fill the 2D profile histogram with the values and weight | |
AIDA::IHistogram1D * | histo1D (const std::string &title) const |
access the EXISTING 1D histogram by title return the pointer to existing 1D histogram or NULL | |
AIDA::IHistogram1D * | histo (const std::string &title) const |
access the EXISTING 1D histogram by title | |
AIDA::IHistogram2D * | histo2D (const std::string &title) const |
access the EXISTING 2D histogram by title return the pointer to existing 2D histogram or NULL | |
AIDA::IHistogram3D * | histo3D (const std::string &title) const |
access the EXISTING 3D histogram by title return the pointer to existing 3D histogram or NULL | |
AIDA::IProfile1D * | profile1D (const std::string &title) const |
access the EXISTING 1D profile histogram by title return the pointer to existing 1D profile histogram or NULL | |
AIDA::IProfile2D * | profile2D (const std::string &title) const |
access the EXISTING 2D profile histogram by title return the pointer to existing 2D profile histogram or NULL | |
AIDA::IHistogram1D * | histo1D (const HistoID &ID) const |
access the EXISTING 1D histogram by ID return the pointer to existing 1D histogram or NULL | |
AIDA::IHistogram1D * | histo (const HistoID &ID) const |
access the EXISTING 1D histogram by ID | |
AIDA::IHistogram2D * | histo2D (const HistoID &ID) const |
access the EXISTING 2D histogram by ID return the pointer to existing 2D histogram or NULL | |
AIDA::IHistogram3D * | histo3D (const HistoID &ID) const |
access the EXISTING 3D histogram by ID return the pointer to existing 3D histogram or NULL | |
AIDA::IProfile1D * | profile1D (const HistoID &ID) const |
access the EXISTING 1D profile histogram by ID return the pointer to existing 1D profile histogram or NULL | |
AIDA::IProfile2D * | profile2D (const HistoID &ID) const |
access the EXISTING 2D profile histogram by ID return the pointer to existing 2D profile histogram or NULL | |
bool | histoExists (const std::string &title) const |
check the existence AND validity of the histogram with given title | |
bool | histoExists (const HistoID &ID) const |
check the existence AND validity of the histogram with given title | |
unsigned int | totalNumberOfHistos () const |
Returns the total number of histograms (of all types) currently booked. | |
bool | produceHistos () const |
get the flag for histogram production (property "HistoProduce") | |
bool | fullDetail () const |
get flag to control output level of histograms | |
bool | checkForNaN () const |
get the flag for NaN checks (property "HistoCheckForNan") | |
bool | splitHistoDir () const |
get the flag for histogram path split (property "HistoSplitDir") | |
HistoID::NumericID | histoOffSet () const |
get the value for histogram offset (property "HistoOffSet") | |
const std::string & | histoTopDir () const |
get top-level histogram directory (property "HistoTopDir") | |
const std::string & | histoDir () const |
get histogram directory (property "HistoDir") | |
std::string | histoPath () const |
get the constructed histogram path | |
bool | histosPrint () const |
print histograms at finalization ? | |
bool | useNumericAutoIDs () const |
Use old style sequencial numerical automatically assigned IDs ? | |
int | printHistos (const MSG::Level level=MSG::ALWAYS) const |
perform the actual printout of histograms | |
const Histo1DMapTitle & | histo1DMapTitle () const |
get access to the map of all 1D histograms indexed via their title | |
const Histo1DMapID & | histo1DMapID () const |
get access to the map of all 1D histograms index via ID | |
const Histo2DMapTitle & | histo2DMapTitle () const |
get access to the map of all 2D histograms indexed via their title | |
const Histo2DMapID & | histo2DMapID () const |
get access to the map of 2D histograms index via ID | |
const Histo3DMapTitle & | histo3DMapTitle () const |
get access to the map of all 3D histograms indexed via their title | |
const Histo3DMapID & | histo3DMapID () const |
get access to the map of all 3D histograms index via a ID | |
const Profile1DMapTitle & | profile1DMapTitle () const |
get access to the map of all 1D profile histograms indexed via their title | |
const Profile1DMapID & | profile1DMapID () const |
get access to the map of 1D profile histograms index via a ID | |
const Profile2DMapTitle & | profile2DMapTitle () const |
get access to the map of all 2D profile histograms indexed via their title | |
const Profile2DMapID & | profile2DMapID () const |
get access to the map of 2D profile histograms index via a ID | |
void | setProduceHistos (const bool val) |
set the flag for histogram production (property "HistoProduce") | |
void | setFullDetail (const bool val) |
set flag to control output level of histograms | |
void | setCheckForNaN (const bool val) |
set the flag for NaN checks (property "HistoCheckForNan") | |
void | setSplitHistoDir (const bool val) |
set the flag for histogram path split (property "HistoSplitDir") | |
void | setHistoOffSet (const HistoID::NumericID val) |
set a value for histogram offset (property "HistoOffSet" | |
void | setHistoTopDir (const std::string &val) |
set top-level histogram directory (property "HistoTopDir") | |
void | setHistoDir (const std::string &val) |
set histogram directory (property "HistoDir") | |
GaudiHistos (const std::string &name, ISvcLocator *pSvcLocator) | |
Algorithm constructor. | |
GaudiHistos (const std::string &type, const std::string &name, const IInterface *parent) | |
Tool constructor. | |
virtual | ~GaudiHistos () |
Destructor. | |
Protected Member Functions | |
virtual StatusCode | initialize () |
standard initialization method | |
virtual StatusCode | finalize () |
standard finalization method | |
std::string | convertTitleToID (const std::string &title) const |
Create an ID string from a title string. | |
Private Member Functions | |
bool | noHistos () const |
Check if all histogram maps are empty. | |
void | initGaudiHistosConstructor () |
Constructor initialisation and job options. | |
void | monitorHisto (const AIDA::IBaseHistogram *hist, const HistoID &ID) const |
Declare a histogram to the monitor service. | |
void | newHistoID (const std::string &title, HistoID &ID) const |
Create a new histogram ID using the given title. | |
void | stringSearchReplace (std::string &title, const std::string &A, const std::string &B) const |
Searches 'title' for all instancies of 'A' and replaces them with 'B'. | |
void | printHistoHandler (Property &) |
the handler for "HistoPrint" property | |
Private Attributes | |
bool | m_produceHistos |
flag to SWITCH ON/SWITCH OFF the histogrm fillling and booking | |
bool | m_fullDetail |
flag to control output level of histograms | |
bool | m_checkForNaN |
flag to control check for Nan/Finite while filling the histogram | |
bool | m_splitHistoDir |
split histogram directory name (very useful for Hbook) | |
HistoID::NumericID | m_histoOffSet |
general histogram ID offset (only works for automatically assigned numeric IDs) | |
std::string | m_histoTopDir |
histogram top level directory | |
std::string | m_histoDir |
histogram directory | |
bool | m_histosPrint |
print histograms at finalization | |
bool | m_declareMoniHists |
Flag to turn on/off the registration of histograms to the Monitoring Service. | |
Histo1DMapTitle | m_histo1DMapTitle |
the actual storage/access of 1D histograms by unique title | |
Histo1DMapID | m_histo1DMapID |
the actual storage/access of 1D histograms by unique ID | |
Histo2DMapTitle | m_histo2DMapTitle |
the actual storage/access of 2D histograms by unique title | |
Histo2DMapID | m_histo2DMapID |
the actual storage/access of 2D histograms by unique ID | |
Histo3DMapTitle | m_histo3DMapTitle |
the actual storage/access of 3D histograms by unique title | |
Histo3DMapID | m_histo3DMapID |
the actual storage/access of 3D histograms by unique ID | |
Profile1DMapTitle | m_profile1DMapTitle |
the actual storage/access of 1D profile histograms by unique title | |
Profile1DMapID | m_profile1DMapID |
the actual storage/access of 1D profile histograms by unique ID | |
Profile2DMapTitle | m_profile2DMapTitle |
the actual storage/access of 2D profile histograms by unique title | |
Profile2DMapID | m_profile2DMapID |
the actual storage/access of 2D profile histograms by unique ID | |
std::string | m_histo1DTableFormat |
format for printout of 1D-histograms as a table | |
std::string | m_histo1DTableFormatShort |
format for printout of 1D-histograms as a table | |
std::string | m_histo1DTableHeader |
the header for the table of 1-D historgrams | |
bool | m_useNumericAutoIDs |
Flag to switch back to the old style sequencial numerical automatic IDs. | |
std::map< std::string, std::string > | m_idReplaceInfo |
Map of strings to search and replace when using the title as the basis of automatically generated literal IDs. |
Templated base class providing common histogramming methods for GaudiAlgorithm and GaudiTool like classes.
Definition at line 51 of file GaudiHistos.h.
typedef GaudiAlg::Histo1DMapID GaudiHistos< PBASE >::Histo1DMapID |
the actual type for (ID)->(1D histogram) mapping
Definition at line 59 of file GaudiHistos.h.
typedef GaudiAlg::Histo1DMapTitle GaudiHistos< PBASE >::Histo1DMapTitle |
the actual type for title->(1D histogram) mapping
Definition at line 61 of file GaudiHistos.h.
typedef GaudiAlg::Histo2DMapID GaudiHistos< PBASE >::Histo2DMapID |
the actual type for (ID)->(2D histogram) mapping
Definition at line 64 of file GaudiHistos.h.
typedef GaudiAlg::Histo2DMapTitle GaudiHistos< PBASE >::Histo2DMapTitle |
the actual type for title->(2D histogram) mapping
Definition at line 66 of file GaudiHistos.h.
typedef GaudiAlg::Histo3DMapID GaudiHistos< PBASE >::Histo3DMapID |
the actual type for (ID)->(3D histogram) mapping
Definition at line 69 of file GaudiHistos.h.
typedef GaudiAlg::Histo3DMapTitle GaudiHistos< PBASE >::Histo3DMapTitle |
the actual type for title->(3D histogram) mapping
Definition at line 71 of file GaudiHistos.h.
typedef GaudiAlg::HistoBinEdges GaudiHistos< PBASE >::HistoBinEdges |
Edges for variable binning.
Definition at line 84 of file GaudiHistos.h.
typedef GaudiAlg::HistoID GaudiHistos< PBASE >::HistoID |
the actual type for histogram identifier
Reimplemented in HistoTool, GaudiTuples< GaudiHistoTool >, and GaudiTuples< GaudiHistoAlg >.
Definition at line 56 of file GaudiHistos.h.
typedef GaudiAlg::Profile1DMapID GaudiHistos< PBASE >::Profile1DMapID |
the actual type for (ID)->(1D profile histogram) mapping
Definition at line 74 of file GaudiHistos.h.
typedef GaudiAlg::Profile1DMapTitle GaudiHistos< PBASE >::Profile1DMapTitle |
the actual type for title->(1D profile histogram) mapping
Definition at line 76 of file GaudiHistos.h.
typedef GaudiAlg::Profile2DMapID GaudiHistos< PBASE >::Profile2DMapID |
the actual type for (ID)->(2D profile histogram) mapping
Definition at line 79 of file GaudiHistos.h.
typedef GaudiAlg::Profile2DMapTitle GaudiHistos< PBASE >::Profile2DMapTitle |
the actual type for title->(2D profile histogram) mapping
Definition at line 81 of file GaudiHistos.h.
GaudiHistos< PBASE >::GaudiHistos | ( | const std::string & | name, |
ISvcLocator * | pSvcLocator | ||
) |
Algorithm constructor.
GaudiHistos< PBASE >::GaudiHistos | ( | const std::string & | type, |
const std::string & | name, | ||
const IInterface * | parent | ||
) |
Tool constructor.
virtual GaudiHistos< PBASE >::~GaudiHistos | ( | ) | [inline, virtual] |
AIDA::IHistogram1D* GaudiHistos< PBASE >::book | ( | const std::string & | title, |
const double | low = 0 , |
||
const double | high = 100 , |
||
const unsigned long | bins = 100 |
||
) | const [inline] |
book the 1D histogram
Wrapper method for the equivalent book1D method. Retained for backwards compatibility, please use book1D instead.
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
Definition at line 2032 of file GaudiHistos.h.
{ return book1D( title, low, high, bins ); }
AIDA::IHistogram1D * GaudiHistos< PBASE >::book | ( | const Gaudi::Histo1DDef & | hdef ) | const |
book the 1D histogram
The histogram will be assigned a unique identifier
hdef | histogram description/definition |
Definition at line 186 of file GaudiHistos_1DFixedBinning.icpp.
{ return book1D ( hdef.title () , hdef.lowEdge () , hdef.highEdge () , hdef.bins () ) ; }
AIDA::IHistogram1D* GaudiHistos< PBASE >::book | ( | const HistoID & | ID, |
const std::string & | title, | ||
const double | low = 0 , |
||
const double | high = 100 , |
||
const unsigned long | bins = 100 |
||
) | const [inline] |
book the 1D histogram with forced ID
Wrapper method for the equivalent book1D method. Retained for backwards compatibility, please use book1D instead.
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
Definition at line 2082 of file GaudiHistos.h.
AIDA::IHistogram1D * GaudiHistos< PBASE >::book | ( | const HistoID & | ID, |
const Gaudi::Histo1DDef & | hdef | ||
) | const [inline] |
book the 1D histogram with forced ID
ID | unique histogram ID |
hdef | histogram descriptor |
Definition at line 199 of file GaudiHistos_1DFixedBinning.icpp.
AIDA::IHistogram1D * GaudiHistos< PBASE >::book1D | ( | const std::string & | title, |
const double | low = 0 , |
||
const double | high = 100 , |
||
const unsigned long | bins = 100 |
||
) | const |
book the 1D histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
Reimplemented in HistoTool.
Definition at line 8 of file GaudiHistos_1DFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IHistogram1D* hist = histo1D ( title ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Create a new histogram and return return this -> book1D ( ID, title, low, high, bins ); }
AIDA::IHistogram1D * GaudiHistos< PBASE >::book1D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const double | low = 0 , |
||
const double | high = 100 , |
||
const unsigned long | bins = 100 |
||
) | const |
book the 1D histogram with forced ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
Reimplemented in HistoTool.
Definition at line 33 of file GaudiHistos_1DFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if ( ID.undefined() ) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IHistogram1D* hist = histo1D ( ID ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 1D Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> book ( histoPath() , ID.numericID() , htitle , bins , low , high ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> book ( histoPath()+"/"+ ID.literalID() , htitle , bins , low , high ) ; } // check OK if( NULL == hist ) { this->Error( "IHistogram1D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_histo1DMapID [ ID ] = hist ; m_histo1DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // Printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 1D Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IHistogram1D * GaudiHistos< PBASE >::book1D | ( | const std::string & | title, |
const HistoBinEdges & | edges | ||
) | const |
book the 1D variable binning histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
Definition at line 8 of file GaudiHistos_1DVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IHistogram1D* hist = histo1D ( title ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Create a new histogram and return return this -> book1D ( ID, title, edges ); }
AIDA::IHistogram1D * GaudiHistos< PBASE >::book1D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const HistoBinEdges & | edges | ||
) | const |
book the 1D variable binning histogram with given ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
Definition at line 31 of file GaudiHistos_1DVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IHistogram1D* hist = histo1D ( ID ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 1D Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> book ( histoPath() , ID.numericID() , htitle , edges ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> book ( histoPath()+"/"+ ID.literalID() , htitle , edges ) ; } // check OK if( NULL == hist ) { this->Error( "IHistogram1D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_histo1DMapID [ ID ] = hist ; m_histo1DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // Printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 1D Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IHistogram2D * GaudiHistos< PBASE >::book2D | ( | const std::string & | title, |
const double | lowX = 0 , |
||
const double | highX = 100 , |
||
const unsigned long | binsX = 50 , |
||
const double | lowY = 0 , |
||
const double | highY = 100 , |
||
const unsigned long | binsY = 50 |
||
) | const |
book the 2D histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsY | number of bins in y |
Reimplemented in HistoTool.
Definition at line 8 of file GaudiHistos_2DFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IHistogram2D* hist = histo2D ( title ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Create a new histogram and return return this -> book2D ( ID, title, lowX, highX, binsX, lowY, highY, binsY ); }
AIDA::IHistogram2D * GaudiHistos< PBASE >::book2D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const double | lowX = 0 , |
||
const double | highX = 100 , |
||
const unsigned long | binsX = 50 , |
||
const double | lowY = 0 , |
||
const double | highY = 100 , |
||
const unsigned long | binsY = 50 |
||
) | const |
book the 2D histogram with forced ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
Reimplemented in HistoTool.
Definition at line 36 of file GaudiHistos_2DFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IHistogram2D* hist = histo2D( ID ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 2D Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> book ( histoPath() , ID.numericID() , htitle , binsX , lowX , highX , binsY , lowY , highY ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> book ( histoPath()+"/"+ ID.literalID() , htitle , binsX , lowX , highX , binsY , lowY , highY ) ; } // Check OK if( NULL == hist ) { this->Error( "IHistogram2D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_histo2DMapID [ ID ] = hist ; m_histo2DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist) , ID ); // Printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 2D Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } // return return hist ; }
AIDA::IHistogram2D * GaudiHistos< PBASE >::book2D | ( | const std::string & | title, |
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY | ||
) | const |
book the 2D variable binning histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
Definition at line 8 of file GaudiHistos_2DVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IHistogram2D * hist = histo2D ( title ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Create a new histogram and return return this -> book2D ( ID, title, edgesX, edgesY ); }
AIDA::IHistogram2D * GaudiHistos< PBASE >::book2D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY | ||
) | const |
book the 2D variable binning histogram with given ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
Definition at line 32 of file GaudiHistos_2DVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IHistogram2D * hist = histo2D ( ID ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 2D Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> book ( histoPath() , ID.numericID() , htitle , edgesX , edgesY ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> book ( histoPath()+"/"+ ID.literalID() , htitle , edgesX , edgesY ) ; } // check OK if( NULL == hist ) { this->Error( "IHistogram2D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_histo2DMapID [ ID ] = hist ; m_histo2DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // Printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 2D Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::book3D | ( | const std::string & | title, |
const double | lowX = 0 , |
||
const double | highX = 100 , |
||
const unsigned long | binsX = 10 , |
||
const double | lowY = 0 , |
||
const double | highY = 100 , |
||
const unsigned long | binsY = 10 , |
||
const double | lowZ = 0 , |
||
const double | highZ = 100 , |
||
const unsigned long | binsZ = 10 |
||
) | const |
book the 3D histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsY | number of bins in y |
lowZ | low y limit for histogram |
highZ | high y limit for histogram |
binsZ | number of bins in y |
Reimplemented in HistoTool.
Definition at line 8 of file GaudiHistos_3DFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IHistogram3D* hist = histo3D ( title ) ; // histogram is already booked if( 0 != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Create a new histogram and return return this -> book3D ( ID, title, lowX, highX, binsX, lowY, highY, binsY, lowZ, highZ, binsZ ); }
AIDA::IHistogram3D * GaudiHistos< PBASE >::book3D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const double | lowX = 0 , |
||
const double | highX = 100 , |
||
const unsigned long | binsX = 10 , |
||
const double | lowY = 0 , |
||
const double | highY = 100 , |
||
const unsigned long | binsY = 10 , |
||
const double | lowZ = 0 , |
||
const double | highZ = 100 , |
||
const unsigned long | binsZ = 10 |
||
) | const |
book the 3D histogram with forced ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsY | number of bins in y |
lowZ | low y limit for histogram |
highZ | high y limit for histogram |
binsZ | number of bins in y |
Reimplemented in HistoTool.
Definition at line 42 of file GaudiHistos_3DFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IHistogram3D* hist = histo3D( ID ) ; // histogram is already booked if( 0 != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 3D Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> book ( histoPath() , ID.numericID() , htitle , binsX , lowX , highX , binsY , lowY , highY , binsZ , lowZ , highZ ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> book ( histoPath()+"/"+ ID.literalID() , htitle , binsX , lowX , highX , binsY , lowY , highY , binsZ , lowZ , highZ ) ; } // Check OK if( 0 == hist ) { this->Error( "IHistogram3D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return 0; } // RETURN !! // add histogram into histogram storages m_histo3DMapID [ ID ] = hist ; m_histo3DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // Printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 3D Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::book3D | ( | const std::string & | title, |
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const HistoBinEdges & | edgesZ | ||
) | const |
book the 3D variable binning histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
edgesZ | The histogram z bin edges |
Definition at line 8 of file GaudiHistos_3DVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IHistogram3D * hist = histo3D ( title ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Create a new histogram and return return this -> book3D ( ID, title, edgesX, edgesY, edgesZ ); }
AIDA::IHistogram3D * GaudiHistos< PBASE >::book3D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const HistoBinEdges & | edgesZ | ||
) | const |
book the 3D variable binning histogram with given ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
edgesZ | The histogram z bin edges |
Definition at line 33 of file GaudiHistos_3DVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IHistogram3D * hist = histo3D ( ID ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 3D Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> book ( histoPath() , ID.numericID() , htitle , edgesX , edgesY , edgesZ ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> book ( histoPath()+"/"+ ID.literalID() , htitle , edgesX , edgesY , edgesZ ) ; } // check OK if( NULL == hist ) { this->Error( "IHistogram3D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_histo3DMapID [ ID ] = hist ; m_histo3DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // Printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 3D Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IProfile1D * GaudiHistos< PBASE >::bookProfile1D | ( | const std::string & | title, |
const double | low = 0 , |
||
const double | high = 100 , |
||
const unsigned long | bins = 100 , |
||
const std::string & | opt = "" , |
||
const double | lowY = -std::numeric_limits<double>::max() , |
||
const double | highY = std::numeric_limits<double>::max() |
||
) | const |
book the 1D profile histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
opt | the options, used for evaluation of errors |
lowY | the min cut-off for y-values |
highY | the max cut-off for y-values |
Definition at line 6 of file GaudiHistos_1DProfFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IProfile1D* hist = profile1D ( title ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Book the histo and return return this -> bookProfile1D ( ID, title, low, high, bins , opt , lowY , highY ); }
AIDA::IProfile1D * GaudiHistos< PBASE >::bookProfile1D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const double | low = 0 , |
||
const double | high = 100 , |
||
const unsigned long | bins = 100 , |
||
const std::string & | opt = "" , |
||
const double | lowY = -std::numeric_limits<double>::max() , |
||
const double | highY = std::numeric_limits<double>::max() |
||
) | const |
book the 1D profile histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
opt | the options, used for evaluation of errors |
lowY | the min cut-off for y-values |
highY | the max cut-off for y-values |
Definition at line 34 of file GaudiHistos_1DProfFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IProfile1D* hist = profile1D ( ID ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 1D Profile Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> bookProf ( histoPath() , ID.numericID() , htitle , bins , low , high , lowY , highY , opt ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> bookProf ( histoPath()+"/"+ ID.literalID() , htitle , bins , low , high , lowY , highY , opt ) ; } // test ok if( NULL == hist ) { this->Error( "IProfile1D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_profile1DMapID [ ID ] = hist ; m_profile1DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 1D Profile Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IProfile1D * GaudiHistos< PBASE >::bookProfile1D | ( | const std::string & | title, |
const HistoBinEdges & | edges | ||
) | const |
book the 1D profile histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
Definition at line 6 of file GaudiHistos_1DProfVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IProfile1D* hist = profile1D ( title ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // Book the histo and return return this -> bookProfile1D ( ID, title, edges ); }
AIDA::IProfile1D * GaudiHistos< PBASE >::bookProfile1D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const HistoBinEdges & | edges | ||
) | const |
book the 1D profile histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
Definition at line 29 of file GaudiHistos_1DProfVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IProfile1D* hist = profile1D ( ID ) ; // histogram is already booked if ( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 1D Profile Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> bookProf ( histoPath() , ID.numericID() , htitle , edges ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> bookProf ( histoPath()+"/"+ ID.literalID() , htitle , edges ) ; } // test ok if( NULL == hist ) { this->Error( "IProfile1D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_profile1DMapID [ ID ] = hist ; m_profile1DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 1D Profile Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IProfile2D * GaudiHistos< PBASE >::bookProfile2D | ( | const std::string & | title, |
const double | lowX = 0 , |
||
const double | highX = 100 , |
||
const unsigned long | binsX = 50 , |
||
const double | lowY = 0 , |
||
const double | highY = 100 , |
||
const unsigned long | binsY = 50 |
||
) | const |
book the 2D profile histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsY | number of bins in y |
Definition at line 6 of file GaudiHistos_2DProfFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IProfile2D* hist = profile2D ( title ) ; // histogram is already booked if( 0 != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // book histogram and return return this -> bookProfile2D ( ID, title, lowX, highX, binsX, lowY, highY, binsY ); }
AIDA::IProfile2D * GaudiHistos< PBASE >::bookProfile2D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const double | lowX = 0 , |
||
const double | highX = 100 , |
||
const unsigned long | binsX = 50 , |
||
const double | lowY = 0 , |
||
const double | highY = 100 , |
||
const unsigned long | binsY = 50 |
||
) | const |
book the 2D profile histogram with forced ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsY | number of bins in y |
Definition at line 34 of file GaudiHistos_2DProfFixedBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IProfile2D* hist = profile2D ( ID ) ; // histogram is already booked if( 0 != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 2D Profile Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> bookProf ( histoPath() , ID.numericID() , htitle , binsX , lowX , highX , binsY , lowY , highY ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> bookProf ( histoPath()+"/"+ ID.literalID() , htitle , binsX , lowX , highX , binsY , lowY , highY ) ; } // test OK if( 0 == hist ) { this->Error( "IProfile2D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return 0; } // RETURN !! // add histogram into histogram storages m_profile2DMapID [ ID ] = hist ; m_profile2DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 2D Profile Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
AIDA::IProfile2D * GaudiHistos< PBASE >::bookProfile2D | ( | const std::string & | title, |
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY | ||
) | const |
book the 2D profile histogram
The histogram will be assigned a unique identifier
title | histogram title (must be unique within the algorithm) |
edgesX | x bin edges |
edgesY | y bin edges |
Definition at line 6 of file GaudiHistos_2DProfVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // exist? AIDA::IProfile2D* hist = profile2D ( title ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // propose the histogram ID HistoID ID; newHistoID( title, ID ); // book histogram and return return this -> bookProfile2D ( ID, title, edgesX, edgesY ); }
AIDA::IProfile2D * GaudiHistos< PBASE >::bookProfile2D | ( | const HistoID & | ID, |
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY | ||
) | const |
book the 2D profile histogram with forced ID
ID | unique histogram ID |
title | histogram title (must be unique within the algorithm) |
edgesX | x bin edges |
edgesY | y bin edges |
Definition at line 30 of file GaudiHistos_2DProfVariableBinning.icpp.
{ // if ( !produceHistos() ) { return 0 ; } // RETURN // // Check ID if (ID.undefined()) { this->Error("Undefined Histogram ID : Title='"+title+"'"); return NULL; } // exist? AIDA::IProfile2D* hist = profile2D ( ID ) ; // histogram is already booked if( NULL != hist ) { return hist ; } // RETURN !! // Histogram title const std::string & htitle = ( title.empty() ? "Unnamed 2D Profile Histogram ID="+ID.idAsString() : title ) ; // book the histogram if ( ID.numeric() ) { hist = this->histoSvc() -> bookProf ( histoPath() , ID.numericID() , htitle , edgesX , edgesY ) ; } else if ( ID.literal() ) { hist = this->histoSvc() -> bookProf ( histoPath()+"/"+ ID.literalID() , htitle , edgesX , edgesY ) ; } // test OK if( NULL == hist ) { this->Error( "IProfile2D* points to NULL! ID='" + ID.idAsString() + "' title='"+htitle+"'" ) ; return NULL; } // RETURN !! // add histogram into histogram storages m_profile2DMapID [ ID ] = hist ; m_profile2DMapTitle [ title ] = hist ; // Declare to monitoring service monitorHisto( Gaudi::Utils::Histos::toBase ( hist ) , ID ); // printout and return if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Booked 2D Profile Histogram : ID='" << ID << "' Path=" << histoPath() << " Title='" << Gaudi::Utils::Histos::htitle ( hist ) << "'" << endmsg; } return hist ; }
bool GaudiHistos< PBASE >::checkForNaN | ( | ) | const [inline] |
get the flag for NaN checks (property "HistoCheckForNan")
Definition at line 2698 of file GaudiHistos.h.
{ return m_checkForNaN ; }
std::string GaudiHistos< PBASE >::convertTitleToID | ( | const std::string & | title ) | const [protected] |
Create an ID string from a title string.
Definition at line 504 of file GaudiHistos.icpp.
{ // clean up the ID string for all unwanted characters std::string tmp_id = title; for ( std::map<std::string,std::string>::const_iterator i = m_idReplaceInfo.begin() ; i != m_idReplaceInfo.end(); ++i ) { stringSearchReplace( tmp_id, i->first, i->second ); } return tmp_id; }
AIDA::IHistogram1D * GaudiHistos< PBASE >::fill | ( | AIDA::IHistogram1D * | histo, |
const double | value, | ||
const double | weight, | ||
const std::string & | title = "" |
||
) | const |
fill the 1D histogram with the value and weight
histo | 1D histogram to be filled |
value | value to be put into the histogram |
weight | weight to be used |
title | histogram title (to be used for error report) |
Reimplemented in HistoTool.
Definition at line 105 of file GaudiHistos_1DFixedBinning.icpp.
{ if ( 0 == histo ) { return 0 ; } // RETURN // if ( !checkForNaN() ) { Gaudi::Utils::Histos::fill ( histo , value , weight ) ; } else if ( lfin ( value ) && lfin ( weight ) ) { Gaudi::Utils::Histos::fill ( histo , value , weight ) ; } else if ( lnan ( value ) || lnan ( weight ) ) { this -> Warning ("fill():: 'NaN' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } else { this -> Warning ("fill():: 'Infinite' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } // return return histo ; }
AIDA::IHistogram2D * GaudiHistos< PBASE >::fill | ( | AIDA::IHistogram2D * | histo, |
const double | valueX, | ||
const double | valueY, | ||
const double | weight, | ||
const std::string & | title = "" |
||
) | const |
fill the 2D histogram with the value and weight
histo | 2D histogram to be filled |
valueX | x value to be put into the histogram |
valueY | y value to be put into the histogram |
weight | weight to be used |
title | histogram title (to be used for error report) |
Reimplemented in HistoTool.
Definition at line 117 of file GaudiHistos_2DFixedBinning.icpp.
{ // if ( NULL == histo ) { return 0 ; } // RETURN // if ( !checkForNaN() ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , weight ) ; } else if ( lfin ( valueX ) && lfin ( valueY ) && lfin ( weight ) ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , weight ) ; } else if ( lnan ( valueX ) || lnan ( valueY ) || lnan ( weight ) ) { this -> Warning ("fill():: 'NaN' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } else { this -> Warning ("fill():: 'Infinite' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } // return return histo ; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::fill | ( | AIDA::IHistogram3D * | histo, |
const double | valueX, | ||
const double | valueY, | ||
const double | valueZ, | ||
const double | weight, | ||
const std::string & | title = "" |
||
) | const |
fill the 3D histogram with the value and weight
histo | 3D histogram to be filled |
valueX | x value to be put into the histogram |
valueY | y value to be put into the histogram |
valueZ | z value to be put into the histogram |
weight | weight to be used |
title | histogram title (to be used for error report) |
Reimplemented in HistoTool.
Definition at line 131 of file GaudiHistos_3DFixedBinning.icpp.
{ if ( 0 == histo ) { return 0 ; } // RETURN // if ( !checkForNaN() ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , valueZ , weight ) ; } else if ( lfin ( valueX ) && lfin ( valueY ) && lfin ( valueZ ) && lfin ( weight ) ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , valueZ , weight ) ; } else if ( lnan ( valueX ) || lnan ( valueY ) || lnan ( valueZ ) || lnan ( weight ) ) { this -> Warning ("fill():: 'NaN' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } else { this -> Warning ("fill():: 'Infinite' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } // return return histo ; }
AIDA::IProfile1D * GaudiHistos< PBASE >::fill | ( | AIDA::IProfile1D * | histo, |
const double | valueX, | ||
const double | valueY, | ||
const double | weight, | ||
const std::string & | title = "" |
||
) | const |
fill the 1D profile histogram with the values and weight
histo | 1D profile histogram to be filled |
valueX | x value to be put into the histogram |
valueY | y value to be put into the histogram |
weight | weight to be used |
title | histogram title (to be used for error report) |
Definition at line 115 of file GaudiHistos_1DProfFixedBinning.icpp.
{ // if ( 0 == histo ) { return 0 ; } // RETURN // if ( !checkForNaN() ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , weight ); } else if ( lfin ( valueX ) && lfin ( valueY ) && lfin ( weight ) ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , weight ); } else if ( lnan ( valueX ) || lnan ( valueY ) || lnan ( weight ) ) { this -> Warning ("fill():: 'NaN' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } else { this -> Warning ("fill():: 'Infinite' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } // return return histo ; }
AIDA::IProfile2D * GaudiHistos< PBASE >::fill | ( | AIDA::IProfile2D * | histo, |
const double | valueX, | ||
const double | valueY, | ||
const double | valueZ, | ||
const double | weight, | ||
const std::string & | title = "" |
||
) | const |
fill the 2D profile histogram with the values and weight
histo | 2D profile histogram to be filled |
valueX | x value to be put into the histogram |
valueY | y value to be put into the histogram |
valueZ | z value to be put into the histogram |
weight | weight to be used |
title | histogram title (to be used for error report) |
Definition at line 114 of file GaudiHistos_2DProfFixedBinning.icpp.
{ if ( 0 == histo ) { return 0 ; } // RETURN // if ( !checkForNaN() ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , valueZ , weight ); } else if ( lfin ( valueX ) && lfin ( valueY ) && lfin ( valueZ ) && lfin ( weight ) ) { Gaudi::Utils::Histos::fill ( histo , valueX , valueY , valueZ , weight ); } else if ( lnan ( valueX ) || lnan ( valueY ) || lnan ( valueZ ) || lnan ( weight ) ) { this -> Warning ("fill():: 'NaN' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } else { this -> Warning ("fill():: 'Infinite' value is skipped from the histogram '" + Gaudi::Utils::Histos::htitle ( histo , title ) + "'" ) ; } // return return histo ; }
StatusCode GaudiHistos< PBASE >::finalize | ( | ) | [protected, virtual] |
standard finalization method
Reimplemented in GaudiHistoAlg, GaudiHistoTool, GaudiTupleAlg, GaudiTupleTool, GaudiTuples< GaudiHistoTool >, and GaudiTuples< GaudiHistoAlg >.
Definition at line 173 of file GaudiHistos.icpp.
{ if ( produceHistos() ) { // Count how many histos of each type if ( !noHistos() ) { const unsigned int n1D = histo1DMapID () . size () ; const unsigned int n2D = histo2DMapID () . size () ; const unsigned int n3D = histo3DMapID () . size () ; const unsigned int n1DP = profile1DMapID () . size () ; const unsigned int n2DP = profile2DMapID () . size () ; const unsigned int total = n1D+n2D+n3D+n1DP+n2DP; if ( total>0 ) { this->always() << "Booked " << total << " Histogram(s) : "; if ( n1D>0 ) this->always() << "1D=" << n1D << " "; if ( n2D>0 ) this->always() << "2D=" << n2D << " "; if ( n3D>0 ) this->always() << "3D=" << n3D << " "; if ( n1DP>0 ) this->always() << "1DProf=" << n1DP << " "; if ( n2DP>0 ) this->always() << "2DProf=" << n2DP << " "; this->always() << endmsg; } } // detailed printing if ( histosPrint() ) { printHistos() ; } } // clear all maps m_histo1DMapTitle . clear () ; m_histo2DMapTitle . clear () ; m_histo3DMapTitle . clear () ; m_histo1DMapID . clear () ; m_histo2DMapID . clear () ; m_histo3DMapID . clear () ; m_profile1DMapTitle . clear () ; m_profile2DMapTitle . clear () ; m_profile1DMapID . clear () ; m_profile2DMapID . clear () ; // finalize base class return PBASE::finalize(); }
bool GaudiHistos< PBASE >::fullDetail | ( | ) | const [inline] |
get flag to control output level of histograms
Definition at line 2696 of file GaudiHistos.h.
{ return m_fullDetail ; }
AIDA::IHistogram1D* GaudiHistos< PBASE >::histo | ( | const HistoID & | ID ) | const [inline] |
access the EXISTING 1D histogram by ID
Wrapper method for the equivalent histo1D method. Retained for backwards compatibility, please use histo1D instead.
return the pointer to existing 1D histogram or NULL
Definition at line 2640 of file GaudiHistos.h.
AIDA::IHistogram1D* GaudiHistos< PBASE >::histo | ( | const std::string & | title ) | const [inline] |
access the EXISTING 1D histogram by title
Wrapper method for the equivalent histo1D method. Retained for backwards compatibility, please use histo1D instead.
return the pointer to existing 1D histogram or NULL
Definition at line 2585 of file GaudiHistos.h.
{ return histo1D( title ); }
AIDA::IHistogram1D * GaudiHistos< PBASE >::histo1D | ( | const HistoID & | ID ) | const |
access the EXISTING 1D histogram by ID return the pointer to existing 1D histogram or NULL
Reimplemented in HistoTool.
Definition at line 394 of file GaudiHistos.icpp.
{ AIDA::IHistogram1D * h(NULL); // Histo1DMapID::const_iterator found = histo1DMapID().find( ID ) ; // h = ( histo1DMapID().end() == found ? NULL : found->second ); // return h ; }
AIDA::IHistogram1D* GaudiHistos< PBASE >::histo1D | ( | const std::string & | title ) | const [inline] |
access the EXISTING 1D histogram by title return the pointer to existing 1D histogram or NULL
Reimplemented in HistoTool.
Definition at line 2572 of file GaudiHistos.h.
{ Histo1DMapTitle::const_iterator found = histo1DMapTitle().find( title ) ; return ( histo1DMapTitle().end() == found ? 0 : found->second ); }
const Histo1DMapID& GaudiHistos< PBASE >::histo1DMapID | ( | ) | const [inline] |
get access to the map of all 1D histograms index via ID
const Histo1DMap& histos = histo1DMap () ; // iterate over the map! for ( Histo1DMap::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram ID const HistoID ID = entry->first ; // histogram itself AIDA::IHistogram1D* h = entry->second ; if ( 0 == h ) { continue ;} std::cout << " Histogram ID " << ID << " Histogram title " << h->title() << std::endl ; }
Definition at line 2777 of file GaudiHistos.h.
{ return m_histo1DMapID ; }
const Histo1DMapTitle& GaudiHistos< PBASE >::histo1DMapTitle | ( | ) | const [inline] |
get access to the map of all 1D histograms indexed via their title
Using this method one can inspect e.g. a list of active histograms
const Histo1DMapTitle& histos = histo1DMapTitle() ; // iterate over the map! for ( Histo1DMapTitle::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram title const std::string& title = entry->first ; // histogram itself AIDA::IHistogram1D* hist = entry->second ; if( 0 == hist ) { continue ; } // ATTENTION! std::cout << " Histogram title " << title << std::endl ; }
Definition at line 2751 of file GaudiHistos.h.
{ return m_histo1DMapTitle; }
AIDA::IHistogram2D * GaudiHistos< PBASE >::histo2D | ( | const HistoID & | ID ) | const |
access the EXISTING 2D histogram by ID return the pointer to existing 2D histogram or NULL
Reimplemented in HistoTool.
Definition at line 408 of file GaudiHistos.icpp.
{ AIDA::IHistogram2D * h(NULL); // Histo2DMapID::const_iterator found = histo2DMapID().find( ID ) ; // h = ( histo2DMapID().end() == found ? NULL : found->second ); // return h; }
AIDA::IHistogram2D* GaudiHistos< PBASE >::histo2D | ( | const std::string & | title ) | const [inline] |
access the EXISTING 2D histogram by title return the pointer to existing 2D histogram or NULL
Reimplemented in HistoTool.
Definition at line 2593 of file GaudiHistos.h.
{ Histo2DMapTitle::const_iterator found = histo2DMapTitle().find( title ) ; return ( histo2DMapTitle().end() == found ? 0 : found->second ); }
const Histo2DMapID& GaudiHistos< PBASE >::histo2DMapID | ( | ) | const [inline] |
get access to the map of 2D histograms index via ID
const Histo2DMapID& histos = histo2DMapID () ; // iterate over the map! for ( Histo2DMapID::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram ID const HistoID ID = entry->first ; // histogram itself AIDA::IHistogram2D* h = entry->second ; if ( 0 == h ) { continue ;} std::cout << " Histogram ID " << ID << " Histogram title " << h->title() << std::endl ; }
Definition at line 2832 of file GaudiHistos.h.
{ return m_histo2DMapID ; }
const Histo2DMapTitle& GaudiHistos< PBASE >::histo2DMapTitle | ( | ) | const [inline] |
get access to the map of all 2D histograms indexed via their title
Using this method one can inspect e.g. a list of active histograms
const Histo2DMapTitle& histos = histo2DMapTitle() ; // iterate over the map! for ( Histo2DMapTitle::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram title const std::string& title = entry->first ; // histogram itself AIDA::IHistogram2D* hist = entry->second ; if( 0 == hist ) { continue ; } // ATTENTION! std::cout << " Histogram title " << title << std::endl ; }
Definition at line 2806 of file GaudiHistos.h.
{ return m_histo2DMapTitle ; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::histo3D | ( | const HistoID & | ID ) | const |
access the EXISTING 3D histogram by ID return the pointer to existing 3D histogram or NULL
Reimplemented in HistoTool.
Definition at line 422 of file GaudiHistos.icpp.
{ AIDA::IHistogram3D * h(NULL); // Histo3DMapID::const_iterator found = histo3DMapID().find( ID ) ; h = ( histo3DMapID().end() == found ? NULL : found->second ); // return h; }
AIDA::IHistogram3D* GaudiHistos< PBASE >::histo3D | ( | const std::string & | title ) | const [inline] |
access the EXISTING 3D histogram by title return the pointer to existing 3D histogram or NULL
Reimplemented in HistoTool.
Definition at line 2602 of file GaudiHistos.h.
{ Histo3DMapTitle::const_iterator found = histo3DMapTitle().find( title ) ; return ( histo3DMapTitle().end() == found ? 0 : found->second ); }
const Histo3DMapID& GaudiHistos< PBASE >::histo3DMapID | ( | ) | const [inline] |
get access to the map of all 3D histograms index via a ID
const Histo3DMapID& histos = histo3DMapID() ; // iterate over the map! for ( Histo3DMapID::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram ID const HistoID ID = entry->first ; // histogram itself AIDA::IHistogram3D* h = entry->second ; if ( 0 == h ) { continue ;} std::cout << " Histogram ID " << ID << " Histogram title " << h->title() << std::endl ; }
Definition at line 2887 of file GaudiHistos.h.
{ return m_histo3DMapID; }
const Histo3DMapTitle& GaudiHistos< PBASE >::histo3DMapTitle | ( | ) | const [inline] |
get access to the map of all 3D histograms indexed via their title
Using this method one can inspect e.g. a list of active histograms
const Histo3DMapTitle& histos = histo3DMapTitle() ; // iterate over the map! for ( Histo3DMapTitle::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram title const std::string& title = entry->first ; // histogram itself AIDA::IHistogram3D* hist = entry->second ; if( 0 == hist ) { continue ; } // ATTENTION! std::cout << " Histogram title " << title << std::endl ; }
Definition at line 2861 of file GaudiHistos.h.
{ return m_histo3DMapTitle ; }
const std::string& GaudiHistos< PBASE >::histoDir | ( | ) | const [inline] |
get histogram directory (property "HistoDir")
Definition at line 2706 of file GaudiHistos.h.
{ return m_histoDir ; }
bool GaudiHistos< PBASE >::histoExists | ( | const std::string & | title ) | const [inline] |
bool GaudiHistos< PBASE >::histoExists | ( | const HistoID & | ID ) | const [inline] |
HistoID::NumericID GaudiHistos< PBASE >::histoOffSet | ( | ) | const [inline] |
get the value for histogram offset (property "HistoOffSet")
Definition at line 2702 of file GaudiHistos.h.
{ return m_histoOffSet ; }
std::string GaudiHistos< PBASE >::histoPath | ( | ) | const [inline] |
get the constructed histogram path
Definition at line 2708 of file GaudiHistos.h.
{ const std::string path = histoTopDir() + histoDir(); return ( splitHistoDir() ? dirHbookName(path) : path ); }
bool GaudiHistos< PBASE >::histosPrint | ( | ) | const [inline] |
print histograms at finalization ?
Definition at line 2714 of file GaudiHistos.h.
{ return m_histosPrint ; }
const std::string& GaudiHistos< PBASE >::histoTopDir | ( | ) | const [inline] |
get top-level histogram directory (property "HistoTopDir")
Definition at line 2704 of file GaudiHistos.h.
{ return m_histoTopDir ; }
void GaudiHistos< PBASE >::initGaudiHistosConstructor | ( | ) | [private] |
Constructor initialisation and job options.
Definition at line 55 of file GaudiHistos.icpp.
{ // SWITCH ON/OFF the histograms this->declareProperty ( "HistoProduce" , m_produceHistos = true , "Swith on/off the production of histograms " ) ; // print the histograms at finalization this->declareProperty ( "HistoPrint" , m_histosPrint = false , "Switch on/off the printout of histograms at finalization" ) -> declareUpdateHandler ( &GaudiHistos<PBASE>::printHistoHandler, this ) ; // check for NaN/Finite this->declareProperty ( "HistoCheckForNaN" , m_checkForNaN = true , "Swicth on/off the checks for NaN and Infinity for histogram fill" ) ; // for HBOOK persistency, 'true' can be useful this->declareProperty ( "HistoSplitDir" , m_splitHistoDir = false , "Split long directory names into short pieces (suitable for HBOOK)" ); // general OffSet for histogram ID this->declareProperty ( "HistoOffSet" , m_histoOffSet = 0 , "OffSet for automatically assigned histogram numerical identifiers " ) ; // top level histogram directory this->declareProperty ( "HistoTopDir" , m_histoTopDir = "" , "Top level histogram directory (take care that it ends with '/')" ) ; // histogram directory this->declareProperty ( "HistoDir" , m_histoDir = this->name() , "Histogram Directory" ) ; // control output level of histograms this->declareProperty ( "FullDetail" , m_fullDetail = false ) ; // monitor histograms this->declareProperty ( "MonitorHistograms" , m_declareMoniHists = true ) ; // format for 1D-histograms printout this->declareProperty ( "FormatFor1DHistoTable" , m_histo1DTableFormat = Gaudi::Utils::Histos::Formats::format () , "Format string for printout of 1D histograms" ) ; // "short" format for 1D-histograms printout this->declareProperty ( "ShortFormatFor1DHistoTable" , m_histo1DTableFormatShort = " | %1$-25.25s %2%" , "Format string for printout of 1D histograms" ) ; // the header for 1D-histogram tabkle this->declareProperty ( "HeaderFor1DHistoTable" , m_histo1DTableHeader = Gaudi::Utils::Histos::Formats::header () , "The table header for printout of 1D histograms " ) ; this->declareProperty ( "UseSequencialNumericAutoIDs", m_useNumericAutoIDs = false, "Flag to allow users to switch back to the old style of creating numerical automatic IDs" ); m_idReplaceInfo.clear(); m_idReplaceInfo["/"] = "=SLASH="; this->declareProperty ( "AutoStringIDPurgeMap", m_idReplaceInfo, "Map of strings to search and replace when using the title as the basis of automatically generated literal IDs" ); }
StatusCode GaudiHistos< PBASE >::initialize | ( | ) | [protected, virtual] |
standard initialization method
Reimplemented in GaudiHistoAlg, GaudiHistoTool, GaudiTupleAlg, GaudiTupleTool, GaudiTuples< GaudiHistoTool >, and GaudiTuples< GaudiHistoAlg >.
Definition at line 131 of file GaudiHistos.icpp.
{ // initialize base class const StatusCode sc = PBASE::initialize(); if ( sc.isFailure() ) return sc; // produce histograms? if ( !produceHistos() ) { this->debug() << "Histogram production is switched OFF" << endmsg; return sc; } // check the validity of histogram service if ( this->histoSvc() == NULL ) { return this->Error("initialize():: IHistogramSvc* is invalid"); } // Warn if the user has decided to use numerical automatic IDs if ( useNumericAutoIDs() ) { this -> Warning( "Using numerical automatic IDs. These are not guaranteed to be totally deterministic. Use with care...", StatusCode::SUCCESS ); } // Finally, print the location histogram will be written to this->Print ( "The histogram path is set to be '" + histoPath() + "'", StatusCode( StatusCode::SUCCESS, true ) , MSG::DEBUG ); return sc; }
void GaudiHistos< PBASE >::monitorHisto | ( | const AIDA::IBaseHistogram * | hist, |
const HistoID & | ID | ||
) | const [private] |
Declare a histogram to the monitor service.
Uses the histogram ID as the 'name' sent to the monitor service and the histogram title as the long description
Definition at line 374 of file GaudiHistos.icpp.
{ if ( hist && m_declareMoniHists ) { if ( this->msgLevel(MSG::DEBUG) ) { this->debug() << "Monitoring histogram '" << ID.idAsString() << "' desc = '" << Gaudi::Utils::Histos::htitle(hist) << "'" << endmsg; } this->declareInfo ( histoPath()+"/"+ID.idAsString() , hist , Gaudi::Utils::Histos::htitle(hist) ) ; } }
void GaudiHistos< PBASE >::newHistoID | ( | const std::string & | title, |
HistoID & | ID | ||
) | const [private] |
Create a new histogram ID using the given title.
[in] | title | Histogram title |
[out] | ID | The ID to use for the new histogram |
Definition at line 477 of file GaudiHistos.icpp.
{ if ( useNumericAutoIDs() || title.empty() ) { if ( !useNumericAutoIDs() ) { this -> Warning( "Cannot generate automatic literal ID from an empty title ! Using numeric ID instead for histogram ID", StatusCode::SUCCESS ); } // propose the histogram ID (always numeric) ID = HistoID( totalNumberOfHistos() + 1 + histoOffSet() ); // adjust the proposed ID while ( histoExists( ID ) ) { ID = HistoID ( ID.numeric() + 1 ) ; } } else { // use the title to create a unique literal ID ID = HistoID( this->convertTitleToID(title) ); // Just in case ... while ( histoExists( ID ) ) { ID = HistoID(ID.idAsString()+"_"); } } }
bool GaudiHistos< PBASE >::noHistos | ( | ) | const [private] |
Check if all histogram maps are empty.
Definition at line 356 of file GaudiHistos.icpp.
{ return ( histo1DMapTitle () . empty() && histo2DMapTitle () . empty() && histo3DMapTitle () . empty() && profile1DMapTitle () . empty() && profile2DMapTitle () . empty() && histo1DMapID () . empty() && histo2DMapID () . empty() && histo3DMapID () . empty() && profile1DMapID () . empty() && profile2DMapID () . empty() ); }
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const double | value, |
const HistoID & | ID, | ||
const Gaudi::Histo1DDef & | hdef, | ||
const double | weight = 1.0 |
||
) | const [inline] |
fill the 1D histogram (book on demand)
Wrapper method for the equivalent plot1D method. Retained for backwards compatibility, please use plot1D instead.
value | value to be filled |
ID | histogram identifier |
hdef | histogram descriptor |
weight | weight |
Definition at line 355 of file GaudiHistos.h.
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const double | value, |
const Gaudi::Histo1DDef & | hdef, | ||
const double | weight = 1.0 |
||
) | const [inline] |
fill the 1D histogram (book on demand)
Wrapper method for the equivalent plot1D method. Retained for backwards compatibility, please use plot1D instead.
value | value to be filled |
hdef | histogram descriptor |
weight | weight |
Definition at line 205 of file GaudiHistos.h.
{ return plot1D ( value, hdef, weight ); }
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const FUNCTION & | func, |
OBJECT | first, | ||
OBJECT | last, | ||
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins = 100 |
||
) | const [inline] |
fill the 1D histogram with information from [first,last) sequence
std::vector<double> v = ... ; plot( sin , // function v.begin() , v.end() , // sequence " bla-bla " , // title -1. , 1.0 , // low and high limits 100 ) // number of bins
Sequence, objects and function can be non-trivial:
Particles* p = ... ; plot( PT , // function p->begin() , p->end() , // sequence " bla-bla " , // title -1. , 1.0 , // low and high limits 100 ) ; // number of bins
where PT
can be any function or function object for which the expression PT(p)
, with p
of type Particle*
have some sense and can be evaluated to the values, which is convertible to double
func | function to be plotted |
first | begin of the sequence |
last | end of the sequence |
title | histogram title |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins for histogram |
Definition at line 427 of file GaudiHistos.h.
{ AIDA::IHistogram1D* h(0); if ( produceHistos() ) { // retrieve or book the histogram h = histo1D ( title ) ; if ( 0 == h ) { h = book1D ( title , low , high , bins ); } // fill histogram while( first != last && 0 != h ) { h = fill ( h , func( *first ) , 1.0 , title ) ; ++first ; } } return h ; }
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const double | value, |
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins = 100 , |
||
const double | weight = 1.0 |
||
) | const [inline] |
fill the 1D histogram (book on demand)
Wrapper method for the equivalent plot1D method. Retained for backwards compatibility, please use plot1D instead.
value | value to be filled |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
weight | weight |
Definition at line 155 of file GaudiHistos.h.
{ return plot1D ( value, title, low, high, bins, weight ); }
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const FUNCTION & | func, |
OBJECT | first, | ||
OBJECT | last, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins, | ||
const WEIGHT & | weight | ||
) | const [inline] |
book and fill the 1D histogram with forced ID and information from [first,last) sequence with given weight
std::vector<double> v = ... ; // example with numerical ID plot( sin , // function v.begin() , v.end() , // sequence 100 , " bla-bla " , // ID and title -1. , 1.0 , // low and high limits 100 , // number of bins sinh ); // weight function // example with literal ID plot( sin , // function v.begin() , v.end() , // sequence "sin" , " bla-bla " , // ID and title -1. , 1.0 , // low and high limits 100 , // number of bins sinh ); // weight function
Sequence, objects and function can be non-trivial:
Particles* p = ... ; plot( PT , // function p->begin() , p->end() , // sequence 100 , " bla-bla " , // ID and title -1. , 1.0 , // low and high limits 100 , // number of bins MASS ) ; // weight function
where PT
and MASS
can be any function or function object for which the expressions PT(p)
and MASS
with p
of type Particle*
have some sense and can be evaluated to the values, which is convertible to double
first | begin of the sequence |
last | end of the sequence |
ID | histogram identifier |
title | histogram title |
func | function to be plotted |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins for histogram |
weight | weight function |
Definition at line 689 of file GaudiHistos.h.
{ AIDA::IHistogram1D* h(0); if ( produceHistos() ) { // retrieve or book the histogram h = histo1D ( ID ) ; if ( 0 == h ) { h = book1D ( ID , title , low , high , bins ); } // fill histogram while( first != last && 0 != h ) { h = fill ( h , func ( *first ) , weight ( *first ) , title ) ; ++first ; } } return h ; }
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const FUNCTION & | func, |
OBJECT | first, | ||
OBJECT | last, | ||
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins, | ||
const WEIGHT & | weight | ||
) | const [inline] |
book and fill the 1D histogram with information from [first,last) sequence with given weight
std::vector<double> v = ... ; plot( sin , // function v.begin() , v.end() , // sequence " bla-bla " , // title -1. , 1.0 , // low and high limits 100 , // number of bins tanh ); // weight function
Sequence, objects and function can be non-trivial:
Particles* p = ... ; plot( PT , // function p->begin() , p->end() , // sequence " bla-bla " , // title -1. , 1.0 , // low and high limits 100 , // number of bins MASS ) ; // weight function
where PT
and MASS
can be any function or function object for which the expressions PT(p)
and MASS
with p
of type Particle*
have some sense and can be evaluated to the values, which is convertible to double
first | begin of the sequence |
last | end of the sequence |
title | histogram title |
func | function to be plotted |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins for histogram |
weight | weight function |
Definition at line 597 of file GaudiHistos.h.
{ AIDA::IHistogram1D* h(0); if ( produceHistos() ) { // retrieve or book the histogram h = histo1D ( title ) ; if ( 0 == h ) { h = book1D ( title , low , high , bins ); } // fill histogram while ( first != last && 0 != h ) { h = fill ( h , func ( *first ) , weight ( *first ) , title ) ; ++first ; } } return h; }
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const double | value, |
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins = 100 , |
||
const double | weight = 1.0 |
||
) | const [inline] |
fill the 1D histogram with forced ID assignment (book on demand)
Wrapper method for the equivalent plot1D method. Retained for backwards compatibility, please use plot1D instead.
value | value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
weight | weight |
Definition at line 301 of file GaudiHistos.h.
AIDA::IHistogram1D* GaudiHistos< PBASE >::plot | ( | const FUNCTION & | func, |
OBJECT | first, | ||
OBJECT | last, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins = 100 |
||
) | const [inline] |
fill the 1D histogram with forced ID and information from [first,last) sequence
std::vector<double> v = ... ; // Example with numeric ID plot( sin , // function v.begin() , v.end() , // sequence 100 , " bla-bla " , // ID and title -1. , 1.0 , // low and high limits 100 ); // number of bins // Example with literal ID plot( sin , // function v.begin() , v.end() , // sequence "sin" , " bla-bla " , // ID and title -1. , 1.0 , // low and high limits 100 ); // number of bins
Sequence, objects and function can be non-trivial:
Particles* p = ... ; plot( PT , // function p->begin() , p->end() , // sequence 100 , " bla-bla " , // ID and title -1. , 1.0 , // low and high limits 100 ) ; // number of bins
func | function to be plotted |
first | begin of the sequence |
last | end of the sequence |
ID | histogram identifier |
title | histogram title |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins for histogram |
Definition at line 505 of file GaudiHistos.h.
AIDA::IHistogram1D * GaudiHistos< PBASE >::plot1D | ( | const double | value, |
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins = 100 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 1D histogram (book on demand)
const double mass = ... ; plot1D( mass , "Invariant Mass" , 2.5 , 3.5 , 100 )
This example illustrates the filling of the histogram titled "InvariantMass"
with value mass
.
If the histogram with given title does not exist yet it will be automatically booked with parameters low
equal to 2.5, parameters high
equal to 3.5 and bins
equal to 100.
value | value to be filled |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
weight | weight |
Reimplemented in HistoTool.
Definition at line 137 of file GaudiHistos_1DFixedBinning.icpp.
{ AIDA::IHistogram1D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = histo1D ( title ) ; if ( NULL == h ) { h = book1D ( title , low , high , bins ) ; } // fill the histogram h = fill ( h , value , weight , title ); } return h; }
AIDA::IHistogram1D * GaudiHistos< PBASE >::plot1D | ( | const double | value, |
const std::string & | title, | ||
const HistoBinEdges & | edges, | ||
const double | weight = 1.0 |
||
) | const |
Fill the 1D variable binning histogram (book on demand)
const GaudiAlg::HistoBinEdges edges = ...; const double mass = ... ; plot1D( mass , "Invariant Mass" , edges )
This example illustrates the filling of the histogram titled "InvariantMass"
with value mass
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges.
value | value to be filled |
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
weight | weight |
Definition at line 97 of file GaudiHistos_1DVariableBinning.icpp.
{ AIDA::IHistogram1D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = histo1D ( title ) ; if ( NULL == h ) { h = book1D ( title , edges ) ; } // fill the histogram h = fill ( h , value , weight , title ); } return h; }
AIDA::IHistogram1D * GaudiHistos< PBASE >::plot1D | ( | const double | value, |
const Gaudi::Histo1DDef & | hdef, | ||
const double | weight = 1.0 |
||
) | const |
fill the 1D histogram (book on demand)
const Gaudi::Histo1DDef& hdef = ... ; const double mass = ... ; plot1D ( mass , hdef ) ;
The histogram will get a unique identifier automatically assigned which by default will be equal to the histogram title.
The histogram descriptor comes e.g. from the component properties.
value | value to be filled |
hdef | histogram descriptor |
weight | weight |
Definition at line 214 of file GaudiHistos_1DFixedBinning.icpp.
{ return plot1D ( value , hdef.title() , hdef.lowEdge() , hdef.highEdge() , hdef.bins() , weight ) ; }
AIDA::IHistogram1D * GaudiHistos< PBASE >::plot1D | ( | const double | value, |
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | low, | ||
const double | high, | ||
const unsigned long | bins = 100 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 1D histogram with forced ID assignment (book on demand)
const double mass = ... ; plot1D( mass , 15 , "Invariant Mass" , 2.5 , 3.5 , 100 )
This example illustrates the filling of the 1D histogram ID=15 titled "Invariant Mass"
with value mass
.
If the histogram with given ID does not exist yet it will be automatically booked with parameters low
equal to 2.5, parameters high
equal to 3.5 and bins
equal to 100.
It is also possible to use literal IDs. For example :-
const double mass = ... ; plot1D( mass , "mass" , "Invariant Mass" , 2.5 , 3.5 , 100 )
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const double mass = ... ; plot1D( mass , "subdir/mass" , "Invariant Mass" , 2.5 , 3.5 , 100 )
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
value | value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
low | low limit for histogram |
high | high limit for histogram |
bins | number of bins |
weight | weight |
Reimplemented in HistoTool.
Definition at line 161 of file GaudiHistos_1DFixedBinning.icpp.
AIDA::IHistogram1D * GaudiHistos< PBASE >::plot1D | ( | const double | value, |
const HistoID & | ID, | ||
const std::string & | title, | ||
const HistoBinEdges & | edges, | ||
const double | weight = 1.0 |
||
) | const |
fill the 1D variable binning histogram with forced ID assignment (book on demand)
const GaudiAlg::HistoBinEdges edges = ...; const double mass = ... ; plot1D( mass , 15 , "Invariant Mass" , edges )
This example illustrates the filling of the 1D histogram ID=15 titled "Invariant Mass"
with value mass
.
If the histogram with given ID does not exist yet it will be automatically booked with the given histogram bin edges.
It is also possible to use literal IDs. For example :-
const GaudiAlg::HistoBinEdges edges = ...; const double mass = ... ; plot1D( mass , "mass" , "Invariant Mass" , edges )
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const GaudiAlg::HistoBinEdges edges = ...; const double mass = ... ; plot1D( mass , "subdir/mass" , "Invariant Mass" , edges )
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
value | value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
weight | weight |
Definition at line 119 of file GaudiHistos_1DVariableBinning.icpp.
AIDA::IHistogram1D * GaudiHistos< PBASE >::plot1D | ( | const double | value, |
const HistoID & | ID, | ||
const Gaudi::Histo1DDef & | hdef, | ||
const double | weight = 1.0 |
||
) | const |
fill the 1D histogram with forced ID assignment (book on demand)
// get the histogram descriptor const Gaudi::Histo1DDef& hdef = ... ; // get the histogram ID const HistoID ID = ... ; const double mass = ... ; plot1D ( mass , ID , hdef )
The histogram descriptor comes e.g. from component properties
value | value to be filled |
ID | histogram identifier |
hdef | histogram descriptor |
weight | weight |
Definition at line 229 of file GaudiHistos_1DFixedBinning.icpp.
AIDA::IHistogram2D * GaudiHistos< PBASE >::plot2D | ( | const double | valueX, |
const double | valueY, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const double | lowY, | ||
const double | highY, | ||
const unsigned long | binsX = 50 , |
||
const unsigned long | binsY = 50 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 2D histogram with forced ID assignment (book on demand)
const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, 15, "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 4.5, 5.5, 100, 200 );
This example illustrates the filling of the 2D histogram ID=15 titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, lowY
equal to 4.5, highY
equal to 5.5, binsX
equal to 100 and binsY
equal to 200.
It is also possible to use literal IDs. For example :-
const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, "mass", "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 4.5, 5.5, 100, 200 );
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, "subdir/mass", "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 4.5, 5.5, 100, 200 );
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
ID | Histogram ID to use |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsX | number of bins in x |
binsY | number of bins in y |
weight | weight |
Reimplemented in HistoTool.
Definition at line 178 of file GaudiHistos_2DFixedBinning.icpp.
{ AIDA::IHistogram2D * h(NULL); // produce histograms ? if ( produceHistos() ) { // retrieve or book the histogram h = histo2D ( ID ) ; if ( NULL == h ) { h = book2D ( ID , title , lowX , highX , binsX , lowY , highY , binsY ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ) ; } return h; }
AIDA::IHistogram2D * GaudiHistos< PBASE >::plot2D | ( | const double | valueX, |
const double | valueY, | ||
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const double | weight = 1.0 |
||
) | const |
Fill the 2D variable binning histogram (book on demand)
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, "Invariant Mass2 versus Mass1" , edgesX, edgesY );
This example illustrates the filling of the 2D histogram titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges.
valueX | x value to be filled |
valueY | y value to be filled |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
weight | weight |
Definition at line 101 of file GaudiHistos_2DVariableBinning.icpp.
{ AIDA::IHistogram2D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = histo2D ( title ) ; if ( NULL == h ) { h = book2D ( title , edgesX , edgesY ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ); } return h; }
AIDA::IHistogram2D * GaudiHistos< PBASE >::plot2D | ( | const double | valueX, |
const double | valueY, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const double | weight = 1.0 |
||
) | const |
fill the 2D variable histogram with forced ID assignment (book on demand)
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, 15, "Invariant Mass2 versus Mass1", edgesX, edgesY );
This example illustrates the filling of the 2D histogram ID=15 titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges.
It is also possible to use literal IDs. For example :-
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, "mass", "Invariant Mass2 versus Mass1", edgesX, edgesY );
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, "subdir/mass", "Invariant Mass2 versus Mass1", edgesX, edgesY );
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
ID | Histogram ID to use |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
weight | weight |
Definition at line 125 of file GaudiHistos_2DVariableBinning.icpp.
AIDA::IHistogram2D * GaudiHistos< PBASE >::plot2D | ( | const double | valueX, |
const double | valueY, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const double | lowY, | ||
const double | highY, | ||
const unsigned long | binsX = 50 , |
||
const unsigned long | binsY = 50 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 2D histogram (book on demand)
const double mass1 = ... ; const double mass2 = ... ; plot2D( mass1, mass2, "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 4.5, 5.5, 100, 200 );
This example illustrates the filling of the 2D histogram titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, lowY
equal to 4.5, highY
equal to 5.5, binsX
equal to 100 and binsY
equal to 200.
valueX | x value to be filled |
valueY | y value to be filled |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsX | number of bins in x |
binsY | number of bins in y |
weight | weight |
Reimplemented in HistoTool.
Definition at line 150 of file GaudiHistos_2DFixedBinning.icpp.
{ AIDA::IHistogram2D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = histo2D ( title ) ; if ( NULL == h ) { h = book2D ( title , lowX , highX , binsX , lowY , highY , binsY ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ) ; } return h; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::plot3D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const double | lowY, | ||
const double | highY, | ||
const double | lowZ, | ||
const double | highZ, | ||
const unsigned long | binsX = 10 , |
||
const unsigned long | binsY = 10 , |
||
const unsigned long | binsZ = 10 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 3D histogram (book on demand)
const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "Space Points" , 2.5 , 3.5 , 4.5 , 5.5 , 6.5 , 7.5 , 10, 20, 30 );
This example illustrates the filling of the 3D histogram titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, lowY
equal to 4.5, highY
equal to 5.5, lowZ
equal to 6.5, highZ
equal to 7.5, binsX
equal to 10, binsY
equal to 20 and binsZ
equal to 30.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
lowY | low y limit for histogram |
highY | high y limit for histogram |
lowZ | low z limit for histogram |
highZ | high z limit for histogram |
binsX | number of bins in x |
binsY | number of bins in y |
binsZ | number of bins in z |
weight | weight |
Reimplemented in HistoTool.
Definition at line 166 of file GaudiHistos_3DFixedBinning.icpp.
{ AIDA::IHistogram3D * h(0); if ( produceHistos() ) { // retrieve or book the histogram h = histo3D ( title ) ; if ( 0 == h ) { h = book3D ( title , lowX , highX , binsX , lowY , highY , binsY , lowZ , highZ , binsZ ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ) ; } return h; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::plot3D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const HistoBinEdges & | edgesZ, | ||
const double | weight = 1.0 |
||
) | const |
Fill the 3D variable binning histogram (book on demand)
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const GaudiAlg::HistoBinEdges edgesZ = ...; const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "Space Points", edgesX, edgesY, edgesZ );
This example illustrates the filling of the 3D histogram titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
edgesZ | The histogram z bin edges |
weight | weight |
Definition at line 105 of file GaudiHistos_3DVariableBinning.icpp.
{ AIDA::IHistogram3D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = histo3D ( title ) ; if ( NULL == h ) { h = book3D ( title , edgesX , edgesY , edgesZ ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ); } return h; }
AIDA::IHistogram3D * GaudiHistos< PBASE >::plot3D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const HistoBinEdges & | edgesZ, | ||
const double | weight = 1.0 |
||
) | const |
fill the 3D histogram with forced ID assignment (book on demand)
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const GaudiAlg::HistoBinEdges edgesZ = ...; const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "Space Points", edgesX, edgesY, edgesZ );
This example illustrates the filling of the 3D histogram ID=15 titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges and histogram ID.
It is also possible to use literal IDs. For example :-
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const GaudiAlg::HistoBinEdges edgesZ = ...; const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "space", "Space Points" , edgesX, edgesY, edgesZ );
Will book the same histogram, using the id "space".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const GaudiAlg::HistoBinEdges edgesZ = ...; const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "subdir/space", "Space Points" , edgesX, edgesY, edgesZ );
Which will create the histogram "space" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
ID | Histogram ID to use |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
edgesZ | The histogram z bin edges |
weight | weight |
Definition at line 131 of file GaudiHistos_3DVariableBinning.icpp.
AIDA::IHistogram3D * GaudiHistos< PBASE >::plot3D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const double | lowY, | ||
const double | highY, | ||
const double | lowZ, | ||
const double | highZ, | ||
const unsigned long | binsX = 10 , |
||
const unsigned long | binsY = 10 , |
||
const unsigned long | binsZ = 10 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 3D histogram with forced ID assignment (book on demand)
const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, 15 , "Space Points" , 2.5 ,3.5, 4.5, 5.5, 6.5, 7.5, 10, 20, 30 );
This example illustrates the filling of the 3D histogram ID=15 titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, lowY
equal to 4.5, highY
equal to 5.5, lowZ
equal to 6.5, highZ
equal to 7.5, binsX
equal to 10, binsY
equal to 20 and binsZ
equal to 30.
It is also possible to use literal IDs. For example :-
const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "space", "Space Points" , 2.5 ,3.5, 4.5, 5.5, 6.5, 7.5, 10, 20, 30 );
Will book the same histogram, using the id "space".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const double X = ... ; const double Y = ... ; const double Z = ... ; plot3D( X, Y, Z, "subdir/space", "Space Points" , 2.5 ,3.5, 4.5, 5.5, 6.5, 7.5, 10, 20, 30 );
Which will create the histogram "space" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
ID | Histogram ID to use |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
lowY | low y limit for histogram |
highY | high y limit for histogram |
lowZ | low z limit for histogram |
highZ | high z limit for histogram |
binsX | number of bins in x |
binsY | number of bins in y |
binsZ | number of bins in z |
weight | weight |
Reimplemented in HistoTool.
Definition at line 200 of file GaudiHistos_3DFixedBinning.icpp.
{ AIDA::IHistogram3D * h(0); if ( produceHistos() ) { // retrieve or book the histogram h = histo3D ( ID ) ; if ( 0 == h ) { h = book3D ( ID , title , lowX , highX , binsX , lowY , highY , binsY , lowZ , highZ , binsZ ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ) ; } return h; }
void GaudiHistos< PBASE >::printHistoHandler | ( | Property & | ) | [private] |
the handler for "HistoPrint" property
Definition at line 535 of file GaudiHistos.icpp.
{ // no action if not yet initialized if ( this -> FSMState() < Gaudi::StateMachine::INITIALIZED ) { return ; } if ( this -> histosPrint() ) { this -> printHistos ( MSG::ALWAYS ) ; } }
int GaudiHistos< PBASE >::printHistos | ( | const MSG::Level | level = MSG::ALWAYS ) |
const |
perform the actual printout of histograms
level | The message level to print at |
Definition at line 224 of file GaudiHistos.icpp.
{ using namespace Gaudi::Utils::Histos ; if ( noHistos() ) { if ( this->msgLevel(MSG::DEBUG) ) { this->msgStream(level) << "No histograms are booked" << endmsg ; } return 0 ; // RETURN } MsgStream & msg = this->msgStream(level); // Printout all histograms Gaudi::Utils::Histos::Table table ( m_histo1DTableFormat , m_histo1DTableHeader ) ; if ( !histo1DMapID().empty() ) { msg << "List of booked 1D histograms in directory " << "\"" << histoPath() << "\" :-" ; if ( !table.header().empty() ) { msg << std::endl << Gaudi::Utils::Histos::format ( "ID" , table.header() , m_histo1DTableFormatShort ) ; } // temporary map to keep ordered IDs typedef std::map<HistoID,const AIDA::IHistogram1D*> OrderedMapType; OrderedMapType OrderedMap ( histo1DMapID().begin() , histo1DMapID().end() ); // for ( OrderedMapType::const_iterator entry = OrderedMap.begin() ; OrderedMap.end() != entry ; ++entry ) { const AIDA::IHistogram1D* aida = entry->second ; if ( NULL == aida ) { this->error() << "IHistogram1D points to NULL" << endmsg ; continue ; } // format and print the row msg << std::endl << table.toString ( aida , HistoID ( entry->first ) , m_histo1DTableFormatShort ) ; } msg << endmsg ; } // ========================================================================== if ( !histo2DMapID().empty() ) { msg << "List of booked 2D histograms in directory " << "\"" << histoPath() << "\" :-" ; // temporary map to keep ordered IDs typedef std::map<HistoID,const AIDA::IHistogram2D*> OrderedMapType; OrderedMapType OrderedMap ( histo2DMapID().begin() , histo2DMapID().end() ) ; // for ( OrderedMapType::const_iterator entry = OrderedMap.begin() ; OrderedMap.end() != entry ; ++entry ) { const AIDA::IHistogram2D* aida = entry->second ; if ( NULL == aida ) { this->error() << "IHistogram2D points to NULL" << endmsg ; continue ; } msg << std::endl << GaudiAlg::Print2D::toString ( aida , entry->first ); } msg << endmsg ; } // ========================================================================== if ( !histo3DMapID().empty() ) { msg << "List of booked 3D histograms in directory " << "\"" << histoPath() << "\" :-" ; // temporary map to keep ordered IDs typedef std::map<HistoID,const AIDA::IHistogram3D*> OrderedMapType; OrderedMapType OrderedMap ( histo3DMapID().begin() , histo3DMapID().end() ) ; // for ( OrderedMapType::const_iterator entry = OrderedMap.begin() ; OrderedMap.end() != entry ; ++entry ) { const AIDA::IHistogram3D* aida = entry->second ; if ( NULL == aida ) { this->error() << "IHistogram3D points to NULL" << endmsg ; continue ; } msg << std::endl << GaudiAlg::Print3D::toString ( aida , entry->first ); } msg << endmsg ; } // ========================================================================== if ( !profile1DMapID().empty() ) { msg << "List of booked 1D profile histograms in directory " << "\"" << histoPath() << "\" :-" ; // temporary map to keep ordered IDs typedef std::map<HistoID,const AIDA::IProfile1D*> OrderedMapType; OrderedMapType OrderedMap ( profile1DMapID().begin() , profile1DMapID().end() ) ; // for ( OrderedMapType::const_iterator entry = OrderedMap.begin() ; OrderedMap.end() != entry ; ++entry ) { const AIDA::IProfile1D* aida = entry->second ; if ( NULL == aida ) { this->error() << "IProfile1D points to NULL" << endmsg ; continue ; } msg << std::endl << GaudiAlg::Print1DProf::toString ( aida , entry->first ); } msg << endmsg ; } // ========================================================================== if ( !profile2DMapID().empty() ) { msg << "List of booked 2D profile histograms in directory " << "\"" << histoPath() << "\" :-" ; // temporary map to keep ordered IDs typedef std::map<HistoID,const AIDA::IProfile2D*> OrderedMapType; OrderedMapType OrderedMap ( profile2DMapID().begin() , profile2DMapID().end() ) ; // for ( OrderedMapType::const_iterator entry = OrderedMap.begin() ; OrderedMap.end() != entry ; ++entry ) { const AIDA::IProfile2D* aida = entry->second ; if ( NULL == aida ) { this->error() << "IProfile2D points to NULL" << endmsg ; continue ; } msg << std::endl << GaudiAlg::Print2DProf::toString ( aida , entry->first ); } msg << endmsg ; } // return this->totalNumberOfHistos() ; }
bool GaudiHistos< PBASE >::produceHistos | ( | ) | const [inline] |
get the flag for histogram production (property "HistoProduce")
Definition at line 2694 of file GaudiHistos.h.
{ return m_produceHistos ; }
AIDA::IProfile1D * GaudiHistos< PBASE >::profile1D | ( | const HistoID & | ID ) | const |
access the EXISTING 1D profile histogram by ID return the pointer to existing 1D profile histogram or NULL
Definition at line 435 of file GaudiHistos.icpp.
{ AIDA::IProfile1D * h(NULL); // Profile1DMapID::const_iterator found = profile1DMapID().find( ID ) ; // h = ( profile1DMapID().end() == found ? NULL : found->second ); // return h; }
AIDA::IProfile1D* GaudiHistos< PBASE >::profile1D | ( | const std::string & | title ) | const [inline] |
access the EXISTING 1D profile histogram by title return the pointer to existing 1D profile histogram or NULL
Definition at line 2611 of file GaudiHistos.h.
{ Profile1DMapTitle::const_iterator found = profile1DMapTitle().find( title ) ; return ( profile1DMapTitle().end() == found ? 0 : found->second ); }
AIDA::IProfile1D * GaudiHistos< PBASE >::profile1D | ( | const double | valueX, |
const double | valueY, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const unsigned long | binsX = 100 , |
||
const std::string & | opt = "" , |
||
const double | lowY = -std::numeric_limits<double>::max() , |
||
const double | highY = std::numeric_limits<double>::max() , |
||
const double | weight = 1.0 |
||
) | const |
fill the 1D profile histogram (book on demand)
const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 100 );
This example illustrates the filling of the 1D profile histogram titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, binsX
equal to 100
valueX | x value to be filled |
valueY | y value to be filled |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
opt | the options, used for evaluation of errors |
lowY | the min cut-off for y-values |
highY | the max cut-off for y-values |
weight | weight |
Definition at line 148 of file GaudiHistos_1DProfFixedBinning.icpp.
{ AIDA::IProfile1D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = profile1D ( title ) ; if ( NULL == h ) { h = bookProfile1D ( title , lowX , highX , binsX , opt , lowY , highY ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ) ; } return h; }
AIDA::IProfile1D * GaudiHistos< PBASE >::profile1D | ( | const double | valueX, |
const double | valueY, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const unsigned long | binsX = 100 , |
||
const std::string & | opt = "" , |
||
const double | lowY = -std::numeric_limits<double>::max() , |
||
const double | highY = std::numeric_limits<double>::max() , |
||
const double | weight = 1.0 |
||
) | const |
fill the 1D profile histogram with forced ID assignment (book on demand)
const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, 15, "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 100 );
This example illustrates the filling of the 1D profile histogram with ID=15 titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, binsX
equal to 100
It is also possible to use literal IDs. For example :-
const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, "mass", "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 100 );
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, "subdir/mass", "Invariant Mass2 versus Mass1" ,2.5 ,3.5, 100 );
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
binsX | number of bins in x |
opt | the options, used for evaluation of errors |
lowY | the min cut-off for y-values |
highY | the max cut-off for y-values |
weight | weight |
Definition at line 176 of file GaudiHistos_1DProfFixedBinning.icpp.
{ AIDA::IProfile1D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = profile1D ( ID ) ; if ( NULL == h ) { h = bookProfile1D ( ID , title , lowX , highX , binsX , opt , lowY , highY ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ) ; } return h; }
AIDA::IProfile1D * GaudiHistos< PBASE >::profile1D | ( | const double | valueX, |
const double | valueY, | ||
const std::string & | title, | ||
const HistoBinEdges & | edges, | ||
const double | weight = 1.0 |
||
) | const |
fill the 1D variable binning profile histogram (book on demand)
const GaudiAlg::HistoBinEdges edges = ...; const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, "Invariant Mass2 versus Mass1", edges );
This example illustrates the filling of the 1D profile histogram titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges.
valueX | x value to be filled |
valueY | y value to be filled |
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
weight | weight |
Definition at line 95 of file GaudiHistos_1DProfVariableBinning.icpp.
{ AIDA::IProfile1D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = profile1D ( title ) ; if ( NULL == h ) { h = bookProfile1D ( title , edges ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ) ; } return h; }
AIDA::IProfile1D * GaudiHistos< PBASE >::profile1D | ( | const double | valueX, |
const double | valueY, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const HistoBinEdges & | edges, | ||
const double | weight = 1.0 |
||
) | const |
fill the 1D variable binning profile histogram with forced ID assignment (book on demand)
const GaudiAlg::HistoBinEdges edges = ...; const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, 15, "Invariant Mass2 versus Mass1", edges );
This example illustrates the filling of the 1D profile histogram with ID=15 titled "Invariant Mass2 versus Mass1"
with values mass1
and mass2
.
If the histogram with given ID does not exist yet it will be automatically booked with the given histogram bin edges.
It is also possible to use literal IDs. For example :-
const GaudiAlg::HistoBinEdges edges = ...; const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, "mass", "Invariant Mass2 versus Mass1", edges );
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const GaudiAlg::HistoBinEdges edges = ...; const double mass1 = ... ; const double mass2 = ... ; profile1D( mass1, mass2, "subdir/mass", "Invariant Mass2 versus Mass1", edges );
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
edges | The histogram bin edges |
weight | weight |
Definition at line 117 of file GaudiHistos_1DProfVariableBinning.icpp.
{ AIDA::IProfile1D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = profile1D ( ID ) ; if ( NULL == h ) { h = bookProfile1D ( ID , title , edges ) ; } // fill the histogram h = fill ( h , valueX , valueY , weight , title ) ; } return h; }
const Profile1DMapID& GaudiHistos< PBASE >::profile1DMapID | ( | ) | const [inline] |
get access to the map of 1D profile histograms index via a ID
const Profile1DMapID& histos = profile1DMapID() ; // iterate over the map! for ( Profile1DMapID::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram ID const HistoID ID = entry->first ; // histogram itself AIDA::IProfile1D* h = entry->second ; if ( 0 == h ) { continue ;} std::cout << " Histogram ID " << ID << " Histogram title " << h->title() << std::endl ; }
Definition at line 2942 of file GaudiHistos.h.
{ return m_profile1DMapID; }
const Profile1DMapTitle& GaudiHistos< PBASE >::profile1DMapTitle | ( | ) | const [inline] |
get access to the map of all 1D profile histograms indexed via their title
Using this method one can inspect e.g. a list of active histograms
const Profile1DMapTitle& histos = profile1DMapTitle() ; // iterate over the map! for ( Profile1DMapTitle::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram title const std::string& title = entry->first ; // histogram itself AIDA::IProfile1D* hist = entry->second ; if( 0 == hist ) { continue ; } // ATTENTION! std::cout << " Histogram title " << title << std::endl ; }
Definition at line 2916 of file GaudiHistos.h.
{ return m_profile1DMapTitle; }
AIDA::IProfile2D * GaudiHistos< PBASE >::profile2D | ( | const HistoID & | ID ) | const |
access the EXISTING 2D profile histogram by ID return the pointer to existing 2D profile histogram or NULL
Definition at line 449 of file GaudiHistos.icpp.
{ AIDA::IProfile2D * h(NULL); // Profile2DMapID::const_iterator found = profile2DMapID().find( ID ) ; // h = ( profile2DMapID().end() == found ? NULL : found->second ); // return h; }
AIDA::IProfile2D * GaudiHistos< PBASE >::profile2D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const double | weight = 1.0 |
||
) | const |
fill the 2D variable binning profile histogram (book on demand)
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const double X = ... ; const double Y = ... ; const double Z = ... ; profile2D( X, Y, Z, "Space Points", edgesX, edgesY );
This example illustrates the filling of the 2D profile histogram titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with the given histogram bin edges.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram x bin edges |
weight | weight |
Definition at line 98 of file GaudiHistos_2DProfVariableBinning.icpp.
{ AIDA::IProfile2D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = profile2D ( title ) ; if ( NULL == h ) { h = bookProfile2D ( title, edgesX, edgesY ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ) ; } return h; }
AIDA::IProfile2D* GaudiHistos< PBASE >::profile2D | ( | const std::string & | title ) | const [inline] |
access the EXISTING 2D profile histogram by title return the pointer to existing 2D profile histogram or NULL
Definition at line 2620 of file GaudiHistos.h.
{ Profile2DMapTitle::const_iterator found = profile2DMapTitle().find( title ) ; return ( profile2DMapTitle().end() == found ? 0 : found->second ); }
AIDA::IProfile2D * GaudiHistos< PBASE >::profile2D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const double | lowY, | ||
const double | highY, | ||
const unsigned long | binsX = 50 , |
||
const unsigned long | binsY = 50 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 2D profile histogram (book on demand)
const double X = ... ; const double Y = ... ; const double Z = ... ; profile2( X, Y, Z, "Space Points" ,2.5 ,3.5, 4.5, 5.5, 10, 20 );
This example illustrates the filling of the 2D profile histogram titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, lowY
equal to 4.5, highY
equal to 5.5, binsX
equal to 10, binsY
equal to 20.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsX | number of bins in x |
binsY | number of bins in y |
weight | weight |
Definition at line 149 of file GaudiHistos_2DProfFixedBinning.icpp.
{ AIDA::IProfile2D * h(0); if ( produceHistos() ) { // retrieve or book the histogram h = profile2D ( title ) ; if ( 0 == h ) { h = bookProfile2D ( title , lowX , highX , binsX , lowY , highY , binsY ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ) ; } return h; }
AIDA::IProfile2D * GaudiHistos< PBASE >::profile2D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const HistoBinEdges & | edgesX, | ||
const HistoBinEdges & | edgesY, | ||
const double | weight = 1.0 |
||
) | const |
fill the 2D variable binning profile histogram with forced ID assignment (book on demand)
const GaudiAlg::HistoBinEdges edgesX = ...; const GaudiAlg::HistoBinEdges edgesY = ...; const double X = ... ; const double Y = ... ; const double Z = ... ; profile2( X, Y, Z, "Space Points", edgesX, edgesY );
This example illustrates the filling of the 2D profile histogram titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given ID does not exist yet it will be automatically booked with the given histogram bin edges.
It is also possible to use literal IDs. For example :-
const double X = ... ; const double Y = ... ; const double Z = ... ; profile2D( X, Y, Z, "space", "Space Points", edgesX, edgesY );
Will book the same histogram, using the id "mass".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const double X = ... ; const double Y = ... ; const double Z = ... ; profile2D( X, Y, Z, "subdir/space", "Space Points", edgesX, edgesY );
Which will create the histogram "mass" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
edgesX | The histogram x bin edges |
edgesY | The histogram y bin edges |
weight | weight |
Definition at line 122 of file GaudiHistos_2DProfVariableBinning.icpp.
{ AIDA::IProfile2D * h(NULL); if ( produceHistos() ) { // retrieve or book the histogram h = profile2D ( ID ) ; if ( NULL == h ) { h = bookProfile2D ( ID , title , edgesX , edgesY ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ) ; } return h; }
AIDA::IProfile2D * GaudiHistos< PBASE >::profile2D | ( | const double | valueX, |
const double | valueY, | ||
const double | valueZ, | ||
const HistoID & | ID, | ||
const std::string & | title, | ||
const double | lowX, | ||
const double | highX, | ||
const double | lowY, | ||
const double | highY, | ||
const unsigned long | binsX = 50 , |
||
const unsigned long | binsY = 50 , |
||
const double | weight = 1.0 |
||
) | const |
fill the 2D profile histogram with forced ID assignment (book on demand)
const double X = ... ; const double Y = ... ; const double Z = ... ; profile2D( X, Y, Z, 15, "Space Points" ,2.5 ,3.5, 4.5, 5.5, 10, 20 );
This example illustrates the filling of the 2D profile histogram with ID=15 titled "Space Points"
with values X
, Y
and Z
.
If the histogram with given title does not exist yet it will be automatically booked with parameters lowX
equal to 2.5, highX
equal to 3.5, lowY
equal to 4.5, highY
equal to 5.5, binsX
equal to 10, binsY
equal to 20.
It is also possible to use literal IDs. For example :-
const double X = ... ; const double Y = ... ; const double Z = ... ; profile2D( X, Y, Z, "space", "Space Points" ,2.5 ,3.5, 4.5, 5.5, 10, 20 );
Will book the same histogram, using the id "space".
It is also possible using literal IDs, to place histograms in sub-directories from the main histogram directory, using for example :-
const double X = ... ; const double Y = ... ; const double Z = ... ; profile2D( X, Y, Z, "subdir/space", "Space Points" ,2.5 ,3.5, 4.5, 5.5, 10, 20 );
Which will create the histogram "space" in the sub-directory "subdir". Histograms can also be created in sub-directories with numeric IDs if IDs such as "subdir/1" are used.
valueX | x value to be filled |
valueY | y value to be filled |
valueZ | z value to be filled |
ID | histogram identifier |
title | histogram title (must be unique within the algorithm) |
lowX | low x limit for histogram |
highX | high x limit for histogram |
lowY | low y limit for histogram |
highY | high y limit for histogram |
binsX | number of bins in x |
binsY | number of bins in y |
weight | weight |
Definition at line 179 of file GaudiHistos_2DProfFixedBinning.icpp.
{ AIDA::IProfile2D * h(0); if ( produceHistos() ) { // retrieve or book the histogram h = profile2D ( ID ) ; if ( 0 == h ) { h = bookProfile2D ( ID , title , lowX , highX , binsX , lowY , highY , binsY ) ; } // fill the histogram h = fill ( h , valueX , valueY , valueZ , weight , title ) ; } return h; }
const Profile2DMapID& GaudiHistos< PBASE >::profile2DMapID | ( | ) | const [inline] |
get access to the map of 2D profile histograms index via a ID
const Profile2DMapID& histos = profile2DMapID() ; // iterate over the map! for ( Profile2DMapID::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram ID const HistoID ID = entry->first ; // histogram itself AIDA::IProfile2D* h = entry->second ; if ( 0 == h ) { continue ;} std::cout << " Histogram ID " << ID << " Histogram title " << h->title() << std::endl ; }
Definition at line 2997 of file GaudiHistos.h.
{ return m_profile2DMapID; }
const Profile2DMapTitle& GaudiHistos< PBASE >::profile2DMapTitle | ( | ) | const [inline] |
get access to the map of all 2D profile histograms indexed via their title
Using this method one can inspect e.g. a list of active histograms
const Profile2DMapTitle& histos = profile2DMapTitle() ; // iterate over the map! for ( Profile2DMapTitle::const_iterator entry = histos.begin() ; histos.end() != entry ; ++entry ) { // histogram title const std::string& title = entry->first ; // histogram itself AIDA::IProfile2D* hist = entry->second ; if( 0 == hist ) { continue ; } // ATTENTION! std::cout << " Histogram title " << title << std::endl ; }
Definition at line 2971 of file GaudiHistos.h.
{ return m_profile2DMapTitle; }
void GaudiHistos< PBASE >::setCheckForNaN | ( | const bool | val ) | [inline] |
set the flag for NaN checks (property "HistoCheckForNan")
Definition at line 3006 of file GaudiHistos.h.
{ m_checkForNaN = val ; }
void GaudiHistos< PBASE >::setFullDetail | ( | const bool | val ) | [inline] |
set flag to control output level of histograms
Definition at line 3004 of file GaudiHistos.h.
{ m_fullDetail = val ; }
void GaudiHistos< PBASE >::setHistoDir | ( | const std::string & | val ) | [inline] |
set histogram directory (property "HistoDir")
Definition at line 3017 of file GaudiHistos.h.
{ m_histoDir = val ; }
void GaudiHistos< PBASE >::setHistoOffSet | ( | const HistoID::NumericID | val ) | [inline] |
set a value for histogram offset (property "HistoOffSet"
Definition at line 3010 of file GaudiHistos.h.
{ m_histoOffSet = val ; }
void GaudiHistos< PBASE >::setHistoTopDir | ( | const std::string & | val ) | [inline] |
set top-level histogram directory (property "HistoTopDir")
Definition at line 3014 of file GaudiHistos.h.
{ m_histoTopDir = val ; }
void GaudiHistos< PBASE >::setProduceHistos | ( | const bool | val ) | [inline] |
set the flag for histogram production (property "HistoProduce")
Definition at line 3002 of file GaudiHistos.h.
{ m_produceHistos = val ; }
void GaudiHistos< PBASE >::setSplitHistoDir | ( | const bool | val ) | [inline] |
set the flag for histogram path split (property "HistoSplitDir")
Definition at line 3008 of file GaudiHistos.h.
{ m_splitHistoDir = val ; }
bool GaudiHistos< PBASE >::splitHistoDir | ( | ) | const [inline] |
get the flag for histogram path split (property "HistoSplitDir")
Definition at line 2700 of file GaudiHistos.h.
{ return m_splitHistoDir ; }
void GaudiHistos< PBASE >::stringSearchReplace | ( | std::string & | title, |
const std::string & | A, | ||
const std::string & | B | ||
) | const [private] |
Searches 'title' for all instancies of 'A' and replaces them with 'B'.
Definition at line 520 of file GaudiHistos.icpp.
{ std::string::size_type slash = title.find_first_of ( A ) ; while ( std::string::npos != slash ) { title = title.substr(0,slash) + B + title.substr(slash+A.size()); slash = title.find_first_of( A ); } }
unsigned int GaudiHistos< PBASE >::totalNumberOfHistos | ( | ) | const |
Returns the total number of histograms (of all types) currently booked.
Definition at line 463 of file GaudiHistos.icpp.
{ return histo1DMapID () . size () + histo2DMapID () . size () + histo3DMapID () . size () + profile1DMapID () . size () + profile2DMapID () . size () ; }
bool GaudiHistos< PBASE >::useNumericAutoIDs | ( | ) | const [inline] |
Use old style sequencial numerical automatically assigned IDs ?
Definition at line 2716 of file GaudiHistos.h.
{ return m_useNumericAutoIDs; }
bool GaudiHistos< PBASE >::m_checkForNaN [private] |
flag to control check for Nan/Finite while filling the histogram
Definition at line 3100 of file GaudiHistos.h.
bool GaudiHistos< PBASE >::m_declareMoniHists [private] |
Flag to turn on/off the registration of histograms to the Monitoring Service.
Definition at line 3112 of file GaudiHistos.h.
bool GaudiHistos< PBASE >::m_fullDetail [private] |
flag to control output level of histograms
Definition at line 3098 of file GaudiHistos.h.
Histo1DMapID GaudiHistos< PBASE >::m_histo1DMapID [mutable, private] |
the actual storage/access of 1D histograms by unique ID
Definition at line 3117 of file GaudiHistos.h.
Histo1DMapTitle GaudiHistos< PBASE >::m_histo1DMapTitle [mutable, private] |
the actual storage/access of 1D histograms by unique title
Definition at line 3115 of file GaudiHistos.h.
std::string GaudiHistos< PBASE >::m_histo1DTableFormat [private] |
format for printout of 1D-histograms as a table
Definition at line 3140 of file GaudiHistos.h.
std::string GaudiHistos< PBASE >::m_histo1DTableFormatShort [private] |
format for printout of 1D-histograms as a table
Definition at line 3142 of file GaudiHistos.h.
std::string GaudiHistos< PBASE >::m_histo1DTableHeader [private] |
the header for the table of 1-D historgrams
Definition at line 3144 of file GaudiHistos.h.
Histo2DMapID GaudiHistos< PBASE >::m_histo2DMapID [mutable, private] |
the actual storage/access of 2D histograms by unique ID
Definition at line 3122 of file GaudiHistos.h.
Histo2DMapTitle GaudiHistos< PBASE >::m_histo2DMapTitle [mutable, private] |
the actual storage/access of 2D histograms by unique title
Definition at line 3120 of file GaudiHistos.h.
Histo3DMapID GaudiHistos< PBASE >::m_histo3DMapID [mutable, private] |
the actual storage/access of 3D histograms by unique ID
Definition at line 3127 of file GaudiHistos.h.
Histo3DMapTitle GaudiHistos< PBASE >::m_histo3DMapTitle [mutable, private] |
the actual storage/access of 3D histograms by unique title
Definition at line 3125 of file GaudiHistos.h.
std::string GaudiHistos< PBASE >::m_histoDir [private] |
histogram directory
Definition at line 3108 of file GaudiHistos.h.
HistoID::NumericID GaudiHistos< PBASE >::m_histoOffSet [private] |
general histogram ID offset (only works for automatically assigned numeric IDs)
Definition at line 3104 of file GaudiHistos.h.
bool GaudiHistos< PBASE >::m_histosPrint [private] |
print histograms at finalization
Definition at line 3110 of file GaudiHistos.h.
std::string GaudiHistos< PBASE >::m_histoTopDir [private] |
histogram top level directory
Definition at line 3106 of file GaudiHistos.h.
std::map<std::string,std::string> GaudiHistos< PBASE >::m_idReplaceInfo [private] |
Map of strings to search and replace when using the title as the basis of automatically generated literal IDs.
Definition at line 3150 of file GaudiHistos.h.
bool GaudiHistos< PBASE >::m_produceHistos [private] |
flag to SWITCH ON/SWITCH OFF the histogrm fillling and booking
Definition at line 3096 of file GaudiHistos.h.
Profile1DMapID GaudiHistos< PBASE >::m_profile1DMapID [mutable, private] |
the actual storage/access of 1D profile histograms by unique ID
Definition at line 3132 of file GaudiHistos.h.
Profile1DMapTitle GaudiHistos< PBASE >::m_profile1DMapTitle [mutable, private] |
the actual storage/access of 1D profile histograms by unique title
Definition at line 3130 of file GaudiHistos.h.
Profile2DMapID GaudiHistos< PBASE >::m_profile2DMapID [mutable, private] |
the actual storage/access of 2D profile histograms by unique ID
Definition at line 3137 of file GaudiHistos.h.
Profile2DMapTitle GaudiHistos< PBASE >::m_profile2DMapTitle [mutable, private] |
the actual storage/access of 2D profile histograms by unique title
Definition at line 3135 of file GaudiHistos.h.
bool GaudiHistos< PBASE >::m_splitHistoDir [private] |
split histogram directory name (very useful for Hbook)
Definition at line 3102 of file GaudiHistos.h.
bool GaudiHistos< PBASE >::m_useNumericAutoIDs [private] |
Flag to switch back to the old style sequencial numerical automatic IDs.
Definition at line 3146 of file GaudiHistos.h.