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