Split the 0MQ dependent part of MINITOR
[u/mrichter/AliRoot.git] / ACORDE / AliACORDERawStream.h
CommitLineData
a65a7e70 1#ifndef ALIACORDERAWSTREAM_H
2#define ALIACORDERAWSTREAM_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id: AliACORDERawStream.h 20210 2007-08-18 08:41:30Z hristov $ */
7
8///////////////////////////////////////////////////////////////////////////////
9// //
10// Reads ACORDE DDL raw data from raw data stream //
11// //
12///////////////////////////////////////////////////////////////////////////////
13
14#include "TObject.h"
15
16class AliRawReader;
17
18class AliACORDERawStream : public TObject {
19
20 public:
21
22 AliACORDERawStream(AliRawReader*);
23 AliACORDERawStream(const AliACORDERawStream &r);
24 virtual ~AliACORDERawStream();
25 AliACORDERawStream &operator=(const AliACORDERawStream &r);
26 //MRC's part
27 Int_t GetNEvents(char* fileName);
28 //
29 virtual void Reset();
30 virtual Bool_t Next();
31
32 Int_t DataSize() const { return fDataSize; }
33 UInt_t GetWord(Int_t index) const;
34
35 enum EACORDERawStreamError {
36 kRawDataSizeErr = 1
37 };
38
39 private:
40
41 UInt_t GetNextWord();
42
43 AliRawReader* fRawReader; // object for reading the raw data
44 Int_t fPosition; // current position in the raw-data payload
45 UChar_t* fData; // pointer to raw data payload
46
47 Int_t fDataSize; // data size
48
49 UInt_t fWord[4]; // data vector
50
51 ClassDef(AliACORDERawStream,0) // class for reading ACORDE DDL raw data
52
53};
54
55typedef AliACORDERawStream AliCRTRawStream; // for backward compatibility
56
57#endif