16048fcf |
1 | #ifndef ALIRAWREADERDATE_H |
2 | #define ALIRAWREADERDATE_H |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ |
5 | |
bea6b2a4 |
6 | /* $Id$ */ |
7 | |
8 | /////////////////////////////////////////////////////////////////////////////// |
9 | /// |
10 | /// This is a class for reading raw data from a date file or event. |
11 | /// |
12 | /////////////////////////////////////////////////////////////////////////////// |
13 | |
16048fcf |
14 | #include "AliRawReader.h" |
15 | |
16 | struct eventHeaderStruct; |
c946ab02 |
17 | struct equipmentHeaderStruct; |
16048fcf |
18 | |
19 | |
20 | class AliRawReaderDate: public AliRawReader { |
21 | public : |
22 | AliRawReaderDate(void* event); |
dd9a70fe |
23 | AliRawReaderDate(const char* fileName, Int_t eventNumber = -1); |
c946ab02 |
24 | virtual ~AliRawReaderDate(); |
25 | |
16048fcf |
26 | virtual UInt_t GetType() const; |
27 | virtual UInt_t GetRunNumber() const; |
28 | virtual const UInt_t* GetEventId() const; |
29 | virtual const UInt_t* GetTriggerPattern() const; |
30 | virtual const UInt_t* GetDetectorPattern() const; |
31 | virtual const UInt_t* GetAttributes() const; |
e94ad92c |
32 | virtual const UInt_t* GetSubEventAttributes() const; |
c946ab02 |
33 | virtual UInt_t GetLDCId() const; |
16048fcf |
34 | virtual UInt_t GetGDCId() const; |
35 | |
c946ab02 |
36 | virtual Int_t GetEquipmentSize() const; |
37 | virtual Int_t GetEquipmentType() const; |
38 | virtual Int_t GetEquipmentId() const; |
39 | virtual const UInt_t* GetEquipmentAttributes() const; |
40 | virtual Int_t GetEquipmentElementSize() const; |
41 | |
42 | virtual Bool_t ReadHeader(); |
16048fcf |
43 | virtual Bool_t ReadNextData(UChar_t*& data); |
bf22797a |
44 | virtual Bool_t ReadNext(UChar_t* data, Int_t size); |
16048fcf |
45 | |
46 | virtual Bool_t Reset(); |
47 | |
dd9a70fe |
48 | virtual Bool_t NextEvent(); |
49 | virtual Bool_t RewindEvents(); |
50 | |
b4857df7 |
51 | virtual Int_t CheckData() const; |
52 | |
16048fcf |
53 | protected : |
dd9a70fe |
54 | FILE* fFile; // DATE file |
16048fcf |
55 | eventHeaderStruct* fEvent; // raw data super event |
56 | eventHeaderStruct* fSubEvent; // raw data sub event |
c946ab02 |
57 | equipmentHeaderStruct* fEquipment; // raw data equipment header |
16048fcf |
58 | |
59 | UChar_t* fPosition; // current position in the raw data |
c946ab02 |
60 | UChar_t* fEnd; // end position of the current data block |
16048fcf |
61 | |
dd9a70fe |
62 | private: |
63 | AliRawReaderDate(const AliRawReaderDate& rawReader); |
64 | AliRawReaderDate& operator = (const AliRawReaderDate& rawReader); |
65 | |
16048fcf |
66 | ClassDef(AliRawReaderDate, 0) // class for reading raw digits from a root file |
67 | }; |
68 | |
69 | #endif |