ATLAS Offline Software
RPCRODStructure.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TrigT1RPChardware_RPCRODStructure_H
6 #define TrigT1RPChardware_RPCRODStructure_H
7 
15 
16 class RPCRODStructure : public RPCReadOut {
17 public:
19  RPCRODStructure(ubit16 inputData);
21  void decodeSourceID(RODword sourceID);
26  //
27  // ubit16 makeHeader(ubit16 *inputData){return (*inputData)&0x0;};
28  ubit16 makeHeader(ubit16 *inputData) { return *inputData; };
29  ubit16 makeSubHeader() { return 0; };
30  // ubit16 makeBody(ubit16 *inputData) {return (*inputData)&0x0;};
31  ubit16 makeBody(ubit16 *inputData) { return *inputData; };
32  // ubit16 makeFooter(ubit16 errorCode){return errorCode&0x0;};
33  ubit16 makeFooter(ubit16 errorCode) { return errorCode; };
34  ubit16 makeFooter(ubit16 *errorCode) { return (*errorCode) & 0x0; };
35  //**************************************************//
36  // general user methods to decode ReadOut stream //
37  //**************************************************//
38  // ubit16 decodeFragment(ubit16 inputWord, char &field);
39  bool isHeader() { return false; };
40  bool isBody() { return false; };
41  bool isFooter() { return false; };
42  //
49 
50 private:
55  //
56  // some static parameter describing the structure
57  //
58  static const RODword s_headerMarker = 0xee1234ee;
59  static const RODword s_headerSize = 8;
60  static const RODword s_formatVersion = 0x00000000;
61  // parameters needed to define SourceID
62  static const ubit16 s_sourceIDreserved = 0x00;
63  static const ubit16 s_moduleType = 0x00;
64  static const ubit16 s_subDetectorIDA = 0x65;
65  static const ubit16 s_subDetectorIDC = 0x66;
66  //
67  static const ubit16 s_emptyDataWord = 0xf000;
68  //
69  // some auxiliary parameters
70  //
71  static const RODword s_footerSize = 3;
72  //
73  void setInit();
75 }; // end-of-class RPCRODStructure
76 
77 #endif
RPCRODStructure::s_subDetectorIDA
static const ubit16 s_subDetectorIDA
Definition: RPCRODStructure.h:64
PadReadOutStructure.h
RPCRODStructure::m_moduleType
ubit16 m_moduleType
Definition: RPCRODStructure.h:52
RPCRODStructure::getFormatVersion
RODword getFormatVersion()
Definition: RPCRODStructure.h:46
RPCRODStructure::makeFooter
ubit16 makeFooter(ubit16 *errorCode)
Definition: RPCRODStructure.h:34
RPCReadOut.h
RODword
uint32_t RODword
Definition: Lvl1Def.h:18
RPCRODStructure::isBody
bool isBody()
Definition: RPCRODStructure.h:40
RPCRODStructure::m_subDetectorID
ubit16 m_subDetectorID
Definition: RPCRODStructure.h:53
RPCRODStructure::makeFooter
ubit16 makeFooter(ubit16 errorCode)
Definition: RPCRODStructure.h:33
RPCRODStructure::s_sourceIDreserved
static const ubit16 s_sourceIDreserved
Definition: RPCRODStructure.h:62
RPCRODStructure::getHeaderSize
RODword getHeaderSize()
Definition: RPCRODStructure.h:44
RPCRODStructure::m_RODID
ubit16 m_RODID
Definition: RPCRODStructure.h:54
RPCRODStructure::getSourceIDSubdetectorID
ubit16 getSourceIDSubdetectorID()
Definition: RPCRODStructure.h:24
RPCRODStructure::getSubDetectorID
ubit16 getSubDetectorID(ubit16 subsystem)
Definition: RPCRODStructure.cxx:56
RPCRODStructure::s_headerSize
static const RODword s_headerSize
Definition: RPCRODStructure.h:59
Lvl1Def.h
RPCRODStructure::getSourceID
RODword getSourceID(ubit16 subsystem, ubit16 RODID)
Definition: RPCRODStructure.cxx:43
RPCRODStructure::getSourceIDReserved
ubit16 getSourceIDReserved()
Definition: RPCRODStructure.h:22
RPCRODStructure::isHeader
bool isHeader()
Definition: RPCRODStructure.h:39
RPCRODStructure::s_moduleType
static const ubit16 s_moduleType
Definition: RPCRODStructure.h:63
RPCRODStructure
Definition: RPCRODStructure.h:16
RPCRODStructure::makeSubHeader
ubit16 makeSubHeader()
Definition: RPCRODStructure.h:29
RPCRODStructure::~RPCRODStructure
~RPCRODStructure()
Definition: RPCRODStructure.cxx:34
RPCRODStructure::setInit
void setInit()
Definition: RPCRODStructure.cxx:36
RPCRODStructure::getFooterSize
RODword getFooterSize()
Definition: RPCRODStructure.h:45
RPCRODStructure::getSourceIDModuleType
ubit16 getSourceIDModuleType()
Definition: RPCRODStructure.h:23
RPCRODStructure::makeHeader
ubit16 makeHeader(ubit16 *inputData)
Definition: RPCRODStructure.h:28
RPCRODStructure::getSourceIDRODID
ubit16 getSourceIDRODID()
Definition: RPCRODStructure.h:25
RPCRODStructure::getHeaderMarker
RODword getHeaderMarker()
Definition: RPCRODStructure.h:43
RPCRODStructure::makeBody
ubit16 makeBody(ubit16 *inputData)
Definition: RPCRODStructure.h:31
MatrixReadOutStructure.h
RPCRODStructure::decodeSourceID
void decodeSourceID(RODword sourceID)
Definition: RPCRODStructure.cxx:49
SectorLogicReadOut.h
RPCRODStructure::s_formatVersion
static const RODword s_formatVersion
Definition: RPCRODStructure.h:60
RPCRODStructure::s_subDetectorIDC
static const ubit16 s_subDetectorIDC
Definition: RPCRODStructure.h:65
RPCRODStructure::s_headerMarker
static const RODword s_headerMarker
Definition: RPCRODStructure.h:58
RPCRODStructure::s_emptyDataWord
static const ubit16 s_emptyDataWord
Definition: RPCRODStructure.h:67
ubit16
unsigned short int ubit16
Definition: RpcByteStreamEncoder.h:20
RPCReadOut
Definition: RPCReadOut.h:13
RPCRODStructure::s_footerSize
static const RODword s_footerSize
Definition: RPCRODStructure.h:71
L1TopoSimulationConfig.subsystem
subsystem
Definition: L1TopoSimulationConfig.py:242
MatrixReadOut.h
RPCRODStructure::getEmptyDataWord
ubit16 getEmptyDataWord()
Definition: RPCRODStructure.h:48
RXReadOutStructure.h
RPCRODStructure::RPCRODStructure
RPCRODStructure()
Definition: RPCRODStructure.cxx:16
RPCRODStructure::m_sourceIDreserved
ubit16 m_sourceIDreserved
Definition: RPCRODStructure.h:48
RPCRODStructure::isFooter
bool isFooter()
Definition: RPCRODStructure.h:41