]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONChamber.h
Update rawdata format for trigger (Christian)
[u/mrichter/AliRoot.git] / MUON / AliMUONChamber.h
CommitLineData
a9e2aefa 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$ */
30178c30 7// Revision of includes 07/05/2004
692de412 8//
9/// \ingroup base
10/// \class AliMUONChamber
11/// \brief MUON tracking chamber class
30178c30 12
13#include <TObject.h>
14#include <TObjArray.h>
a9e2aefa 15
a9e2aefa 16#include "AliMUONResponse.h"
a713db22 17#include "AliMUONGeometrySegmentation.h"
a9e2aefa 18
30aaba74 19class AliMUONClusterFinderVS;
a713db22 20class AliMUON;
21class AliMUONHit;
22
a9e2aefa 23
30178c30 24class AliMUONChamber : public TObject
a9e2aefa 25{
26 public:
27 AliMUONChamber();
d81db581 28 AliMUONChamber(Int_t id);
a9e2aefa 29 virtual ~AliMUONChamber();
30
31//
d1cd2474 32// Get chamber Id
30178c30 33 virtual Int_t GetId() const {return fId;}
d1cd2474 34//
35
a9e2aefa 36//
37// Set response model
38 virtual void SetResponseModel(AliMUONResponse* thisResponse) {fResponse=thisResponse;}
39//
a9e2aefa 40// Get pointer to response model
41 virtual AliMUONResponse* &ResponseModel(){return fResponse;}
a713db22 42
a9e2aefa 43//
44// Member function forwarding to the segmentation and response models
45//
46// Calculate pulse height from energy loss
47 virtual Float_t IntPH(Float_t eloss) {return fResponse->IntPH(eloss);}
cbf9f933 48
681d067b 49// Initialisation of charge fluctuation for given hit
50 virtual void ChargeCorrelationInit();
51
a9e2aefa 52// Configuration forwarding
53//
54// Define signal distribution region
55// by number of sigmas of the distribution function
56 virtual void SetSigmaIntegration(Float_t p1)
57 {fResponse->SetSigmaIntegration(p1);}
58// Set the single electron pulse-height (ADCchan/e)
59 virtual void SetChargeSlope(Float_t p1) {fResponse->SetChargeSlope(p1);}
60// Set width of charge distribution function
61 virtual void SetChargeSpread(Float_t p1, Float_t p2) {fResponse->SetChargeSpread(p1,p2);}
62// Set maximum ADC count value
a337f488 63 virtual void SetMaxAdc(Int_t p1) {fResponse->SetMaxAdc(p1);}
a9e2aefa 64//
65// Cluster formation method (charge disintegration)
a713db22 66 virtual void DisIntegration(AliMUONHit* hit,
67 Int_t& x, Float_t newclust[6][500]);
a9e2aefa 68//
16d57990 69 virtual void SetChargeCorrel(Float_t correl) {fResponse->SetChargeCorrel(correl);}
d1cd2474 70
a9e2aefa 71 protected:
30178c30 72 AliMUONChamber(const AliMUONChamber & rChamber);
73 // assignment operator
74 AliMUONChamber& operator =(const AliMUONChamber& rhs);
75
18b6b8c7 76 Int_t fId; ///< chamber number
77 Float_t fCurrentCorrel; //!< charge correlation for current hit.
78
79 AliMUONResponse *fResponse; ///< pointer to response
80 AliMUON *fMUON; ///< pointer to MUON
a9e2aefa 81
e118b27e 82 ClassDef(AliMUONChamber,3) // Muon tracking chamber class
a9e2aefa 83};
84
85#endif