ATLAS Offline Software
DecisionUnpackerStandalone.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef TRIGDECISIONTOOL_DECISIONUNPACKERSTANDALONE_H
8 #define TRIGDECISIONTOOL_DECISIONUNPACKERSTANDALONE_H
9 
10 // Trigger configuration include(s):
14 
15 // Local include(s):
18 
19 // xAOD include(s):
22 
24 
25 // Forward declaration(s):
26 namespace HLT {
27  class TrigNavStructure;
28 }
29 
30 
31 namespace TrigConf {
32  class ITrigConfigTool;
33 }
34 
35 namespace Trig {
36 
37  // Forward declaration(s):
38  class DecisionObjectHandleStandalone;
39 
42 
43  public:
49 
52 
54  virtual StatusCode
55  unpackDecision( const EventContext& ctx,
56  std::unordered_map< std::string, const LVL1CTP::Lvl1Item* >& itemsByName,
57  std::map< CTPID, LVL1CTP::Lvl1Item >& itemsCache,
58  std::unordered_map< std::string, const HLT::Chain* >& l2chainsByName,
59  std::map< CHAIN_COUNTER, HLT::Chain >& l2chainsCache,
60  std::unordered_map< std::string, const HLT::Chain* >& efchainsByName,
61  std::map< CHAIN_COUNTER, HLT::Chain >& efchainsCache,
62  char& bgCode,
63  bool unpackHLT ) const override;
65  virtual StatusCode unpackNavigation( const EventContext& ctx,
66  HLT::TrigNavStructure* nav ) const override;
67 
68  private:
71  std::map< CTPID, LVL1CTP::Lvl1Item >& itemsCache,
72  std::unordered_map< std::string,
73  const LVL1CTP::Lvl1Item*>& itemsByName ) const;
74 
76  StatusCode unpackChains( std::map< unsigned, HLT::Chain >& cache,
77  const std::vector< uint32_t >& raw,
78  const std::vector< uint32_t >& passedThrough,
79  const std::vector< uint32_t >& prescaled,
80  const std::vector< uint32_t >& resurrected,
81  std::unordered_map< std::string,
82  const HLT::Chain* >& output ) const;
83 
88 
89  }; // class DecisionUnpackerStandalone
90 
91 } // namespace Trig
92 
93 #endif // TRIGDECISIONTOOL_DECISIONUNPACKERSTANDALONE_H
CTPConfig.h
Trig::DecisionUnpackerStandalone
Helper class for unpacking the xAOD trigger decision/navigation.
Definition: DecisionUnpackerStandalone.h:41
TrigDecision.h
Trig
The common trigger namespace for trigger analysis tools.
Definition: CaloTowerVecMon.h:44
Trig::DecisionUnpackerStandalone::m_navikey
const SG::ReadHandleKey< xAOD::TrigNavigation > * m_navikey
Key of the trigger navigation object in the event.
Definition: DecisionUnpackerStandalone.h:87
Trig::IDecisionUnpacker
Definition: IDecisionUnpacker.h:30
xAOD::bgCode
bgCode
Definition: TrigDecision_v1.cxx:39
Trig::Logger
Logging adaptor to provide interfaces required for ATH_MSG macros.
Definition: Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/Logger.h:24
HLTChain.h
Trig::DecisionUnpackerStandalone::unpackDecision
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.
Definition: DecisionUnpackerStandalone.cxx:50
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
HLT::TrigNavStructure
Definition: TrigNavStructure.h:40
TrigNavigation.h
Lvl1Item.h
TrigConf
Forward iterator to traverse the main components of the trigger configuration.
Definition: Config.h:22
LVL1CTP::Lvl1Item
Definition: Lvl1Item.h:37
Trig::DecisionUnpackerStandalone::unpackItems
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.
Definition: DecisionUnpackerStandalone.cxx:163
Trig::DecisionUnpackerStandalone::m_deckey
const SG::ReadHandleKey< xAOD::TrigDecision > * m_deckey
Key of the trigger decision object in the event.
Definition: DecisionUnpackerStandalone.h:85
Trig::DecisionUnpackerStandalone::~DecisionUnpackerStandalone
virtual ~DecisionUnpackerStandalone()
Destructor.
Definition: DecisionUnpackerStandalone.cxx:45
HLT
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
Definition: HLTResultReader.h:26
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
Trig::DecisionUnpackerStandalone::DecisionUnpackerStandalone
DecisionUnpackerStandalone(const SG::ReadHandleKey< xAOD::TrigDecision > *, const SG::ReadHandleKey< xAOD::TrigNavigation > *navikey)
Constructor with arguments.
Definition: DecisionUnpackerStandalone.cxx:39
Logger.h
Trig::DecisionUnpackerStandalone::operator=
DecisionUnpackerStandalone & operator=(const DecisionUnpackerStandalone &)=delete
Trig::DecisionUnpackerStandalone::DecisionUnpackerStandalone
DecisionUnpackerStandalone(const DecisionUnpackerStandalone &)=delete
HLT::Chain
Definition: Chain.h:64
Trig::DecisionUnpackerStandalone::unpackNavigation
virtual StatusCode unpackNavigation(const EventContext &ctx, HLT::TrigNavStructure *nav) const override
Function unpacking the payload of the trigger navigation.
Definition: DecisionUnpackerStandalone.cxx:111
merge.output
output
Definition: merge.py:17
IDecisionUnpacker.h
D3PD::TrigDefs::passedThrough
@ passedThrough
The passthrough decision for the chain.
Definition: InnerDetector/InDetMonitoring/InDetGlobalMonitoring/macros/EnhancedPrimaryVertexMonitoring/TrigD3PD/Conditions.h:76
xAOD::TrigDecision_v1
Interface to the raw trigger decision information of the event.
Definition: TrigDecision_v1.h:44
Trig::DecisionUnpackerStandalone::unpackChains
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.
Definition: DecisionUnpackerStandalone.cxx:190