]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/muon/AliCFMuonSingleTask1.h
Adding centrality selection and additional muon track cuts for PbPb (Xiaoming)
[u/mrichter/AliRoot.git] / PWG3 / muon / AliCFMuonSingleTask1.h
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 //-----------------------------------------------------------------------
17 // Author : X. Lopez - LPC Clermont (fr)
18 //-----------------------------------------------------------------------
19
20 #ifndef ALICFMUONSINGLETASK1_H
21 #define ALICFMUONSINGLETASK1_H
22
23 #include "AliAnalysisTaskSE.h"
24
25 class TH1I;
26 class TNtuple;
27 class TParticle ;
28 class TFile ;
29 class AliStack ;
30 class AliCFManager;
31 class AliESDtrack;
32 class AliVParticle;
33
34 class AliCFMuonSingleTask1 : public AliAnalysisTaskSE {
35   public:
36
37   AliCFMuonSingleTask1();
38   AliCFMuonSingleTask1(const Char_t* name);
39   AliCFMuonSingleTask1& operator= (const AliCFMuonSingleTask1& c);
40   AliCFMuonSingleTask1(const AliCFMuonSingleTask1& c);
41   virtual ~AliCFMuonSingleTask1();
42
43   // ANALYSIS FRAMEWORK STUFF to loop on data and fill output objects
44   void     UserExec(Option_t *option);
45   void     Terminate(Option_t *);
46    
47   // CORRECTION FRAMEWORK RELATED FUNCTIONS
48   void           SetCFManager(AliCFManager* const io) {fCFManager = io;}   // global correction manager
49   AliCFManager * GetCFManager() const {return fCFManager;}                 // get corr manager
50   void           SetQAList(TList* const list) {fQAHistList = list;}
51
52   // Data types
53   Bool_t IsReadAODData()   const {return fReadAODData;}
54   void   SetReadAODData   (Bool_t flag=kTRUE) {fReadAODData=flag;}
55   void SetUseMC(Bool_t isMC)       { fIsMC         = isMC;}
56
57  protected:
58   
59   Bool_t          fReadAODData ;       // flag for AOD/ESD input files
60   AliCFManager   *fCFManager   ;       // pointer to the CF manager
61   TList          *fQAHistList  ;       // list of QA histograms
62   TH1I           *fHistEventsProcessed;// simple histo for monitoring the number of events processed
63   Int_t           fNevt        ;       // event countor
64
65   Float_t Rap(Float_t e, Float_t pz);
66   Float_t Phideg(Float_t phi);
67   Bool_t fIsMC;                        // flag of whether the input is MC
68
69   ClassDef(AliCFMuonSingleTask1,1);
70 };
71
72 #endif