Code from MUON-dev joined
[u/mrichter/AliRoot.git] / MUON / AliMUONResponse.h
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$ */
7
8 #include "TObject.h"
9
10 class TF1;
11 class AliMUONChamber;
12 class AliMUONRecCluster;
13 class AliMUONSegmentation;
14
15
16 class AliMUONResponse :
17 public TObject {
18  public:
19     //
20     // Configuration methods
21     //
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;
48     //  
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;
56     // 
57     ClassDef(AliMUONResponse,1) // Chamber response virtual base class 
58 };
59 #endif
60
61
62
63
64
65
66