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