]>
Commit | Line | Data |
---|---|---|
dc7ca31d | 1 | #ifndef ALIT0RAWREADER_H |
2 | #define ALIT0RAWREADER_H | |
f16935f7 | 3 | /*************************************************************************** |
4 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights | |
5 | * reserved. | |
6 | * | |
7 | * Alla Maevskaya INR RAS alla@inr.ru | |
8 | * | |
9 | * See cxx source for full Copyright notice | |
10 | ***************************************************************************/ | |
11 | ||
dc7ca31d | 12 | |
13 | #include <TTask.h> | |
dc7ca31d | 14 | #include "AliRawReader.h" |
807a797f | 15 | #include "AliT0Parameters.h" |
f16935f7 | 16 | |
17 | ||
dc7ca31d | 18 | class AliT0RawReader : public TTask { |
19 | public : | |
20 | ||
2de29203 | 21 | AliT0RawReader(AliRawReader *rawReader,Bool_t isOnline = kFALSE) ; |
22 | // AliT0RawReader(AliRawReader *rawReader,Bool_t isOnline = kTRUE) ; | |
dc7ca31d | 23 | |
24 | virtual ~AliT0RawReader(); | |
c41ceaac | 25 | AliT0RawReader(const AliT0RawReader& o): TTask(o), |
807a797f | 26 | fRawReader(0), |
27 | fData(NULL), | |
28 | fPosition(0), | |
f8bea420 | 29 | fParam(0), |
345f03db | 30 | fIsOnline(kFALSE), |
31 | fBunchID(0), | |
32 | fPrintout(kFALSE) | |
807a797f | 33 | {} |
c41ceaac | 34 | |
e0bba6cc | 35 | AliT0RawReader& operator=(const AliT0RawReader&) { return *this; } |
dc7ca31d | 36 | |
37 | ||
38 | Bool_t Next(); //read next raw digit | |
39 | Int_t GetPosition(); | |
dc7ca31d | 40 | UInt_t GetNextWord(); |
f16935f7 | 41 | Int_t GetData( Int_t channel, Int_t hit) {return fAllData[channel][hit];} |
42 | ||
aee6a11a | 43 | |
44 | enum ET0RawReaderError { | |
45 | kIncorrectDataSize = 1, | |
46 | kWrongDRMHeader = 2, | |
47 | kWrongDRMTrailer = 3, | |
48 | kWrongTRMHeader = 4, | |
49 | kWrongTRMTrailer = 5, | |
50 | kWrongChain0Header = 6, | |
51 | kWrongChain0Trailer = 7, | |
52 | kWrongChain1Header = 8, | |
53 | kWrongChain1Trailer = 9, | |
54 | kIncorrectLUT = 10 | |
55 | }; | |
56 | ||
f8bea420 | 57 | Bool_t IsOnlineMode () {return fIsOnline;} |
8f620945 | 58 | Int_t GetTRMBunchID() {return fBunchID;}; |
59 | ||
60 | void SetPrintout(Bool_t pp ) {fPrintout = pp;} | |
f8bea420 | 61 | |
dc7ca31d | 62 | protected : |
63 | ||
dc7ca31d | 64 | AliRawReader* fRawReader; // object for reading the raw data |
dc7ca31d | 65 | UChar_t* fData; // raw data |
66 | Int_t fPosition; // current (32 bit) position in fData | |
f16935f7 | 67 | AliT0Parameters *fParam; // instanse of Parameters class |
68 | Bool_t fIsOnline; // for case online DA usage | |
8f620945 | 69 | Int_t fBunchID; //bunchID from TRM chain header |
70 | Bool_t fPrintout; // advanced printout | |
5ed41460 | 71 | Int_t fAllData[110][5]; // container for raw data |
dc7ca31d | 72 | |
8f620945 | 73 | ClassDef(AliT0RawReader,3) //class for reading T0 Raw data |
dc7ca31d | 74 | }; |
75 | ||
76 | typedef AliT0RawReader AliSTARTRawReader; // for backward compatibility | |
77 | ||
78 | #endif |