ATLAS Offline Software
RpcByteStreamDecoder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef RPCBYTESTREAMDECODER_H
6 #define RPCBYTESTREAMDECODER_H
7 
8 #include "GaudiKernel/MsgStream.h"
9 #include "GaudiKernel/StatusCode.h"
11 #include "MuonRDO/RpcPad.h"
15 
16 // Decode a RPCbytestream object and build the bare RPC RDO's
17 // Stefano Rosati
18 // Jan 2003
19 
20 // typedefs
21 typedef std::map<int, CMAreadout, std::less<int> > CMA_Readout;
22 typedef std::map<int, PADreadout, std::less<int> > PAD_Readout;
23 
25 public:
26  // Constructor and destructor
27  RpcByteStreamDecoder(const RPCbytestream* p_bytestream, const RpcCablingCondData* readCdo, const RpcIdHelper* rpcId,
28  MsgStream* log = nullptr);
30 
31  // Decode the bytestream coming from the LVL1 simulation
33 
34  // Retrieve the vector of RDO's (RpcPad)
35  std::vector<RpcPad*>* getPads() { return m_rpcpads; };
36 
37  // Printout the RDO's for testing
38  void print();
39 
40 private:
41  // Pad and Matrix decoding functions
44 
45  // Data members
49  std::vector<RpcPad*>* m_rpcpads;
50 
51  MsgStream* m_log;
52  bool m_debug;
53  bool m_verbose;
54 
57 };
58 
59 #endif // RPCBYTESTREAMDECODER_H
CMA_Readout
std::map< int, CMAreadout, std::less< int > > CMA_Readout
Definition: RpcByteStreamDecoder.h:21
RpcByteStreamDecoder::~RpcByteStreamDecoder
~RpcByteStreamDecoder()
Definition: RpcByteStreamDecoder.cxx:25
RpcByteStreamDecoder::decodeMatrix
RpcCoinMatrix * decodeMatrix(MatrixReadOut *matrix, Identifier &id)
Definition: RpcByteStreamDecoder.cxx:129
RpcByteStreamDecoder::m_bytestream
const RPCbytestream * m_bytestream
Definition: RpcByteStreamDecoder.h:46
RpcByteStreamDecoder
Definition: RpcByteStreamDecoder.h:24
PADreadout
Definition: PADreadout.h:20
RpcCoinMatrix
Definition: RpcCoinMatrix.h:20
RpcIdHelper
Definition: RpcIdHelper.h:51
RpcIdHelper.h
RpcByteStreamDecoder::getPads
std::vector< RpcPad * > * getPads()
Definition: RpcByteStreamDecoder.h:35
RpcCablingCondData
Definition: RpcCablingCondData.h:21
RpcPad.h
MatrixReadOut
Definition: MatrixReadOut.h:18
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
RpcByteStreamDecoder::m_debug
bool m_debug
Definition: RpcByteStreamDecoder.h:52
RpcByteStreamDecoder::decodeByteStream
StatusCode decodeByteStream()
Definition: RpcByteStreamDecoder.cxx:32
RpcByteStreamDecoder::m_cabling
const RpcCablingCondData * m_cabling
Definition: RpcByteStreamDecoder.h:47
RpcByteStreamDecoder::m_verbose
bool m_verbose
Definition: RpcByteStreamDecoder.h:53
RpcByteStreamDecoder::m_rpcIdHelper
const RpcIdHelper * m_rpcIdHelper
Definition: RpcByteStreamDecoder.h:48
RpcByteStreamDecoder::print
void print()
Definition: RpcByteStreamDecoder.cxx:170
PAD_Readout
std::map< int, PADreadout, std::less< int > > PAD_Readout
Definition: RpcByteStreamDecoder.h:22
RpcByteStreamDecoder::RpcByteStreamDecoder
RpcByteStreamDecoder(const RPCbytestream *p_bytestream, const RpcCablingCondData *readCdo, const RpcIdHelper *rpcId, MsgStream *log=nullptr)
Definition: RpcByteStreamDecoder.cxx:11
RPCbytestream
Definition: RPCbytestream.h:20
RpcPad
Definition: RpcPad.h:21
python.testIfMatch.matrix
matrix
Definition: testIfMatch.py:66
RpcByteStreamDecoder::decodePad
RpcPad * decodePad(PADreadout &pad)
Definition: RpcByteStreamDecoder.cxx:52
RPCbytestream.h
RpcCablingCondData.h
MatrixReadOutStructure.h
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
RpcByteStreamDecoder::RpcByteStreamDecoder
RpcByteStreamDecoder(const RpcByteStreamDecoder &)
RpcByteStreamDecoder::m_log
MsgStream * m_log
Definition: RpcByteStreamDecoder.h:51
RpcByteStreamDecoder::m_rpcpads
std::vector< RpcPad * > * m_rpcpads
Definition: RpcByteStreamDecoder.h:49
RpcByteStreamDecoder::operator=
RpcByteStreamDecoder & operator=(const RpcByteStreamDecoder &right)