ATLAS Offline Software
Loading...
Searching...
No Matches
RecEmTauRoI.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2// $Id: RecEmTauRoI.h 782811 2016-11-07 17:20:40Z smh $
3/*
4 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5*/
6/***************************************************************************
7 RecEmTauRoI.h - description
8 -------------------
9 begin : Mon Jan 22 2001
10 email : moyse@heppch.ph.qmw.ac.uk
11***************************************************************************/
12
13
14#ifndef TRIGT1INTERFACES_RECEMTAUROI_H
15#define TRIGT1INTERFACES_RECEMTAUROI_H
16
17// STL include(s):
18#include <map>
19#include <vector>
20
21// Gaudi/Athena include(s):
23
24// Local include(s):
28
29// Forward declaration(s):
30namespace TrigConf {
31 class TriggerThreshold;
32 class L1Menu;
33}
34
35namespace LVL1 {
36
37 class CPRoIDecoder;
38
44 class RecEmTauRoI : public iRecCoordRoI {
45
46 public:
47 // constructor
50 RecEmTauRoI( unsigned int RoIWord,
51 const std::vector< TrigConf::TriggerThreshold* >* caloThresholds );
53 RecEmTauRoI( unsigned int RoIWord,
54 const TrigConf::L1Menu * const l1menu );
55
56 // copy constructor
57 RecEmTauRoI(const RecEmTauRoI &obj);
58
59 // assignment operator
61
62 // destructor
64
66 virtual unsigned int roiWord() const;
67
69 virtual double phi() const;
70
72 virtual double eta() const;
73
75 virtual unsigned int crate() const;
76
78 virtual unsigned int module() const;
79
81 virtual unsigned int fpga() const;
82
84 virtual unsigned int localcoord() const;
85
87 virtual unsigned int et() const;
88
90 virtual unsigned int isolation() const;
91
94 virtual TrigT1CaloDefs::RoIType roiType() const;
95
98 bool passedThreshold( unsigned int threshold_number ) const;
99
102 const CoordinateRange& coord() const;
103
105 std::vector< unsigned int >* thresholdsPassed() const;
106
108 unsigned int thresholdPattern() const;
109
113 unsigned int triggerThreshold( unsigned int thresh ) const;
114
116 unsigned int emIsolation( unsigned int thresh ) const;
117
119 unsigned int hadIsolation( unsigned int thresh ) const ;
120
122 unsigned int hadCoreIsolation( unsigned int thresh ) const;
123
125 unsigned int isolationMask( unsigned int thresh ) const;
126
128 bool isValidThreshold( unsigned int thresh ) const;
129
132 TrigT1CaloDefs::ClusterAlgorithm thresholdType( unsigned int thresh ) const;
133
134 private:
138 unsigned long int m_roiWord { 0 };
139
142
145
149
150 unsigned long int m_thresholdMask { 0 };
151 std::map< int, unsigned int > m_triggerThresholdValue;
152 std::map< int, unsigned int > m_isolationMask;
153 std::map< int, unsigned int > m_emIsolation;
154 std::map< int, unsigned int > m_hadIsolation;
155 std::map< int, unsigned int > m_hadCoreIsolation;
156 std::map< int, TrigT1CaloDefs::ClusterAlgorithm > m_thresholdType;
157
158
159 private:
160 // constructors for Run 1 and Run 2 data
161 void constructRun1( const std::vector< TrigConf::TriggerThreshold* >* caloThresholds );
162
163 void constructRun2( const std::vector< TrigConf::TriggerThreshold* >* caloThresholds );
164
165 void constructRun3( const TrigConf::L1Menu * const l1menu );
166
167 }; // class RecEmTauRoI
168
169} // namespace LVL1
170
173CLASS_DEF( LVL1::RecEmTauRoI, 6257, 1 )
174
175#endif // TRIGT1INTERFACES_RECEMTAUROI_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
A level 1 calorimeter trigger conversion service: returns the Coordinate represented by a RoI word.
CoordinateRange class declaration.
This class defines the reconstructed em/tau hadron ROI.
Definition RecEmTauRoI.h:44
virtual unsigned int isolation() const
returns roi isolation results (Run 2 only)
virtual double eta() const
returns eta coord of ROI
unsigned long int m_roiWord
this is the actual format of the data sent from the LVL1 hardware.
virtual TrigT1CaloDefs::RoIType roiType() const
returns roi type (EM = TrigT1CaloDefs::EMRoIWordType, Tau = TrigT1CaloDefs::TauRoIWordType,...
CoordinateRange m_coordRange
this contains the coordinate range worked out from the RoIWord hardware coord (i.e.
void constructRun3(const TrigConf::L1Menu *const l1menu)
TrigT1CaloDefs::ClusterAlgorithm thresholdType(unsigned int thresh) const
returns the type of the threshold, which is either EMAlg or TauAlg.
void constructRun2(const std::vector< TrigConf::TriggerThreshold * > *caloThresholds)
Content of RoI word different in Run 2.
unsigned int hadIsolation(unsigned int thresh) const
returns the value of the hadronic layer isolation ring for the threshold passed.
void constructRun1(const std::vector< TrigConf::TriggerThreshold * > *caloThresholds)
The "construct" call unpacks the RoIWord and copies information about the passed thresholds from the ...
std::map< int, unsigned int > m_hadIsolation
virtual unsigned int et() const
returns roi ET (Run 2 only)
virtual unsigned int crate() const
returns CP crate number
std::map< int, unsigned int > m_emIsolation
unsigned int triggerThreshold(unsigned int thresh) const
returns the value of the trigger threshold for the threshold passed.
std::map< int, TrigT1CaloDefs::ClusterAlgorithm > m_thresholdType
virtual unsigned int roiWord() const
returns roi word
std::map< int, unsigned int > m_hadCoreIsolation
unsigned int hadCoreIsolation(unsigned int thresh) const
returns the value of the hadronic layer core isolation for the threshold passed.
unsigned long int m_thresholdMask
bool isValidThreshold(unsigned int thresh) const
returns true if thresh is a valid threshold number
unsigned int isolationMask(unsigned int thresh) const
returns the isolation bits required for the threshold passed (Run 2)
virtual unsigned int fpga() const
returns FPGA number
CPRoIDecoder * m_decoder
Used for decoding RoI word.
unsigned int thresholdPattern() const
returns bitmask of passed thresholds
TrigT1CaloDefs::RoIType m_type
Stored properties of the RoI:
bool passedThreshold(unsigned int threshold_number) const
returns TRUE if threshold number threshold_number has been passed by this ROI.
virtual double phi() const
returns phi coord of ROI
virtual unsigned int localcoord() const
returns local coordinate within FPGA
std::vector< unsigned int > * thresholdsPassed() const
returns a vector of thresholds passed.
std::map< int, unsigned int > m_triggerThresholdValue
std::map< int, unsigned int > m_isolationMask
RecEmTauRoI & operator=(const RecEmTauRoI &obj)
unsigned int emIsolation(unsigned int thresh) const
returns the value of the em isolation ring for the threshold passed.
const CoordinateRange & coord() const
returns the CoordinateRange.
virtual unsigned int module() const
returns CPM number
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