16 #include "AliTriggerAnalysis.h" 17 #include "AliPhysicsSelection.h" 19 #include "AliHeader.h" 20 #include "AliGenEventHeader.h" 21 #include "AliESDEvent.h" 22 #include "AliAODHandler.h" 23 #include "AliMultiplicity.h" 24 #include "AliInputEventHandler.h" 26 #include "AliMCEvent.h" 32 #include <TDirectory.h> 104 Char_t r = (q == 0 ?
'I' :
'O');
113 if (mult == 0 || mult > maxMult)
continue;
117 h->Fill(eta,phi,mult);
152 gROOT->IncreaseDirLevel();
154 gROOT->DecreaseDirLevel();
192 const TH2D* primary)
const 194 TH2D* h =
static_cast<TH2D*
>(hits->Clone());
197 n.ReplaceAll(
"_cache",
"");
212 out->SetName(GetName());
216 TList* l =
static_cast<TList*
>(input->FindObject(GetName()));
218 AliError(Form(
"List %s not found in %s", GetName(), input->GetName()));
222 TH2D* fmd1i =
static_cast<TH2D*
>(l->FindObject(
"FMD1I_cache"));
223 TH2D* fmd2i =
static_cast<TH2D*
>(l->FindObject(
"FMD2I_cache"));
224 TH2D* fmd2o =
static_cast<TH2D*
>(l->FindObject(
"FMD2O_cache"));
225 TH2D* fmd3i =
static_cast<TH2D*
>(l->FindObject(
"FMD3I_cache"));
226 TH2D* fmd3o =
static_cast<TH2D*
>(l->FindObject(
"FMD3O_cache"));
227 TH2D* primO =
static_cast<TH2D*
>(l->FindObject(
"primary"));
228 if (!fmd1i || !fmd2i || !fmd2o || !fmd3i || !fmd3o || !primO) {
229 AliError(Form(
"Missing histogram(s): %p,%p,%p,%p,%p,%p",
230 fmd1i, fmd2i, fmd2o, fmd3i, fmd3o, primO));
235 TH2D* primI =
static_cast<TH2D*
>(primO->Clone());
236 primI->SetDirectory(0);
virtual void CreateCorrections(TList *results)
Bool_t SetCorrection(UShort_t d, Char_t r, Double_t v, TH2D *h)
AliForwardMCCorrectionsTask()
TList * CreateOutputObjects(TList *list)
AliForwardUtil::Histos fHists
Bool_t Calculate(const AliESDFMD &esd, const AliMCEvent &event, const TVector3 &ip, AliESDFMD &output, TH2D *primary)
TH2D * MakeBg(const TH2D *hits, const TH2D *primary) const
AliFMDCorrSecondaryMap * fSecCorr
virtual Bool_t PreEvent()
void Print(Option_t *option="") const
AliBaseMCCorrectionsTask::VtxBin * CreateVtxBin(Double_t low, Double_t high)
void SetVertexAxis(const TAxis &axis)
virtual TList * CreateOutputObjects(TList *list)
virtual Bool_t FinalizeVtxBin(AliBaseMCCorrectionsTask::VtxBin *bin, UShort_t iVz)
void Print(Option_t *option="") const
TH2D * Get(UShort_t d, Char_t r) const
void Init(const TAxis &etaAxis)
void Print(Option_t *option="") const
void Terminate(const TList *i, TList *o, UShort_t iVz, AliFMDCorrSecondaryMap *map)
void SetEtaAxis(const TAxis &axis)
AliFMDMCTrackDensity fTrackDensity
Bool_t ProcessESD(const AliESDEvent &esd, const AliMCEvent &mc, AliBaseMCCorrectionsTask::VtxBin &bin, const TVector3 &ip)