4#ifndef TRIGOUTPUTHANDLING_DECISIONSUMMARYMAKERALG_H
5#define TRIGOUTPUTHANDLING_DECISIONSUMMARYMAKERALG_H
15#include <unordered_map>
29 virtual StatusCode
start()
override;
30 virtual StatusCode
execute(
const EventContext& context)
const override;
31 virtual StatusCode
finalize()
override;
38 "Location of final decision" };
41 "Final stage of all decisions" };
44 "Set of streams accepted in the event"};
47 "Chains status after L1 and prescaling" };
52 ToolHandle<IPrescalingTool>
m_prescaler{
this,
"Prescaler",
"PrescalingTool/PrescalingTool",
53 "Prescaling tool used to determine express stream prescale decisions"};
55 ToolHandle<GenericMonitoringTool>
m_monTool {
this,
"MonTool",
"",
58 Gaudi::Property< std::map< std::string, std::vector<std::string> > >
m_lastStepForChain{
this,
"FinalStepDecisions", {},
59 "The map of chain name to names of the collections in which the final decision is found" };
62 "Print warnings from RoI update monitoring if the difference between initial and final RoI is large"};
65 "Enables chain-passed filter. This will cause the downstream EDMCreator to not run if no chains pass, saving CPU in rejected events. "
66 "Cannot be used in jobs producing RDO output."};
Header file to be included by clients of the Monitored infrastructure.
An algorithm that can be simultaneously executed in multiple threads.
Gaudi::Property< bool > m_warnOnLargeRoIUpdates
SG::WriteHandleKey< TrigCompositeUtils::DecisionContainer > m_summaryKey
Gaudi::Property< bool > m_setFilterStatus
SG::WriteHandleKey< std::vector< std::string > > m_streamsSummaryKey
virtual StatusCode initialize() override
void monitorRoIs(const TrigCompositeUtils::Decision *terminusNode) const
Monitor RoI updates between initial and final RoI.
ToolHandle< IPrescalingTool > m_prescaler
std::unordered_map< TrigCompositeUtils::DecisionID, std::vector< std::string > > m_chainToStreamsMap
Chain to streams map filled from the HLT Menu JSON.
virtual ~DecisionSummaryMakerAlg() override=default
virtual StatusCode start() override
DecisionSummaryMakerAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< std::map< std::string, std::vector< std::string > > > m_lastStepForChain
virtual StatusCode execute(const EventContext &context) const override
ToolHandle< GenericMonitoringTool > m_monTool
SG::ReadHandleKey< xAOD::TrigCompositeContainer > m_hltSeedingSummaryKey
virtual StatusCode finalize() override
std::map< std::string, TrigCompositeUtils::DecisionIDContainer > m_collectionFilter
SG::ReadHandleKeyArray< TrigCompositeUtils::DecisionContainer > m_finalDecisionKeys
SG::ReadHandleKey< TrigConf::HLTMenu > m_hltMenuKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
HandleKeyArray< ReadHandle< T >, ReadHandleKey< T >, Gaudi::DataHandle::Reader > ReadHandleKeyArray
xAOD::TrigComposite Decision