Line data Source code
1 : #ifndef ALIEMCALSIMPARAM_H
2 : #define ALIEMCALSIMPARAM_H
3 : /* Copyright(c) 2007, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id: AliEMCALSimParam.h $ */
7 : /*
8 : //
9 : // Base class for the EMCAL simulation parameters.
10 : //
11 : //
12 : */
13 :
14 : #include "TNamed.h"
15 :
16 : class AliEMCALSimParam : public TNamed {
17 :
18 : public:
19 :
20 : AliEMCALSimParam();
21 : AliEMCALSimParam(const AliEMCALSimParam& recoParam);
22 : AliEMCALSimParam& operator = (const AliEMCALSimParam& recoParam);
23 0 : virtual ~AliEMCALSimParam() {}
24 :
25 : static AliEMCALSimParam * GetInstance() ;
26 : virtual void Print(Option_t * option="") const ;
27 :
28 : //Parameters used in Digitizer
29 2 : Int_t GetDigitThreshold() const { return fDigitThreshold ; }
30 2 : Float_t GetPinNoise() const { return fPinNoise ; }
31 2 : Double_t GetTimeNoise() const { return fTimeNoise ; }
32 2 : Double_t GetTimeDelay() const { return fTimeDelay ; }
33 2 : Double_t IsTimeDelayFromOCDB() const { return fTimeDelayFromOCDB ; }
34 2 : Double_t GetTimeResolutionPar0() const { return fTimeResolutionPar0 ; }
35 2 : Double_t GetTimeResolutionPar1() const { return fTimeResolutionPar1 ; }
36 2 : Int_t GetNADCEC() const { return fNADCEC ; }
37 2 : Int_t GetMeanPhotonElectron() const { return fMeanPhotonElectron ; }
38 2 : Float_t GetGainFluctuations() const { return fGainFluctuations ; }
39 :
40 0 : void SetDigitThreshold(Int_t val) { fDigitThreshold = val ; }
41 0 : void SetPinNoise(Float_t val) { fPinNoise = val ; }
42 0 : void SetTimeNoise(Float_t val) { fTimeNoise = val ; }
43 0 : void SetTimeDelay(Double_t val) { fTimeDelay = val ; }
44 0 : void SetTimeDelayFromOCDB(Bool_t val) { fTimeDelayFromOCDB = val ; }
45 0 : void SetTimeResolutionPar0(Double_t val){ fTimeResolutionPar0 = val ; }
46 0 : void SetTimeResolutionPar1(Double_t val){ fTimeResolutionPar1 = val ; }
47 0 : void SetNADCED(Int_t val) { fNADCEC = val ; }
48 0 : void SetMeanPhotonElectron(Int_t val) { fMeanPhotonElectron = val ; }
49 0 : void SetGainFluctuations(Float_t val) { fGainFluctuations = val ; }
50 :
51 : //Parameters used in SDigitizer
52 12 : Float_t GetA() const { return fA ; }
53 12 : Float_t GetB() const { return fB ; }
54 12 : Float_t GetECPrimaryThreshold() const { return fECPrimThreshold ; }
55 :
56 0 : void SetA(Float_t val) { fA = val ; }
57 0 : void SetB(Float_t val) { fB = val ; }
58 0 : void SetECPrimaryThreshold(Float_t val) { fECPrimThreshold = val ; }
59 :
60 :
61 : private:
62 :
63 :
64 : static AliEMCALSimParam * fgSimParam ; // pointer to the unique instance of the class
65 :
66 : // Digitizer
67 : Int_t fDigitThreshold ; // Threshold for storing digits in EMC
68 : Int_t fMeanPhotonElectron ; // number of photon electrons per GeV deposited energy
69 : Float_t fGainFluctuations ; // correct fMeanPhotonElectron by the gain fluctuations
70 : Float_t fPinNoise ; // Electronics noise in EMC, APD
71 : Double_t fTimeNoise ; // Electronics noise in EMC, time
72 : Double_t fTimeDelay; // Simple time delay to mimick roughly delay in data
73 : Bool_t fTimeDelayFromOCDB; // Get time delay from OCDB
74 : Double_t fTimeResolutionPar0 ; // Time resolution of FEE electronics
75 : Double_t fTimeResolutionPar1 ; // Time resolution of FEE electronics
76 : Int_t fNADCEC ; // number of channels in EC section ADC
77 :
78 : // SDigitizer
79 : Float_t fA ; // Pedestal parameter
80 : Float_t fB ; // Slope Digitizition parameters
81 : Float_t fECPrimThreshold ; // To store primary if EC Shower Elos > threshold
82 :
83 66 : ClassDef(AliEMCALSimParam,7)
84 : };
85 :
86 : #endif
87 :
|