]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - ITS/AliITSRawStreamSSD.h
Fixes in the geometry: radial positioning of the OB layers, chip readout zones orient...
[u/mrichter/AliRoot.git] / ITS / AliITSRawStreamSSD.h
... / ...
CommitLineData
1#ifndef ALIITSRAWSTREAMSSD_H
2#define ALIITSRAWSTREAMSSD_H
3/* Copyright(c) 2007-2009, 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 SSD digits in raw data.
11// Revised by Enrico Fragiacomo
12// Last update: 2007/09/06
13///
14///////////////////////////////////////////////////////////////////////////////
15
16#include "AliITSRawStream.h"
17
18class AliRawReader;
19
20
21class AliITSRawStreamSSD: public AliITSRawStream {
22 public :
23 AliITSRawStreamSSD(AliRawReader* rawReader);
24 virtual ~AliITSRawStreamSSD() {};
25
26 virtual Bool_t Next();
27
28 Int_t GetSideFlag() const {return fCoord1;}
29 Int_t GetStrip() const {return fCoord2;}
30 Int_t GetDDL() const {return fddl;}
31 Int_t GetAD() const {return fad;}
32 Int_t GetADC() const {return fadc;}
33
34 static Bool_t InitDDLModuleMap(); // Initialize DLL module map
35 static void Setv11HybridDDLMapping();
36 static void SetvPPRasymmFMDDDLMapping();
37
38 enum {kDDLsNumber = 16}; // number of DDLs in SSD
39 enum {kModulesPerDDL = 108}; // number of modules in each DDL
40
41 static Int_t GetModuleNumber(UInt_t iDDL, UInt_t iModule);
42
43 enum ESSDRawStreamError {
44 kWrongModuleIdErr = 1
45 };
46
47 Int_t fddl; // ddl
48 Int_t fad; // ad module
49 Int_t fadc; // adc
50
51 Bool_t flag; //
52
53 protected :
54 static Bool_t fgkDDLModuleMapInit; // Module map is initialized or not
55 static Int_t fgkDDLModuleMap[kDDLsNumber][kModulesPerDDL]; // mapping DDL/module -> module number
56
57 UInt_t fData; // data read for file
58
59 ClassDef(AliITSRawStreamSSD, 0) // class for reading ITS SSD raw digits
60};
61
62#endif