1 #ifndef ALIANALYSISTASKSEMUONSHF_H
2 #define ALIANALYSISTASKSEMUONSHF_H
4 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 //*************************************************************************
10 // Class AliAnalysisTaskSEMuonsHF
11 // AliAnalysisTaskSE for the single muon and dimuon from HF analysis
12 // Author: X-M. Zhang, zhang@clermont.in2p3.fr
13 // zhangxm@iopp.ccnu.edu.cn
14 //*************************************************************************
16 #include "AliAnalysisTaskSE.h"
21 class AliMuonsHFHeader;
22 class AliMuonTrackCuts;
23 class AliMuonPairCuts;
25 class AliAnalysisTaskSEMuonsHF : public AliAnalysisTaskSE {
28 AliAnalysisTaskSEMuonsHF();
29 AliAnalysisTaskSEMuonsHF(const char *name, const AliMuonTrackCuts& cutsMuon, const AliMuonPairCuts& cutsDimu);
30 virtual ~AliAnalysisTaskSEMuonsHF();
33 virtual void LocalInit() { Init(); }
34 virtual void UserCreateOutputObjects();
35 virtual void UserExec(Option_t *opt);
36 virtual void Terminate(Option_t *opt);
37 virtual void NotifyRun();
39 void SetAnaMode(Int_t mode) { fAnaMode = ((mode>=0 && mode<=2) ? mode : 0); }
40 void SetIsOutputTree(Bool_t ist) { fIsOutputTree = ist; }
41 void SetUseMC(Bool_t isMC) { fIsMC = isMC; }
42 void SetIsFull(Bool_t isFull) { fIsFull = isFull; }
44 void SetEvsHCuts(Double_t cuts[5]) const { AliMuonsHFHeader::SetSelectionCuts(cuts); }
48 AliAnalysisTaskSEMuonsHF(const AliAnalysisTaskSEMuonsHF&);
49 AliAnalysisTaskSEMuonsHF& operator=(const AliAnalysisTaskSEMuonsHF&);
51 Int_t fAnaMode; // = 0, ana both single muon and dimuon
52 // = 1, ana single muon
54 Bool_t fIsOutputTree; // flag used to switch on/off tree output
55 Bool_t fIsMC; // flag to use MC
56 Bool_t fIsFull; // flag to save the parton info in MC (PYTHIA)
58 AliMuonTrackCuts *fCutsMuon; // single muon selection cuts
59 AliMuonPairCuts *fCutsDimu; // dimuon selection cuts
61 AliMuonsHFHeader *fHeader; // output for info at ev level
62 TClonesArray *fMuonClArr; // output clones array for single mu
63 TClonesArray *fDimuClArr; // output clones array for dimu
64 TList *fListOutput; // output list of histos
66 ClassDef(AliAnalysisTaskSEMuonsHF, 8);