]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONResponse.h
Separating writing and reading of raw data (Christian)
[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 // Revision of includes 07/05/2004
8
9 /// \ingroup sim
10 /// \class AliMUONResponse
11 /// \brief Chamber response base class
12
13 #include <TObject.h>
14
15 class TF1;
16 class AliMUONGeometrySegmentation;
17 class AliMUONTransientDigit;
18
19 class AliMUONResponse : public TObject 
20 {
21  public:
22     AliMUONResponse();
23     virtual ~AliMUONResponse();
24  
25     //
26     // Configuration methods
27     //
28     // Set number of sigmas over which cluster disintegration is performed
29     virtual void    SetSigmaIntegration(Float_t)           {return;}
30     // Get number of sigmas over which cluster disintegration is performed
31     virtual Float_t SigmaIntegration() const                  {return 1.;}
32     // Set single electron pulse height (ADCcounts/e)
33     virtual void    SetChargeSlope(Float_t )                {return;}
34     // Get single electron pulse height (ADCcounts/e)
35     virtual Float_t ChargeSlope() const                       {return 1.;}
36     // Set sigmas of the charge spread function
37     virtual void    SetChargeSpread(Float_t , Float_t )   {return;}
38     // Get sigma_X of the charge spread function
39     virtual Float_t ChargeSpreadX() const                     {return 1.;}
40     // Get sigma_Y of the charge spread function
41     virtual Float_t ChargeSpreadY() const                     {return 1.;}
42     // Set maximum Adc-count value
43     virtual void    SetMaxAdc(Int_t )                       {return;}
44     // Set saturation value
45     virtual void    SetSaturation(Int_t )                   {return;}
46     // Set zero suppression threshold
47     virtual void    SetZeroSuppression(Int_t )             {return;}
48     // Get maximum Adc-count value
49     virtual Int_t MaxAdc() const                              {return kTRUE;}
50     // Get saturation value
51     virtual Int_t Saturation() const                          {return kTRUE;}
52     // Get maximum zero suppression threshold
53     virtual Int_t ZeroSuppression() const                     {return kTRUE;}
54     // Set anode cathode Pitch
55     virtual void    SetPitch(Float_t)                         {return;}
56     // Get anode cathode Pitch
57     virtual Float_t Pitch() const                             {return 1.;}
58     // Set the charge correlation
59     virtual void SetChargeCorrel(Float_t)                     {return;}
60     // Get the charge correlation
61     virtual Float_t ChargeCorrel() const                      {return 1.;}
62     //  
63     // Chamber response methods
64     // Pulse height from scored quantity (eloss)
65     virtual Float_t IntPH(Float_t)                            {return 1.;}
66     // Charge disintegration 
67     virtual Float_t IntXY(Int_t, AliMUONGeometrySegmentation*) {return 1.;}
68
69     // Noise, zero-suppression, adc saturation
70     //virtual Int_t DigitResponse(Int_t )                {return kTRUE;}
71     virtual Int_t DigitResponse(Int_t , 
72                                 AliMUONTransientDigit* ) {return kTRUE;}
73     // 
74     ClassDef(AliMUONResponse,1) // Chamber response virtual base class 
75 };
76 #endif
77
78
79
80
81
82
83