1 #ifndef ALIANALYSISTASKUPCFILTERSEMIFORWARD_H
2 #define ALIANALYSISTASKUPCFILTERSEMIFORWARD_H
4 // task for upc semiforward filter
5 // creates upc event from esd or aod
7 // jaroslav.adam@cern.ch
10 #include "AliAnalysisTaskSE.h"
13 class AliTriggerAnalysis;
16 class AliAnalysisTaskUpcFilterSemiforward : public AliAnalysisTaskSE {
18 AliAnalysisTaskUpcFilterSemiforward(const char *name="AliAnalysisTaskUpcFilterSemiforward");
19 virtual ~AliAnalysisTaskUpcFilterSemiforward();
21 void SetIsESD(Bool_t isESD) {fIsESD = isESD;}
22 void SetIsMC(Bool_t isMC) {fIsMC = isMC;}
23 virtual void UserCreateOutputObjects();
24 virtual void NotifyRun();
25 virtual void UserExec(Option_t *option);
27 void RunAODMC(TClonesArray *arrayMC, AliAODMCHeader *headerMC);
30 virtual void Terminate(Option_t *);
33 AliAnalysisTaskUpcFilterSemiforward(const AliAnalysisTaskUpcFilterSemiforward &o); // not implemented
34 AliAnalysisTaskUpcFilterSemiforward &operator=(const AliAnalysisTaskUpcFilterSemiforward &o); // not implemented
36 Bool_t fIsESD; // analysis type, ESD / AOD
37 Bool_t fIsMC; // mc or data selection
39 AliMuonTrackCuts *fMuonCuts; // class for muon track cuts, used for pDCA
40 AliTriggerAnalysis *fTriggerAna; // class for trigger analysis, used for fired SPD FO
41 AliESDtrackCuts **fCutsList; // array of pointers to filtering task for ESD tracks
43 TList *fHistList; // list of output histograms
44 TH1I *fCounter; // analysis counter
45 TH2I *fTriggerCounter; // counter of triggers per run
46 AliUPCEvent *fUPCEvent; // output UPC event
47 TTree *fUPCTree; // output tree
49 ClassDef(AliAnalysisTaskUpcFilterSemiforward, 1);