From 009a14cb864e23c0ff5bd3c3e080aa3928c458d8 Mon Sep 17 00:00:00 2001 From: mfasel Date: Tue, 23 Sep 2014 14:40:53 +0200 Subject: [PATCH] Use aod track selection wrapper inside the task, when running on aods --- PWGJE/CMakelibPWGJEEMCALJetTasks.pkg | 1 + .../UserTasks/AliAnalysisTaskPtEMCalTrigger.cxx | 12 ++++++++++++ .../UserTasks/AliAnalysisTaskPtEMCalTrigger.h | 1 + .../UserTasks/AliEMCalPtTaskTrackSelectionESD.cxx | 7 +++++-- PWGJE/PWGJEEMCALJetTasksLinkDef.h | 1 + 5 files changed, 20 insertions(+), 2 deletions(-) diff --git a/PWGJE/CMakelibPWGJEEMCALJetTasks.pkg b/PWGJE/CMakelibPWGJEEMCALJetTasks.pkg index d42c9ac31dd..1467606a7b5 100644 --- a/PWGJE/CMakelibPWGJEEMCALJetTasks.pkg +++ b/PWGJE/CMakelibPWGJEEMCALJetTasks.pkg @@ -90,6 +90,7 @@ set ( SRCS EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.cxx EMCALJetTasks/UserTasks/AliEMCalPtTaskVTrackSelection.cxx EMCALJetTasks/UserTasks/AliEMCalPtTaskTrackSelectionESD.cxx + EMCALJetTasks/UserTasks/AliEMCalPtTaskTrackSelectionAOD.cxx ) # Add code that needs fastjet or FJWrapper here diff --git a/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.cxx b/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.cxx index a26ca34375c..8cbeaa730a7 100644 --- a/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.cxx +++ b/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.cxx @@ -49,6 +49,7 @@ #include "AliEMCalHistoContainer.h" #include "AliEMCalPtTaskVTrackSelection.h" +#include "AliEMCalPtTaskTrackSelectionAOD.h" #include "AliEMCalPtTaskTrackSelectionESD.h" #include "AliAnalysisTaskPtEMCalTrigger.h" @@ -694,6 +695,17 @@ namespace EMCalTriggerPtAnalysis { fListTrackCuts->AddLast(new AliEMCalPtTaskTrackSelectionESD(trackCuts)); } + //______________________________________________________________________________ + void AliAnalysisTaskPtEMCalTrigger::AddCutsForAOD(AliESDtrackCuts* trackCuts, UInt_t filterbits) { + /* + * Add new track cuts to the task + * + * @param trackCuts: Object of type AliESDtrackCuts + */ + fListTrackCuts->AddLast(new AliEMCalPtTaskTrackSelectionAOD(trackCuts, filterbits)); + } + + //______________________________________________________________________________ TString AliAnalysisTaskPtEMCalTrigger::BuildTriggerString() { /* diff --git a/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.h b/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.h index 08258d41f07..434d6cb1040 100644 --- a/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.h +++ b/PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskPtEMCalTrigger.h @@ -36,6 +36,7 @@ public: virtual Bool_t Run(); void AddESDTrackCuts(AliESDtrackCuts *trackCuts); + void AddCutsForAOD(AliESDtrackCuts *trackCuts, UInt_t filterBits); void SetEtaRange(double etamin, double etamax) { fEtaRange.SetLimits(etamin, etamax); } void SetPtRange(double ptmin, double ptmax) { fPtRange.SetLimits(ptmin, ptmax); } void SetSwapEta() { fSwapEta = kTRUE; } diff --git a/PWGJE/EMCALJetTasks/UserTasks/AliEMCalPtTaskTrackSelectionESD.cxx b/PWGJE/EMCALJetTasks/UserTasks/AliEMCalPtTaskTrackSelectionESD.cxx index d885ebc667a..e817c505338 100644 --- a/PWGJE/EMCALJetTasks/UserTasks/AliEMCalPtTaskTrackSelectionESD.cxx +++ b/PWGJE/EMCALJetTasks/UserTasks/AliEMCalPtTaskTrackSelectionESD.cxx @@ -74,9 +74,12 @@ AliEMCalPtTaskTrackSelectionESD& AliEMCalPtTaskTrackSelectionESD::operator=( */ AliEMCalPtTaskVTrackSelection::operator=(ref); if(&ref != this){ - this->~AliEMCalPtTaskTrackSelectionESD(); + if(fTrackCuts) { + delete fTrackCuts; + fTrackCuts = NULL; + } + if(ref.fTrackCuts) fTrackCuts = new AliESDtrackCuts(*(ref.fTrackCuts)); } - if(ref.fTrackCuts) fTrackCuts = new AliESDtrackCuts(*(ref.fTrackCuts)); return *this; } diff --git a/PWGJE/PWGJEEMCALJetTasksLinkDef.h b/PWGJE/PWGJEEMCALJetTasksLinkDef.h index 89bb4b0636d..b96ee9cb4d6 100644 --- a/PWGJE/PWGJEEMCALJetTasksLinkDef.h +++ b/PWGJE/PWGJEEMCALJetTasksLinkDef.h @@ -77,6 +77,7 @@ #pragma link C++ class EMCalTriggerPtAnalysis::AliAnalysisTaskPtEMCalTrigger+; #pragma link C++ class EMCalTriggerPtAnalysis::AliEMCalPtTaskVTrackSelection+; #pragma link C++ class EMCalTriggerPtAnalysis::AliEMCalPtTaskTrackSelectionESD+; +#pragma link C++ class EMCalTriggerPtAnalysis::AliEMCalPtTaskTrackSelectionAOD+; #ifdef HAVE_FASTJET #pragma link C++ class AliEmcalJetTask+; -- 2.43.0