4#ifndef DECISIONHANDLING_COMBOHYPOTOOLBASE_H
5#define DECISIONHANDLING_COMBOHYPOTOOLBASE_H
36 virtual StatusCode
decide(Combo::LegDecisionsMap& passingLegs,
const EventContext& ctx)
const override;
49 StatusCode
setLegMultiplicity(
const Combo::MultiplicityReqMap& multiplicityRequiredMap);
82 virtual bool executeAlg(
const std::vector<Combo::LegDecision>& combination,
const EventContext& ctx)
const;
88 StatusCode
selectLegs(
const Combo::LegDecisionsMap& IDCombMap, std::vector<std::vector<Combo::LegDecision>>& leg_decisions)
const;
94 void updateLegDecisionsMap(
const std::vector<std::vector<Combo::LegDecision>>& passing_comb, Combo::LegDecisionsMap & passingLegs)
const;
107 "Events processing this many combinations will generate a WARNING message."};
110 "Events processing this many combinations will generate a second WARNING message, and the loop over combinations will be terminated at this point."};
112 Gaudi::Property<bool>
m_modeOR {
this,
"ModeOR",
true,
113 "Accepts based on the logical OR over all calls to executeAlg. If this flag is set to false then the logical AND is required instead."};
116 "Stops processing combinations as soon as a valid combination is found in OR mode, or as soon as an invalid combination is found in AND mode. This is to save CPU."};
xAOD::TrigComposite Decision