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