]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSv0.h
First attempt to use systemtically TFolders: the geometry object posts itself to...
[u/mrichter/AliRoot.git] / PHOS / AliPHOSv0.h
index 5ebc9a36e0412ec1419f99026960c1d27b9649f8..a0d0e7f9040714013099645c37a121ddb6b72204 100644 (file)
@@ -3,72 +3,73 @@
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-////////////////////////////////////////////////
-//  Manager class  for PHOS                   //
-//  Version SUBATECH                          //
-//  Author  Y. Schutz SUBATECH                //
-//       geometry parametrized for any        //  
-//       shape of modules                     //
-////////////////////////////////////////////////
+//_________________________________________________________________________
+// Implementation version v0 of PHOS Manager class 
+// Layout EMC + PPSD has name GPS2  
+// Layout EMC + CPV  has name IHEP
+//*--                  
+//*-- Author: Yves Schutz (SUBATECH)
 
 // --- ROOT system ---
-#include "TClonesArray.h"
+
+class TFile;
+class TFolder;
 
 // --- AliRoot header files ---
 #include "AliPHOS.h"
-#include "AliPHOSGeometry.h"
-#include "AliPHOSReconstructioner.h"
-#include "AliPHOSTrackSegmentMaker.h"
-#include "AliPHOSPID.h"
 
 class AliPHOSv0 : public AliPHOS {
 
-public:
+ public:
 
-  AliPHOSv0(void) ;
+  AliPHOSv0() {}
   AliPHOSv0(const char *name, const char *title="") ;
-  AliPHOSv0(AliPHOSReconstructioner * Reconstructioner, const char *name, const char *title="") ;
-  virtual ~AliPHOSv0(void) ;
-
-  virtual void   AddHit( Int_t primary, Int_t id, Float_t *hits ) ; // adds a pre-digitilized hit to the hit tree 
-  virtual void   BuildGeometry(void) ;                              // creates the geometry for the ROOT display
-  void           BuildGeometryforPHOS(void) ;                       // creates the PHOS geometry for the ROOT display
-  void           BuildGeometryforPPSD(void) ;                       // creates the PPSD geometry for the ROOT display
-  virtual void   CreateGeometry(void) ;                             // creates the geometry for GEANT
-  void           CreateGeometryforPHOS(void) ;                      // creates the PHOS geometry for GEANT
-  void           CreateGeometryforPPSD(void) ;                      // creates the PPSD geometry for GEANT
-  Int_t          Digitize(Float_t Energy);
-  RecPointsList* EmcClusters() {return fEmcClusters;}               // gets TClonesArray of cluster in the crystals 
-  void           FinishEvent(void) ;                                // makes the digits from the hits 
-  virtual AliPHOSGeometry * GetGeometry() { return fGeom ; }  
-  virtual void   Init(void) ;                                       // does nothing
-  Int_t IsVersion(void) const { return 0 ; }
-  void           MakeBranch(Option_t* opt) ;
-  RecPointsList* PpsdClusters() { return fPpsdClusters ; }          // gets TClonesArray of clusters in the PPSD 
-  void           Reconstruction(AliPHOSReconstructioner * Reconstructioner) ;
-  RecParticlesList * RecParticles() { return fRecParticles ; }      // gets TClonesArray of reconstructed particles
-  void           ResetClusters(){} ;
-  void           SetReconstructioner(AliPHOSReconstructioner& Reconstructioner) {fReconstructioner = &Reconstructioner ;} 
-  void           SetDigitThreshold(Float_t th) { fDigitThreshold = th ; } 
-  virtual void   StepManager(void) ;                                // does the tracking through PHOS and a preliminary digitalization
-  TrackSegmentsList *    TrackSegments(){return fTrackSegments ;}
-  
-protected:
-
-  Float_t fDigitThreshold ;             // Threshold for the digit registration 
-  RecPointsList * fEmcClusters ;        // The RecPoints (clusters) list in EMC 
-  AliPHOSGeometry * fGeom ;             // geometry definition
-  Int_t fNTmpHits ;                     //!  used internally for digitalization
-  Float_t fPinElectronicNoise  ;       // Electronic Noise in the PIN
-  RecPointsList * fPpsdClusters ;       // The RecPoints (clusters) list in PPSD 
-  AliPHOSReconstructioner * fReconstructioner ; // Reconstrutioner of the PHOS event: Clusterization and subtracking procedures
-  TClonesArray * fTmpHits ;             //!  used internally for digitalization 
-  AliPHOSTrackSegmentMaker * fTrackSegmentMaker ; // Reconstructioner of the PHOS track segment: 2 x PPSD + 1 x EMC
-  TrackSegmentsList * fTrackSegments ;  // The TrackSegment list in PHOS
-  RecParticlesList * fRecParticles ;    // The reconstructed particles list in PHOS
+  AliPHOSv0(const AliPHOSv0 & phos) {
+    // cpy ctor: no implementation yet
+    // requested by the Coding Convention
+    abort() ; 
+  } 
+  virtual ~AliPHOSv0(void){
+    // dtor
+  } 
 
-  ClassDef(AliPHOSv0,1)  // PHOS main class , version subatech
+  virtual void   AddHit( Int_t shunt, Int_t primary, Int_t track, Int_t id, Float_t *hits ) {
+    // useless since there are no hits
+    abort() ; 
+  }
+  virtual void   BuildGeometry(void) ;             // creates the geometry for the ROOT display
+  void           BuildGeometryforPHOS(void) ;      // creates the PHOS geometry for the ROOT display
+  void           BuildGeometryforPPSD(void) ;      // creates the PPSD geometry for the ROOT display
+  void           BuildGeometryforCPV(void) ;       // creates the CPV  geometry for the ROOT display
+  virtual void   CreateGeometry(void) ;            // creates the geometry for GEANT
+  void           CreateGeometryforPHOS(void) ;     // creates the PHOS geometry for GEANT
+  void           CreateGeometryforPPSD(void) ;     // creates the PPSD geometry for GEANT
+  void           CreateGeometryforCPV(void) ;      // creates the CPV  geometry for GEANT
+  void           CreateGeometryforSupport(void) ;  // creates the Support geometry for GEANT
+  virtual Float_t ZMin() const;                    // overall dimension of the module (min)
+  virtual Float_t ZMax() const;                    // overall dimension of the module (max)
 
-};
+  virtual void   Init(void) ;                      // does nothing
+  virtual Int_t  IsVersion(void) const { 
+    // Gives the version number 
+    return 0 ; 
+  }
+  virtual TString Version(void){ 
+    // As above
+    return TString("v0") ; 
+  }
+  
+  AliPHOSv0 & operator = (const AliPHOSv0 & rvalue)  {
+    // assignement operator requested by coding convention but not needed
+    abort() ;
+    return *this ; 
+  }
+  
+ protected:
+  
 
+  ClassDef(AliPHOSv0,1)  // Implementation of PHOS manager class for layout EMC+PPSD
+    
+    };
+    
 #endif // AliPHOSV0_H