]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - MUON/AliMUONChamber.h
Memory leak fixes in the AOD and MC loops (M. Putis)
[u/mrichter/AliRoot.git] / MUON / AliMUONChamber.h
... / ...
CommitLineData
1#ifndef ALIMUONCHAMBER_H
2#define ALIMUONCHAMBER_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 AliMUONChamber
11/// \brief MUON tracking chamber class
12///
13/// Now only providing DisIntegration function
14
15#include <TObject.h>
16#include <TObjArray.h>
17
18#include "AliMUONResponse.h"
19
20class AliMUON;
21class AliMUONHit;
22
23
24class AliMUONChamber : public TObject
25{
26 public:
27 AliMUONChamber();
28 AliMUONChamber(Int_t id);
29 virtual ~AliMUONChamber();
30
31/// Get chamber Id
32 virtual Int_t GetId() const {return fId;}
33
34
35/// Set response model
36 virtual void SetResponseModel(const AliMUONResponse& thisResponse);
37
38/// Get pointer to response model
39 virtual AliMUONResponse* &ResponseModel(){return fResponse;}
40
41//
42// Member function forwarding to the segmentation and response models
43//
44/// Calculate pulse height from energy loss
45 virtual Float_t IntPH(Float_t eloss) {return fResponse->IntPH(eloss);}
46
47// Initialisation of charge fluctuation for given hit
48 virtual void ChargeCorrelationInit();
49
50// Configuration forwarding
51//
52/// Define signal distribution region
53/// by number of sigmas of the distribution function
54 virtual void SetSigmaIntegration(Float_t p1)
55 {fResponse->SetSigmaIntegration(p1);}
56/// Set the single electron pulse-height (ADCchan/e)
57 virtual void SetChargeSlope(Float_t p1) {fResponse->SetChargeSlope(p1);}
58/// Set width of charge distribution function
59 virtual void SetChargeSpread(Float_t p1, Float_t p2) {fResponse->SetChargeSpread(p1,p2);}
60/// Set maximum ADC count value
61 virtual void SetMaxAdc(Int_t p1) {fResponse->SetMaxAdc(p1);}
62//
63/// Set charge correlation
64 virtual void SetChargeCorrel(Float_t correl) {fResponse->SetChargeCorrel(correl);}
65
66 protected:
67 /// Not implemented
68 AliMUONChamber(const AliMUONChamber & rChamber);
69 /// Not implemented
70 AliMUONChamber& operator =(const AliMUONChamber& rhs);
71
72 Int_t fId; ///< chamber number
73 Float_t fCurrentCorrel; //!< charge correlation for current hit.
74
75 AliMUONResponse *fResponse; ///< pointer to response
76 AliMUON *fMUON; ///< pointer to MUON
77
78 ClassDef(AliMUONChamber,3) // Muon tracking chamber class
79};
80
81#endif