Splitted libraries
[u/mrichter/AliRoot.git] / ZDC / AliZDCRawStream.h
1 #ifndef ALIZDCRAWSTREAM_H
2 #define ALIZDCRAWSTREAM_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 class provides access to ZDC digits in raw data.
11 ///
12 ///////////////////////////////////////////////////////////////////////////////
13
14 #include <TObject.h>
15
16 class AliRawReader;
17
18
19 class AliZDCRawStream: public TObject {
20   public :
21     AliZDCRawStream(AliRawReader* rawReader);
22     virtual ~AliZDCRawStream();
23
24     virtual Bool_t   Next();
25
26     Int_t            GetSector(Int_t i) const {return fSector[i];};
27     Int_t            GetADCValue() const {return fADCValue;};
28     UInt_t           GetADCRaw() const {return fRawADC;};
29     Int_t            GetADCGain() const {return fADCGain;};
30     Bool_t           IsADCDataWord() const {return fIsADCDataWord;};
31     enum {kDDLOffset = 0xB00};      // offset for DDL numbers
32
33   private :
34     AliZDCRawStream(const AliZDCRawStream& stream);
35     AliZDCRawStream& operator = (const AliZDCRawStream& stream);
36
37     AliRawReader*    fRawReader;    // object for reading the raw data
38
39     UInt_t           fRawADC;       // raw ADC
40     Int_t            fSector[2];    // index of current sector
41     Int_t            fADCValue;     // ADC value;
42     Int_t            fADCGain;      // ADC gain (0=high range; 1=low range)
43     Bool_t           fIsADCDataWord; //True when data word
44
45     ClassDef(AliZDCRawStream, 1)    // class for reading ZDC raw digits
46 };
47
48 #endif