]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/SMcalib/AliEMCALCCUSBRawStream.h
Adding class AliVZEROMisAligner
[u/mrichter/AliRoot.git] / EMCAL / SMcalib / AliEMCALCCUSBRawStream.h
CommitLineData
d6d75a3f 1#ifndef ALIEMCALCCUSBRAWSTREAM_H
2#define ALIEMCALCCUSBRAWSTREAM_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 class provides access to CC-USB data in EMCAL test bench raw data.
9/// Author: guernane@lpsc.in2p3.fr
10///
11///////////////////////////////////////////////////////////////////////////////
12
13#include <TObject.h>
14
15class AliRawReader;
16
17class AliEMCALCCUSBRawStream: public TObject {
18 public :
19 AliEMCALCCUSBRawStream(AliRawReader* rawReader);
20 virtual ~AliEMCALCCUSBRawStream() {};
21
22 virtual Bool_t Next();
23
24 UInt_t GetTDC(Int_t iTDC) const
25 {return fTDC[iTDC];}
26
27 UInt_t GetQDC(Int_t iQDC) const
28 {return fQDC[iQDC];}
29 UInt_t GetScalerCCUSB(Int_t iScaler) const
30 {return fScalerCCUSB[iScaler];}
31 UInt_t GetScalerLecroy(Int_t iScaler) const
32 {return fScalerLecroy[iScaler];}
33
34 private :
35 AliEMCALCCUSBRawStream(const AliEMCALCCUSBRawStream& stream);
36 AliEMCALCCUSBRawStream& operator = (const AliEMCALCCUSBRawStream& stream);
37
38 AliRawReader* fRawReader; // object for reading the raw data
39 UInt_t fData; // data read for file
40 UInt_t fHeader; // bit 15=1 indicates a watchdog buffer
41 // bit 14=1 indicates a scaler buffer
42 // bits 0-9 represent the number of events in the buffer
43 UInt_t fOptHeader; // bits 0-11 represent the number of words in the buffer
44 UInt_t fEventLength; // event length including terminator words
45 UInt_t fEOBuffer; // event terminator
46
47 static const Int_t fgkNScalerCCUSB = 2; // number of internal CC-USB scalers
48 static const Int_t fgkNScalerLecroy = 12; // number of Lecroy scalers
49 static const Int_t fgkNTDC = 40; // number of TDC
50 static const Int_t fgkNQDC = 32; // number of QDC
51
52 UInt_t fTDC[fgkNTDC]; // TDC channels
53 UInt_t fQDC[fgkNQDC]; // QDC values
54 UInt_t fScalerCCUSB[fgkNScalerCCUSB]; // Internal scaler values
55 UInt_t fScalerLecroy[fgkNScalerLecroy]; // Lecroy scaler values
56
57 ClassDef(AliEMCALCCUSBRawStream, 0) // class for reading CC-USB raw digits
58};
59
60#endif