04fa961a |
1 | #ifndef ALIRAWREADERFILE_H |
2 | #define ALIRAWREADERFILE_H |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ |
5 | |
6 | #include "AliRawReader.h" |
7 | #include <Riostream.h> |
8 | #include <TString.h> |
9 | |
10 | |
11 | class AliRawReaderFile: public AliRawReader { |
12 | public : |
13 | AliRawReaderFile(const char* fileName, Bool_t addNumber = kTRUE); |
14 | virtual ~AliRawReaderFile(); |
15 | |
16 | virtual UInt_t GetType() {return 0;}; |
17 | virtual UInt_t GetRunNumber() {return 0;}; |
18 | virtual const UInt_t* GetEventId() {return 0;}; |
19 | virtual const UInt_t* GetTriggerPattern() {return 0;}; |
20 | virtual const UInt_t* GetDetectorPattern() {return 0;}; |
21 | virtual const UInt_t* GetAttributes() {return 0;}; |
22 | virtual UInt_t GetGDCId() {return 0;}; |
23 | |
24 | |
25 | virtual Bool_t ReadMiniHeader(); |
26 | virtual Bool_t ReadNextData(UChar_t*& data); |
27 | |
28 | virtual Bool_t Reset(); |
29 | |
30 | protected : |
31 | Bool_t OpenNextFile(); |
32 | |
33 | virtual Bool_t ReadNext(UChar_t* data, Int_t size); |
34 | |
35 | TString fFileName; // name of input files |
36 | Int_t fFileNumber; // number of current input file |
37 | fstream* fStream; // stream of raw digits |
38 | UChar_t* fBuffer; // buffer for payload |
39 | Int_t fBufferSize; // size of fBuffer in bytes |
40 | |
41 | ClassDef(AliRawReaderFile, 0) // class for reading raw digits from a file |
42 | }; |
43 | |
44 | #endif |