]>
Commit | Line | Data |
---|---|---|
a9e2aefa | 1 | #ifndef ALIMUONRESPONSE_H |
2 | #define ALIMUONRESPONSE_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
30178c30 | 7 | // Revision of includes 07/05/2004 |
a9e2aefa | 8 | |
692de412 | 9 | /// \ingroup sim |
10 | /// \class AliMUONResponse | |
11 | /// \brief Chamber response base class | |
12 | ||
30178c30 | 13 | #include <TObject.h> |
a9e2aefa | 14 | |
15 | class TF1; | |
a713db22 | 16 | class AliMUONGeometrySegmentation; |
ba030c0e | 17 | class AliMUONTransientDigit; |
a9e2aefa | 18 | |
30178c30 | 19 | class AliMUONResponse : public TObject |
20 | { | |
a9e2aefa | 21 | public: |
30178c30 | 22 | AliMUONResponse(); |
f29ba3e1 | 23 | virtual ~AliMUONResponse(); |
30178c30 | 24 | |
a9e2aefa | 25 | // |
26 | // Configuration methods | |
27 | // | |
28 | // Set number of sigmas over which cluster disintegration is performed | |
7e4a628d | 29 | virtual void SetSigmaIntegration(Float_t) {return;} |
a9e2aefa | 30 | // Get number of sigmas over which cluster disintegration is performed |
7e4a628d | 31 | virtual Float_t SigmaIntegration() const {return 1.;} |
a9e2aefa | 32 | // Set single electron pulse height (ADCcounts/e) |
7e4a628d | 33 | virtual void SetChargeSlope(Float_t ) {return;} |
a9e2aefa | 34 | // Get single electron pulse height (ADCcounts/e) |
7e4a628d | 35 | virtual Float_t ChargeSlope() const {return 1.;} |
a9e2aefa | 36 | // Set sigmas of the charge spread function |
7e4a628d | 37 | virtual void SetChargeSpread(Float_t , Float_t ) {return;} |
a9e2aefa | 38 | // Get sigma_X of the charge spread function |
7e4a628d | 39 | virtual Float_t ChargeSpreadX() const {return 1.;} |
a9e2aefa | 40 | // Get sigma_Y of the charge spread function |
7e4a628d | 41 | virtual Float_t ChargeSpreadY() const {return 1.;} |
a9e2aefa | 42 | // Set maximum Adc-count value |
7e4a628d | 43 | virtual void SetMaxAdc(Int_t ) {return;} |
a614d271 | 44 | // Set saturation value |
7e4a628d | 45 | virtual void SetSaturation(Int_t ) {return;} |
a9e2aefa | 46 | // Set zero suppression threshold |
7e4a628d | 47 | virtual void SetZeroSuppression(Int_t ) {return;} |
a9e2aefa | 48 | // Get maximum Adc-count value |
7e4a628d | 49 | virtual Int_t MaxAdc() const {return kTRUE;} |
a614d271 | 50 | // Get saturation value |
7e4a628d | 51 | virtual Int_t Saturation() const {return kTRUE;} |
a9e2aefa | 52 | // Get maximum zero suppression threshold |
7e4a628d | 53 | virtual Int_t ZeroSuppression() const {return kTRUE;} |
a9e2aefa | 54 | // Set anode cathode Pitch |
7e4a628d | 55 | virtual void SetPitch(Float_t) {return;} |
a9e2aefa | 56 | // Get anode cathode Pitch |
7e4a628d | 57 | virtual Float_t Pitch() const {return 1.;} |
16d57990 | 58 | // Set the charge correlation |
a713db22 | 59 | virtual void SetChargeCorrel(Float_t) {return;} |
16d57990 | 60 | // Get the charge correlation |
7e4a628d | 61 | virtual Float_t ChargeCorrel() const {return 1.;} |
a9e2aefa | 62 | // |
63 | // Chamber response methods | |
64 | // Pulse height from scored quantity (eloss) | |
a713db22 | 65 | virtual Float_t IntPH(Float_t) {return 1.;} |
a9e2aefa | 66 | // Charge disintegration |
a713db22 | 67 | virtual Float_t IntXY(Int_t, AliMUONGeometrySegmentation*) {return 1.;} |
68 | ||
a9e2aefa | 69 | // Noise, zero-suppression, adc saturation |
7e4a628d | 70 | //virtual Int_t DigitResponse(Int_t ) {return kTRUE;} |
71 | virtual Int_t DigitResponse(Int_t , | |
72 | AliMUONTransientDigit* ) {return kTRUE;} | |
a9e2aefa | 73 | // |
74 | ClassDef(AliMUONResponse,1) // Chamber response virtual base class | |
75 | }; | |
76 | #endif | |
77 | ||
78 | ||
79 | ||
80 | ||
81 | ||
82 | ||
83 |