]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONRecoCheck.cxx
Update HFE v2 analyses
[u/mrichter/AliRoot.git] / MUON / AliMUONRecoCheck.cxx
index 405a88a14255645bf2b1a9a857773f239ab46c20..8b5b6c1415020c0ef85d7cdd7b4e6955497e5570 100644 (file)
@@ -53,7 +53,7 @@
 #include "AliESDEvent.h"
 #include "AliESDMuonTrack.h"
 #include "AliMUONDigitStoreV2S.h"
-#include "AliMUONDigit.h"
+#include "AliMUONVDigit.h"
 #include "AliMpVSegmentation.h"
 #include "AliMpSegmentation.h"
 #include "AliMpPad.h"
@@ -185,16 +185,15 @@ void AliMUONRecoCheck::ResetStores()
 //_____________________________________________________________________________
 Bool_t AliMUONRecoCheck::InitCircuit()
 {
-
+  
   if ( fTriggerCircuit ) return kTRUE;
   
   if ( ! InitGeometryTransformer() ) return kFALSE;
   
-  fTriggerCircuit = new AliMUONTriggerCircuit(fGeometryTransformer);
-
   // reset tracker for local trigger to trigger track conversion
-  if ( ! AliMUONESDInterface::GetTracker() )
-    AliMUONESDInterface::ResetTracker();
+  if ( ! AliMUONESDInterface::GetTracker() ) AliMUONESDInterface::ResetTracker();
+  
+  fTriggerCircuit = new AliMUONTriggerCircuit(fGeometryTransformer);
   
   return kTRUE;
 }
@@ -301,11 +300,12 @@ AliMUONVTrackStore* AliMUONRecoCheck::TrackRefs(Int_t event)
   
   if (fTrackRefStore != 0x0) return fTrackRefStore;
   else {
-    if (!fMCEventHandler->LoadEvent(event)) {
+    if (!fMCEventHandler->BeginEvent(event)) {
       AliError(Form("fails to read MC objects for event %d", event));
       return 0x0;
     }
     MakeTrackRefs();
+    fMCEventHandler->FinishEvent();
     return fTrackRefStore;
   }
 }
@@ -328,11 +328,12 @@ AliMUONVTriggerTrackStore* AliMUONRecoCheck::TriggerableTracks(Int_t event)
        
   if (fRecoTriggerRefStore != 0x0) return fRecoTriggerRefStore;
   else {
-    if (!fMCEventHandler->LoadEvent(event)) {
+    if (!fMCEventHandler->BeginEvent(event)) {
       AliError(Form("fails to read MC objects for event %d", event));
       return 0x0;
     }
     MakeTriggerableTracks();
+    fMCEventHandler->FinishEvent();
     return fRecoTriggerRefStore;
   }
 }
@@ -409,12 +410,12 @@ void AliMUONRecoCheck::MakeTriggeredTracks()
 }
 
 //_____________________________________________________________________________
-void AliMUONRecoCheck::TriggerToTrack(const AliMUONLocalTrigger& locTrg, AliMUONTriggerTrack& triggerTrack)
+Bool_t AliMUONRecoCheck::TriggerToTrack(const AliMUONLocalTrigger& locTrg, AliMUONTriggerTrack& triggerTrack)
 {
   /// Make trigger track from local trigger info
-  if ( ! InitCircuit() ) return;
+  if ( ! InitCircuit() ) return kFALSE;
   AliMUONVTrackReconstructor* tracker = AliMUONESDInterface::GetTracker();
-  tracker->TriggerToTrack(*fTriggerCircuit, locTrg, triggerTrack);
+  return tracker->TriggerToTrack(*fTriggerCircuit, locTrg, triggerTrack);
 }
 
 
@@ -599,11 +600,12 @@ void AliMUONRecoCheck::MakeTriggerableTracks()
         
           if ( cath == AliMp::kCath0 ) nboard = pad.GetLocalBoardId(0);
         
-          AliMUONDigit* digit = new AliMUONDigit(detElemId,nboard,
-                                                 pad.GetLocalBoardChannel(0),cath);
-          digit->SetPadXY(ix,iy);
-          digit->SetCharge(1.);
-          digitStore.Add(*digit,AliMUONVDigitStore::kDeny);
+          AliMUONVDigit* digit = digitStore.Add(detElemId, nboard, pad.GetLocalBoardChannel(0),
+                                               cath, AliMUONVDigitStore::kDeny);
+          if (digit) {
+           digit->SetPadXY(ix,iy);
+           digit->SetCharge(1.);
+         }
         }
       }
     
@@ -903,7 +905,7 @@ Bool_t AliMUONRecoCheck::InitTriggerResponse()
   
   if ( ! InitGeometryTransformer() ) return kFALSE;
   
-  if ( ! AliMpDDLStore::Instance(false) ) AliMpCDB::LoadDDLStore();
+  if ( ! AliMpDDLStore::Instance(false) && ! AliMpCDB::LoadDDLStore()) return kFALSE;
   
   if ( ! InitCalibrationData() ) return kFALSE;