]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/SPECTRA/PiKaPr/HMPID/AliHMPIDAnalysisTask.h
HMPID spectra analysis code
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / PiKaPr / HMPID / AliHMPIDAnalysisTask.h
1 /**************************************************************************\r
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
3  *                                                                        *\r
4  * Author: The ALICE Off-line Project.                                    *\r
5  * Contributors are mentioned in the code where appropriate.              *\r
6  *                                                                        *\r
7  * Permission to use, copy, modify and distribute this software and its   *\r
8  * documentation strictly for non-commercial purposes is hereby granted   *\r
9  * without fee, provided that the above copyright notice appears in all   *\r
10  * copies and that both the copyright notice and this permission notice   *\r
11  * appear in the supporting documentation. The authors make no claims     *\r
12  * about the suitability of this software for any purpose. It is          *\r
13  * provided "as is" without express or implied warranty.                  *\r
14  **************************************************************************/\r
15 \r
16 //==============================================================================\r
17 // AliHMPIDAnalysysTask - Class representing a basic analysis tool of HMPID data at  \r
18 // level of ESD.\r
19 // A set of histograms is created.\r
20 //==============================================================================\r
21 \r
22 #ifndef ALIHMPIDANALYSISTASK_H\r
23 #define ALIHMPIDANALYSISTASK_H\r
24 \r
25 #include "AliAnalysisTaskSE.h"\r
26 #include "AliStack.h"\r
27 \r
28 class TH1;\r
29 class TParticle;\r
30 class TFile;\r
31 class AliESDtrack;\r
32 class AliESDtrackCuts;\r
33 class AliAnalysisFilter;\r
34 class AliESDEvent;\r
35 class AliVEvent;\r
36 class AliPIDResposne;\r
37 \r
38 class AliHMPIDAnalysisTask : public AliAnalysisTaskSE {\r
39   public:\r
40 \r
41   enum {kChamber = 7};\r
42 \r
43   AliHMPIDAnalysisTask();\r
44   AliHMPIDAnalysisTask(const Char_t* name);\r
45   AliHMPIDAnalysisTask& operator= (const AliHMPIDAnalysisTask& c);\r
46   AliHMPIDAnalysisTask(const AliHMPIDAnalysisTask& c);\r
47   virtual ~AliHMPIDAnalysisTask();\r
48   \r
49   virtual void   ConnectInputData(Option_t *);\r
50  // virtual void AliHMPIDAnalysisTask::UserCreateObject(Option_t *)\r
51   virtual void   UserCreateOutputObjects();\r
52   virtual void   UserExec(Option_t *option);\r
53   virtual void   Terminate(Option_t *);\r
54 \r
55           void   SetUseMC(Bool_t useMC) { fUseMC = useMC; }\r
56           Bool_t Equal(Double_t x, Double_t y, Double_t tolerance);\r
57 \r
58  protected:\r
59      \r
60  private:     \r
61  \r
62   AliESDEvent        *fESD;             //! ESD object\r
63   AliMCEvent         *fMC;              //! MC event\r
64 \r
65   Bool_t             fUseMC;            // decide whether use or not the MC information\r
66 \r
67   TList              *fHmpHistList ;    // list of histograms\r
68 \r
69   TH1F               *fHmpNevents;\r
70   TH1F               *fZvertex;\r
71 \r
72   AliPIDResponse     *fPIDResponse;\r
73   AliESDtrackCuts    *fTrackCuts;\r
74   AliAnalysisFilter  *fTrackFilter;\r
75   \r
76   TTree              *fTree;            // tree with useful data for subsequent analysis\r
77   Float_t            fVar[69];          // array of data to fill the tree\r
78 \r
79   ClassDef(AliHMPIDAnalysisTask,4);\r
80 };\r
81 \r
82 #endif\r