Skip to content
Snippets Groups Projects

[ATR-22697] Add ModeOR and EnableOverride flags to ComboHypoTool base

Merged [ATR-22697] Add ModeOR and EnableOverride flags to ComboHypoTool base
Merged Tim Martin requested to merge tamartin/athena:comboHypoANDmode into master
Files
3
@@ -28,6 +28,8 @@ class ComboHypoToolBase : public extends<AthAlgTool, IComboHypoTool> {
@@ -28,6 +28,8 @@ class ComboHypoToolBase : public extends<AthAlgTool, IComboHypoTool> {
public:
public:
ComboHypoToolBase(const std::string& type, const std::string& name, const IInterface* parent);
ComboHypoToolBase(const std::string& type, const std::string& name, const IInterface* parent);
 
virtual StatusCode initialize() override;
 
/**
/**
* @brief retrieves the decisions associated to this decId, make their combinations and apply the algorithm
* @brief retrieves the decisions associated to this decId, make their combinations and apply the algorithm
* @param[in] LegDecisionsMap that lists all the passing decisions, to be updated by the tool depending on the outcome of executeAlg
* @param[in] LegDecisionsMap that lists all the passing decisions, to be updated by the tool depending on the outcome of executeAlg
@@ -108,6 +110,12 @@ public:
@@ -108,6 +110,12 @@ public:
Gaudi::Property<size_t> m_combinationsThresholdBreak {this, "CombinationsThresholdBreak", 10000,
Gaudi::Property<size_t> m_combinationsThresholdBreak {this, "CombinationsThresholdBreak", 10000,
"Events processing this many combinations will generate a second WARNING message, and the loop over combinations will be terminated at this point."};
"Events processing this many combinations will generate a second WARNING message, and the loop over combinations will be terminated at this point."};
 
 
Gaudi::Property<bool> m_modeOR {this, "ModeOR", true,
 
"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."};
 
 
Gaudi::Property<bool> m_enableOverride {this, "EnableOverride", false,
 
"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."};
// TODO - add optional write out of the data stored in passingCombinations in the decide function.
// TODO - add optional write out of the data stored in passingCombinations in the decide function.
Loading