Merged ITS-working with HEAD. Improved some of the documentation and
[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 //  Algorythm class to analyze PHOS events    //
10 //  Yves Schutz            SUBATECH           //
11 //                                            //  
12 //                                            //
13 ////////////////////////////////////////////////
14
15 // --- ROOT system ---
16
17 #include "TFile.h"
18 #include "TH1.h"
19 #include "TH2.h"
20
21 // --- Standard library ---
22
23 // --- AliRoot header files ---
24
25 #include "AliPHOSv0.h"
26 #include "AliPHOSGeometry.h"
27 #include "AliPHOSPID.h"
28
29 class AliPHOSAnalyze : public TObject {
30
31 public:
32
33   AliPHOSAnalyze() ;              // ctor
34   AliPHOSAnalyze(Text_t * name) ; // ctor
35   virtual ~AliPHOSAnalyze() ;     // dtor
36
37   void AnalyzeOneEvent(Int_t evt = -999) ;  // analyzes a single event ;
38   void AnalyzeManyEvents(Int_t Nevtents = 100, Int_t Module=0) ;  // analyzes many events   ;
39   void BookingHistograms() ;                // booking histograms for the ManyEvent analysis ;
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   AliPHOSv0 * fPHOS ;               // the PHOS object from the root file 
54   AliPHOSPID * fPID ;               // a particle identifier
55   AliPHOSReconstructioner * fRec ;  // a reconstructioner  
56   TFile * fRootFile ;               // the root file that contains the data
57   AliPHOSTrackSegmentMaker * fTrs ; // a tracksegmentmaker ;
58   TH1F * fhEmcDigit        ;   // Histo of digit energies in the Emc 
59   TH1F * fhVetoDigit       ;   // Histo of digit energies in the Veto 
60   TH1F * fhConvertorDigit  ;   // Histo of digit energies in the Convertor
61   TH1F * fhEmcCluster      ;   // Histo of Cluster energies in Emc
62   TH1F * fhVetoCluster     ;   // Histo of Cluster energies in Veto
63   TH1F * fhConvertorCluster;   // Histo of Cluster energies in Convertor
64   TH2F * fhConvertorEmc    ;   // 2d Convertor versus Emc energies
65   TH1F * fhPhotonEnergy    ;   // Spectrum of detected photons
66   TH1F * fhElectronEnergy  ;   // Spectrum of detected electrons
67   TH1F * fhNeutralHadronEnergy   ;   // Spectrum of detected neutral hadron
68   TH1F * fhNeutralEMEnergy   ;   // Spectrum of detected neutral EM
69   TH1F * fhChargedHadronEnergy   ;   // Spectrum of detected charged
70   TH1F * fhPhotonHadronEnergy  ; // Spectrum of detected Photon-Hadron
71   TH1F * fhPhotonPositionX ;   // X distribution of detected photons
72   TH1F * fhElectronPositionX ; // X distribution of detected electrons
73   TH1F * fhNeutralHadronPositionX  ; // X distribution of detected neutral hadron
74   TH1F * fhNeutralEMPositionX  ; // X distribution of detected neutral EM
75   TH1F * fhChargedHadronPositionX  ; // X distribution of detected charged
76   TH1F * fhPhotonHadronPositionX  ; // X distribution of detected Photon-Hadron
77   TH1F * fhPhotonPositionY   ; // Y distribution of detected photons
78   TH1F * fhElectronPositionY ; // Y distribution of detected electrons
79   TH1F * fhNeutralHadronPositionY  ; // Y distribution of detected neutral hadron
80   TH1F * fhNeutralEMPositionY  ; // Y distribution of detected neutral EM
81   TH1F * fhChargedHadronPositionY  ; // Y distribution of detected charged
82   TH1F * fhPhotonHadronPositionY  ; // Y distribution of detected Photon-Hadron
83
84
85 ClassDef(AliPHOSAnalyze,1)  // PHOS event analyzis , version 1
86
87 };
88
89 #endif // AliPHOSANALYZE_H