]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PHOS/AliPHOSRawStream.h
Implementation of ITS tracking for HLT. The tracking is based on the off-line AliITSt...
[u/mrichter/AliRoot.git] / PHOS / AliPHOSRawStream.h
CommitLineData
65792ca0 1#ifndef ALIPHOSRAWSTREAM_H
2#define ALIPHOSRAWSTREAM_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 PHOS digits in raw data.
11///
12///////////////////////////////////////////////////////////////////////////////
13
b7f3cbac 14// --- ROOT system ---
c2b19535 15class TClonesArray ;
65792ca0 16
b7f3cbac 17// --- AliRoot header files ---
18#include "AliAltroRawStream.h"
65792ca0 19class AliRawReader;
c2b19535 20class AliPHOSConTableDB ;
65792ca0 21
22
c2b19535 23class AliPHOSRawStream: public TObject {
b7f3cbac 24
25public :
26
27 AliPHOSRawStream(AliRawReader* rawReader);
28
c2b19535 29
30 Bool_t ReadDigits(TClonesArray * digits) ;
31
32//PHOS does not need this method
33 virtual Bool_t Next(){return kFALSE ;} ;
34
35
36 Int_t GetColumn() const {return 0;}
37 Int_t GetModule() const {return 0;}
38 Int_t GetPrevColumn() const {return 0;}
39 Int_t GetPrevModule() const {return 0;}
40 Int_t GetPrevRow() const {return 0;}
41 Int_t GetRow() const {return 0;}
42 Int_t GetSignal() const {return 0;}
43 Int_t GetTime() const {return 0;}
44 Bool_t IsNewColumn() const {return kFALSE; }
45 Bool_t IsNewModule() const {return kFALSE;}
46 Bool_t IsNewRow() const {return kFALSE ;}
47
48
49 void SetConTableDB(AliPHOSConTableDB * ctdb){fctdb = ctdb ;}
50
51 Int_t GetTrigger(void) const {return fTrig ;}
52 Bool_t IsLEDevent(void)const {return fTrig == kLED;}
53 Bool_t IsPULevent(void)const {return fTrig == kPUL;}
54 Bool_t IsPEDevent(void)const {return fTrig == kPED;}
55 Bool_t IsWELevent(void)const {return fTrig == kWEL;}
56 Bool_t IsNELevent(void)const {return fTrig == kNEL;}
57
58
59 public:
60 enum { kLED = 129, // Physics pattern unit for LED events
61 kPUL = 33, // Physics pattern unit for PULSER events
62 kPED = 257, // Physics pattern unit for PEDESTAL events
63 kNEL =1029, // Physics pattern unit for NARROW ELECTRON events
64 kWEL =1027, // Physics pattern unit for WIDE ELECTRON events
65 kSOB =2048, // Pattern unit mask for Start Of Burst trigger or 0 to disable SOB trigger
66 kEOB =4096, // Pattern unit mask for End Of Burst trigger or 0 to disable EOB trigger
67
68 kPattUnitMarker = 27, // Equipment type marker for Pattern Unit
69 kPattUnitEquipId= 64, // Equipment ID for Pattern Unit
70
71 kPhosAdcMarker = 22, // Equipment type marker for PhosAdc (Kurchatov ADC)
72 kPhosAdcEquipId= 16, // Equipment ID for PhosAdc
73
74 kTdcMarker = 26, // Equipment type marker for Tdc
75 kTdcEquipId=128, // Equipment ID for Tdc
76
77 kChargeAdcMarker = 24, // Equipment type marker for ChargeAdc
78 kChargeAdcEquipId= 32, // Equipment ID for ChargeAdc
79
80 kScalerMarker = 25, // Equipment type marker for Scaler
81 kScalerEquipId=256}; // Equipment ID for Scaler
82
83
84protected :
85 AliRawReader* fRawReader; //! object for reading the raw data
86 UChar_t* fData; //! raw data
87 AliPHOSConTableDB * fctdb ; //! connection between RAW index and AbsId of crystal
88
89 Int_t fTrig ; //current trigger
90
b7f3cbac 91 ClassDef(AliPHOSRawStream, 0) // class for reading PHOS raw digits
c2b19535 92};
65792ca0 93
94#endif