Getting properly the run number and adding a protection in case of run number inconsi...
authorpanos <panos@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 2 Jun 2006 16:13:52 +0000 (16:13 +0000)
committerpanos <panos@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 2 Jun 2006 16:13:52 +0000 (16:13 +0000)
STEER/AliReconstruction.cxx

index 151d45b..d2a4a3b 100644 (file)
@@ -1555,6 +1555,7 @@ void AliReconstruction::CreateTag(TFile* file)
   Int_t nEl1GeV, nEl3GeV, nEl10GeV;
   Float_t maxPt = .0, meanPt = .0, totalP = .0;
   Int_t fVertexflag;
+  Int_t iRunNumber = 0;
   TString fVertexName("default");
 
   AliRunTag *tag = new AliRunTag();
@@ -1575,8 +1576,9 @@ void AliReconstruction::CreateTag(TFile* file)
   TBranch * b = t->GetBranch("ESD");
   AliESD *esd = 0;
   b->SetAddress(&esd);
-  
-  tag->SetRunId(esd->GetRunNumber());
+
+  b->GetEntry(0);
+  Int_t iInitRunNumber = esd->GetRunNumber();
   
   Int_t iNumberOfEvents = b->GetEntries();
   for (Int_t iEventNumber = 0; iEventNumber < iNumberOfEvents; iEventNumber++) {
@@ -1608,6 +1610,8 @@ void AliReconstruction::CreateTag(TFile* file)
     fVertexflag = 0;
 
     b->GetEntry(iEventNumber);
+    iRunNumber = esd->GetRunNumber();
+    if(iRunNumber != iInitRunNumber) AliFatal("Inconsistency of run numbers in the AliESD!!!");
     const AliESDVertex * vertexIn = esd->GetVertex();
     if (!vertexIn) AliError("ESD has not defined vertex.");
     if (vertexIn) fVertexName = vertexIn->GetName();
@@ -1778,6 +1782,7 @@ void AliReconstruction::CreateTag(TFile* file)
     evTag->SetMeanPt(meanPt);
     evTag->SetMaxPt(maxPt);
     
+    tag->SetRunId(iInitRunNumber);
     tag->AddEventTag(*evTag);
   }
   lastEvent = iNumberOfEvents;