Latest version
[u/mrichter/AliRoot.git] / TRD / AliTRDmatrix.h
... / ...
CommitLineData
1#ifndef ALITRDMATRIX_H
2#define ALITRDMATRIX_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
8#include <TObject.h>
9
10class TObjArray;
11
12class AliTRDpixel;
13
14///////////////////////////////////////////////////////
15// //
16// Stores the pixel-information of one TRD chamber //
17// //
18///////////////////////////////////////////////////////
19
20class AliTRDmatrix : public TObject {
21
22public:
23
24 AliTRDmatrix();
25 AliTRDmatrix(Int_t nRow, Int_t nCol, Int_t nTime, Int_t iSec, Int_t iCha, Int_t iPla);
26 AliTRDmatrix(const AliTRDmatrix &m);
27 virtual ~AliTRDmatrix();
28 AliTRDmatrix &operator=(const AliTRDmatrix &m);
29
30 virtual void AddSignal(Int_t iRow, Int_t iCol, Int_t iTime, Float_t signal);
31 virtual Bool_t AddTrack(Int_t iRow, Int_t iCol, Int_t iTime, Int_t track);
32
33 virtual void Copy(TObject &m);
34 virtual void Draw(Option_t *opt = " ");
35 virtual void DrawRow(Int_t iRow);
36 virtual void DrawCol(Int_t iCol);
37 virtual void DrawTime(Int_t iTime);
38 virtual void ProjRow();
39 virtual void ProjCol();
40 virtual void ProjTime();
41
42 virtual void SetSignal(Int_t iRow, Int_t iCol, Int_t iTime, Float_t signal);
43 virtual void SetTrack(Int_t iRow, Int_t iCol, Int_t iTime
44 , Int_t iTrack, Int_t track);
45
46 virtual Float_t GetSignal(Int_t iRow, Int_t iCol, Int_t iTime) const;
47 virtual Int_t GetTrack(Int_t iRow, Int_t iCol, Int_t iTime, Int_t iTrack) const;
48
49 virtual Int_t GetSector() const { return fSector; };
50 virtual Int_t GetChamber() const { return fChamber; };
51 virtual Int_t GetPlane() const { return fPlane; };
52
53protected:
54
55 virtual Int_t GetIndex(Int_t iRow, Int_t iCol, Int_t iTime) const;
56 virtual AliTRDpixel *GetPixel(Int_t iRow, Int_t iCol, Int_t iTime) const;
57
58 Int_t fRow; // Number of pad-rows
59 Int_t fCol; // Number of pad-columns
60 Int_t fTime; // Number of time buckets
61 Int_t fPixel; // Number of pixels
62 Int_t fSector; // Sector number
63 Int_t fChamber; // Chamber number
64 Int_t fPlane; // Plane number
65 TObjArray *fPixelArray; // Array of pixels
66
67 ClassDef(AliTRDmatrix,1) // The TRD detector matrix for one readout chamber
68
69};
70
71#endif