]>
Commit | Line | Data |
---|---|---|
b0f5e3fc | 1 | #ifndef ALIITSRESPONSE_H |
2 | #define ALIITSRESPONSE_H | |
3 | ||
4 | ||
5 | #include <TObject.h> | |
e8189707 | 6 | |
b0f5e3fc | 7 | #include "AliITSsegmentation.h" |
8 | ||
1ca7869b | 9 | class TF1; |
10 | class TString; | |
b0f5e3fc | 11 | class AliITSgeom; |
12 | ||
13 | //---------------------------------------------- | |
14 | // | |
15 | // ITS response virtual base class | |
16 | // | |
17 | class AliITSresponse : | |
18 | public TObject { | |
19 | public: | |
e8189707 | 20 | |
21 | ||
22 | virtual ~AliITSresponse() {} | |
b0f5e3fc | 23 | // |
24 | // Configuration methods | |
25 | // | |
26 | ||
27 | // Set maximum Adc-count value | |
28 | virtual void SetMaxAdc(Float_t p1) {} | |
29 | // Get maximum Adc-count value | |
30 | virtual Float_t MaxAdc() {return 0.;} | |
31 | ||
e8189707 | 32 | // Set maximum Adc-top value |
b0f5e3fc | 33 | virtual void SetMagicValue(Float_t p1) {} |
e8189707 | 34 | // Get maximum Adc-top value |
b0f5e3fc | 35 | virtual Float_t MagicValue() {return 0.0;} |
36 | ||
37 | // Diffusion coefficient | |
e8189707 | 38 | virtual void SetDiffCoeff(Float_t, Float_t) {} |
39 | // Get diffusion coefficients | |
40 | virtual void DiffCoeff(Float_t &,Float_t &) {} | |
b0f5e3fc | 41 | |
42 | // Temperature | |
43 | virtual void SetTemperature(Float_t) {} | |
44 | // Get temperature | |
45 | virtual Float_t Temperature() {return 0.;} | |
46 | // Type of data - real or simulated | |
e8189707 | 47 | virtual void SetDataType(const char *data) {} |
b0f5e3fc | 48 | // Get data type |
e8189707 | 49 | virtual const char *DataType() const {return "";} |
b0f5e3fc | 50 | |
51 | ||
52 | ||
e8189707 | 53 | // Set parameters options: "same" or read from "file" or "SetInvalid" or ... |
54 | virtual void SetParamOptions(const char* opt1,const char* opt2) {} | |
55 | // Set noise parameters | |
56 | virtual void SetNoiseParam(Float_t, Float_t) {} | |
b0f5e3fc | 57 | // Number of parameters to be set |
58 | virtual void SetNDetParam(Int_t) {} | |
e8189707 | 59 | // Set detector parameters: gain, coupling ... |
b0f5e3fc | 60 | virtual void SetDetParam(Float_t *) {} |
61 | ||
62 | // Parameters options | |
e8189707 | 63 | virtual void ParamOptions(char *,char*) {} |
b0f5e3fc | 64 | virtual Int_t NDetParam() {return 0;} |
65 | virtual void GetDetParam(Float_t *) {} | |
66 | virtual void GetNoiseParam(Float_t&, Float_t&) {} | |
67 | ||
e8189707 | 68 | // Zero-suppression option - could be 1D, 2D or non-ZeroSuppressed |
69 | virtual void SetZeroSupp(const char* opt) {} | |
b0f5e3fc | 70 | // Get zero-suppression option |
e8189707 | 71 | virtual const char *ZeroSuppOption() const {return "";} |
b0f5e3fc | 72 | // Set thresholds |
73 | virtual void SetThresholds(Float_t, Float_t) {} | |
74 | virtual void Thresholds(Float_t &, Float_t &) {} | |
75 | // Set min val | |
76 | virtual void SetMinVal(Int_t) {}; | |
77 | virtual Int_t MinVal() {return 0;}; | |
78 | ||
79 | // Set filenames | |
e8189707 | 80 | virtual void SetFilenames(const char *f1,const char *f2,const char *f3) {} |
b0f5e3fc | 81 | // Filenames |
e8189707 | 82 | virtual void Filenames(char*,char*,char*) {} |
b0f5e3fc | 83 | |
84 | ||
85 | virtual Float_t DriftSpeed() {return 0.;} | |
86 | virtual Bool_t OutputOption() {return kFALSE;} | |
74d0b35a | 87 | virtual Bool_t Do10to8() {return kTRUE;} |
b0f5e3fc | 88 | virtual void GiveCompressParam(Int_t *x) {} |
89 | ||
90 | // | |
91 | // Detector type response methods | |
92 | // Set number of sigmas over which cluster disintegration is performed | |
93 | virtual void SetNSigmaIntegration(Float_t p1) {} | |
94 | // Get number of sigmas over which cluster disintegration is performed | |
95 | virtual Float_t NSigmaIntegration() {return 0.;} | |
96 | // Set sigmas of the charge spread function | |
97 | virtual void SetSigmaSpread(Float_t p1, Float_t p2) {} | |
98 | // Get sigmas for the charge spread | |
99 | virtual void SigmaSpread(Float_t &s1, Float_t &s2) {} | |
100 | ||
101 | ||
102 | // Pulse height from scored quantity (eloss) | |
103 | virtual Float_t IntPH(Float_t eloss) {return 0.;} | |
104 | // Charge disintegration | |
105 | virtual Float_t IntXZ(AliITSsegmentation *) {return 0.;} | |
106 | ||
107 | ClassDef(AliITSresponse,1) // Detector type response virtual base class | |
108 | }; | |
109 | #endif | |
110 | ||
111 | ||
112 | ||
113 | ||
114 | ||
115 | ||
116 |