1 #ifndef GAUDISVC_GAUDIPI_H
2 #define GAUDISVC_GAUDIPI_H
8 #include "AIDA/IHistogram1D.h"
9 #include "AIDA/IHistogram2D.h"
10 #include "AIDA/IHistogram3D.h"
11 #include "AIDA/IProfile1D.h"
12 #include "AIDA/IProfile2D.h"
19 typedef std::vector<double>
Edges;
30 std::pair<DataObject*,AIDA::IHistogram1D*>
createH1D(
const AIDA::IHistogram1D& hist);
32 std::pair<DataObject*,AIDA::IHistogram1D*>
createH1D(
const std::string& title,
int nBins=10,
double lowerEdge=0.,
double upperEdge=1.);
34 std::pair<DataObject*,AIDA::IHistogram1D*>
createH1D(
const std::string& title,
const Edges& e);
37 std::pair<DataObject*,AIDA::IHistogram2D*>
createH2D(
const AIDA::IHistogram2D& hist);
39 std::pair<DataObject*,AIDA::IHistogram2D*>
createH2D(TH2D* rep);
41 std::pair<DataObject*,AIDA::IHistogram2D*>
createH2D(
const std::string& title,
int binsX,
double iminX,
double imaxX,
int binsY,
double iminY,
double imaxY);
43 std::pair<DataObject*,AIDA::IHistogram2D*>
createH2D(
const std::string& title,
const Edges& eX,
const Edges& eY);
45 std::pair<DataObject*,AIDA::IHistogram1D*>
slice1DX(
const std::string& name,
const AIDA::IHistogram2D& h,
int firstbin,
int lastbin);
47 std::pair<DataObject*,AIDA::IProfile1D*>
profile1DX(
const std::string& name,
const AIDA::IHistogram2D& h,
int firstbin,
int lastbin);
49 std::pair<DataObject*,AIDA::IHistogram1D*>
project1DX(
const std::string& name,
const AIDA::IHistogram2D& h,
int firstbin,
int lastbin);
51 std::pair<DataObject*,AIDA::IHistogram1D*>
slice1DY (
const std::string& name,
const AIDA::IHistogram2D& h,
int firstbin,
int lastbin);
53 std::pair<DataObject*,AIDA::IProfile1D*>
profile1DY(
const std::string& name,
const AIDA::IHistogram2D& h,
int firstbin,
int lastbin);
55 std::pair<DataObject*,AIDA::IHistogram1D*>
project1DY(
const std::string& name,
const AIDA::IHistogram2D& h,
int firstbin,
int lastbin);
58 std::pair<DataObject*,AIDA::IHistogram3D*>
createH3D(
const AIDA::IHistogram3D& hist);
60 std::pair<DataObject*,AIDA::IHistogram3D*>
createH3D(
const std::string& title,
int nBinsX,
double xlow,
double xup,
int nBinsY,
double ylow,
double yup,
int nBinsZ,
double zlow,
double zup);
62 std::pair<DataObject*,AIDA::IHistogram3D*>
createH3D(
const std::string& title,
const Edges & eX,
const Edges& eY,
const Edges& eZ);
65 std::pair<DataObject*,AIDA::IProfile1D*>
createProf1D(
const AIDA::IProfile1D& hist);
68 (
const std::string& title,
int nBins,
double xlow,
double xup,
double ylow,
double yup,
const std::string&
opt=
"" );
71 (
const std::string& title,
const Edges& e,
double ylow,
double yup,
const std::string&
opt=
"");
74 std::pair<DataObject*,AIDA::IProfile2D*>
createProf2D(
const AIDA::IProfile2D& hist);
76 std::pair<DataObject*,AIDA::IProfile2D*>
createProf2D(
const std::string& title,
int binsX,
double iminX,
double imaxX,
int binsY,
double iminY,
double imaxY,
double lowerValue,
double upperValue);
78 std::pair<DataObject*,AIDA::IProfile2D*>
createProf2D(
const std::string& title,
const Edges& eX,
const Edges& eY,
double lowerValue,
double upperValue);
80 #endif // GAUDIPI_GAUDIPI_H
std::pair< DataObject *, AIDA::IHistogram1D * > slice1DY(const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
Create 1D slice from 2D histogram.
T * getRepresentation(const Q &hist)
std::pair< DataObject *, AIDA::IHistogram1D * > createH1D(const AIDA::IHistogram1D &hist)
Copy constructor.
std::pair< DataObject *, AIDA::IHistogram1D * > project1DY(const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
Create 1D projection in Y from 2D histogram.
std::vector< double > Edges
std::pair< DataObject *, AIDA::IProfile2D * > createProf2D(const AIDA::IProfile2D &hist)
Copy constructor.
std::pair< DataObject *, AIDA::IHistogram1D * > project1DX(const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
Create 1D projection in X from 2D histogram.
std::pair< DataObject *, AIDA::IHistogram2D * > createH2D(const AIDA::IHistogram2D &hist)
Copy constructor.
std::pair< DataObject *, AIDA::IHistogram1D * > slice1DX(const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
Create 1D slice from 2D histogram.
string opt
print 'Summary: %32s [s] d d steps'%(summary.protocol,summary.type,summary.nevt,len(summary.data),)
std::pair< DataObject *, AIDA::IProfile1D * > profile1DX(const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
Create 1D profile in X from 2D histogram.
std::pair< DataObject *, AIDA::IProfile1D * > profile1DY(const std::string &name, const AIDA::IHistogram2D &h, int firstbin, int lastbin)
Create 1D profile in Y from 2D histogram.
Common base class for all histograms Use is solely functional to minimize dynamic_casts inside Histog...
virtual TObject * representation() const =0
ROOT object implementation.
std::pair< DataObject *, AIDA::IHistogram3D * > createH3D(const AIDA::IHistogram3D &hist)
Copy constructor.
std::pair< DataObject *, AIDA::IProfile1D * > createProf1D(const AIDA::IProfile1D &hist)
Copy constructor.
This is a number of static methods for bootstrapping the Gaudi framework.
A DataObject is the base class of any identifiable object on any data store.