]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FORWARD/analysis/AliFMDAnaCalibEventSelectionEfficiency.cxx
c53974e2238efc21f929299e1752972341fac068
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis / AliFMDAnaCalibEventSelectionEfficiency.cxx
1
2 #include "AliFMDAnaCalibEventSelectionEfficiency.h"
3
4 #include <TH1F.h>
5 #include <TBrowser.h>
6
7 ClassImp(AliFMDAnaCalibEventSelectionEfficiency)
8 #if 0
9 ; // For Emacs
10 #endif 
11
12 //____________________________________________________________________
13 AliFMDAnaCalibEventSelectionEfficiency::AliFMDAnaCalibEventSelectionEfficiency() : TObject(),
14                                                                                    fCorrection(),
15                                                                                    fIsInit(kFALSE),
16                                                                                    fVtxEff(1)
17 {
18   
19   
20   
21 }
22
23
24 //____________________________________________________________________
25 AliFMDAnaCalibEventSelectionEfficiency::AliFMDAnaCalibEventSelectionEfficiency(const AliFMDAnaCalibEventSelectionEfficiency& o) : TObject(o),                                                                fCorrection(o.fCorrection),                                                     fIsInit(o.fIsInit)
26 {
27   // Copy ctor 
28 }
29 //____________________________________________________________________
30 AliFMDAnaCalibEventSelectionEfficiency&
31 AliFMDAnaCalibEventSelectionEfficiency::operator=(const AliFMDAnaCalibEventSelectionEfficiency& /*o*/) 
32 {
33   // Assignment operator 
34   
35   return (*this);
36 }
37 //____________________________________________________________________
38 void AliFMDAnaCalibEventSelectionEfficiency::Init() {
39
40   fCorrection.SetName("EventSelectionEffCorrection");
41   
42   fIsInit = kTRUE;
43
44 }
45 //____________________________________________________________________
46 void AliFMDAnaCalibEventSelectionEfficiency::SetCorrection(TH1F* hCorrection) {
47   
48   fCorrection.SetBins(hCorrection->GetNbinsX(),
49                       hCorrection->GetXaxis()->GetXmin(),
50                       hCorrection->GetXaxis()->GetXmax());
51   for(Int_t i=1; i<=hCorrection->GetNbinsX(); i++) {
52     fCorrection.SetBinContent(i,hCorrection->GetBinContent(i));
53     fCorrection.SetBinError(i,hCorrection->GetBinError(i));
54   }
55   
56
57 }
58 //____________________________________________________________________
59 void AliFMDAnaCalibEventSelectionEfficiency::SetCorrection(Int_t vtxbin, 
60                                                            Char_t ring,
61                                                            TH2F* hCorrection) {
62   hCorrection->SetName(Form("correction_%c_%d",ring,vtxbin));
63   fCorrectionList.Add(hCorrection);
64   
65 }
66 //____________________________________________________________________
67 TH2F* AliFMDAnaCalibEventSelectionEfficiency::GetCorrection(Int_t vtxbin, 
68                                                             Char_t ring) {
69   
70   TH2F* hCorrection = (TH2F*)fCorrectionList.FindObject(Form("correction_%c_%d",ring,vtxbin));
71   return hCorrection;
72
73 }
74
75 //____________________________________________________________________
76 Float_t AliFMDAnaCalibEventSelectionEfficiency::GetCorrection(Int_t vtxbin) {
77
78   if( (vtxbin-1) > fCorrection.GetNbinsX() || vtxbin < 0)
79     return 0;
80   
81   Float_t correction = fCorrection.GetBinContent(vtxbin+1);
82   
83   return correction;
84
85 }
86
87 //____________________________________________________________________
88 void AliFMDAnaCalibEventSelectionEfficiency::Browse(TBrowser* /*b*/)
89 {
90   
91 }
92
93 //____________________________________________________________________
94 //
95 // EOF
96 //