new functionality and new class added
[u/mrichter/AliRoot.git] / HMPID / AliHMPIDAnalysisTask.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 #ifndef AliHMPIDAnalysisTASK_H
18 #define AliHMPIDAnalysisTASK_H
19
20 #include "AliAnalysisTaskSE.h"
21
22 class TH1I;
23 class TParticle ;
24 class TFile ;
25 class AliStack ;
26 class AliESDtrack;
27 class AliESDEvent;
28
29 class AliHMPIDAnalysisTask : public AliAnalysisTaskSE {
30   public:
31
32   enum {kChamber = 7};
33
34   AliHMPIDAnalysisTask();
35   AliHMPIDAnalysisTask(const Char_t* name);
36   virtual ~AliHMPIDAnalysisTask();
37   
38   virtual void   ConnectInputData(Option_t *);
39   virtual void   CreateOutputObjects();
40   virtual void   Exec(Option_t *option);
41   virtual void   Terminate(Option_t *);
42
43   
44  protected:
45      
46  private:     
47  
48   void   SetTrigger(Int_t trigger) {fTrigger = trigger;}
49   AliESDEvent *fESD;              //! ESD object
50   TList          *fHmpHistList ;  // list of histograms 
51   Int_t          fNevts       ;  //event numbering
52   Int_t          fTrigNevts   ;  //event numbering with the requested trigger
53   Int_t          fTrigger     ;  //requested trigger
54   TH2F          *fHmpInner;
55   TH2F          *fHmpPesdPhmp;
56   TH2F          *fHmpCkovPesd;
57   TH2F          *fHmpCkovPhmp;
58   
59   TH1F          *fHmpMipTrkDist;
60   TH1F          *fHmpMipTrkDistX;
61   TH1F          *fHmpMipTrkDistY;
62   TH1F          *fHmpMipCharge3cm;
63   TH1F          *fHmpMipCharge1cm;
64   TH1F          *fHmpNumPhots;
65   
66   TH1F          *fHmpTrkFlags;
67   
68   ClassDef(AliHMPIDAnalysisTask,2);
69 };
70
71 #endif