]>
Commit | Line | Data |
---|---|---|
5f20d3fb | 1 | #ifndef ALIPHOSV3_H |
2 | #define ALIPHOSV3_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //_________________________________________________________________________ | |
7 | // Implementation version v1 of PHOS Manager class | |
8 | // Layout EMC + PPSD has name GPS2 | |
9 | // The main goal of this version of AliPHOS is to calculte the | |
10 | // induced charged in the PIN diode, taking into account light | |
11 | // tracking in the PbWO4 crystal, induced signal in the | |
12 | // PIN due to MIPS particle and electronic noise. | |
13 | // This is done in the StepManager | |
14 | // | |
15 | //*-- Author: Odd Harald Oddland & Gines Martinez (SUBATECH) | |
16 | ||
17 | // --- ROOT system --- | |
18 | ||
19 | ||
20 | // --- AliRoot header files --- | |
21 | #include "AliPHOSv1.h" | |
22 | ||
23 | ||
24 | class AliPHOSv3 : public AliPHOSv1 { | |
3dab1cef | 25 | |
26 | public: | |
27 | ||
735e58f1 | 28 | AliPHOSv3(void) ; |
5f20d3fb | 29 | AliPHOSv3(const char *name, const char *title="") ; |
01ae46a7 | 30 | // AliPHOSv3(AliPHOSReconstructioner * Reconstructioner, const char *name, const char *title="") ; |
5f20d3fb | 31 | virtual ~AliPHOSv3(void) { |
32 | // dtor | |
33 | } | |
3dab1cef | 34 | |
e04976bd | 35 | virtual Int_t IsVersion(void) const { |
36 | // Gives the version number | |
37 | return 3 ; | |
38 | } | |
39 | virtual TString Version(void){ | |
40 | // returns the version number | |
41 | return TString("v3") ; | |
42 | } | |
3dab1cef | 43 | virtual void StepManager(void) ; |
5f20d3fb | 44 | |
3dab1cef | 45 | Float_t GetLightYieldMean() const { return fLightYieldMean ;} |
46 | Float_t GetLightYieldAttenuation() const { return fLightYieldAttenuation ;} | |
47 | Float_t GetRecalibrationFactor() const { return fRecalibrationFactor ;} | |
48 | Float_t GetAPDGain() const { return fAPDGain ;} | |
49 | Float_t GetIntrinsicPINEfficiency() const { return fIntrinsicPINEfficiency ;} | |
50 | Float_t GetElectronsPerGeV() const { return fElectronsPerGeV ;} | |
51 | ||
52 | void SetLightYieldMean(Float_t LightYieldMean) | |
53 | {fLightYieldMean = LightYieldMean;} | |
54 | void SetLightYieldAttenuation(Float_t LightYieldAttenuation) | |
55 | {fLightYieldAttenuation = LightYieldAttenuation;} | |
56 | void SetIntrinsicPINEfficiency(Float_t IntrinsicPINEfficiency) | |
57 | {fIntrinsicPINEfficiency = IntrinsicPINEfficiency;} | |
58 | void SetRecalibrationFactor(Float_t RecalibrationFactor) | |
59 | {fRecalibrationFactor = RecalibrationFactor;} | |
60 | void SetElectronsPerGeV(Float_t ElectronsPerGeV) | |
61 | {fElectronsPerGeV = ElectronsPerGeV;} | |
62 | void SetAPDGain(Float_t APDGain) | |
63 | {fAPDGain = APDGain;} | |
64 | ||
65 | private: | |
5f20d3fb | 66 | |
67 | Float_t fLightYieldMean ; // Mean lightyield in the PbOW4 xtal per GeV (Poisson distribution) | |
68 | Float_t fIntrinsicPINEfficiency ; // Photo efficiency of the PIN diode | |
69 | Float_t fLightYieldAttenuation ; // Attenuation of the light through the crystal | |
70 | Float_t fRecalibrationFactor ; // Recalibration factor | |
71 | Float_t fElectronsPerGeV ; // Number of electrons per GeV created in the PIN by a ionizing particle | |
3dab1cef | 72 | Float_t fAPDGain ; // APD Gain |
73 | ||
5f20d3fb | 74 | ClassDef(AliPHOSv3,1) // Implementation of PHOS manager class for layout EMC+PPSD with light transport, MIPS in PIN and electronic noise |
75 | ||
76 | }; | |
77 | ||
78 | #endif // AliPHOSV3_H |