From: hdalsgaa Date: Wed, 5 Aug 2009 10:19:25 +0000 (+0000) Subject: new FMD analysis correction class X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=commitdiff_plain;h=c3ac94c65b069195bb2029c83c11e0eb92311026 new FMD analysis correction class --- diff --git a/FMD/analysis/AliFMDAnaCalibEventSelectionEfficiency.cxx b/FMD/analysis/AliFMDAnaCalibEventSelectionEfficiency.cxx new file mode 100644 index 00000000000..be61655c448 --- /dev/null +++ b/FMD/analysis/AliFMDAnaCalibEventSelectionEfficiency.cxx @@ -0,0 +1,78 @@ + +#include "AliFMDAnaCalibEventSelectionEfficiency.h" +#include +#include +#include + +ClassImp(AliFMDAnaCalibEventSelectionEfficiency) +#if 0 +; // For Emacs +#endif + +//____________________________________________________________________ +AliFMDAnaCalibEventSelectionEfficiency::AliFMDAnaCalibEventSelectionEfficiency() : TObject(), + fCorrection(), + fIsInit(kFALSE) +{ + + + +} + + +//____________________________________________________________________ +AliFMDAnaCalibEventSelectionEfficiency::AliFMDAnaCalibEventSelectionEfficiency(const AliFMDAnaCalibEventSelectionEfficiency& o) : TObject(o), fCorrection(o.fCorrection), fIsInit(o.fIsInit) +{ + // Copy ctor +} +//____________________________________________________________________ +AliFMDAnaCalibEventSelectionEfficiency& +AliFMDAnaCalibEventSelectionEfficiency::operator=(const AliFMDAnaCalibEventSelectionEfficiency& o) +{ + // Assignment operator + + return (*this); +} +//____________________________________________________________________ +void AliFMDAnaCalibEventSelectionEfficiency::Init() { + + fCorrection.SetName("EventSelectionEffCorrection"); + + fIsInit = kTRUE; + +} +//____________________________________________________________________ +void AliFMDAnaCalibEventSelectionEfficiency::SetCorrection(TH1F* hCorrection) { + + fCorrection.SetBins(hCorrection->GetNbinsX(), + hCorrection->GetXaxis()->GetXmin(), + hCorrection->GetXaxis()->GetXmax()); + for(Int_t i=1; i<=hCorrection->GetNbinsX(); i++) { + fCorrection.SetBinContent(i,hCorrection->GetBinContent(i)); + fCorrection.SetBinError(i,hCorrection->GetBinError(i)); + } + + +} +//____________________________________________________________________ +Float_t AliFMDAnaCalibEventSelectionEfficiency::GetCorrection(Int_t vtxbin) { + + if( (vtxbin-1) > fCorrection.GetNbinsX() || vtxbin < 0) + return 0; + + Float_t correction = fCorrection.GetBinContent(vtxbin+1); + + return correction; + +} + +//____________________________________________________________________ +void AliFMDAnaCalibEventSelectionEfficiency::Browse(TBrowser* b) +{ + +} + +//____________________________________________________________________ +// +// EOF +// diff --git a/FMD/analysis/AliFMDAnaCalibEventSelectionEfficiency.h b/FMD/analysis/AliFMDAnaCalibEventSelectionEfficiency.h new file mode 100644 index 00000000000..49d9b3071bd --- /dev/null +++ b/FMD/analysis/AliFMDAnaCalibEventSelectionEfficiency.h @@ -0,0 +1,33 @@ +#ifndef ALIFMDANACALIBEVENTSELECTIONEFFICIENCY_H +#define ALIFMDANACALIBEVENTSELECTIONEFFICIENCY_H + +#include +#include +#include +#include +#include + +class TBrowser; + +class AliFMDAnaCalibEventSelectionEfficiency : public TObject +{ + + public: + + AliFMDAnaCalibEventSelectionEfficiency(); + AliFMDAnaCalibEventSelectionEfficiency(const AliFMDAnaCalibEventSelectionEfficiency& o); + AliFMDAnaCalibEventSelectionEfficiency& operator=(const AliFMDAnaCalibEventSelectionEfficiency& o); + + void Init(); + Bool_t IsFolder() const { return kTRUE; } + void Browse(TBrowser* b); + void SetCorrection(TH1F* hCorrection); + Float_t GetCorrection(Int_t vtxbin); + protected: + + TH1F fCorrection; + Bool_t fIsInit; + ClassDef(AliFMDAnaCalibEventSelectionEfficiency,1); +}; + +#endif