1 #ifndef ALIEMCALHISTOCONTAINER_H
2 #define ALIEMCALHISTOCONTAINER_H
26 namespace EMCalTriggerPtAnalysis {
47 if(hgroup)
fGroup = hgroup;
53 virtual const char *
what()
const throw() {
65 std::stringstream msgbuilder;
68 msgbuilder <<
"Histogram " <<
fHistname <<
" not found in";
69 if(strlen(
fGroup.c_str())) msgbuilder <<
" group " <<
fGroup;
70 else msgbuilder <<
" the list of histograms.";
73 msgbuilder <<
"Object " << fHistname <<
" is of wrong type.";
76 msgbuilder <<
"Histogram " << fHistname <<
" already exists in";
77 if(strlen(fGroup.c_str())) msgbuilder <<
" group " <<
fGroup;
78 else msgbuilder <<
" the list of histograms.";
81 msgbuilder <<
"Group " << fGroup <<
" not found.";
103 void CreateTH1(const
char *name, const
char *title,
int nbins,
double xmin,
double xmax, Option_t *opt = "") throw(HistoContainerContentException);
104 void CreateTH1(const
char *name, const
char *title,
int nbins, const
double *xbins, Option_t *opt = "") throw(HistoContainerContentException);
105 void CreateTH1(const
char *name, const
char *title, const TArrayD &xbins, Option_t *opt = "") throw(HistoContainerContentException);
106 void CreateTH2(const
char *name, const
char *title,
int nbinsx,
double xmin,
double xmax,
int nbinsy,
double ymin,
double ymax, Option_t *opt = "") throw(HistoContainerContentException);
107 void CreateTH2(const
char *name, const
char *title,
int nbinsx, const
double *xbins,
int nbinsy, const
double *ybins, Option_t *opt = "") throw(HistoContainerContentException);
108 void CreateTH2(const
char *name, const
char *title, const TArrayD &xbins, const TArrayD &ybins, Option_t *opt = "") throw(HistoContainerContentException);
109 void CreateTH3(const
char *name, const
char *title,
int nbinsx,
double xmin,
double xmax,
int nbinsy,
double ymin,
double ymax,
int nbinsz,
double zmin,
double zmax, Option_t *opt = "") throw (HistoContainerContentException);
110 void CreateTH3(const
char *name, const
char *title,
int nbinsx, const
double *xbins,
int nbinsy, const
double *ybins,
int nbinsz, const
double *zbins, Option_t *opt = "") throw (HistoContainerContentException);
111 void CreateTH3(const
char *name, const
char *title, const TArrayD &xbins, const TArrayD &ybins, const TArrayD &zbins, Option_t *opt = "") throw(HistoContainerContentException);
112 void CreateTHnSparse(const
char *name, const
char *title,
int ndim, const
int *nbins, const
double *min, const
double *max, Option_t *opt = "") throw(HistoContainerContentException);
113 void CreateTHnSparse(const
char *name, const
char *title,
int ndim, const TAxis **axes, Option_t *opt = "") throw(HistoContainerContentException);
114 void SetObject(TObject * const o, const
char *group = "/") throw(HistoContainerContentException);
115 void FillTH1(const
char *hname,
double x,
double weight = 1.) throw(HistoContainerContentException);
116 void FillTH2(const
char *hname,
double x,
double y,
double weight = 1.) throw(HistoContainerContentException);
117 void FillTH2(const
char *hname,
double *point,
double weight = 1.) throw(HistoContainerContentException);
118 void FillTH3(const
char *hname,
double x,
double y,
double z,
double weight = 1.) throw(HistoContainerContentException);
119 void FillTH3(const
char *hname, const
double *point,
double weight = 1.) throw(HistoContainerContentException);
120 void FillTHnSparse(const
char *name, const
double *x,
double weight = 1.) throw(HistoContainerContentException);
123 virtual TObject *
FindObject(
const char *name)
const;
124 virtual TObject *
FindObject(
const TObject *obj)
const;
129 THashList *
FindGroup(
const char *dirname)
const;
130 void TokenizeFilename(
const char *name,
const char *delim, std::vector<std::string> &listoftokens)
const;
131 const char *
basename(
const char *path)
const;
132 const char *
histname(
const char *path)
const;
THashList * FindGroup(const char *dirname) const
AliEMCalHistoContainer & operator=(const AliEMCalHistoContainer &)
~AliEMCalHistoContainer()
void FillTH2(const char *hname, double x, double y, double weight=1.)
void CreateTH3(const char *name, const char *title, int nbinsx, double xmin, double xmax, int nbinsy, double ymin, double ymax, int nbinsz, double zmin, double zmax, Option_t *opt="")
void SetObject(TObject *const o, const char *group="/")
THashList * GetListOfHistograms()
void CreateTH1(const char *name, const char *title, int nbins, double xmin, double xmax, Option_t *opt="")
void FillTHnSparse(const char *name, const double *x, double weight=1.)
void FillTH3(const char *hname, double x, double y, double z, double weight=1.)
std::string fErrorMessage
ExceptionType_t GetExceptionType() const
void CreateTHnSparse(const char *name, const char *title, int ndim, const int *nbins, const double *min, const double *max, Option_t *opt="")
ExceptionType_t fExceptionType
const char * histname(const char *path) const
virtual TObject * FindObject(const char *name) const
void CreateTH2(const char *name, const char *title, int nbinsx, double xmin, double xmax, int nbinsy, double ymin, double ymax, Option_t *opt="")
void TokenizeFilename(const char *name, const char *delim, std::vector< std::string > &listoftokens) const
const char * GetErrorHistogramName() const
const char * basename(const char *path) const
virtual ~HistoContainerContentException()
void FillTH1(const char *hname, double x, double weight=1.)
void CreateHistoGroup(const char *groupname, const char *parent="/")
ClassDef(AliEMCalHistoContainer, 1)
HistoContainerContentException(const char *histname, const char *hgroup, ExceptionType_t etype)
virtual const char * what() const
void CreateErrorMessage()