3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 ////////////////////////////////////////////////
7 // Manager class for PHOS //
9 // Author Y. Schutz SUBATECH //
10 // This is the class to be used for //
11 // fast simulations //
12 ////////////////////////////////////////////////
16 // --- ROOT system ---
17 #include "TClonesArray.h"
20 // --- AliRoot header files ---
22 #include "AliPHOSGeometry.h"
23 #include "AliPHOSPID.h"
24 #include "AliPHOSFastRecParticle.h"
26 class AliPHOSvFast : public AliPHOS {
31 AliPHOSvFast(const char *name, const char *title="") ;
32 virtual ~AliPHOSvFast(void) ;
34 void AddRecParticle(const AliPHOSFastRecParticle & rp) ; // adds primary particle to the RecParticles list
35 virtual void BuildGeometry(void) ; // creates the geometry for the ROOT display
36 virtual void CreateGeometry(void) ; // creates the geometry for GEANT
37 Float_t GetBigBox(Int_t index) ;
38 virtual AliPHOSGeometry * GetGeometry() { return fGeom ; }
39 virtual void Init(void) ; // does nothing
40 Int_t IsVersion(void) const { return -1 ; }
41 void MakeBranch(Option_t* opt) ;
42 Double_t MakeEnergy(const Double_t energy) ; // makes the detected energy
43 void MakeRecParticle(AliPHOSFastRecParticle & rp) ; // makes a reconstructes particle from primary
44 Int_t MakeType(const Text_t * name) ; // gets the detected type of particle
45 FastRecParticlesList * FastRecParticles() { return fFastRecParticles ; } // gets TClonesArray of reconstructed particles
46 void SetBigBox(Int_t index, Float_t value) ;
47 Double_t SigmaE(Double_t energy) ; // calulates the energy resolution at a given Energy
48 virtual void StepManager(void) ; // does the tracking through PHOS and a preliminary digitalization
52 Float_t fBigBoxX ; // main box containing all PHOS (EMC+PPSD)
53 Float_t fBigBoxY ; // main box containing all PHOS (EMC+PPSD)
54 Float_t fBigBoxZ ; // main box containing all PHOS (EMC+PPSD)
55 FastRecParticlesList * fFastRecParticles ; // list of particles modified by the response function
56 AliPHOSGeometry * fGeom ; // geometry definition
57 Int_t fNRecParticles ; // number of detected particles
58 TRandom fRan ; // random number generator
59 Double_t fResPara1 ; // parameter for the energy resolution dependence ;
60 Double_t fResPara2 ; // parameter for the energy resolution dependence ;
61 Double_t fResPara3 ; // parameter for the energy resolution dependence ;
64 ClassDef(AliPHOSvFast,1) // PHOS main class , version for fast simulation
68 #endif // AliPHOSVFAST_H