]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSAnalyze.h
Some other problem with the HP compiler fixed.
[u/mrichter/AliRoot.git] / PHOS / AliPHOSAnalyze.h
index 3d41013b054f13450709a81c7357ace805c0cbe0..2e8c6ce12501f51d2c021bcef44bea9fdc2798ef 100644 (file)
@@ -5,12 +5,9 @@
 
 /* $Id$ */
 
-////////////////////////////////////////////////
-//  Algorythm class to analyze PHOS events    //
-//  Yves Schutz            SUBATECH           //
-//                                            //  
-//                                            //
-////////////////////////////////////////////////
+//_________________________________________________________________________
+//  Algorithm class to analyze PHOSv0 events    
+//*-- Author : Yves Schutz (SUBATECH)
 
 // --- ROOT system ---
 
@@ -25,6 +22,7 @@
 #include "AliPHOSv0.h"
 #include "AliPHOSGeometry.h"
 #include "AliPHOSPID.h"
+#include "AliPHOSIndexToObject.h"
 
 class AliPHOSAnalyze : public TObject {
 
@@ -32,11 +30,13 @@ public:
 
   AliPHOSAnalyze() ;              // ctor
   AliPHOSAnalyze(Text_t * name) ; // ctor
+  AliPHOSAnalyze(const AliPHOSAnalyze & ana) ; // cpy ctor                   
   virtual ~AliPHOSAnalyze() ;     // dtor
 
   void AnalyzeOneEvent(Int_t evt = -999) ;  // analyzes a single event ;
   void AnalyzeManyEvents(Int_t Nevtents = 100, Int_t Module=0) ;  // analyzes many events   ;
   void BookingHistograms() ;                // booking histograms for the ManyEvent analysis ;
+  void Copy(TObject & obj) ;                // copies an analysis into an other one   
   Bool_t Init(Int_t evt) ;                  // does various initialisations
   void DisplayKineEvent(Int_t evt = -999) ; // displays the Kine events in ALICE coordinate 
   void DisplayRecParticles() ;              // displays RecParticles in ALICE coordinate  
@@ -44,39 +44,53 @@ public:
   void DisplayTrackSegments() ;             // displays TrackSegments in module coordinate  
   Bool_t OpenRootFile(Text_t * name) ;      // opens the root file
   void SavingHistograms() ;                 // Save histograms in a root file
+
+  AliPHOSAnalyze & operator = (const AliPHOSAnalyze & rvalue)  {
+    // assignement operator requested by coding convention
+    // but not needed
+    assert(0==1) ;
+    return *this ; 
+  }
  
-private:
+ private:
   
-  AliPHOSClusterizer * fClu ;       // a clusterizer 
-  Int_t fEvt ;                      // the evt number being processed 
-  AliPHOSGeometry * fGeom;          // the PHOS Geometry object
-  AliPHOSv0 * fPHOS ;               // the PHOS object from the root file 
-  AliPHOSPID * fPID ;               // a particle identifier
-  AliPHOSReconstructioner * fRec ;  // a reconstructioner  
-  TFile * fRootFile ;               // the root file that contains the data
-  AliPHOSTrackSegmentMaker * fTrs ; // a tracksegmentmaker ;
-  TH1F * fhEmcDigit        ;   // Histo of digit energies in the Emc 
-  TH1F * fhVetoDigit       ;   // Histo of digit energies in the Veto 
-  TH1F * fhConvertorDigit  ;   // Histo of digit energies in the Convertor
-  TH1F * fhEmcCluster      ;   // Histo of Cluster energies in Emc
-  TH1F * fhVetoCluster     ;   // Histo of Cluster energies in Veto
-  TH1F * fhConvertorCluster;   // Histo of Cluster energies in Convertor
-  TH2F * fhConvertorEmc    ;   // 2d Convertor versus Emc energies
-  TH1F * fhPhotonEnergy    ;   // Spectrum of detected photons
-  TH1F * fhElectronEnergy  ;   // Spectrum of detected electrons
-  TH1F * fhNeutralEnergy   ;   // Spectrum of detected neutrals
-  TH1F * fhChargedEnergy   ;   // Spectrum of detected charged
-  TH1F * fhPhotonPositionX ;   // X distribution of detected photons
-  TH1F * fhElectronPositionX ; // X distribution of detected electrons
-  TH1F * fhNeutralPositionX  ; // X distribution of detected neutrals
-  TH1F * fhChargedPositionX  ; // X distribution of detected charged
-  TH1F * fhPhotonPositionY   ; // Y distribution of detected photons
-  TH1F * fhElectronPositionY ; // Y distribution of detected electrons
-  TH1F * fhNeutralPositionY  ; // Y distribution of detected neutrals
-  TH1F * fhChargedPositionY  ; // Y distribution of detected charged
-
-
-ClassDef(AliPHOSAnalyze,1)  // PHOS event analyzis , version 1
+  AliPHOSClusterizer * fClu ;         // a clusterizer 
+  Int_t fEvt ;                        // the evt number being processed 
+  AliPHOSGeometry * fGeom ;           // the PHOS Geometry object
+  AliPHOSIndexToObject * fObjGetter ; // provides methods to retrieve objects from their index in a list
+  AliPHOSv0 * fPHOS ;                 // the PHOS object from the root file 
+  AliPHOSPID * fPID ;                 // a particle identifier
+  AliPHOSReconstructioner * fRec ;    // a reconstructioner  
+  TFile * fRootFile ;                 // the root file that contains the data
+  AliPHOSTrackSegmentMaker * fTrs ;   // a tracksegmentmaker ;
+  TH1F * fhEmcDigit ;               // Histo of digit energies in the Emc 
+  TH1F * fhVetoDigit ;              // Histo of digit energies in the Veto 
+  TH1F * fhConvertorDigit ;         // Histo of digit energies in the Convertor
+  TH1F * fhEmcCluster ;             // Histo of Cluster energies in Emc
+  TH1F * fhVetoCluster ;            // Histo of Cluster energies in Veto
+  TH1F * fhConvertorCluster ;       // Histo of Cluster energies in Convertor
+  TH2F * fhConvertorEmc ;           // 2d Convertor versus Emc energies
+  TH1F * fhPhotonEnergy ;           // Spectrum of detected photons
+  TH1F * fhElectronEnergy ;         // Spectrum of detected electrons
+  TH1F * fhNeutralHadronEnergy ;    // Spectrum of detected neutral hadron
+  TH1F * fhNeutralEMEnergy ;        // Spectrum of detected neutral EM
+  TH1F * fhChargedHadronEnergy ;    // Spectrum of detected charged
+  TH1F * fhPhotonHadronEnergy ;     // Spectrum of detected Photon-Hadron
+  TH1F * fhPhotonPositionX ;        // X distribution of detected photons
+  TH1F * fhElectronPositionX ;      // X distribution of detected electrons
+  TH1F * fhNeutralHadronPositionX ; // X distribution of detected neutral hadron
+  TH1F * fhNeutralEMPositionX ;     // X distribution of detected neutral EM
+  TH1F * fhChargedHadronPositionX ; // X distribution of detected charged
+  TH1F * fhPhotonHadronPositionX ;  // X distribution of detected Photon-Hadron
+  TH1F * fhPhotonPositionY ;        // Y distribution of detected photons
+  TH1F * fhElectronPositionY ;      // Y distribution of detected electrons
+  TH1F * fhNeutralHadronPositionY ; // Y distribution of detected neutral hadron
+  TH1F * fhNeutralEMPositionY ;     // Y distribution of detected neutral EM
+  TH1F * fhChargedHadronPositionY ; // Y distribution of detected charged
+  TH1F * fhPhotonHadronPositionY ;  // Y distribution of detected Photon-Hadron
+
+
+ClassDef(AliPHOSAnalyze,1)  // PHOSv0 event analyzis algorithm
 
 };