fix to handle the cases when the SPD vertex is reconstructed but vertex_with_tracks...
authormasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 30 Jun 2010 16:24:32 +0000 (16:24 +0000)
committermasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 30 Jun 2010 16:24:32 +0000 (16:24 +0000)
ITS/AliITSMultReconstructor.cxx

index 3b6aa5c..e23bcba 100644 (file)
@@ -377,7 +377,7 @@ void AliITSMultReconstructor::Reconstruct(AliESDEvent* esd, TTree* treeRP)
   // see if there is a SPD vertex 
   Bool_t isVtxOK=kTRUE, isCosmics=kFALSE;
   AliESDVertex* vtx = (AliESDVertex*)fESDEvent->GetPrimaryVertexSPD();
-  if (!vtx && vtx->GetNContributors()<0) isVtxOK = kFALSE;
+  if (!vtx || vtx->GetNContributors()<1) isVtxOK = kFALSE;
   if (vtx && strstr(vtx->GetTitle(),"cosmics")) {
     isVtxOK = kFALSE;
     isCosmics = kTRUE;
@@ -1006,8 +1006,8 @@ void AliITSMultReconstructor::ProcessESDTracks()
   //
   if (!fESDEvent) return;
   AliESDVertex* vtx = (AliESDVertex*)fESDEvent->GetPrimaryVertexTracks();
-  if (!vtx) vtx = (AliESDVertex*)fESDEvent->GetPrimaryVertexSPD();
-  if (!vtx) {
+  if (!vtx || vtx->GetNContributors()<1) vtx = (AliESDVertex*)fESDEvent->GetPrimaryVertexSPD();
+  if (!vtx || vtx->GetNContributors()<1) {
     AliDebug(1,"No primary vertex: cannot flag primary tracks");
     return;
   }
@@ -1189,4 +1189,3 @@ Bool_t AliITSMultReconstructor::CanBeElectron(const AliESDtrack* trc) const
     pid[AliPID::kElectron]>fCutMinElectronProbESD;
   //
 }
-