]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDrawStreamBase.h
Coding rules
[u/mrichter/AliRoot.git] / TRD / AliTRDrawStreamBase.h
CommitLineData
94ac01ef 1#ifndef ALITRDRAWSTREAMBASE_H\r\r
2#define ALITRDRAWSTREAMBASE_H\r\r
3\r\r
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r\r
5 * See cxx source for full Copyright notice */\r\r
6\r\r
7/* $Id: AliTRDrawStreamBase.h 23387 2008-01-17 17:25:16Z cblume $ */\r\r
8\r\r
9///////////////////////////////////////////////////////////////////////////////\r\r
10// //\r\r
11// This base class defines access to TRD digits in raw data. //\r\r
12// //\r\r
13///////////////////////////////////////////////////////////////////////////////\r\r
14\r\r
15#include "TObject.h"\r\r
16//#include "TString.h"\r\r
17#include "AliLog.h"\r\r
18\r\r
19class AliRawReader;\r\r
20class AliTRDdigitsManager;\r\r
21\r\r
22#define TRDMAXTBINS 63\r\r
23#define TRDMAXADC 21\r\r
24#define TRDMAXMCM 4 * 16\r\r
25#define MAXTRACKLETSPERHC 256\r\r
26\r\r
27/* // old raw stream */\r\r
28/* #define TRD_OLD_STREAM -1 */\r\r
29/* // read simulated data */\r\r
30/* #define TRD_SIM_STREAM 0 */\r\r
31/* // read real data - including test beam 2007 */\r\r
32/* #define TRD_REAL_STREAM 1 */\r\r
33\r\r
34#define TRD_NOIMP() AliFatal("Not Implemented for this class. Use inherited.");\r\r
35\r\r
36class AliTRDrawStreamBase : public TObject\r\r
37{ // class def begin\r\r
38\r\r
39 public:\r\r
40\r\r
41 AliTRDrawStreamBase();\r\r
42 AliTRDrawStreamBase(AliRawReader *rawReader);\r\r
43 virtual ~AliTRDrawStreamBase();\r\r
44\r\r
45 AliTRDrawStreamBase(const AliTRDrawStreamBase& st);\r\r
46 AliTRDrawStreamBase &operator=(const AliTRDrawStreamBase &);\r\r
47\r\r
48 //--------------------------------------------------------\r\r
49\r\r
50 enum STREAMTYPE\r\r
51 {\r\r
52 kTRDsimStream = 0,\r\r
53 kTRDrealStream = 1,\r\r
54 kTRDoldStream = 99\r\r
55 };\r\r
56\r\r
57 static AliTRDrawStreamBase *GetRawStream();\r\r
58 static AliTRDrawStreamBase *GetRawStream(AliRawReader *reader);\r\r
59\r\r
60 static void SetRawStreamVersion(Int_t iver) { fgRawStreamVersion = iver; }\r\r
61 static void SetRawStreamVersion(const char *opt);\r\r
62\r\r
63 virtual Bool_t Next() {TRD_NOIMP(); return 0;} \r\r
64 //virtual Int_t NextChamber(AliTRDdigitsManager */*man*/) {TRD_NOIMP(); return 0;} \r\r
65 virtual Int_t NextChamber(AliTRDdigitsManager */*man*/, UInt_t **/*trackletContainer*/=NULL) {TRD_NOIMP(); return 0;}\r\r
66 virtual Bool_t Init() {TRD_NOIMP(); return -1;} \r\r
67\r\r
68 virtual Bool_t SetRawVersion(Int_t /*fraw*/) {TRD_NOIMP(); return 0;} \r\r
69 \r\r
70 virtual Bool_t IsCurrentPadShared() const {TRD_NOIMP(); return 0;}\r\r
71 virtual void SetSharedPadReadout(Bool_t /*fv*/) {TRD_NOIMP();} \r\r
72 virtual Bool_t IsDataZeroSuppressed() const {TRD_NOIMP(); return 0;}\r\r
73 \r\r
74 virtual Bool_t SetReader(AliRawReader */*reader*/) {TRD_NOIMP(); return 0;} \r\r
75 \r\r
76 virtual Bool_t IsTrackletEnableBitSet() const {TRD_NOIMP(); return 0;}\r\r
77 virtual Bool_t IsStackActive(Int_t /*is*/) const {TRD_NOIMP(); return 0;}\r\r
78 virtual Int_t GetNofActiveStacks() const {TRD_NOIMP(); return 0;}\r\r
79 virtual UInt_t *GetSMstreamPosition() const {TRD_NOIMP(); return 0;}\r\r
80 \r\r
81 virtual Bool_t IsSMbufferClean() const {TRD_NOIMP(); return 0;}\r\r
82 \r\r
83 virtual Bool_t IsLinkActiveInStack(Int_t /*is*/, Int_t /*il*/) const {TRD_NOIMP(); return 0;}\r\r
84 virtual Int_t GetActiveLinksInStack(Int_t /*is*/) const {TRD_NOIMP(); return 0;}\r\r
85 \r\r
86 virtual Int_t GetSpecialRawVersion() const {TRD_NOIMP(); return 0;}\r\r
87 virtual Int_t GetMajorRawVersion() const {TRD_NOIMP(); return 0;} \r\r
88 virtual Int_t GetRawVersion() const {TRD_NOIMP(); return 0;} \r\r
89 virtual Int_t GetMinorRawVersion() const {TRD_NOIMP(); return 0;} \r\r
90\r\r
91 virtual Int_t GetSM() const {TRD_NOIMP(); return 0;} \r\r
92 virtual Int_t GetLayer() const {TRD_NOIMP(); return 0;}\r\r
93 virtual Int_t GetStack() const {TRD_NOIMP(); return 0;}\r\r
94 virtual Int_t GetSide() const {TRD_NOIMP(); return 0;} \r\r
95 virtual Int_t GetDCS() const {TRD_NOIMP(); return 0;} \r\r
96\r\r
97 virtual Int_t GetROC() const {TRD_NOIMP(); return 0;} \r\r
98 virtual Int_t GetNumberOfTimeBins() const {TRD_NOIMP(); return 0;} \r\r
99 virtual UInt_t GetBunchCrossCounter() const {TRD_NOIMP(); return 0;}\r\r
100 virtual UInt_t GetPreTriggerCounter() const {TRD_NOIMP(); return 0;}\r\r
101 virtual UInt_t GetPreTriggerPhase() const {TRD_NOIMP(); return 0;} \r\r
102\r\r
103 virtual Int_t GetRow() const {TRD_NOIMP(); return 0;} \r\r
104 virtual Int_t GetCol() const {TRD_NOIMP(); return 0;} \r\r
105 virtual Int_t GetRowMax() const {TRD_NOIMP(); return 0;}\r\r
106 virtual Int_t GetColMax() const {TRD_NOIMP(); return 0;}\r\r
107 // compatibility\r\r
108 virtual Int_t GetMaxRow() const {TRD_NOIMP(); return 0;}\r\r
109 virtual Int_t GetMaxCol() const {TRD_NOIMP(); return 0;}\r\r
110\r\r
111 virtual Int_t GetDET() const {TRD_NOIMP(); return 0;}\r\r
112 virtual Int_t GetDet() const {TRD_NOIMP(); return 0;}\r\r
113 \r\r
114 virtual Int_t GetROB() const {TRD_NOIMP(); return 0;}\r\r
115 virtual Int_t GetMCM() const {TRD_NOIMP(); return 0;}\r\r
116 virtual Int_t GetEventNumber() const {TRD_NOIMP(); return 0;}\r\r
117 virtual Int_t IsMCMcorrupted() const {TRD_NOIMP(); return 0;}\r\r
118\r\r
119 virtual Int_t *GetSignals() const {TRD_NOIMP(); return 0;}\r\r
120 virtual Int_t GetADC() const {TRD_NOIMP(); return 0;}\r\r
121 virtual Int_t GetTimeBin() const {TRD_NOIMP(); return 0;}\r\r
122\r\r
123 virtual Int_t GetCommonAdditive() const {TRD_NOIMP(); return 0;}\r\r
124 \r\r
125 //----------------------------------------------------------\r\r
126 \r\r
127 protected:\r\r
128\r\r
129 private:\r\r
130\r\r
131 static Int_t fgRawStreamVersion; // Raw stream version number\r\r
132\r\r
133 ClassDef(AliTRDrawStreamBase, 0) // TRD raw stream base class\r\r
134\r\r
135}; //clas def end\r\r
136\r\r
137#endif\r\r