1 #ifndef ALIANALYSISTASKDIELECTRONFILTER_H
2 #define ALIANALYSISTASKDIELECTRONFILTER_H
3 /* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 //#####################################################
8 //# Dielectron even filter task #
11 //# by WooJin J. Park, GSI / W.J.Park@gsi.de #
12 //# Ionut C. Arsene, GSI / I.C.Arsene@gsi.de #
13 //# Magnus Mager, CERN / Magnus.Mager@cern.ch #
14 //# Jens Wiechula, Uni HD / Jens.Wiechula@cern.ch #
16 //#####################################################
18 Filter Event based on cuts provided in the AliDielectron class.
20 Write an AOD file containing events with Dielectron candidates.
21 Add a sattelite AOD with the array of candidates.
26 #include "AliAnalysisTaskSE.h"
28 #include "AliDielectronPID.h"
33 class AliAnalysisTaskDielectronFilter : public AliAnalysisTaskSE {
36 AliAnalysisTaskDielectronFilter();
37 AliAnalysisTaskDielectronFilter(const char *name);
38 virtual ~AliAnalysisTaskDielectronFilter(){}
40 virtual void UserExec(Option_t *option);
42 virtual void UserCreateOutputObjects();
43 virtual void LocalInit() {Init();}
45 virtual void NotifyRun(){AliDielectronPID::SetCorrVal((Double_t)fCurrentRunNumber);}
47 void UsePhysicsSelection(Bool_t phy=kTRUE) {fSelectPhysics=phy;}
48 void SetTriggerMask(UInt_t mask) {fTriggerMask=mask;}
49 UInt_t GetTriggerMask() const { return fTriggerMask; }
51 void SetDielectron(AliDielectron * const die) { fDielectron = die; }
53 void SetStoreLikeSignCandidates(Bool_t storeLS) { fStoreLikeSign = storeLS; }
54 void SetStoreRotatedPairs(Bool_t storeTR) { fStoreRotatedPairs = storeTR; }
56 void SetEventFilter(AliAnalysisCuts * const filter) {fEventFilter=filter;}
60 AliDielectron *fDielectron; // J/psi framework object
62 Bool_t fSelectPhysics; // Whether to use physics selection
63 UInt_t fTriggerMask; // Event trigger mask
65 TH1D *fEventStat; //! Histogram with event statistics
67 Bool_t fStoreLikeSign; // flag to store like-sign candidates
68 Bool_t fStoreRotatedPairs; // flag to store rotation
70 AliAnalysisCuts *fEventFilter; // event filter
72 AliAnalysisTaskDielectronFilter(const AliAnalysisTaskDielectronFilter &c);
73 AliAnalysisTaskDielectronFilter& operator= (const AliAnalysisTaskDielectronFilter &c);
75 ClassDef(AliAnalysisTaskDielectronFilter, 1);