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 */
12 class AliMUONRecCluster;
13 class AliMUONSegmentation;
16 class AliMUONResponse :
20 // Configuration methods
22 // Set number of sigmas over which cluster disintegration is performed
23 virtual void SetSigmaIntegration(Float_t p1) =0;
24 // Get number of sigmas over which cluster disintegration is performed
25 virtual Float_t SigmaIntegration() =0;
26 // Set single electron pulse height (ADCcounts/e)
27 virtual void SetChargeSlope(Float_t p1) =0;
28 // Get single electron pulse height (ADCcounts/e)
29 virtual Float_t ChargeSlope() =0;
30 // Set sigmas of the charge spread function
31 virtual void SetChargeSpread(Float_t p1, Float_t p2) =0;
32 // Get sigma_X of the charge spread function
33 virtual Float_t ChargeSpreadX() =0;
34 // Get sigma_Y of the charge spread function
35 virtual Float_t ChargeSpreadY() =0;
36 // Set maximum Adc-count value
37 virtual void SetMaxAdc(Int_t p1) =0;
38 // Set zero suppression threshold
39 virtual void SetZeroSuppression(Int_t val) =0;
40 // Get maximum Adc-count value
41 virtual Int_t MaxAdc() =0;
42 // Get maximum zero suppression threshold
43 virtual Int_t ZeroSuppression() =0;
44 // Set anode cathode Pitch
45 virtual void SetPitch(Float_t) =0;
46 // Get anode cathode Pitch
47 virtual Float_t Pitch() =0;
49 // Chamber response methods
50 // Pulse height from scored quantity (eloss)
51 virtual Float_t IntPH(Float_t eloss) =0;
52 // Charge disintegration
53 virtual Float_t IntXY(AliMUONSegmentation *) =0;
54 // Noise, zero-suppression, adc saturation
55 virtual Int_t DigitResponse(Int_t digit) =0;
57 ClassDef(AliMUONResponse,1) // Chamber response virtual base class