7ab595b2 |
1 | #ifndef ALIRAWREADERMEMORY_H |
2 | #define ALIRAWREADERMEMORY_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 | /////////////////////////////////////////////////////////////////////////////// |
9 | /// |
10 | /// This is a class for reading raw data memory. |
11 | /// |
12 | /////////////////////////////////////////////////////////////////////////////// |
13 | |
14 | #include "AliRawReader.h" |
15 | #ifdef __CINT__ |
16 | class fstream; |
17 | #else |
18 | #include <Riostream.h> |
19 | #endif |
20 | #include <TString.h> |
21 | |
22 | |
23 | class AliRawReaderMemory: public AliRawReader { |
24 | public : |
25 | AliRawReaderMemory(); |
26 | AliRawReaderMemory(UChar_t* memory, UInt_t size); |
27 | /* AliRawReaderMemory(const AliRawReaderMemory& rawReader); */ |
28 | /* AliRawReaderMemory& operator = (const AliRawReaderMemory& rawReader); */ |
29 | virtual ~AliRawReaderMemory(); |
30 | |
31 | virtual UInt_t GetType() const {return 0;}; |
32 | virtual UInt_t GetRunNumber() const {return 0;}; |
33 | virtual const UInt_t* GetEventId() const {return 0;}; |
34 | virtual const UInt_t* GetTriggerPattern() const {return 0;}; |
35 | virtual const UInt_t* GetDetectorPattern() const {return 0;}; |
36 | virtual const UInt_t* GetAttributes() const {return 0;}; |
37 | virtual const UInt_t* GetSubEventAttributes() const {return 0;}; |
38 | virtual UInt_t GetLDCId() const {return 0;}; |
39 | virtual UInt_t GetGDCId() const {return 0;}; |
40 | |
41 | virtual Int_t GetEquipmentSize() const {return 0;}; |
42 | virtual Int_t GetEquipmentType() const {return 0;}; |
43 | virtual Int_t GetEquipmentId() const {return 0;}; |
44 | virtual const UInt_t* GetEquipmentAttributes() const {return NULL;}; |
45 | virtual Int_t GetEquipmentElementSize() const {return 0;}; |
46 | |
47 | virtual Bool_t ReadHeader(); |
48 | virtual Bool_t ReadNextData(UChar_t*& data); |
bf22797a |
49 | virtual Bool_t ReadNext(UChar_t* data, Int_t size); |
7ab595b2 |
50 | |
51 | virtual Bool_t Reset(); |
52 | |
53 | virtual Bool_t NextEvent(); |
54 | virtual Bool_t RewindEvents(); |
55 | |
56 | virtual Bool_t SetMemory( UChar_t* memory, ULong_t size ); |
57 | |
58 | protected : |
59 | |
60 | UChar_t* fBuffer; // buffer for payload |
61 | UInt_t fBufferSize; // size of fBuffer in bytes |
62 | UInt_t fPosition; // Current position in memory |
63 | |
7ab595b2 |
64 | ClassDef(AliRawReaderMemory, 0) // class for reading raw digits from a memory block |
65 | |
66 | private: |
67 | |
68 | AliRawReaderMemory(const AliRawReaderMemory& rawReader); |
69 | AliRawReaderMemory& operator = (const AliRawReaderMemory& rawReader); |
70 | }; |
71 | |
72 | #endif |