]> git.uio.no Git - u/mrichter/AliRoot.git/blame - OADB/AliOADBCentrality.h
update from Yvonne
[u/mrichter/AliRoot.git] / OADB / AliOADBCentrality.h
CommitLineData
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
20class 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