From 73c51de219104315711bff86c4ffa467a529f02e Mon Sep 17 00:00:00 2001 From: belikov Date: Thu, 16 Apr 2009 12:57:08 +0000 Subject: [PATCH] A special getter of AliVertexer class needed for accessing all the primary vertices reconstructed in the same event (M. Masera) --- STEER/AliReconstruction.cxx | 6 ++++++ STEER/AliVertexer.h | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/STEER/AliReconstruction.cxx b/STEER/AliReconstruction.cxx index ff6e2b5f3f8..1285ae2fd90 100644 --- a/STEER/AliReconstruction.cxx +++ b/STEER/AliReconstruction.cxx @@ -2125,6 +2125,12 @@ Bool_t AliReconstruction::RunVertexFinder(AliESDEvent*& esd) vertex->GetSigmaXYZ(vtxErr); esd->SetPrimaryVertexSPD(vertex); + AliESDVertex *vpileup = NULL; + Int_t novertices = 0; + vpileup = vertexer->GetAllVertices(novertices); + if(novertices>1){ + for (Int_t kk=1; kkAddPileupVertexSPD(&vpileup[kk]); + } // if SPD multiplicity has been determined, it is stored in the ESD AliMultiplicity *mult = vertexer->GetMultiplicity(); if(mult)esd->SetMultiplicity(mult); diff --git a/STEER/AliVertexer.h b/STEER/AliVertexer.h index adc2ddd6518..4883c307c06 100644 --- a/STEER/AliVertexer.h +++ b/STEER/AliVertexer.h @@ -33,7 +33,12 @@ class AliVertexer : public TObject { { fNominalCov[0]=sx*sx; fNominalCov[2]=sy*sy; fNominalCov[5]=sz*sz; fNominalCov[1]=0.; fNominalCov[3]=0.; fNominalCov[4]=0.; } void SetVtxStart(AliESDVertex *vtx); - + // the following method can be implemented in daughter classes + // (e.g. in AliITSVertexer3D). It is intended to tag pile-up events + // novertices is the total number of vertices (1 means no pileup) + // The returned pointer points to an array of AliESDVertx opbjects + // with size=novertices + virtual AliESDVertex* GetAllVertices(Int_t &novertices) const {novertices = 0; return NULL;} const Double_t* GetNominalPos() const {return fNominalPos;} protected: -- 2.39.3