From ea3e5ebdddde717fd3cd25fed72aa5ce4b3968cb Mon Sep 17 00:00:00 2001 From: Rafal Bielski <rafal.bielski@cern.ch> Date: Thu, 20 Dec 2018 18:47:05 +0100 Subject: [PATCH] Fix decision creating in MTCalibPebHypoAlg It was broken by recent updates in TrigCompositeUtils. This commit updates the alg to the new TrigCompositeUtils interface. --- .../TrigExPartialEB/src/MTCalibPebHypoAlg.cxx | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/HLT/Trigger/TrigControl/TrigExamples/TrigExPartialEB/src/MTCalibPebHypoAlg.cxx b/HLT/Trigger/TrigControl/TrigExamples/TrigExPartialEB/src/MTCalibPebHypoAlg.cxx index 45ff6f53daa..8d9466b1ea9 100644 --- a/HLT/Trigger/TrigControl/TrigExamples/TrigExPartialEB/src/MTCalibPebHypoAlg.cxx +++ b/HLT/Trigger/TrigControl/TrigExamples/TrigExPartialEB/src/MTCalibPebHypoAlg.cxx @@ -5,10 +5,14 @@ #include "MTCalibPebHypoAlg.h" #include "DecisionHandling/HLTIdentifier.h" +// TrigCompositeUtils types used here using TrigCompositeUtils::Decision; using TrigCompositeUtils::DecisionContainer; -using TrigCompositeUtils::DecisionAuxContainer; +using TrigCompositeUtils::DecisionID; using TrigCompositeUtils::DecisionIDContainer; + +// TrigCompositeUtils methods used here +using TrigCompositeUtils::createAndStore; using TrigCompositeUtils::decisionIDs; using TrigCompositeUtils::newDecisionIn; @@ -47,13 +51,12 @@ StatusCode MTCalibPebHypoAlg::finalize() { StatusCode MTCalibPebHypoAlg::execute(const EventContext& eventContext) const { ATH_MSG_DEBUG("Executing " << name()); - // New output - auto decisions = std::make_unique<DecisionContainer>(); - auto aux = std::make_unique<DecisionAuxContainer>(); - decisions->setStore(aux.get()); + // New output decision container + SG::WriteHandle<DecisionContainer> outputHandle = createAndStore(decisionOutput(), eventContext); + DecisionContainer* decisions = outputHandle.ptr(); - // Create new decision - Decision* newd = newDecisionIn(decisions.get()); // DecisionContainer decisions owns the pointer + // Create new decision (DecisionContainer* decisions owns the new object) + Decision* newd = newDecisionIn(decisions, "", eventContext); // Prepare input for hypo tools MTCalibPebHypoTool::Input toolInput(newd, eventContext); @@ -64,16 +67,13 @@ StatusCode MTCalibPebHypoAlg::execute(const EventContext& eventContext) const { ATH_CHECK(tool->decide(toolInput)); } - auto outputHandle = SG::makeHandle(decisionOutput(), eventContext); - CHECK( outputHandle.record(std::move(decisions), std::move(aux) ) ); - ATH_MSG_DEBUG( "Exiting with "<< outputHandle->size() <<" decisions"); for (auto outh: *outputHandle) { - TrigCompositeUtils::DecisionIDContainer objDecisions; - TrigCompositeUtils::decisionIDs(outh, objDecisions); + DecisionIDContainer objDecisions; + decisionIDs(outh, objDecisions); ATH_MSG_DEBUG("Number of positive decisions for this input: " << objDecisions.size()); - for ( TrigCompositeUtils::DecisionID id : objDecisions ) { + for ( DecisionID id : objDecisions ) { ATH_MSG_DEBUG(" --- found new decision " << HLT::Identifier(id)); } } -- GitLab