|
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::string & hltSeedingNodeName()
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.
SG::WriteHandle< DecisionContainer > createAndStore(const SG::WriteHandleKey< DecisionContainer > &key, const EventContext &ctx)
Creates and right away records the DecisionContainer with the key.
const std::string & initialRecRoIString()
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
@ 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())
bool setObjectLink(const std::string &name, const ElementLink< CONTAINER > &link)
Set the link to an object.
const std::string & initialRoIString()
::StatusCode StatusCode
StatusCode definition for legacy code.
pointer_type ptr()
Dereference the pointer.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
SG::WriteHandle< CONT > createAndStoreNoAux(const SG::WriteHandleKey< CONT > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
Creates and right away records the Container CONT with the key.
Class used to describe composite objects in the HLT.
Header file to be included by clients of the Monitored infrastructure.
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