1 #ifndef DNDETACORRECTION_H
2 #define DNDETACORRECTION_H
4 // ------------------------------------------------------
6 // Class to handle corrections for dN/dEta measurements
8 // ------------------------------------------------------
11 // - add documentation
12 // - add status: generate or use maps
13 // - add functionality to set the bin sizes
14 // - add histograms with errors (for error visualization)
28 class dNdEtaCorrection : public TObject
38 TH2F* hEtaVsVtx_ratio;
41 dNdEtaCorrection(Char_t* name="dndeta_correction");
43 TH2F* GetGeneratedHistogram() { return hEtaVsVtx_gene; }
44 TH2F* GetMeasuredHistogram() { return hEtaVsVtx_meas; }
46 void SetGeneratedHistogram(TH2F* aGeneratedHistogram) { hEtaVsVtx_gene = aGeneratedHistogram; }
47 void SetMeasuredHistogram(TH2F* aMeasuredHistogram) { hEtaVsVtx_meas = aMeasuredHistogram; }
49 void FillMeas(Float_t vtx, Float_t eta) {hEtaVsVtx_meas->Fill(vtx, eta);}
50 void FillGene(Float_t vtx, Float_t eta) {hEtaVsVtx_gene->Fill(vtx, eta);}
54 void SaveHistograms();
55 Bool_t LoadHistograms(Char_t* fileName, Char_t* dir = "dndeta_correction");
56 Bool_t LoadCorrection(Char_t* fileName, Char_t* dir = "dndeta_correction")
57 {return LoadHistograms(fileName, dir);}
59 void DrawHistograms();
61 void RemoveEdges(Float_t cut=2, Int_t nBinsVtx=0, Int_t nBinsEta=0);
63 Float_t GetCorrection(Float_t vtx, Float_t eta)
64 {return hEtaVsVtx_corr->GetBinContent(hEtaVsVtx_corr->FindBin(vtx,eta));}
66 ClassDef(dNdEtaCorrection,0)