]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/muon/AliAnalysisTaskSEMuonsHF.h
Updates to run with deltas (L. Cunqueiro)
[u/mrichter/AliRoot.git] / PWG / muon / AliAnalysisTaskSEMuonsHF.h
1 #ifndef ALIANALYSISTASKSEMUONSHF_H
2 #define ALIANALYSISTASKSEMUONSHF_H
3
4 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */ 
8
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 //*************************************************************************
15
16 #include "AliAnalysisTaskSE.h"
17
18 class TString;
19 class TList;
20 class TClonesArray;
21 class AliMuonsHFHeader;
22
23 class AliAnalysisTaskSEMuonsHF : public AliAnalysisTaskSE {
24  public:
25
26   AliAnalysisTaskSEMuonsHF();
27   AliAnalysisTaskSEMuonsHF(const char *name);
28   virtual ~AliAnalysisTaskSEMuonsHF();
29
30   virtual void Init();
31   virtual void LocalInit() { Init(); }
32   virtual void UserCreateOutputObjects();
33   virtual void UserExec(Option_t *opt);
34   virtual void Terminate(Option_t *opt);
35
36   void SetAnaMode(Int_t mode)      { fAnaMode      = ((mode>=0 && mode<3) ? mode : 0); }
37   void SetIsOutputTree(Bool_t ist) { fIsOutputTree = ist;                              }
38   void SetUseMC(Bool_t isMC)       { fIsMC         = isMC;                             }
39
40   void SetEvsHCuts(Double_t cuts[3])  const { AliMuonsHFHeader::SetSelectionCuts(cuts);   }
41   void SetMuonCuts(Double_t cuts[12]) const { AliMuonInfoStoreRD::SetSelectionCuts(cuts); }
42   void SetDimuCuts(Double_t cuts[12]) const { AliDimuInfoStoreRD::SetSelectionCuts(cuts); }
43
44  private:
45
46   AliAnalysisTaskSEMuonsHF(const AliAnalysisTaskSEMuonsHF&);
47   AliAnalysisTaskSEMuonsHF& operator=(const AliAnalysisTaskSEMuonsHF&);
48
49   Int_t fAnaMode;        // = 0, ana both single muon and dimuon
50                          // = 1, ana single muon
51                          // = 2, ana dimuon
52   Bool_t fIsOutputTree;  // flag used to switch on/off tree output
53   Bool_t fIsMC;          // flag of whether the input is MC
54
55   AliMuonsHFHeader *fHeader;  // output for info at ev level
56   TClonesArray  *fMuonClArr;  // output clones array for single mu
57   TClonesArray  *fDimuClArr;  // output clones array for dimu
58   TList *fListOutput;         // output list of histos
59
60   ClassDef(AliAnalysisTaskSEMuonsHF, 6);
61 };
62
63 #endif