ATLAS Offline Software
MdtRODReadOut.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONBYTESTREAM_MDTRODREADOUT_H
6 #define MUONBYTESTREAM_MDTRODREADOUT_H
7 
8 #include <stdint.h>
9 
10 #include <vector>
11 
12 #include "MdtReadOut.h"
13 
14 // Decoding methods for an MDT ROD
15 // S. Rosati Feb 2003
16 
17 class MdtRODReadOut : public MdtReadOut {
18 private:
19  // uint32_t m_dataWord;
20  // Data members
21  uint16_t m_subdetId; // Sub-detector Id
22  uint16_t m_mrodId; // MROD Id
23  uint32_t m_lvl1Id; // Lvl1 Id
24  uint16_t m_bcId; // Bunch crossing Id
25  uint16_t m_triggerTypeId; // Trigger type Id
26 
27  // Data words in the ROD header
28  static constexpr uint32_t s_RODstart = 0xee1234ee;
29  static constexpr uint32_t s_RODheadersize = 0x8;
30  static constexpr uint32_t s_RODversion = 0; // ??
31 
32 public:
33  MdtRODReadOut();
34  ~MdtRODReadOut() = default;
35 
36  void decodeHeader(const std::vector<uint32_t>& p);
37  void decodeFooter(const std::vector<uint32_t>& p);
38 
39  static uint32_t* encodeFooter();
40 
41  // Header words
42  constexpr uint32_t makeHeaderMarker() { return s_RODstart; }
43  constexpr uint32_t makeHeaderSize() { return s_RODheadersize; }
44  constexpr uint32_t makeFormatVersion() { return s_RODversion; }
45  uint32_t makeRODId(uint16_t subdet, uint16_t mrod);
46 
47  // Retrieve decoded results
48  uint16_t subdetId() const { return m_subdetId; }
49  uint16_t mrodId() const { return m_mrodId; }
50  uint32_t lvl1Id() const { return m_lvl1Id; }
51  uint16_t bcId() const { return m_bcId; }
52  uint16_t trigtypeId() const { return m_triggerTypeId; }
53 
54 private:
55  // Private functions
56  void setZero();
57 
58 }; // MUONBYTESTREAM_MDTRODREADOUT_H
59 
60 #endif
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
MdtRODReadOut::m_lvl1Id
uint32_t m_lvl1Id
Definition: MdtRODReadOut.h:23
MdtRODReadOut
Definition: MdtRODReadOut.h:17
MdtRODReadOut::m_triggerTypeId
uint16_t m_triggerTypeId
Definition: MdtRODReadOut.h:25
MdtRODReadOut::s_RODversion
static constexpr uint32_t s_RODversion
Definition: MdtRODReadOut.h:30
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
MdtRODReadOut::makeFormatVersion
constexpr uint32_t makeFormatVersion()
Definition: MdtRODReadOut.h:44
MdtRODReadOut::makeHeaderMarker
constexpr uint32_t makeHeaderMarker()
Definition: MdtRODReadOut.h:42
MdtReadOut
Definition: MdtReadOut.h:14
MdtRODReadOut::subdetId
uint16_t subdetId() const
Definition: MdtRODReadOut.h:48
MdtRODReadOut::s_RODheadersize
static constexpr uint32_t s_RODheadersize
Definition: MdtRODReadOut.h:29
MdtRODReadOut::m_subdetId
uint16_t m_subdetId
Definition: MdtRODReadOut.h:21
MdtRODReadOut::makeRODId
uint32_t makeRODId(uint16_t subdet, uint16_t mrod)
Definition: MdtRODReadOut.cxx:68
MdtRODReadOut::MdtRODReadOut
MdtRODReadOut()
Definition: MdtRODReadOut.cxx:14
MdtRODReadOut::mrodId
uint16_t mrodId() const
Definition: MdtRODReadOut.h:49
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:88
MdtReadOut.h
MdtRODReadOut::~MdtRODReadOut
~MdtRODReadOut()=default
MdtRODReadOut::m_mrodId
uint16_t m_mrodId
Definition: MdtRODReadOut.h:22
MdtRODReadOut::makeHeaderSize
constexpr uint32_t makeHeaderSize()
Definition: MdtRODReadOut.h:43
MdtRODReadOut::trigtypeId
uint16_t trigtypeId() const
Definition: MdtRODReadOut.h:52
MdtRODReadOut::lvl1Id
uint32_t lvl1Id() const
Definition: MdtRODReadOut.h:50
MdtRODReadOut::m_bcId
uint16_t m_bcId
Definition: MdtRODReadOut.h:24
MdtRODReadOut::bcId
uint16_t bcId() const
Definition: MdtRODReadOut.h:51
MdtRODReadOut::s_RODstart
static constexpr uint32_t s_RODstart
Definition: MdtRODReadOut.h:28
MdtRODReadOut::encodeFooter
static uint32_t * encodeFooter()
Definition: MdtRODReadOut.cxx:76
MdtRODReadOut::decodeFooter
void decodeFooter(const std::vector< uint32_t > &p)
Definition: MdtRODReadOut.cxx:66
MdtRODReadOut::decodeHeader
void decodeHeader(const std::vector< uint32_t > &p)
Definition: MdtRODReadOut.cxx:23
MdtRODReadOut::setZero
void setZero()
Definition: MdtRODReadOut.cxx:78