ATLAS Offline Software
Loading...
Searching...
No Matches
RPCCandData.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef L0MuonInterface_RPCCANDDATA_H
5#define L0MuonInterface_RPCCANDDATA_H
6
8#include <array>
9
10namespace L0Muon
11{
12
13 class RPCCandData : public ICandData
14 {
15 public:
16 // default constructor
17 RPCCandData() = default;
18 ~RPCCandData() = default;
19
20 RPCCandData(uint16_t subdetectorId, uint16_t sectorId, uint16_t bcTag);
22 enum class Quality
23 {
27 };
28
29 Quality quality() const { return m_quality; }
30 float zPos(int index) const;
31 uint8_t coinType() const;
32
34 void setZPos(float zPos, int index);
35 void setCoinType(uint8_t coinType);
37 static constexpr float s_zPosRange = 12500.0;
39 static constexpr uint8_t s_coinTypeRange = 6;
41 static constexpr uint16_t s_zPosBitRange = 0xfff;
43 static constexpr uint8_t s_coinTypeBitRange = 0x7;
44
45 private:
46
50 std::array<uint16_t,4> m_zPos{0, 0, 0, 0};
51
53 uint8_t m_coinType{0};
54
55 };
56
57} // namespace L0Muon
58
59#endif // L0MuonInterface_RPCCANDDATA_H
uint16_t bcTag() const
Definition ICandData.h:25
uint16_t subdetectorId() const
Definition ICandData.h:23
ICandData(uint16_t subdetectorId, uint16_t sectorId, uint16_t bcTag)
Definition ICandData.h:17
uint16_t sectorId() const
Definition ICandData.h:24
uint8_t coinType() const
std::array< uint16_t, 4 > m_zPos
Z positions of the RPC hits.
Definition RPCCandData.h:50
~RPCCandData()=default
static constexpr uint8_t s_coinTypeRange
range of the coincidence type value
Definition RPCCandData.h:39
Quality quality() const
Definition RPCCandData.h:29
static constexpr uint8_t s_coinTypeBitRange
3 bits for the coincidence type
Definition RPCCandData.h:43
Quality
quality of the candidate
Definition RPCCandData.h:23
Quality m_quality
quality of the candidate
Definition RPCCandData.h:48
void setQuality(Quality quality)
Definition RPCCandData.h:33
uint8_t m_coinType
coincidence type
Definition RPCCandData.h:53
void setZPos(float zPos, int index)
static constexpr float s_zPosRange
range of the RPC hits z positions
Definition RPCCandData.h:37
static constexpr uint16_t s_zPosBitRange
12 bits for z position
Definition RPCCandData.h:41
float zPos(int index) const
void setCoinType(uint8_t coinType)
Definition index.py:1