]> git.uio.no Git - u/mrichter/AliRoot.git/blame - VZERO/AliVZERORawStream.h
Protection against special particle types.
[u/mrichter/AliRoot.git] / VZERO / AliVZERORawStream.h
CommitLineData
2eb38194 1#ifndef ALIVZERORAWSTREAM_H
2#define ALIVZERORAWSTREAM_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6///////////////////////////////////////////////////////////////////////////////
7///
8/// This is a class for reading the VZERO DDL raw data
9/// The format of the raw data corresponds to the one
10/// implemented in AliVZEROBuffer class.
11///
12///////////////////////////////////////////////////////////////////////////////
13
14#include <TObject.h>
15
16class AliRawReader;
17
18class AliVZERORawStream: public TObject {
19 public :
20 AliVZERORawStream(AliRawReader* rawReader);
21 virtual ~AliVZERORawStream();
22
23 virtual void Reset();
24 virtual Bool_t Next();
25
26 Int_t GetCell() { return fCell; }
27 Int_t GetADC() { return fADC; }
28 Int_t GetTime() { return fTime; }
29
30 enum EVZERORawStreamError {
31 kRawDataSizeErr = 1
32 };
33
34 private:
35
36 AliVZERORawStream(const AliVZERORawStream& stream);
37 AliVZERORawStream& operator = (const AliVZERORawStream& stream);
38
39 Int_t GetNextWord();
40
41 Int_t fCell; // current VZERO cell
42 Int_t fADC; // current ADC count
43 Int_t fTime; // current time
44
45 Int_t fPosition; // current position in raw-data stream
46
47 AliRawReader* fRawReader; // object for reading the raw data
48
49 UChar_t* fData; // pointer to raw data payload
50
51 ClassDef(AliVZERORawStream, 0) // class for reading VZERO DDL raw data
52};
53
54#endif