]>
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")));} | |
55 | TH1F* V0A123hist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0A123_percentile")));} | |
56 | TH1F* V0Chist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0C_percentile")));} | |
57 | TH1F* V0Eqhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEq_percentile")));} | |
58 | TH1F* V0AEqhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AEq_percentile")));} | |
59 | TH1F* V0CEqhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CEq_percentile")));} | |
60 | TH1F* TPChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRK_percentile")));} | |
61 | TH1F* CNDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCND_percentile")));} | |
62 | TH1F* SPDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1_percentile")));} | |
63 | TH1F* FMDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultFMD_percentile")));} | |
64 | TH1F* ZNAhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNA_percentile")));} | |
65 | TH1F* ZNChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNC_percentile")));} | |
66 | TH1F* ZPAhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPA_percentile")));} | |
67 | TH1F* ZPChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPC_percentile")));} | |
68 | TH2F* ZEMvsZDChist() const {return ((TH2F*) (Hists2D()->FindObject("fHOutMultZEMvsZDC")));} | |
69 | ||
70 | TH1F* NPAhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultNPA_percentile")));} | |
71 | TH1F* NPAhistDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultNPADPM_percentile")));} | |
72 | ||
73 | TH1F* V0histtrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0Mtrue_percentile")));} | |
74 | TH1F* V0Ahisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0Atrue_percentile")));} | |
75 | TH1F* V0Chisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0Ctrue_percentile")));} | |
76 | TH1F* V0Eqhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEqtrue_percentile")));} | |
77 | TH1F* V0AEqhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AEqtrue_percentile")));} | |
78 | TH1F* V0CEqhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CEqtrue_percentile")));} | |
79 | TH1F* TPChisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRKtrue_percentile")));} | |
80 | TH1F* CNDhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCNDtrue_percentile")));} | |
81 | TH1F* SPDhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1true_percentile")));} | |
82 | TH1F* FMDhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultFMDtrue_percentile")));} | |
83 | TH1F* ZNAhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNAtrue_percentile")));} | |
84 | TH1F* ZNChisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNCtrue_percentile")));} | |
85 | TH1F* ZPAhisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPAtrue_percentile")));} | |
86 | TH1F* ZPChisttrue() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPCtrue_percentile")));} | |
87 | ||
88 | TH1F* V0histtrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MtrueDPM_percentile")));} | |
89 | TH1F* V0AhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AtrueDPM_percentile")));} | |
90 | TH1F* V0ChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CtrueDPM_percentile")));} | |
91 | TH1F* V0EqhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEqtrueDPM_percentile")));} | |
92 | TH1F* V0AEqhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0AEqtrueDPM_percentile")));} | |
93 | TH1F* V0CEqhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0CEqtrueDPM_percentile")));} | |
94 | TH1F* TPChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRKtrueDPM_percentile")));} | |
95 | TH1F* CNDhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCNDtrueDPM_percentile")));} | |
96 | TH1F* SPDhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1trueDPM_percentile")));} | |
97 | TH1F* FMDhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultFMDtrueDPM_percentile")));} | |
98 | TH1F* ZNAhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNAtrueDPM_percentile")));} | |
99 | TH1F* ZNChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZNCtrueDPM_percentile")));} | |
100 | TH1F* ZPAhisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPAtrueDPM_percentile")));} | |
101 | TH1F* ZPChisttrueDPM() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultZPCtrueDPM_percentile")));} | |
102 | TList* Hists1D() const {return f1DHistos;} | |
103 | TList* Hists2D() const {return f2DHistos;} | |
104 | ||
105 | void SetScaleFactors(Float_t v0m, Float_t spd, Float_t tpc, Float_t v0mMC) | |
106 | {fV0MScaleFactor = v0m; fSPDScaleFactor = spd; fTPCScaleFactor = tpc; fV0MScaleFactorMC = v0mMC;} | |
107 | ||
108 | void SetOutlierV0MSPDFactors(Float_t a1, Float_t a2, Float_t a3, Float_t a4, Float_t a5) | |
109 | {fV0MSPDOutlierPar0=a1;fV0MSPDOutlierPar1=a2;fV0MSPDSigmaOutlierPar0=a3;fV0MSPDSigmaOutlierPar1=a4;fV0MSPDSigmaOutlierPar2=a5;} | |
110 | ||
111 | void SetOutlierV0MTPCFactors(Float_t a1, Float_t a2, Float_t a3, Float_t a4, Float_t a5) | |
112 | {fV0MTPCOutlierPar0=a1;fV0MTPCOutlierPar1=a2;fV0MTPCSigmaOutlierPar0=a3;fV0MTPCSigmaOutlierPar1=a4;fV0MTPCSigmaOutlierPar2=a5;} | |
113 | ||
114 | void SetOutlierV0MZDCFactors(Float_t a1, Float_t a2) | |
115 | {fV0MZDCOutlierPar0=a1;fV0MZDCOutlierPar1=a2;} | |
116 | ||
117 | void SetOutlierV0MZDCEcalFactors(Float_t a1, Float_t a2) | |
118 | {fV0MZDCEcalOutlierPar0=a1;fV0MZDCEcalOutlierPar1=a2;} | |
119 | ||
120 | void SetHistReferences(TList* l1, TList* l2) | |
121 | {f1DHistos = l1; f2DHistos = l2;} | |
122 | ||
123 | void SetZVCut(Float_t z) | |
124 | {fZVCut=z;} | |
125 | ||
126 | void SetOutliersCut(Float_t o) | |
127 | {fOutliersCut=o;} | |
128 | ||
129 | void SetUseScaling(Bool_t x) | |
130 | {fUseScaling=x;} | |
131 | ||
132 | void SetUseCleaning(Bool_t x) | |
133 | {fUseCleaning=x;} | |
134 | ||
135 | ||
136 | private: | |
137 | AliOADBCentrality(const AliOADBCentrality& cont); | |
138 | AliOADBCentrality& operator=(const AliOADBCentrality& cont); | |
139 | ||
140 | private: | |
141 | Float_t fV0MScaleFactor; // V0 scale factor | |
142 | Float_t fSPDScaleFactor; // SPD scale factor | |
143 | Float_t fTPCScaleFactor; // TPC scale factor | |
144 | Float_t fV0MScaleFactorMC; // V0 scale factor for MC | |
145 | ||
146 | Float_t fV0MSPDOutlierPar0; // V0-SPD outlier parameterisation Par0 | |
147 | Float_t fV0MSPDOutlierPar1; // Par1 | |
148 | Float_t fV0MTPCOutlierPar0; // Par2 | |
149 | Float_t fV0MTPCOutlierPar1; // Par3 | |
150 | ||
151 | Float_t fV0MSPDSigmaOutlierPar0; // V0-SPD Sigma outlier parameterisation Par0 | |
152 | Float_t fV0MSPDSigmaOutlierPar1; // Par1 | |
153 | Float_t fV0MSPDSigmaOutlierPar2; // Par2 | |
154 | Float_t fV0MTPCSigmaOutlierPar0; // Par3 | |
155 | Float_t fV0MTPCSigmaOutlierPar1; // Par4 | |
156 | Float_t fV0MTPCSigmaOutlierPar2; // Par5 | |
157 | ||
158 | Float_t fV0MZDCOutlierPar0; // V0-ZDC outlier parameterisation Par0 | |
159 | Float_t fV0MZDCOutlierPar1; // Par1 | |
160 | Float_t fV0MZDCEcalOutlierPar0; // Par2 | |
161 | Float_t fV0MZDCEcalOutlierPar1; // Par3 | |
162 | ||
163 | Float_t fZVCut; // zV-cut | |
164 | Float_t fOutliersCut; // outlier cuts | |
165 | Bool_t fUseScaling; // Flag for scaling | |
166 | Bool_t fUseCleaning; // Flag for cleaning | |
167 | ||
168 | TList* f1DHistos; // Reference to list of 1D Centrality histos | |
169 | TList* f2DHistos; // Reference to list of 2D Centrality histos | |
170 | ClassDef(AliOADBCentrality, 3); | |
171 | }; | |
172 | ||
173 | #endif |