|
ATLAS Offline Software
|
Helper class for unpacking the xAOD trigger decision/navigation.
More...
#include <DecisionUnpackerStandalone.h>
|
| DecisionUnpackerStandalone (const SG::ReadHandleKey< xAOD::TrigDecision > *, const SG::ReadHandleKey< xAOD::TrigNavigation > *navikey) |
| Constructor with arguments. More...
|
|
virtual | ~DecisionUnpackerStandalone () |
| Destructor. More...
|
|
| DecisionUnpackerStandalone (const DecisionUnpackerStandalone &)=delete |
|
DecisionUnpackerStandalone & | operator= (const DecisionUnpackerStandalone &)=delete |
|
virtual StatusCode | unpackDecision (const EventContext &ctx, std::unordered_map< std::string, const LVL1CTP::Lvl1Item * > &itemsByName, std::map< CTPID, LVL1CTP::Lvl1Item > &itemsCache, std::unordered_map< std::string, const HLT::Chain * > &l2chainsByName, std::map< CHAIN_COUNTER, HLT::Chain > &l2chainsCache, std::unordered_map< std::string, const HLT::Chain * > &efchainsByName, std::map< CHAIN_COUNTER, HLT::Chain > &efchainsCache, char &bgCode, bool unpackHLT) const override |
| Function unpacking the payload of the trigger decision. More...
|
|
virtual StatusCode | unpackNavigation (const EventContext &ctx, HLT::TrigNavStructure *nav) const override |
| Function unpacking the payload of the trigger navigation. More...
|
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
StatusCode | unpackItems (const xAOD::TrigDecision &trigDec, std::map< CTPID, LVL1CTP::Lvl1Item > &itemsCache, std::unordered_map< std::string, const LVL1CTP::Lvl1Item * > &itemsByName) const |
| Function unpacking the decision of the LVL1 items. More...
|
|
StatusCode | unpackChains (std::map< unsigned, HLT::Chain > &cache, const std::vector< uint32_t > &raw, const std::vector< uint32_t > &passedThrough, const std::vector< uint32_t > &prescaled, const std::vector< uint32_t > &resurrected, std::unordered_map< std::string, const HLT::Chain * > &output) const |
| Function unpacking the decision of the HLT chains. More...
|
|
Helper class for unpacking the xAOD trigger decision/navigation.
Definition at line 41 of file DecisionUnpackerStandalone.h.
◆ CHAIN_COUNTER
◆ CTPID
◆ DecisionUnpackerStandalone() [1/2]
◆ ~DecisionUnpackerStandalone()
Trig::DecisionUnpackerStandalone::~DecisionUnpackerStandalone |
( |
| ) |
|
|
virtual |
◆ DecisionUnpackerStandalone() [2/2]
◆ msg() [1/2]
MsgStream& Trig::Logger::msg |
( |
| ) |
const |
|
inlineinherited |
◆ msg() [2/2]
MsgStream& Trig::Logger::msg |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
◆ msgLvl()
bool Trig::Logger::msgLvl |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
◆ operator=()
◆ unpackChains()
StatusCode Trig::DecisionUnpackerStandalone::unpackChains |
( |
std::map< unsigned, HLT::Chain > & |
cache, |
|
|
const std::vector< uint32_t > & |
raw, |
|
|
const std::vector< uint32_t > & |
passedThrough, |
|
|
const std::vector< uint32_t > & |
prescaled, |
|
|
const std::vector< uint32_t > & |
resurrected, |
|
|
std::unordered_map< std::string, const HLT::Chain * > & |
output |
|
) |
| const |
|
private |
◆ unpackDecision()
StatusCode Trig::DecisionUnpackerStandalone::unpackDecision |
( |
const EventContext & |
ctx, |
|
|
std::unordered_map< std::string, const LVL1CTP::Lvl1Item * > & |
itemsByName, |
|
|
std::map< CTPID, LVL1CTP::Lvl1Item > & |
itemsCache, |
|
|
std::unordered_map< std::string, const HLT::Chain * > & |
l2chainsByName, |
|
|
std::map< CHAIN_COUNTER, HLT::Chain > & |
l2chainsCache, |
|
|
std::unordered_map< std::string, const HLT::Chain * > & |
efchainsByName, |
|
|
std::map< CHAIN_COUNTER, HLT::Chain > & |
efchainsCache, |
|
|
char & |
bgCode, |
|
|
bool |
unpackHLT |
|
) |
| const |
|
overridevirtual |
Function unpacking the payload of the trigger decision.
Implements Trig::IDecisionUnpacker.
Definition at line 49 of file DecisionUnpackerStandalone.cxx.
65 return StatusCode::FAILURE;
75 if(
unpackItems( *xaoddec, itemsCache,itemsByName ).isFailure() ) {
82 return StatusCode::SUCCESS;
86 l2chainsByName.clear();
92 l2chainsByName ).isFailure() ) {
97 efchainsByName.clear();
103 efchainsByName ).isFailure() ) {
107 return StatusCode::SUCCESS;
◆ unpackItems()
Function unpacking the decision of the LVL1 items.
Definition at line 162 of file DecisionUnpackerStandalone.cxx.
166 itemsByName.reserve( itemsByName.size() + itemsCache.size() );
167 for(
auto& [ctpid,
item] : itemsCache ) {
174 <<
" ap: " << passAP <<
" av: "
178 passBP, passAP, passAV,
179 item.prescaleFactor());
180 item = std::move (itemNew);
184 return StatusCode::SUCCESS;
◆ unpackNavigation()
Function unpacking the payload of the trigger navigation.
Implements Trig::IDecisionUnpacker.
Definition at line 111 of file DecisionUnpackerStandalone.cxx.
116 return StatusCode::SUCCESS;
122 if( ! serializedNav ) {
123 [[maybe_unused]]
static std::atomic<bool> warningPrinted =
126 return StatusCode::FAILURE;
134 bool navi_nonempty = !(serializedNav->
serialized().empty());
136 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS)
141 return StatusCode::FAILURE;
151 if ( ! unpacking_status ) {
158 return StatusCode::SUCCESS;
◆ ATLAS_THREAD_SAFE
asg::AsgTool* s_logger Trig::Logger::ATLAS_THREAD_SAFE {nullptr} |
|
inlinestaticprivateinherited |
◆ m_deckey
◆ m_navikey
The documentation for this class was generated from the following files:
const std::vector< uint32_t > & efPrescaled() const
Get the EF prescaled bits.
const std::vector< uint32_t > & efResurrected() const
Get the EF resurrected bits.
virtual bool deserialize(const std::vector< uint32_t > &)=0
const SG::ReadHandleKey< xAOD::TrigNavigation > * m_navikey
Key of the trigger navigation object in the event.
bool deserialize(const std::vector< uint32_t > &input)
const std::vector< uint32_t > & tav() const
Get the Trigger After Veto bits.
virtual void reset(bool inFinalize=false)
resets all the navigation, goes to the factory and asks to withdraw all produced objects
#define ATH_MSG_VERBOSE(x)
const std::vector< unsigned int > & serialized() const
expose the navigation information (in serialized form)
virtual void reset(bool inFinalize=false)
resets all the navigation, goes to the factory and asks to withdraw all produced objects
const std::vector< uint32_t > & lvl2PassedThrough() const
Get the LVL2 pass-through bits.
The NavigationCore class, adds on top of the TrigNavStructure the EDM read-only handling.
StatusCode unpackItems(const xAOD::TrigDecision &trigDec, std::map< CTPID, LVL1CTP::Lvl1Item > &itemsCache, std::unordered_map< std::string, const LVL1CTP::Lvl1Item * > &itemsByName) const
Function unpacking the decision of the LVL1 items.
const SG::ReadHandleKey< xAOD::TrigDecision > * m_deckey
Key of the trigger decision object in the event.
const std::vector< uint32_t > & efPassedThrough() const
Get the EF pass-through bits.
const std::vector< uint32_t > & efPassedRaw() const
Get the EF passed-raw bits.
bool get32BitDecision(unsigned int index, const std::vector< uint32_t > &vec)
const std::vector< uint32_t > & tap() const
Get the Trigger After Prescale bits.
char bgCode() const
Get the bunch group code of the current event.
const std::vector< uint32_t > & lvl2Prescaled() const
Get the LVL2 prescaled bits.
#define ATH_MSG_WARNING(x)
Interface to the raw trigger navigation information of the event.
const std::vector< uint32_t > & tbp() const
Get the Trigger Before Prescale bits.
const std::vector< uint32_t > & lvl2Resurrected() const
Get the LVL2 resurrected bits.
Interface to the raw trigger decision information of the event.
const std::vector< uint32_t > & lvl2PassedRaw() const
Get the LVL2 passed-raw bits.
StatusCode unpackChains(std::map< unsigned, HLT::Chain > &cache, const std::vector< uint32_t > &raw, const std::vector< uint32_t > &passedThrough, const std::vector< uint32_t > &prescaled, const std::vector< uint32_t > &resurrected, std::unordered_map< std::string, const HLT::Chain * > &output) const
Function unpacking the decision of the HLT chains.