From 6675aa47f2292ab53a2bed49bc48338cf9fce675 Mon Sep 17 00:00:00 2001 From: jbook Date: Mon, 15 Apr 2013 11:45:21 +0000 Subject: [PATCH] -add new default pid -add online trigger de-/selection --- PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.cxx | 7 +++++++ PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.h | 3 +++ PWGDQ/dielectron/AliDielectronPID.cxx | 6 ++++++ 3 files changed, 16 insertions(+) diff --git a/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.cxx b/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.cxx index 0ea87981bb8..1349032ace6 100644 --- a/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.cxx +++ b/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.cxx @@ -51,6 +51,8 @@ AliAnalysisTaskMultiDielectron::AliAnalysisTaskMultiDielectron() : fTriggerMask(AliVEvent::kMB), fExcludeTriggerMask(0), fTriggerOnV0AND(kFALSE), + fFiredTrigger(""), + fFiredExclude(kFALSE), fRejectPileup(kFALSE), fBeamEnergy(-1.), fTriggerLogic(kAny), @@ -73,6 +75,8 @@ AliAnalysisTaskMultiDielectron::AliAnalysisTaskMultiDielectron(const char *name) fTriggerMask(AliVEvent::kMB), fExcludeTriggerMask(0), fTriggerOnV0AND(kFALSE), + fFiredTrigger(""), + fFiredExclude(kFALSE), fRejectPileup(kFALSE), fBeamEnergy(-1.), fTriggerLogic(kAny), @@ -195,6 +199,9 @@ void AliAnalysisTaskMultiDielectron::UserExec(Option_t *) if (fExcludeTriggerMask && (isSelected&fExcludeTriggerMask)) isRejected=kTRUE; if (fTriggerLogic==kAny) isSelected&=fTriggerMask; else if (fTriggerLogic==kExact) isSelected=((isSelected&fTriggerMask)==fTriggerMask); + + TString firedTriggerClasses=InputEvent()->GetFiredTriggerClasses(); + if(!fFiredTrigger.IsNull()) isSelected=(firedTriggerClasses.Contains(fFiredTrigger))^fFiredExclude; } } diff --git a/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.h b/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.h index 188c4448da6..1f913f9afdf 100644 --- a/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.h +++ b/PWGDQ/dielectron/AliAnalysisTaskMultiDielectron.h @@ -48,6 +48,7 @@ public: UInt_t GetExcludeTriggerMask() const { return fExcludeTriggerMask; } void SetTriggerLogic(ETriggerLogig log) {fTriggerLogic=log;} ETriggerLogig GetTriggerLogic() const {return fTriggerLogic;} + void SetFiredTriggerName(const char* select, Bool_t exclude=kFALSE) {fFiredTrigger=select; fFiredExclude=exclude;} void SetEventFilter(AliAnalysisCuts * const filter) {fEventFilter=filter;} void SetTriggerOnV0AND(Bool_t v0and=kTRUE) { fTriggerOnV0AND=v0and; } @@ -65,6 +66,8 @@ protected: UInt_t fTriggerMask; // Event trigger mask UInt_t fExcludeTriggerMask; // Triggers to exclude from the analysis Bool_t fTriggerOnV0AND; // if to trigger on V0and + TString fFiredTrigger; // online trigger class name + Bool_t fFiredExclude; // cut logic: select(default) or exclude Bool_t fRejectPileup; // pileup rejection wanted Double_t fBeamEnergy; // beam energy in GeV (set by hand) diff --git a/PWGDQ/dielectron/AliDielectronPID.cxx b/PWGDQ/dielectron/AliDielectronPID.cxx index f1c55fb3b05..0253771885b 100644 --- a/PWGDQ/dielectron/AliDielectronPID.cxx +++ b/PWGDQ/dielectron/AliDielectronPID.cxx @@ -618,6 +618,12 @@ void AliDielectronPID::SetDefaults(Int_t def){ AddCut(kTOF,AliPID::kElectron,-3.,3.,0,200,kFALSE,AliDielectronPID::kIfAvailable); AddCut(kTPC,AliPID::kElectron,10.); } + else if (def==16) { + // TPC electron inclusion + // TOF electron inclusion if available + AddCut(kTOF,AliPID::kElectron,-3.,3.,0,200,kFALSE,AliDielectronPID::kIfAvailable); + AddCut(kTPC,AliPID::kElectron,-3.5,+3.5); + } } -- 2.43.0