In AliMUONTriggerQADataMakerRec:
[u/mrichter/AliRoot.git] / MUON / AliMUONResponse.h
CommitLineData
a9e2aefa 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$ */
30178c30 7// Revision of includes 07/05/2004
a9e2aefa 8
692de412 9/// \ingroup sim
10/// \class AliMUONResponse
11/// \brief Chamber response base class
12
885d501b 13#ifndef ROOT_TObject
14#include "TObject.h"
15#endif
a9e2aefa 16
885d501b 17class AliMUONDigit;
a713db22 18class AliMUONGeometrySegmentation;
885d501b 19class AliMUONHit;
885d501b 20class TF1;
21class TList;
a9e2aefa 22
30178c30 23class AliMUONResponse : public TObject
24{
a9e2aefa 25 public:
30178c30 26 AliMUONResponse();
f29ba3e1 27 virtual ~AliMUONResponse();
30178c30 28
a9e2aefa 29 //
30 // Configuration methods
31 //
71a2d3aa 32 /// Set number of sigmas over which cluster disintegration is performed (dummy)
7e4a628d 33 virtual void SetSigmaIntegration(Float_t) {return;}
71a2d3aa 34 /// Get number of sigmas over which cluster disintegration is performed (dummy)
7e4a628d 35 virtual Float_t SigmaIntegration() const {return 1.;}
71a2d3aa 36 /// Set single electron pulse height (ADCcounts/e) (dummy)
7e4a628d 37 virtual void SetChargeSlope(Float_t ) {return;}
71a2d3aa 38 /// Get single electron pulse height (ADCcounts/e) (dummy)
7e4a628d 39 virtual Float_t ChargeSlope() const {return 1.;}
71a2d3aa 40 /// Set sigmas of the charge spread function (dummy)
7e4a628d 41 virtual void SetChargeSpread(Float_t , Float_t ) {return;}
71a2d3aa 42 /// Get sigma_X of the charge spread function (dummy)
7e4a628d 43 virtual Float_t ChargeSpreadX() const {return 1.;}
71a2d3aa 44 /// Get sigma_Y of the charge spread function (dummy)
7e4a628d 45 virtual Float_t ChargeSpreadY() const {return 1.;}
71a2d3aa 46 /// Set maximum Adc-count value (dummy)
7e4a628d 47 virtual void SetMaxAdc(Int_t ) {return;}
71a2d3aa 48 /// Set saturation value (dummy)
7e4a628d 49 virtual void SetSaturation(Int_t ) {return;}
71a2d3aa 50 /// Set zero suppression threshold (dummy)
7e4a628d 51 virtual void SetZeroSuppression(Int_t ) {return;}
71a2d3aa 52 /// Get maximum Adc-count value (dummy)
7e4a628d 53 virtual Int_t MaxAdc() const {return kTRUE;}
71a2d3aa 54 /// Get saturation value (dummy)
7e4a628d 55 virtual Int_t Saturation() const {return kTRUE;}
71a2d3aa 56 /// Get maximum zero suppression threshold (dummy)
7e4a628d 57 virtual Int_t ZeroSuppression() const {return kTRUE;}
71a2d3aa 58 /// Set anode cathode Pitch (dummy)
7e4a628d 59 virtual void SetPitch(Float_t) {return;}
71a2d3aa 60 /// Get anode cathode Pitch (dummy)
7e4a628d 61 virtual Float_t Pitch() const {return 1.;}
71a2d3aa 62 /// Set the charge correlation (dummy)
a713db22 63 virtual void SetChargeCorrel(Float_t) {return;}
71a2d3aa 64 /// Get the charge correlation (dummy)
7e4a628d 65 virtual Float_t ChargeCorrel() const {return 1.;}
71a2d3aa 66 ///
a9e2aefa 67 // Chamber response methods
71a2d3aa 68 /// Pulse height from scored quantity (eloss) (dummy)
85fec35d 69 virtual Float_t IntPH(Float_t) const {return 1.;}
71a2d3aa 70 /// Charge disintegration (dummy)
85fec35d 71 virtual Float_t IntXY(Int_t, AliMUONGeometrySegmentation*) const {return 1.;}
885d501b 72
71a2d3aa 73 //// Go from one hit to several digits, applying charge spreading.
885d501b 74 virtual void DisIntegrate(const AliMUONHit& hit, TList& digits);
75
a9e2aefa 76 //
77 ClassDef(AliMUONResponse,1) // Chamber response virtual base class
78};
79#endif
80
81
82
83
84
85
86