]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FORWARD/analysis/AliFMDAnaCalibEnergyDistribution.cxx
fixing warnings and violations from FC
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis / AliFMDAnaCalibEnergyDistribution.cxx
CommitLineData
b82e76e0 1
2#include "AliFMDAnaCalibEnergyDistribution.h"
6289b3e8 3#include "TAxis.h"
4#include <AliLog.h>
5#include <iostream>
c3f07455 6#include "TH2F.h"
7#include "AliFMDAnaParameters.h"
b82e76e0 8ClassImp(AliFMDAnaCalibEnergyDistribution)
9
10AliFMDAnaCalibEnergyDistribution::AliFMDAnaCalibEnergyDistribution() : TObject(),
6289b3e8 11 fArray(),
c3f07455 12 fEmptyArray(),
13 fRingArray(),
6289b3e8 14 fIsInit(kFALSE),
15 fNetaBins(0),
16 fEtaMax(0),
17 fEtaMin(0){
18
b82e76e0 19
20}
21//____________________________________________________________________
22void AliFMDAnaCalibEnergyDistribution::Init() {
23
6289b3e8 24 if(fNetaBins == 0)
25 AliFatal("Set Eta bins before doing Init or anything else");
26
b82e76e0 27 fArray.SetOwner();
c3f07455 28 fEmptyArray.SetOwner();
6289b3e8 29
c3f07455 30 for(Int_t i = 0; i<fNetaBins; i++) {
6289b3e8 31 TObjArray* etaArray = new TObjArray();
32 fArray.AddAtAndExpand(etaArray,i);
33 for(Int_t det = 1; det<=3;det++) {
34 TObjArray* detArray = new TObjArray();
35 etaArray->AddAtAndExpand(detArray,det);
c3f07455 36
6289b3e8 37 }
38
b82e76e0 39 }
c3f07455 40
41
42
43 for(Int_t det = 1; det<=3;det++) {
44 TObjArray* detArray = new TObjArray();
45 fEmptyArray.AddAtAndExpand(detArray,det);
46 }
47
48 for(Int_t det = 1; det<=3;det++) {
49 TObjArray* detArray = new TObjArray();
50 fRingArray.AddAtAndExpand(detArray,det);
51 }
52
53
b82e76e0 54 fIsInit = kTRUE;
55}
56
57
58//____________________________________________________________________
6289b3e8 59TH1F* AliFMDAnaCalibEnergyDistribution::GetEnergyDistribution(Int_t det, Char_t ring, Float_t eta) {
60
c3f07455 61 //TAxis testaxis(fNetaBins,fEtaMin,fEtaMax);
62 // Int_t binnumber = testaxis.FindBin(eta);
63 AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
64
65 Int_t binnumber = pars->GetEtaBin(eta);
6289b3e8 66
b82e76e0 67 Int_t ringNumber = (ring == 'I' ? 0 : 1);
6289b3e8 68 TObjArray* etaArray = (TObjArray*)fArray.At(binnumber);
69 TObjArray* detArray = (TObjArray*)etaArray->At(det);
b82e76e0 70 TH1F* hEdist = (TH1F*)detArray->At(ringNumber);
71
72 return hEdist;
73}
b82e76e0 74//____________________________________________________________________
c3f07455 75TH1F* AliFMDAnaCalibEnergyDistribution::GetEmptyEnergyDistribution(Int_t det, Char_t ring) {
76
77 Int_t ringNumber = (ring == 'I' ? 0 : 1);
78
79 TObjArray* detArray = (TObjArray*)fEmptyArray.At(det);
80 TH1F* hEdist = (TH1F*)detArray->At(ringNumber);
81
82 return hEdist;
83}
84//____________________________________________________________________
85TH1F* AliFMDAnaCalibEnergyDistribution::GetRingEnergyDistribution(Int_t det, Char_t ring) {
86
87 Int_t ringNumber = (ring == 'I' ? 0 : 1);
88
89 TObjArray* detArray = (TObjArray*)fRingArray.At(det);
90 TH1F* hEdist = (TH1F*)detArray->At(ringNumber);
91
92 return hEdist;
93}
94//____________________________________________________________________
95void AliFMDAnaCalibEnergyDistribution::SetEnergyDistribution(Int_t det, Char_t ring, Float_t eta, TH1F* edist) {
96 AliFMDAnaParameters* pars = AliFMDAnaParameters::Instance();
aa303f0c 97 Int_t binnumber = pars->GetEtaBin(eta);
98 //std::cout<<binnumber<<std::endl;
c3f07455 99 SetEnergyDistribution(det, ring, binnumber, edist );
100}
101//____________________________________________________________________
102void AliFMDAnaCalibEnergyDistribution::SetEnergyDistribution(Int_t det, Char_t ring, Int_t etabin, TH1F* edist ) {
b82e76e0 103
104 if(!fIsInit)
105 Init();
6289b3e8 106
b82e76e0 107 Int_t ringNumber = (ring == 'I' ? 0 : 1);
c3f07455 108 TObjArray* etaArray = (TObjArray*)fArray.At(etabin);
6289b3e8 109 TObjArray* detArray = (TObjArray*)etaArray->At(det);
110
b82e76e0 111 detArray->AddAtAndExpand(edist,ringNumber);
112
113
114}
115
c3f07455 116//____________________________________________________________________
117void AliFMDAnaCalibEnergyDistribution::SetEmptyEnergyDistribution(Int_t det, Char_t ring, TH1F* edist ) {
118
119 if(!fIsInit)
120 Init();
121
122 Int_t ringNumber = (ring == 'I' ? 0 : 1);
123 TObjArray* detArray = (TObjArray*)fEmptyArray.At(det);
124
125 detArray->AddAtAndExpand(edist,ringNumber);
126
127
128}
129//____________________________________________________________________
130void AliFMDAnaCalibEnergyDistribution::SetRingEnergyDistribution(Int_t det, Char_t ring, TH1F* edist ) {
131
132 if(!fIsInit)
133 Init();
134
135 Int_t ringNumber = (ring == 'I' ? 0 : 1);
136 TObjArray* detArray = (TObjArray*)fRingArray.At(det);
137
138 detArray->AddAtAndExpand(edist,ringNumber);
139
140
141}
b82e76e0 142//____________________________________________________________________
143//
144// EOF
145//