]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG/EMCAL/AliEmcalTrackPropagatorTask.cxx
Add ptr to original AliVTrack.
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalTrackPropagatorTask.cxx
index e8d3dcbaf9d46f3a81499f3796d87c1b2ceb3c0a..4d47ebc4df046df627f39cc86ae408b5c3aa0a8d 100644 (file)
@@ -17,10 +17,12 @@ AliEmcalTrackPropagatorTask::AliEmcalTrackPropagatorTask() :
   AliAnalysisTaskSE("AliEmcalTrackPropagatorTask"),
   fRecoUtils(0),
   fTracksName(),
-  fDist(430),
+  fDist(440),
   fMinPtCut(0.35),
   fEsdEv(0),
-  fTracks(0)
+  fTracks(0),
+  fUseGlobalTrackParam(kFALSE),
+  fUseOuterTrackParam(kFALSE)
 {
   // Constructor.
 }
@@ -30,10 +32,12 @@ AliEmcalTrackPropagatorTask::AliEmcalTrackPropagatorTask(const char *name) :
   AliAnalysisTaskSE("AliEmcalTrackPropagatorTask"),
   fRecoUtils(0),
   fTracksName("TpcSpdVertexConstrainedTracks"),
-  fDist(430),
+  fDist(440),
   fMinPtCut(0.35),
   fEsdEv(0),
-  fTracks(0)
+  fTracks(0),
+  fUseGlobalTrackParam(kFALSE),
+  fUseOuterTrackParam(kFALSE)
 {
   // Constructor.
 
@@ -103,12 +107,21 @@ void AliEmcalTrackPropagatorTask::UserExec(Option_t *)
     Double_t phi = eTrack->Phi()*TMath::RadToDeg();
     if (TMath::Abs(eTrack->Eta())>0.9 || phi <= 10 || phi >= 250) 
       continue;
-    AliExternalTrackParam *trackParam =  const_cast<AliExternalTrackParam*>(eTrack->GetInnerParam());
-    if(!trackParam) 
+    AliExternalTrackParam *trackParam;
+    if(fUseGlobalTrackParam) 
+      trackParam = dynamic_cast<AliExternalTrackParam*>(eTrack);
+    else if(fUseOuterTrackParam) 
+      trackParam =  const_cast<AliExternalTrackParam*>(eTrack->GetOuterParam());
+    else
+      trackParam =  const_cast<AliExternalTrackParam*>(eTrack->GetInnerParam());
+    if(!trackParam) {
+      Printf("trackParam not available");
       continue;
+    }
 
     // Extrapolate the track to EMCal surface
     AliExternalTrackParam emcalParam(*trackParam);
+
     Float_t etaout=-999, phiout=-999, ptout=-999;
     Bool_t ret = fRecoUtils->ExtrapolateTrackToEMCalSurface(&emcalParam, 
                                                             fDist,