]>
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 | |
30178c30 | 9 | #include <TObject.h> |
a9e2aefa | 10 | |
11 | class TF1; | |
a30a000f | 12 | class AliSegmentation; |
ba030c0e | 13 | class AliMUONTransientDigit; |
a9e2aefa | 14 | |
30178c30 | 15 | class AliMUONResponse : public TObject |
16 | { | |
a9e2aefa | 17 | public: |
30178c30 | 18 | AliMUONResponse(); |
19 | virtual ~AliMUONResponse(); | |
20 | ||
a9e2aefa | 21 | // |
22 | // Configuration methods | |
23 | // | |
24 | // Set number of sigmas over which cluster disintegration is performed | |
25 | virtual void SetSigmaIntegration(Float_t p1) =0; | |
26 | // Get number of sigmas over which cluster disintegration is performed | |
30178c30 | 27 | virtual Float_t SigmaIntegration() const =0; |
a9e2aefa | 28 | // Set single electron pulse height (ADCcounts/e) |
29 | virtual void SetChargeSlope(Float_t p1) =0; | |
30 | // Get single electron pulse height (ADCcounts/e) | |
30178c30 | 31 | virtual Float_t ChargeSlope() const =0; |
a9e2aefa | 32 | // Set sigmas of the charge spread function |
33 | virtual void SetChargeSpread(Float_t p1, Float_t p2) =0; | |
34 | // Get sigma_X of the charge spread function | |
30178c30 | 35 | virtual Float_t ChargeSpreadX() const =0; |
a9e2aefa | 36 | // Get sigma_Y of the charge spread function |
30178c30 | 37 | virtual Float_t ChargeSpreadY() const =0; |
a9e2aefa | 38 | // Set maximum Adc-count value |
39 | virtual void SetMaxAdc(Int_t p1) =0; | |
a614d271 | 40 | // Set saturation value |
41 | virtual void SetSaturation(Int_t p1) =0; | |
a9e2aefa | 42 | // Set zero suppression threshold |
43 | virtual void SetZeroSuppression(Int_t val) =0; | |
44 | // Get maximum Adc-count value | |
30178c30 | 45 | virtual Int_t MaxAdc() const =0; |
a614d271 | 46 | // Get saturation value |
30178c30 | 47 | virtual Int_t Saturation() const =0; |
a9e2aefa | 48 | // Get maximum zero suppression threshold |
30178c30 | 49 | virtual Int_t ZeroSuppression() const =0; |
a9e2aefa | 50 | // Set anode cathode Pitch |
51 | virtual void SetPitch(Float_t) =0; | |
52 | // Get anode cathode Pitch | |
30178c30 | 53 | virtual Float_t Pitch() const =0; |
16d57990 | 54 | // Set the charge correlation |
55 | virtual void SetChargeCorrel(Float_t correl) =0; | |
56 | // Get the charge correlation | |
30178c30 | 57 | virtual Float_t ChargeCorrel() const =0; |
a9e2aefa | 58 | // |
59 | // Chamber response methods | |
60 | // Pulse height from scored quantity (eloss) | |
61 | virtual Float_t IntPH(Float_t eloss) =0; | |
62 | // Charge disintegration | |
a30a000f | 63 | virtual Float_t IntXY(AliSegmentation *) =0; |
a9e2aefa | 64 | // Noise, zero-suppression, adc saturation |
ba030c0e | 65 | //virtual Int_t DigitResponse(Int_t digit) =0; |
66 | virtual Int_t DigitResponse(Int_t digit, | |
67 | AliMUONTransientDigit* where) =0; | |
a9e2aefa | 68 | // |
69 | ClassDef(AliMUONResponse,1) // Chamber response virtual base class | |
70 | }; | |
71 | #endif | |
72 | ||
73 | ||
74 | ||
75 | ||
76 | ||
77 | ||
78 |