Issue AliError instead of AliFatal in case of inconsistent number of tracks
[u/mrichter/AliRoot.git] / STEER / AliDetector.cxx
index 71e5f6d..71d748b 100644 (file)
@@ -50,11 +50,14 @@ ClassImp(AliDetector)
  
 //_______________________________________________________________________
 AliDetector::AliDetector():
+  AliModule(),
   fTimeGate(200.e-9),
   fIshunt(0),
   fNhits(0),
   fNdigits(0),
   fBufferSize(1600),
+  fMaxIterHit(0),
+  fCurIterHit(0),
   fHits(0),
   fDigits(0),
   fPoints(0),
@@ -73,6 +76,8 @@ AliDetector::AliDetector(const AliDetector &det):
   fNhits(0),
   fNdigits(0),
   fBufferSize(1600),
+  fMaxIterHit(0),
+  fCurIterHit(0),
   fHits(0),
   fDigits(0),
   fPoints(0),
@@ -89,6 +94,8 @@ AliDetector::AliDetector(const char* name,const char *title):
   fNhits(0),
   fNdigits(0),
   fBufferSize(1600),
+  fMaxIterHit(0),
+  fCurIterHit(0),
   fHits(0),
   fDigits(0),
   fPoints(0),
@@ -160,7 +167,7 @@ TBranch* AliDetector::MakeBranchInTree(TTree *tree, const char* name,
 // 
 //
 //
-// if (GetDebug()>1)
+    
  AliDebug(2,Form("Making Branch %s",name));
  if (tree == 0x0) 
   {
@@ -180,7 +187,7 @@ TBranch* AliDetector::MakeBranchInTree(TTree *tree, const char* name,
   } 
  else 
   {
-    branch = tree->Branch(name,address,size);
+    branch = tree->Bronch(name, "TClonesArray", address, size, splitlevel);
   }
  AliDebug(2,Form("Branch %s returning branch %#x",name,branch));
  return branch;
@@ -300,7 +307,10 @@ void AliDetector::LoadPoints(Int_t)
   for (Int_t hit=0;hit<nhits;hit++) {
     ahit = dynamic_cast<AliHit*>(fHits->UncheckedAt(hit));
     trk=ahit->GetTrack();
-    if(trk>tracks) AliFatal(Form("Found track number %d, max track %d",trk, tracks));
+    if(trk>tracks) {
+      AliError(Form("Found track number %d, max track %d",trk, tracks));
+      continue;
+    }
     if(ntrk[trk]==limi[trk])
      {
       //