changes for 2D centrality QA (Alis R. Manso)
[u/mrichter/AliRoot.git] / OADB / AliOADBCentrality.h
CommitLineData
172f0088 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
a43ed687 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
172f0088 53 TH1F* V0hist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0M_percentile")));}
13e74ee2 54 TH1F* V0Ahist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0A_percentile")));}
55 TH1F* V0Chist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0C_percentile")));}
172f0088 56 TH1F* TPChist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultTRK_percentile")));}
13e74ee2 57 TH1F* CNDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCND_percentile")));}
172f0088 58 TH1F* SPDhist() const {return ((TH1F*) (Hists1D()->FindObject("fHOutMultCL1_percentile")));}
59 TH2F* ZEMvsZDChist() const {return ((TH2F*) (Hists2D()->FindObject("fHOutMultZEMvsZDC")));}
60 TList* Hists1D() const {return f1DHistos;}
61 TList* Hists2D() const {return f2DHistos;}
62
63 void SetScaleFactors(Float_t v0m, Float_t spd, Float_t tpc, Float_t v0mMC)
64 {fV0MScaleFactor = v0m; fSPDScaleFactor = spd; fTPCScaleFactor = tpc; fV0MScaleFactorMC = v0mMC;}
65
66 void SetOutlierV0MSPDFactors(Float_t a1, Float_t a2, Float_t a3, Float_t a4, Float_t a5)
67 {fV0MSPDOutlierPar0=a1;fV0MSPDOutlierPar1=a2;fV0MSPDSigmaOutlierPar0=a3;fV0MSPDSigmaOutlierPar1=a4;fV0MSPDSigmaOutlierPar2=a5;}
68
69 void SetOutlierV0MTPCFactors(Float_t a1, Float_t a2, Float_t a3, Float_t a4, Float_t a5)
70 {fV0MTPCOutlierPar0=a1;fV0MTPCOutlierPar1=a2;fV0MTPCSigmaOutlierPar0=a3;fV0MTPCSigmaOutlierPar1=a4;fV0MTPCSigmaOutlierPar2=a5;}
71
72 void SetOutlierV0MZDCFactors(Float_t a1, Float_t a2)
73 {fV0MZDCOutlierPar0=a1;fV0MZDCOutlierPar1=a2;}
74
75 void SetOutlierV0MZDCEcalFactors(Float_t a1, Float_t a2)
76 {fV0MZDCEcalOutlierPar0=a1;fV0MZDCEcalOutlierPar1=a2;}
77
78 void SetHistReferences(TList* l1, TList* l2)
79 {f1DHistos = l1; f2DHistos = l2;}
80
a43ed687 81 void SetZVCut(Float_t z)
82 {fZVCut=z;}
83
84 void SetOutliersCut(Float_t o)
85 {fOutliersCut=o;}
86
87 void SetUseScaling(Bool_t x)
88 {fUseScaling=x;}
89
90 void SetUseCleaning(Bool_t x)
91 {fUseCleaning=x;}
92
93
172f0088 94 private:
95 AliOADBCentrality(const AliOADBCentrality& cont);
96 AliOADBCentrality& operator=(const AliOADBCentrality& cont);
97
98 private:
3130f71e 99 Float_t fV0MScaleFactor; // V0 scale factor
100 Float_t fSPDScaleFactor; // SPD scale factor
101 Float_t fTPCScaleFactor; // TPC scale factor
102 Float_t fV0MScaleFactorMC; // V0 scale factor for MC
103
104 Float_t fV0MSPDOutlierPar0; // V0-SPD outlier parameterisation Par0
105 Float_t fV0MSPDOutlierPar1; // Par1
106 Float_t fV0MTPCOutlierPar0; // Par2
107 Float_t fV0MTPCOutlierPar1; // Par3
108
109 Float_t fV0MSPDSigmaOutlierPar0; // V0-SPD Sigma outlier parameterisation Par0
110 Float_t fV0MSPDSigmaOutlierPar1; // Par1
111 Float_t fV0MSPDSigmaOutlierPar2; // Par2
112 Float_t fV0MTPCSigmaOutlierPar0; // Par3
113 Float_t fV0MTPCSigmaOutlierPar1; // Par4
114 Float_t fV0MTPCSigmaOutlierPar2; // Par5
115
116 Float_t fV0MZDCOutlierPar0; // V0-ZDC outlier parameterisation Par0
117 Float_t fV0MZDCOutlierPar1; // Par1
118 Float_t fV0MZDCEcalOutlierPar0; // Par2
119 Float_t fV0MZDCEcalOutlierPar1; // Par3
120
121 Float_t fZVCut; // zV-cut
122 Float_t fOutliersCut; // outlier cuts
123 Bool_t fUseScaling; // Flag for scaling
124 Bool_t fUseCleaning; // Flag for cleaning
a43ed687 125
172f0088 126 TList* f1DHistos; // Reference to list of 1D Centrality histos
127 TList* f2DHistos; // Reference to list of 2D Centrality histos
a43ed687 128 ClassDef(AliOADBCentrality, 3);
172f0088 129};
130
131#endif