Corrections to comply with coding convention
[u/mrichter/AliRoot.git] / PHOS / AliPHOSAnalyze.h
1 #ifndef ALIPHOSANALYZE_H
2 #define ALIPHOSANALYZE_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //_________________________________________________________________________
9 //  Algorithm class to analyze PHOSv0 events    
10 //*-- Author : Yves Schutz (SUBATECH)
11
12 // --- ROOT system ---
13
14 #include "TFile.h"
15 #include "TH1.h"
16 #include "TH2.h"
17
18 // --- Standard library ---
19
20 // --- AliRoot header files ---
21
22 #include "AliPHOSv0.h"
23 #include "AliPHOSGeometry.h"
24 #include "AliPHOSPID.h"
25 #include "AliPHOSIndexToObject.h"
26
27 class AliPHOSAnalyze : public TObject {
28
29 public:
30
31   AliPHOSAnalyze() ;              // ctor
32   AliPHOSAnalyze(Text_t * name) ; // ctor
33   AliPHOSAnalyze(const AliPHOSAnalyze & ana) ; // cpy ctor                   
34   virtual ~AliPHOSAnalyze() ;     // dtor
35
36   void AnalyzeOneEvent(Int_t evt = -999) ;  // analyzes a single event ;
37   void AnalyzeManyEvents(Int_t Nevtents = 100, Int_t Module=0) ;  // analyzes many events   ;
38   void BookingHistograms() ;                // booking histograms for the ManyEvent analysis ;
39   void Copy(TObject & obj) ;                // copies an analysis into an other one   
40   Bool_t Init(Int_t evt) ;                  // does various initialisations
41   void DisplayKineEvent(Int_t evt = -999) ; // displays the Kine events in ALICE coordinate 
42   void DisplayRecParticles() ;              // displays RecParticles in ALICE coordinate  
43   void DisplayRecPoints() ;                 // displays RecPoints in module coordinate  
44   void DisplayTrackSegments() ;             // displays TrackSegments in module coordinate  
45   Bool_t OpenRootFile(Text_t * name) ;      // opens the root file
46   void SavingHistograms() ;                 // Save histograms in a root file
47  
48  private:
49   
50   AliPHOSClusterizer * fClu ;         // a clusterizer 
51   Int_t fEvt ;                        // the evt number being processed 
52   AliPHOSGeometry * fGeom ;           // the PHOS Geometry object
53   AliPHOSIndexToObject * fObjGetter ; // provides methods to retrieve objects from their index in a list
54   AliPHOSv0 * fPHOS ;                 // the PHOS object from the root file 
55   AliPHOSPID * fPID ;                 // a particle identifier
56   AliPHOSReconstructioner * fRec ;    // a reconstructioner  
57   TFile * fRootFile ;                 // the root file that contains the data
58   AliPHOSTrackSegmentMaker * fTrs ;   // a tracksegmentmaker ;
59   TH1F * fhEmcDigit ;               // Histo of digit energies in the Emc 
60   TH1F * fhVetoDigit ;              // Histo of digit energies in the Veto 
61   TH1F * fhConvertorDigit ;         // Histo of digit energies in the Convertor
62   TH1F * fhEmcCluster ;             // Histo of Cluster energies in Emc
63   TH1F * fhVetoCluster ;            // Histo of Cluster energies in Veto
64   TH1F * fhConvertorCluster ;       // Histo of Cluster energies in Convertor
65   TH2F * fhConvertorEmc ;           // 2d Convertor versus Emc energies
66   TH1F * fhPhotonEnergy ;           // Spectrum of detected photons
67   TH1F * fhElectronEnergy ;         // Spectrum of detected electrons
68   TH1F * fhNeutralHadronEnergy ;    // Spectrum of detected neutral hadron
69   TH1F * fhNeutralEMEnergy ;        // Spectrum of detected neutral EM
70   TH1F * fhChargedHadronEnergy ;    // Spectrum of detected charged
71   TH1F * fhPhotonHadronEnergy ;     // Spectrum of detected Photon-Hadron
72   TH1F * fhPhotonPositionX ;        // X distribution of detected photons
73   TH1F * fhElectronPositionX ;      // X distribution of detected electrons
74   TH1F * fhNeutralHadronPositionX ; // X distribution of detected neutral hadron
75   TH1F * fhNeutralEMPositionX ;     // X distribution of detected neutral EM
76   TH1F * fhChargedHadronPositionX ; // X distribution of detected charged
77   TH1F * fhPhotonHadronPositionX ;  // X distribution of detected Photon-Hadron
78   TH1F * fhPhotonPositionY ;        // Y distribution of detected photons
79   TH1F * fhElectronPositionY ;      // Y distribution of detected electrons
80   TH1F * fhNeutralHadronPositionY ; // Y distribution of detected neutral hadron
81   TH1F * fhNeutralEMPositionY ;     // Y distribution of detected neutral EM
82   TH1F * fhChargedHadronPositionY ; // Y distribution of detected charged
83   TH1F * fhPhotonHadronPositionY ;  // Y distribution of detected Photon-Hadron
84
85
86 ClassDef(AliPHOSAnalyze,1)  // PHOSv0 event analyzis algorithm
87
88 };
89
90 #endif // AliPHOSANALYZE_H