 |
ATLAS Offline Software
|
Go to the documentation of this file.
12 const std::string&
name,
21 return StatusCode::SUCCESS;
27 return name.find(
'J') == 0 or
name.find(
"JF") == 0 or
name.find(
"JB") == 0;
29 return StatusCode::SUCCESS;
45 std::optional<ThrVecRef> jetThresholds;
50 constexpr
static unsigned int s_maxJetTOBs{4};
51 std::unordered_map<unsigned int, std::unordered_map<unsigned int, unsigned int>> tobCounts;
55 for (
const auto & roi : jetFragment.roIVec() ) {
58 ATH_MSG_DEBUG(
"Skipping RoI as it is not JET threshold " << roIWord <<
" Type "<< roi.roIType() );
65 overflow = (++tobCounts[crate][
module] > s_maxJetTOBs);
68 recRoIs->push_back( std::make_unique<LVL1::RecJetRoI>(roIWord, l1Menu.
cptr()) );
71 trigRoIs->
push_back( std::make_unique<TrigRoiDescriptor>(
76 ATH_MSG_DEBUG(
"RoI word: 0x" << MSG::hex << std::setw( 8 ) << roIWord << MSG::dec );
81 std::vector<unsigned> passedThresholdIDs;
83 for (
const auto&
th : jetThresholds.value().get()) {
92 return std::vector<TrigCompositeUtils::DecisionID>(
ids.begin(),
ids.end() ); }() );
96 decision->
setDetail(
"thresholds", passedThresholdIDs );
108 for (
Decision* decision : *decisionOutput) {
109 decision->setDetail(
"overflow",
static_cast<char>(overflow));
113 for (
auto roi: *trigRoIs ) {
114 ATH_MSG_DEBUG(
"RoI Eta: " << roi->eta() <<
" Phi: " << roi->phi() <<
" RoIWord: " << roi->roiWord() );
128 return StatusCode::SUCCESS;
bool setDetail(const std::string &name, const TYPE &value)
Set an TYPE detail on the object.
Group
Properties of a chain group.
This class defines the reconstructed em/tau hadron ROI.
unsigned int crate(const unsigned int word) const
Return hardware coordinates.
const_pointer_type cptr()
Dereference the pointer.
Class holding the LVL1 RoIB result build by the RoIBuilder.
const std::vector< JetEnergyResult > & jetEnergyResult() const
Gets the jet/energy part of the L1 RDO.
Decision * newDecisionIn(DecisionContainer *dc, const std::string &name)
Helper method to create a Decision object, place it in the container and return a pointer to it.
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
SG::WriteHandle< DecisionContainer > createAndStore(const SG::WriteHandleKey< DecisionContainer > &key, const EventContext &ctx)
Creates and right away records the DecisionContainer with the key.
@ u
Enums for curvilinear frames.
ValuesCollection< T > Collection(std::string name, const T &collection)
Declare a monitored (double-convertible) collection.
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
const std::string & initialRecRoIString()
bool setObjectLink(const std::string &name, const ElementLink< CONTAINER > &link)
Set the link to an object.
::StatusCode StatusCode
StatusCode definition for legacy code.
pointer_type ptr()
Dereference the pointer.
SG::WriteHandle< CONT > createAndStoreNoAux(const SG::WriteHandleKey< CONT > &key, const EventContext &ctx)
Creates and right away records the Container CONT with the key.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Class used to describe composite objects in the HLT.
const std::string & initialRoIString()
Header file to be included by clients of the Monitored infrastructure.
const std::string & hltSeedingNodeName()
virtual bool isValid() override final
Can the handle be successfully dereferenced?
bool passedThreshold(unsigned int thresholdNumber) const
returns TRUE if threshold number threshold_number has been passed by this ROI.
unsigned int module(const unsigned int word) const
Extract module number from Jet RoI word.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
std::set< DecisionID > DecisionIDContainer
#define ATH_MSG_WARNING(x)
virtual double phi() const override final
Methods to retrieve data members.
void decisionIDs(const Decision *d, DecisionIDContainer &destination)
Extracts DecisionIDs stored in the Decision object.
std::set< HLT::Identifier > IDSet
virtual double eta() const override final
virtual double eta() const
returns eta coord of ROI
Declare a monitored scalar variable.
size_type size() const noexcept
Returns the number of elements in the collection.
virtual double phi() const
returns phi coord of ROI