]>
Commit | Line | Data |
---|---|---|
8432b617 | 1 | #ifndef AliOADBCentrality_H\r |
2 | #define AliOADBCentrality_H\r | |
3 | /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *\r | |
4 | * See cxx source for full Copyright notice */\r | |
5 | \r | |
6 | /* $Id$ */\r | |
7 | \r | |
8 | //-------------------------------------------------------------------------\r | |
9 | // OADB class for run dependent centrality scaling factors and \r | |
10 | // data for centrality determination\r | |
11 | // Author: Andreas Morsch, CERN\r | |
12 | //-------------------------------------------------------------------------\r | |
13 | \r | |
14 | #include <TNamed.h>\r | |
15 | #include <TList.h>\r | |
16 | #include <TH1F.h>\r | |
17 | #include <TH2F.h>\r | |
18 | \r | |
19 | \r | |
20 | class AliOADBCentrality : public TNamed {\r | |
21 | \r | |
22 | public :\r | |
23 | AliOADBCentrality();\r | |
24 | AliOADBCentrality(char* name);\r | |
25 | virtual ~AliOADBCentrality();\r | |
26 | Float_t V0MScaleFactor() const {return fV0MScaleFactor;}\r | |
27 | Float_t SPDScaleFactor() const {return fSPDScaleFactor;}\r | |
28 | Float_t TPCScaleFactor() const {return fTPCScaleFactor;}\r | |
29 | Float_t V0MScaleFactorMC() const {return fV0MScaleFactorMC;}\r | |
30 | \r | |
31 | Float_t V0MSPDOutlierPar0() const {return fV0MSPDOutlierPar0 ;}\r | |
32 | Float_t V0MSPDOutlierPar1() const {return fV0MSPDOutlierPar1 ;}\r | |
33 | Float_t V0MTPCOutlierPar0() const {return fV0MTPCOutlierPar0 ;}\r | |
34 | Float_t V0MTPCOutlierPar1() const {return fV0MTPCOutlierPar1 ;}\r | |
35 | \r | |
36 | Float_t V0MSPDSigmaOutlierPar0() const {return fV0MSPDSigmaOutlierPar0 ;}\r | |
37 | Float_t V0MSPDSigmaOutlierPar1() const {return fV0MSPDSigmaOutlierPar1 ;}\r | |
38 | Float_t V0MSPDSigmaOutlierPar2() const {return fV0MSPDSigmaOutlierPar2 ;}\r | |
39 | Float_t V0MTPCSigmaOutlierPar0() const {return fV0MTPCSigmaOutlierPar0 ;}\r | |
40 | Float_t V0MTPCSigmaOutlierPar1() const {return fV0MTPCSigmaOutlierPar1 ;}\r | |
41 | Float_t V0MTPCSigmaOutlierPar2() const {return fV0MTPCSigmaOutlierPar2 ;}\r | |
42 | \r | |
43 | Float_t V0MZDCOutlierPar0() const {return fV0MZDCOutlierPar0 ;}\r | |
44 | Float_t V0MZDCOutlierPar1() const {return fV0MZDCOutlierPar1 ;}\r | |
45 | Float_t V0MZDCEcalOutlierPar0() const {return fV0MZDCEcalOutlierPar0 ;}\r | |
46 | Float_t V0MZDCEcalOutlierPar1() const {return fV0MZDCEcalOutlierPar1 ;}\r | |
47 | \r | |
48 | Float_t ZVCut() const {return fZVCut;}\r | |
49 | Float_t OutliersCut() const {return fOutliersCut;}\r | |
50 | Bool_t UseScaling() const {return fUseScaling;}\r | |
51 | Bool_t UseCleaning() const {return fUseCleaning;}\r | |
52 | \r | |
53 | TH1F* V0hist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0M_percentile")));}\r | |
54 | TH1F* V0Ahist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0A_percentile")));}\r | |
55 | TH1F* V0Chist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0C_percentile")));}\r | |
9828ee52 | 56 | TH1F* V0Eqhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEq_percentile")));}\r |
57 | TH1F* V0AEqhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AEq_percentile")));}\r | |
58 | TH1F* V0CEqhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CEq_percentile")));}\r | |
8432b617 | 59 | TH1F* TPChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRK_percentile")));}\r |
60 | TH1F* CNDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCND_percentile")));}\r | |
61 | TH1F* SPDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1_percentile")));}\r | |
39a3e400 | 62 | TH1F* FMDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultFMD_percentile")));}\r |
8156afd0 | 63 | TH1F* ZNAhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNA_percentile")));}\r |
9828ee52 | 64 | TH1F* ZNChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNC_percentile")));}\r |
3a19f64f | 65 | TH1F* ZPAhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPA_percentile")));}\r |
66 | TH1F* ZPChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPC_percentile")));}\r | |
8432b617 | 67 | TH2F* ZEMvsZDChist() const {return ((TH2F*) (Hists2D()->FindObject("fHOutMultZEMvsZDC")));}\r |
39a3e400 | 68 | \r |
69 | TH1F* NPAhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultNPA_percentile")));}\r | |
70 | TH1F* NPAhistDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultNPADPM_percentile")));}\r | |
71 | \r | |
72 | TH1F* V0histtrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0Mtrue_percentile")));}\r | |
73 | TH1F* V0Ahisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0Atrue_percentile")));}\r | |
74 | TH1F* V0Chisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0Ctrue_percentile")));}\r | |
9828ee52 | 75 | TH1F* V0Eqhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEqtrue_percentile")));}\r |
76 | TH1F* V0AEqhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AEqtrue_percentile")));}\r | |
77 | TH1F* V0CEqhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CEqtrue_percentile")));}\r | |
39a3e400 | 78 | TH1F* TPChisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRKtrue_percentile")));}\r |
79 | TH1F* CNDhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCNDtrue_percentile")));}\r | |
80 | TH1F* SPDhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1true_percentile")));}\r | |
81 | TH1F* FMDhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultFMDtrue_percentile")));}\r | |
8156afd0 | 82 | TH1F* ZNAhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNAtrue_percentile")));}\r |
9828ee52 | 83 | TH1F* ZNChisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNCtrue_percentile")));}\r |
3a19f64f | 84 | TH1F* ZPAhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPAtrue_percentile")));}\r |
85 | TH1F* ZPChisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPCtrue_percentile")));}\r | |
86 | \r | |
39a3e400 | 87 | TH1F* V0histtrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MtrueDPM_percentile")));}\r |
88 | TH1F* V0AhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AtrueDPM_percentile")));}\r | |
89 | TH1F* V0ChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CtrueDPM_percentile")));}\r | |
9828ee52 | 90 | TH1F* V0EqhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEqtrueDPM_percentile")));}\r |
91 | TH1F* V0AEqhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AEqtrueDPM_percentile")));}\r | |
92 | TH1F* V0CEqhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CEqtrueDPM_percentile")));}\r | |
39a3e400 | 93 | TH1F* TPChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRKtrueDPM_percentile")));}\r |
94 | TH1F* CNDhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCNDtrueDPM_percentile")));}\r | |
95 | TH1F* SPDhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1trueDPM_percentile")));}\r | |
96 | TH1F* FMDhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultFMDtrueDPM_percentile")));}\r | |
8156afd0 | 97 | TH1F* ZNAhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNAtrueDPM_percentile")));}\r |
9828ee52 | 98 | TH1F* ZNChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNCtrueDPM_percentile")));}\r |
3a19f64f | 99 | TH1F* ZPAhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPAtrueDPM_percentile")));}\r |
100 | TH1F* ZPChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPCtrueDPM_percentile")));}\r | |
8432b617 | 101 | TList* Hists1D() const {return f1DHistos;}\r |
102 | TList* Hists2D() const {return f2DHistos;}\r | |
103 | \r | |
104 | void SetScaleFactors(Float_t v0m, Float_t spd, Float_t tpc, Float_t v0mMC)\r | |
105 | {fV0MScaleFactor = v0m; fSPDScaleFactor = spd; fTPCScaleFactor = tpc; fV0MScaleFactorMC = v0mMC;}\r | |
106 | \r | |
107 | void SetOutlierV0MSPDFactors(Float_t a1, Float_t a2, Float_t a3, Float_t a4, Float_t a5)\r | |
108 | {fV0MSPDOutlierPar0=a1;fV0MSPDOutlierPar1=a2;fV0MSPDSigmaOutlierPar0=a3;fV0MSPDSigmaOutlierPar1=a4;fV0MSPDSigmaOutlierPar2=a5;}\r | |
109 | \r | |
110 | void SetOutlierV0MTPCFactors(Float_t a1, Float_t a2, Float_t a3, Float_t a4, Float_t a5)\r | |
111 | {fV0MTPCOutlierPar0=a1;fV0MTPCOutlierPar1=a2;fV0MTPCSigmaOutlierPar0=a3;fV0MTPCSigmaOutlierPar1=a4;fV0MTPCSigmaOutlierPar2=a5;}\r | |
112 | \r | |
113 | void SetOutlierV0MZDCFactors(Float_t a1, Float_t a2)\r | |
114 | {fV0MZDCOutlierPar0=a1;fV0MZDCOutlierPar1=a2;}\r | |
115 | \r | |
116 | void SetOutlierV0MZDCEcalFactors(Float_t a1, Float_t a2)\r | |
117 | {fV0MZDCEcalOutlierPar0=a1;fV0MZDCEcalOutlierPar1=a2;}\r | |
118 | \r | |
119 | void SetHistReferences(TList* l1, TList* l2)\r | |
120 | {f1DHistos = l1; f2DHistos = l2;}\r | |
121 | \r | |
122 | void SetZVCut(Float_t z)\r | |
123 | {fZVCut=z;}\r | |
124 | \r | |
125 | void SetOutliersCut(Float_t o)\r | |
126 | {fOutliersCut=o;}\r | |
127 | \r | |
128 | void SetUseScaling(Bool_t x)\r | |
129 | {fUseScaling=x;}\r | |
130 | \r | |
131 | void SetUseCleaning(Bool_t x)\r | |
132 | {fUseCleaning=x;}\r | |
133 | \r | |
134 | \r | |
135 | private:\r | |
136 | AliOADBCentrality(const AliOADBCentrality& cont); \r | |
137 | AliOADBCentrality& operator=(const AliOADBCentrality& cont);\r | |
138 | \r | |
139 | private:\r | |
140 | Float_t fV0MScaleFactor; // V0 scale factor\r | |
141 | Float_t fSPDScaleFactor; // SPD scale factor\r | |
142 | Float_t fTPCScaleFactor; // TPC scale factor\r | |
143 | Float_t fV0MScaleFactorMC; // V0 scale factor for MC\r | |
144 | \r | |
145 | Float_t fV0MSPDOutlierPar0; // V0-SPD outlier parameterisation Par0\r | |
146 | Float_t fV0MSPDOutlierPar1; // Par1\r | |
147 | Float_t fV0MTPCOutlierPar0; // Par2\r | |
148 | Float_t fV0MTPCOutlierPar1; // Par3\r | |
149 | \r | |
150 | Float_t fV0MSPDSigmaOutlierPar0; // V0-SPD Sigma outlier parameterisation Par0\r | |
151 | Float_t fV0MSPDSigmaOutlierPar1; // Par1\r | |
152 | Float_t fV0MSPDSigmaOutlierPar2; // Par2\r | |
153 | Float_t fV0MTPCSigmaOutlierPar0; // Par3\r | |
154 | Float_t fV0MTPCSigmaOutlierPar1; // Par4\r | |
155 | Float_t fV0MTPCSigmaOutlierPar2; // Par5\r | |
156 | \r | |
157 | Float_t fV0MZDCOutlierPar0; // V0-ZDC outlier parameterisation Par0\r | |
158 | Float_t fV0MZDCOutlierPar1; // Par1\r | |
159 | Float_t fV0MZDCEcalOutlierPar0; // Par2\r | |
160 | Float_t fV0MZDCEcalOutlierPar1; // Par3\r | |
161 | \r | |
162 | Float_t fZVCut; // zV-cut\r | |
163 | Float_t fOutliersCut; // outlier cuts\r | |
164 | Bool_t fUseScaling; // Flag for scaling\r | |
165 | Bool_t fUseCleaning; // Flag for cleaning\r | |
166 | \r | |
167 | TList* f1DHistos; // Reference to list of 1D Centrality histos \r | |
168 | TList* f2DHistos; // Reference to list of 2D Centrality histos\r | |
169 | ClassDef(AliOADBCentrality, 3);\r | |
170 | };\r | |
171 | \r | |
172 | #endif\r |