BAT  0.9.4
The Bayesian analysis toolkit
 All Classes Namespaces Functions Variables Enumerations
BCMTFTemplate.h
1 #ifndef __BCMTFTEMPLATE__H
2 #define __BCMTFTEMPLATE__H
3 
14 /*
15  * Copyright (C) 2007-2014, the BAT core developer team
16  * All rights reserved.
17  *
18  * For the licensing terms see doc/COPYING.
19  * For documentation see http://mpp.mpg.de/bat
20  */
21 
22 // ---------------------------------------------------------
23 
24 #include <string>
25 
26 #include <TH1D.h>
27 #include <TRandom3.h>
28 
29 class TF1;
30 
31 // ---------------------------------------------------------
33 {
34 public:
35 
43  BCMTFTemplate(const char * channelname, const char * processname);
44 
48 
56  std::string GetChannelName()
57  { return fChannelName; };
58 
61  std::string GetProcessName()
62  { return fProcessName; };
63 
66  double GetEfficiency()
67  { return fEfficiency; };
68 
71  TH1D * GetHistogram()
72  { return fHistogram; };
73 
76  double GetNorm()
77  { return fNormalization; };
78 
81  double GetOriginalNorm()
82  { return fOriginalNormalization; };
83 
93  TH1D FluctuateHistogram(std::string options = "GZ", double norm = 1);
94 
97  std::vector<TF1 *> * GetFunctionContainer()
98  { return fFunctionContainer; };
99 
102  int GetNBins()
103  { return fNBins; };
104 
113  void SetEfficiency(double eff)
114  { fEfficiency = eff; };
115 
121  void SetHistogram(TH1D * hist, double norm = 1);
122 
126  void SetOrignialNormalization(double norm) {
127  fOriginalNormalization = norm; };
128 
132  void SetFunctionContainer(std::vector<TF1 *> * funccont, int nbins);
133 
136 private:
137 
140  double fEfficiency;
141 
144  TH1D * fHistogram;
145 
148  std::vector<TF1 *> * fFunctionContainer;
149 
152  int fNBins;
153 
156  double fNormalization;
157 
160  double fOriginalNormalization;
161 
164  std::string fChannelName;
165 
168  std::string fProcessName;
169 
172  TRandom3* fRandom;
173 
174 
175 };
176 // ---------------------------------------------------------
177 
178 #endif
179 
void SetFunctionContainer(std::vector< TF1 * > *funccont, int nbins)
A class describing a template.
Definition: BCMTFTemplate.h:32
void SetOrignialNormalization(double norm)
double GetEfficiency()
Definition: BCMTFTemplate.h:66
void SetHistogram(TH1D *hist, double norm=1)
TH1D FluctuateHistogram(std::string options="GZ", double norm=1)
double GetOriginalNorm()
Definition: BCMTFTemplate.h:81
void SetEfficiency(double eff)
std::string GetChannelName()
Definition: BCMTFTemplate.h:56
BCMTFTemplate(const char *channelname, const char *processname)
TH1D * GetHistogram()
Definition: BCMTFTemplate.h:71
std::vector< TF1 * > * GetFunctionContainer()
Definition: BCMTFTemplate.h:97
std::string GetProcessName()
Definition: BCMTFTemplate.h:61
double GetNorm()
Definition: BCMTFTemplate.h:76