ATLAS Offline Software
Loading...
Searching...
No Matches
L1NSWCandData_v1.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef XAODTRIGL1MUON_VERSION_L1NSWCANDDATA_V1_H
5#define XAODTRIGL1MUON_VERSION_L1NSWCANDDATA_V1_H
6
7// System include(s):
8#include <cstdint>
9#include <vector>
10#include <algorithm>
11#include <iostream>
12
14
15namespace xAOD {
16
19
21
22 public:
23
24 L1NSWCandData_v1() = default;
25 ~L1NSWCandData_v1() = default;
26
28
33 uint16_t l1Bcid() const; // 12 bits, bit order [11:0]
34
39 uint8_t l1NSegments() const; // 3 bits, bit order [14:12], range [0:4]
40
45 bool l1Overflow() const; // 1 bit, bit order [15]
46
51 uint16_t fiberID() const; // 4 bits, bit order [19:16]
52
57 uint16_t boardID() const; // 7 bits, bit order [26:20]
58
60
65
69 uint16_t segEtaIndex() const;
70
74 uint16_t segPhiIndex() const;
75
80
84 uint8_t segQuality() const;
85
90 float segEta() const;
91
96 float segPhi() const;
97
99
105
111
116 void setL1Overflow(bool ovf);
117
122 void setFiberID(uint16_t fiber);
123
128 void setBoardID(uint16_t board);
129
135
143 void setSegment(uint16_t etaIndex, uint16_t phiIndex, uint8_t deltaThetaIndex, uint8_t quality);
144
149 friend std::ostream& operator<<(std::ostream& os, const L1NSWCandData_v1& obj);
150
151 };
152
153} // namespace xAOD
154
155#include "xAODCore/BaseInfo.h"
157
158#endif // XAODTRIGL1MUON_VERSION_L1NSWCANDDATA_V1_H
Base class for elements of a container that can have aux data.
#define SG_BASE(D, B)
Declare that class D derives from class B.
Data class describing the L0 muon candidates from NSW-TP to TGC SL.
uint16_t fiberID() const
Retrieve the fiber id.
uint8_t segQuality() const
Retrieve the quality flag of the segment.
uint32_t l1SegmentWord() const
Segment.
uint16_t segEtaIndex() const
Retrieve the eta index of the segment.
uint16_t l1Bcid() const
Getters.
void setFiberID(uint16_t fiber)
Set the fiber id.
void setL1NSegments(uint8_t nseg)
Set the total number of segments sent from NSW-TP to Sector Logic.
uint16_t boardID() const
Retrieve the board id.
uint8_t l1NSegments() const
Retrieve the number of segments sent from NSW-TP to Sector Logic.
float segPhi() const
Retrieve the decoded physical phi coordinate of the segment.
float segEta() const
Retrieve the decoded physical eta coordinate of the segment.
void setL1Overflow(bool ovf)
Set the segment total capacity overflow state flag.
bool l1Overflow() const
Check if the segment candidate limit has been exceeded.
void setSegment(uint16_t etaIndex, uint16_t phiIndex, uint8_t deltaThetaIndex, uint8_t quality)
Pack and set the segment from its decoded fields.
friend std::ostream & operator<<(std::ostream &os, const L1NSWCandData_v1 &obj)
Produce a formatted string representation of the candidates.
void setL1SegmentWord(uint32_t word)
Set the raw packed segment word.
uint8_t segDeltaThetaIndex() const
Retrieve the delta theta index of the segment.
void setBoardID(uint16_t board)
Set the board id.
uint16_t segPhiIndex() const
Retrieve the phi index of the segment.
void setL1Bcid(uint16_t bcid)
Setters.
AuxElement(SG::AuxVectorData *container, size_t index)
Base class for elements of a container that can have aux data.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
setEventNumber setTimeStamp bcid
setWord1 uint16_t
setEventNumber uint32_t