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 */
7 // Revision of includes 07/05/2004
10 /// \class AliMUONResponse
11 /// \brief Chamber response base class
18 class AliMUONGeometrySegmentation;
23 class AliMUONResponse : public TObject
27 virtual ~AliMUONResponse();
30 // Configuration methods
32 // Set number of sigmas over which cluster disintegration is performed
33 virtual void SetSigmaIntegration(Float_t) {return;}
34 // Get number of sigmas over which cluster disintegration is performed
35 virtual Float_t SigmaIntegration() const {return 1.;}
36 // Set single electron pulse height (ADCcounts/e)
37 virtual void SetChargeSlope(Float_t ) {return;}
38 // Get single electron pulse height (ADCcounts/e)
39 virtual Float_t ChargeSlope() const {return 1.;}
40 // Set sigmas of the charge spread function
41 virtual void SetChargeSpread(Float_t , Float_t ) {return;}
42 // Get sigma_X of the charge spread function
43 virtual Float_t ChargeSpreadX() const {return 1.;}
44 // Get sigma_Y of the charge spread function
45 virtual Float_t ChargeSpreadY() const {return 1.;}
46 // Set maximum Adc-count value
47 virtual void SetMaxAdc(Int_t ) {return;}
48 // Set saturation value
49 virtual void SetSaturation(Int_t ) {return;}
50 // Set zero suppression threshold
51 virtual void SetZeroSuppression(Int_t ) {return;}
52 // Get maximum Adc-count value
53 virtual Int_t MaxAdc() const {return kTRUE;}
54 // Get saturation value
55 virtual Int_t Saturation() const {return kTRUE;}
56 // Get maximum zero suppression threshold
57 virtual Int_t ZeroSuppression() const {return kTRUE;}
58 // Set anode cathode Pitch
59 virtual void SetPitch(Float_t) {return;}
60 // Get anode cathode Pitch
61 virtual Float_t Pitch() const {return 1.;}
62 // Set the charge correlation
63 virtual void SetChargeCorrel(Float_t) {return;}
64 // Get the charge correlation
65 virtual Float_t ChargeCorrel() const {return 1.;}
67 // Chamber response methods
68 // Pulse height from scored quantity (eloss)
69 virtual Float_t IntPH(Float_t) const {return 1.;}
70 // Charge disintegration
71 virtual Float_t IntXY(Int_t, AliMUONGeometrySegmentation*) const {return 1.;}
73 /// Go from one hit to several digits, applying charge spreading.
74 virtual void DisIntegrate(const AliMUONHit& hit, TList& digits);
77 ClassDef(AliMUONResponse,1) // Chamber response virtual base class