]>
Commit | Line | Data |
---|---|---|
b0f5e3fc | 1 | #ifndef ALIITSRESPONSESSD_H |
2 | #define ALIITSRESPONSESSD_H | |
fcf95fc7 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
b0f5e3fc | 6 | #include "AliITSresponse.h" |
9acf2ecc | 7 | #include <Riostream.h> |
1ca7869b | 8 | |
fcf95fc7 | 9 | /////////////////////////////////////////////////// |
10 | // Response class for SSD // | |
11 | // // | |
12 | /////////////////////////////////////////////////// | |
b0f5e3fc | 13 | |
6a407881 | 14 | class AliITSresponseSSD : public AliITSresponse { |
15 | ||
16 | public: | |
17 | AliITSresponseSSD(); | |
fcf95fc7 | 18 | virtual ~AliITSresponseSSD() {;} |
703a4e51 | 19 | virtual void SetParamOptions(const char *opt1, const char *opt2) { |
6a407881 | 20 | // parameters: "SetInvalid" to simulate the invalid strips |
21 | fOption1=opt1; fOption2=opt2; | |
22 | } | |
703a4e51 | 23 | virtual void ParamOptions(char *opt1,char *opt2) const { |
6a407881 | 24 | // options |
25 | strcpy(opt1,fOption1.Data()); strcpy(opt2,fOption2.Data()); | |
26 | } | |
9acf2ecc | 27 | void SetADCpereV(Double_t a=120./24888.9){fADCpereV = a;} |
fcf95fc7 | 28 | Double_t DEvToADC(Double_t eV) const {return eV*fADCpereV;} |
29 | Int_t IEvToADC(Double_t eV) const { // Converts electron-hole pairs to | |
30 | return ((Int_t) DEvToADC(eV)); } | |
31 | ||
9acf2ecc | 32 | void SetKeVperADC(Double_t a=86.4/120.){fKeVperADC = a;} |
33 | Double_t ADCToKeV(Double_t adc) const {return adc*fKeVperADC;} | |
34 | ||
14a74335 | 35 | Double_t GetCouplingPR() const {// couplings |
36 | return fCouplingPR;} | |
37 | Double_t GetCouplingPL() const {// couplings | |
38 | return fCouplingPL;} | |
39 | Double_t GetCouplingNR() const {// couplings | |
40 | return fCouplingNR;} | |
41 | Double_t GetCouplingNL() const {// couplings | |
42 | return fCouplingNL;} | |
43 | virtual void SetCouplings(Double_t pr, Double_t pl, Double_t nr, Double_t nl) { | |
44 | fCouplingPR=pr; fCouplingPL=pl; fCouplingNR=nr; fCouplingNL=nl; } | |
45 | ||
46 | Int_t GetZSThreshold() const { // ZS threshold | |
47 | return fZSThreshold; } | |
48 | virtual void SetZSThreshold(Int_t zsth) { fZSThreshold = zsth; } | |
49 | ||
50 | protected: | |
fcf95fc7 | 51 | static const Float_t fgkDiffCoeffDefault; //default for fDiffCoeff |
703a4e51 | 52 | static const TString fgkOption1Default; // default for fOption1 |
53 | static const TString fgkOption2Default; // default for fOption2 | |
b0f5e3fc | 54 | |
9acf2ecc | 55 | static const Double_t fgkfCouplingPR; // default value for couplings |
56 | static const Double_t fgkfCouplingPL; // default value for couplings | |
57 | static const Double_t fgkfCouplingNR; // default value for couplings | |
58 | static const Double_t fgkfCouplingNL; // default value for couplings | |
14a74335 | 59 | |
aacedc3e | 60 | Double_t fADCpereV; // Constant to convert eV to ADC. |
9acf2ecc | 61 | Double_t fKeVperADC; // Constant to convert ADC to keV |
b0f5e3fc | 62 | |
14a74335 | 63 | Double_t fCouplingPR; // couplings |
64 | Double_t fCouplingPL; // couplings | |
65 | Double_t fCouplingNR; // couplings | |
66 | Double_t fCouplingNL; // couplings | |
67 | ||
68 | static const Int_t fgkZSThreshold; // threshold for the zero suppresion | |
69 | Int_t fZSThreshold; | |
70 | ||
71 | TString fOption1; // Simulate invalid strips option | |
6a407881 | 72 | TString fOption2; // Not used for the moment |
703a4e51 | 73 | |
74 | private: | |
75 | AliITSresponseSSD(const AliITSresponseSSD &source); // copy constructor | |
76 | AliITSresponseSSD& operator=(const AliITSresponseSSD &source); // ass. op. | |
b0f5e3fc | 77 | |
fcf95fc7 | 78 | ClassDef(AliITSresponseSSD,4) //Response class for SSD |
6a407881 | 79 | }; |
b0f5e3fc | 80 | #endif |