2 #include "AliFMDAnaCalibSharingEfficiency.h"
7 ClassImp(AliFMDAnaCalibSharingEfficiency)
12 //____________________________________________________________________
13 AliFMDAnaCalibSharingEfficiency::AliFMDAnaCalibSharingEfficiency() : TObject(),
24 //____________________________________________________________________
25 AliFMDAnaCalibSharingEfficiency::AliFMDAnaCalibSharingEfficiency(const AliFMDAnaCalibSharingEfficiency& o)
26 : TObject(o), fArray(o.fArray), fArrayTrVtx(o.fArrayTrVtx), fIsInit(o.fIsInit)
30 //____________________________________________________________________
31 AliFMDAnaCalibSharingEfficiency&
32 AliFMDAnaCalibSharingEfficiency::operator=(const AliFMDAnaCalibSharingEfficiency& o)
34 // Assignment operator
37 fArrayTrVtx = o.fArrayTrVtx;
41 //____________________________________________________________________
42 void AliFMDAnaCalibSharingEfficiency::Init() {
45 for(Int_t det = 1; det<=3;det++) {
46 TObjArray* detArray = new TObjArray();
48 fArray.AddAtAndExpand(detArray,det);
49 Int_t nRings = (det == 1 ? 1 : 2);
50 for(Int_t ring = 0;ring<nRings;ring++) {
51 TObjArray* ringArray = new TObjArray();
52 ringArray->SetOwner();
53 detArray->AddAtAndExpand(ringArray,ring);
57 fArrayTrVtx.SetOwner();
58 for(Int_t det = 1; det<=3;det++) {
59 TObjArray* detArrayTrVtx = new TObjArray();
60 detArrayTrVtx->SetOwner();
61 fArrayTrVtx.AddAtAndExpand(detArrayTrVtx,det);
62 Int_t nRings = (det == 1 ? 1 : 2);
63 for(Int_t ring = 0;ring<nRings;ring++) {
64 TObjArray* ringArrayTrVtx = new TObjArray();
65 ringArrayTrVtx->SetOwner();
66 detArrayTrVtx->AddAtAndExpand(ringArrayTrVtx,ring);
73 //____________________________________________________________________
74 TObjArray* AliFMDAnaCalibSharingEfficiency::GetRingArrayTrVtx(Int_t det,
77 Int_t ringNumber = (ring == 'I' ? 0 : 1);
78 TObjArray* detArray = (TObjArray*)fArrayTrVtx.At(det);
79 TObjArray* ringArray = (TObjArray*)detArray->At(ringNumber);
83 //____________________________________________________________________
84 void AliFMDAnaCalibSharingEfficiency::SetSharingEffTrVtx(Int_t det,
91 TObjArray* ringArray = GetRingArrayTrVtx(det,ring);
92 ringArray->AddAtAndExpand(hCorrection,vtxbin);
95 //____________________________________________________________________
96 TH1F* AliFMDAnaCalibSharingEfficiency::GetSharingEffTrVtx(Int_t det,
99 TObjArray* ringArray = GetRingArrayTrVtx(det,ring);
100 TH1F* hCorrection = (TH1F*)ringArray->At(vtxbin);
104 //____________________________________________________________________
105 TObjArray* AliFMDAnaCalibSharingEfficiency::GetRingArray(Int_t det,
108 Int_t ringNumber = (ring == 'I' ? 0 : 1);
109 TObjArray* detArray = (TObjArray*)fArray.At(det);
110 TObjArray* ringArray = (TObjArray*)detArray->At(ringNumber);
114 //____________________________________________________________________
115 void AliFMDAnaCalibSharingEfficiency::SetSharingEff(Int_t det,
122 TObjArray* ringArray = GetRingArray(det,ring);
123 ringArray->AddAtAndExpand(hCorrection,vtxbin);
126 //____________________________________________________________________
127 TH1F* AliFMDAnaCalibSharingEfficiency::GetSharingEff(Int_t det,
130 TObjArray* ringArray = GetRingArray(det,ring);
131 TH1F* hCorrection = (TH1F*)ringArray->At(vtxbin);
135 //____________________________________________________________________
137 AliFMDAnaCalibSharingEfficiency::Browse(TBrowser* b)
139 b->Add(&fArray, "Array of histograms w/sharing eff corrections");
142 //____________________________________________________________________