Latest version
[u/mrichter/AliRoot.git] / TRD / AliTRDmatrix.h
CommitLineData
dd9a6ee3 1#ifndef ALITRDMATRIX_H
2#define ALITRDMATRIX_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
99d5402e 7
8#include <TObject.h>
851d3db9 9
793ff80c 10class TObjArray;
11
12class AliTRDpixel;
99d5402e 13
14///////////////////////////////////////////////////////
0a29d0f1 15// //
99d5402e 16// Stores the pixel-information of one TRD chamber //
0a29d0f1 17// //
99d5402e 18///////////////////////////////////////////////////////
19
20class AliTRDmatrix : public TObject {
21
99d5402e 22public:
6f1e466d 23
99d5402e 24 AliTRDmatrix();
25 AliTRDmatrix(Int_t nRow, Int_t nCol, Int_t nTime, Int_t iSec, Int_t iCha, Int_t iPla);
dd9a6ee3 26 AliTRDmatrix(const AliTRDmatrix &m);
99d5402e 27 virtual ~AliTRDmatrix();
dd9a6ee3 28 AliTRDmatrix &operator=(const AliTRDmatrix &m);
99d5402e 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
dd9a6ee3 33 virtual void Copy(TObject &m);
8230f242 34 virtual void Draw(Option_t *opt = " ");
99d5402e 35 virtual void DrawRow(Int_t iRow);
36 virtual void DrawCol(Int_t iCol);
37 virtual void DrawTime(Int_t iTime);
6f1e466d 38 virtual void ProjRow();
39 virtual void ProjCol();
40 virtual void ProjTime();
99d5402e 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
793ff80c 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;
99d5402e 48
793ff80c 49 virtual Int_t GetSector() const { return fSector; };
50 virtual Int_t GetChamber() const { return fChamber; };
51 virtual Int_t GetPlane() const { return fPlane; };
99d5402e 52
8230f242 53protected:
54
793ff80c 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;
8230f242 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
5c7f4665 67 ClassDef(AliTRDmatrix,1) // The TRD detector matrix for one readout chamber
99d5402e 68
69};
70
71#endif