ATLAS Offline Software
Loading...
Searching...
No Matches
RecJetRoI.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2// Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3/***************************************************************************
4 RecJetRoI.h - description
5 -------------------
6 begin : Mon Jan 22 2001
7 email : moyse@heppch.ph.qmw.ac.uk
8***************************************************************************/
9
10#ifndef TRIGT1INTERFACES_RECJETTROI_H
11#define TRIGT1INTERFACES_RECJETTROI_H
12
13// STL include(s):
14#include <map>
15
16// Gaudi/Athena include(s):
18
19// Local include(s):
23
24// Forward declaration(s):
25namespace TrigConf {
26 class TriggerThreshold;
27 class L1Menu;
28}
29
30namespace LVL1 {
31
32 class JEPRoIDecoder;
33
39 class RecJetRoI: public iRecCoordRoI {
40
41 public:
42 // constructor
44 // constructor using Run 1+2 configuration
45 RecJetRoI( unsigned int RoIWord,
46 const std::vector< TrigConf::TriggerThreshold* >* caloThresholds );
48 RecJetRoI( unsigned int RoIWord,
49 const TrigConf::L1Menu * const l1menu );
50
51 //copy constructor
52 RecJetRoI( const RecJetRoI &obj );
53
54 //assignment operator
55 RecJetRoI& operator=(RecJetRoI const &obj);
56
57 // destructor
58 ~RecJetRoI();
59
61 virtual unsigned int roiWord() const;
62
64 virtual double phi() const;
65
67 virtual double eta() const;
68
70 virtual unsigned int crate() const;
71
73 virtual unsigned int module() const;
74
76 virtual unsigned int frame() const;
77
79 virtual unsigned int localcoord() const;
80
83 virtual unsigned int etLarge() const;
84
88 virtual unsigned int etSmall() const;
89
91 bool passedThreshold( unsigned int thresholdNumber ) const;
92
94 bool passedFwdThreshold( unsigned int thresholdNumber ) const;
95
100 const CoordinateRange& coord() const;
101
103 std::vector<unsigned int> thresholdsPassed() const;
104
108 unsigned int triggerThreshold( unsigned int thresh ) const;
109
114 unsigned int windowSize( unsigned int thresh ) const;
115
117 unsigned int thresholdPattern() const;
118
120 bool isValidThreshold( unsigned int thresh ) const;
121
126 bool isForwardJet() const;
127
128 private:
131 unsigned long int m_roiWord { 0 };
132
135
137 int m_version { 0 };
138
143
145 unsigned long int m_thresholdMask { 0 };
146
147 std::map< unsigned int, unsigned int > m_triggerThresholdValue; //< {threshold number, threshold value}
148 std::map< unsigned int, unsigned int > m_windowSize; //< {threshold number, window size}
149
150 private:
151 // Constructor for Run 1 RoI format
152 void constructRun1( const std::vector< TrigConf::TriggerThreshold* >* caloThresholds );
153
154 // Constructor for Run 2 RoI format
155 void constructRun2( const std::vector< TrigConf::TriggerThreshold* >* caloThresholds );
156
157 // Constructor for Run 3 Legacy RoI format from new config
158 void constructRun3(const TrigConf::L1Menu * const l1menu);
159
160 }; // class RecJetRoI
161
162} // namespace LVL1
163
166CLASS_DEF( LVL1::RecJetRoI, 6259, 1 )
167
168#endif // TRIGT1INTERFACES_RECJETTROI_H
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
An STL vector of pointers that by default owns its pointed-to elements.
Derived DataVector<T>.
Definition DataVector.h:795
CoordinateRange class declaration.
A level 1 calorimeter trigger conversion service: returns the Coordinate represented by a RoI word.
This class defines the reconstructed em/tau hadron ROI.
Definition RecJetRoI.h:39
bool passedFwdThreshold(unsigned int thresholdNumber) const
Same for forward jets.
unsigned int windowSize(unsigned int thresh) const
returns the size of the window.
void constructRun2(const std::vector< TrigConf::TriggerThreshold * > *caloThresholds)
construct call for Run 2 Jet RoIs
int m_version
Store the RoI format version.
Definition RecJetRoI.h:137
virtual unsigned int frame() const
returns RoI frame number
bool isValidThreshold(unsigned int thresh) const
returns true if thresh is a valid threshold number
void constructRun1(const std::vector< TrigConf::TriggerThreshold * > *caloThresholds)
The "construct" calls unpack the RoIWord and copy information about the passed thresholds from the ve...
Definition RecJetRoI.cxx:90
virtual unsigned int etLarge() const
returns roi ET in larger cluster.
virtual unsigned int etSmall() const
returns roi ET in smaller cluster.
virtual unsigned int module() const
returns JEM number
unsigned int triggerThreshold(unsigned int thresh) const
returns the value of the trigger threshold for the threshold passed.
void constructRun3(const TrigConf::L1Menu *const l1menu)
CoordinateRange m_coordRange
this contains the coordinate range worked out from the RoIWord hardware coord (i.e.
Definition RecJetRoI.h:142
virtual double eta() const
returns eta coord of ROI
virtual unsigned int crate() const
returns JEP crate number
std::vector< unsigned int > thresholdsPassed() const
returns a vector of thresholds passed.
std::map< unsigned int, unsigned int > m_triggerThresholdValue
Definition RecJetRoI.h:147
virtual unsigned int roiWord() const
returns roi word
virtual double phi() const
returns phi coord of ROI
bool passedThreshold(unsigned int thresholdNumber) const
returns TRUE if threshold number threshold_number has been passed by this ROI.
JEPRoIDecoder * m_decoder
Used for decoding RoI word.
Definition RecJetRoI.h:134
virtual unsigned int localcoord() const
returns local coordinate within frame
std::map< unsigned int, unsigned int > m_windowSize
Definition RecJetRoI.h:148
unsigned int thresholdPattern() const
returns bitmask of passed thresholds
unsigned long int m_thresholdMask
Information on trigger thresholds passed by RoI.
Definition RecJetRoI.h:145
unsigned long int m_roiWord
this is the actual format of the data sent from the LVL1 hardware.
Definition RecJetRoI.h:131
const CoordinateRange & coord() const
returns the CoordinateRange.
bool isForwardJet() const
returns true if the RoI is a forward jet RoI.
RecJetRoI & operator=(RecJetRoI const &obj)
Definition RecJetRoI.cxx:65
L1 menu configuration.
Definition L1Menu.h:28
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Forward iterator to traverse the main components of the trigger configuration.
Definition Config.h:22