Jet and Particle identification tasks moved to different directories
[u/mrichter/AliRoot.git] / PWG4 / PartCorr / AliAnalysisTaskPHOSExample.h
1 #ifndef ALIANALYSISTASKPHOSEXAMPLE_H
2 #define ALIANALYSISTASKPHOSEXAMPLE_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5 //______________________________________________________________________________
6 // A basic analysis task to analyse photon detected by PHOS
7 // A basic analysis task to analyse photon detected by PHOS
8 // Adapted for AliAnalysisTaskSE and AOD production 
9 // by Gustavo Conesa
10 //
11 //*-- Yves Schutz 
12 //////////////////////////////////////////////////////////////////////////////
13
14 #include <TTree.h> 
15 #include "AliAnalysisTaskSE.h"  
16
17 class AliESDEvent ; 
18 class AliAODEvent ; 
19 class TNtuple ;
20 class TH1D ; 
21 class TH1I ; 
22
23 class AliAnalysisTaskPHOSExample : public AliAnalysisTaskSE {
24
25 public:
26   AliAnalysisTaskPHOSExample() ;
27   AliAnalysisTaskPHOSExample(const char *name) ;
28   AliAnalysisTaskPHOSExample(const AliAnalysisTaskPHOSExample& ap) ;   
29   AliAnalysisTaskPHOSExample& operator = (const AliAnalysisTaskPHOSExample& ap) ;
30   virtual ~AliAnalysisTaskPHOSExample() ;
31    
32   virtual void UserCreateOutputObjects(); 
33   virtual void Init() ;         
34   virtual void LocalInit() { Init() ; }
35   virtual void UserExec(Option_t * opt = "") ;
36   const Float_t  GetPhotonId() const { return fPhotonId ; }
37   void SetDebugLevel(Int_t level) { fDebug = level ; }
38   void SetPhotonId(Float_t threshold) { fPhotonId = threshold ; }
39   virtual void Terminate(Option_t * opt = "") ;
40
41 private:
42   // input and output
43   Int_t          fDebug ;         // Debug flag
44   TClonesArray * fAODPhotons ;    //! reconstructed photons
45   Int_t          fPhotonsInPhos ; //! number of photons found
46   // task parameters
47   Float_t   fPhotonId ;  // threshold for photon identification 
48
49   // Histograms
50   TList   * fOutputList ;       //! output data list
51   TNtuple * fhPHOSPos ;         //! PHOS (x,y)
52   TNtuple * fhPHOS ;            //! all PHOS parameters
53   TH1D    * fhPHOSEnergy ;      //! PHOS energy 
54   TH1I    * fhPHOSDigits ;      //! PHOS numer of SDigits 
55   TH1D    * fhPHOSRecParticles ;//! PHOS number of RecParticles
56   TH1I    * fhPHOSPhotons ;     //! PHOS number of photons
57   TH1D    * fhPHOSInvariantMass ; //! PHOS invariant mass
58   TH1I    * fhPHOSDigitsEvent ;   //! PHOS numbet of Sdigits per event  
59    
60   ClassDef(AliAnalysisTaskPHOSExample, 1); // a PHOS photon analysis task 
61 };
62 #endif // ALIANALYSISTASKPHOSEXAMPLE_H