]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONResponse.h
Extracting the BLOCK DATA in a separate file. Changes to make it working on macosx
[u/mrichter/AliRoot.git] / MUON / AliMUONResponse.h
... / ...
CommitLineData
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#ifndef ROOT_TObject
14#include "TObject.h"
15#endif
16
17class AliMUONDigit;
18class AliMUONGeometrySegmentation;
19class AliMUONHit;
20class TF1;
21class TList;
22
23class AliMUONResponse : public TObject
24{
25 public:
26 AliMUONResponse();
27 virtual ~AliMUONResponse();
28
29 //
30 // Configuration methods
31 //
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.;}
66 //
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.;}
72
73 /// Go from one hit to several digits, applying charge spreading.
74 virtual void DisIntegrate(const AliMUONHit& hit, TList& digits);
75
76 //
77 ClassDef(AliMUONResponse,1) // Chamber response virtual base class
78};
79#endif
80
81
82
83
84
85
86