AliITSRawStream classes moved from RAW to ITS
[u/mrichter/AliRoot.git] / ITS / AliITSRawStreamSPD.h
CommitLineData
2906f4c2 1#ifndef ALIITSRAWSTREAMSPD_H
2#define ALIITSRAWSTREAMSPD_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 ITS SPD digits in raw data.
11///
12///////////////////////////////////////////////////////////////////////////////
13
14#include "AliITSRawStream.h"
15
16
17class AliITSRawStreamSPD: public AliITSRawStream {
18 public :
19 AliITSRawStreamSPD(AliRawReader* rawReader);
20 virtual ~AliITSRawStreamSPD() {};
21
22 virtual Bool_t Next();
23
24 Int_t GetRow() const {return fCoord2;};
25 Int_t GetColumn() const {return fCoord1;};
26
27 enum {kDDLOffset = 0x100}; // offset for DDL numbers
28 enum {kDDLsNumber = 20}; // number of DDLs in SPD
29 enum {kModulesPerDDL = 12}; // number of modules in each DDL
30
31 static Int_t GetModuleNumber(UInt_t iDDL, UInt_t iModule)
32 {return fgkDDLModuleMap[iDDL][iModule];}
33
34 private :
35 static const Int_t fgkDDLModuleMap[kDDLsNumber][kModulesPerDDL]; // mapping DDL/module -> module number
36
37 UShort_t fData; // data read for file
38 Int_t fDDLNumber; // current DDL number
39 Int_t fEventNumber; // event trigger number
40 Int_t fModuleNumber; // sequential module number
41 UInt_t fOffset; // offset for cell column
42 UInt_t fHitCount; // counter of hits
43
44 ClassDef(AliITSRawStreamSPD, 0) // class for reading ITS SPD raw digits
45};
46
47#endif