10#include <tracking/trackFindingCDC/findlets/base/Findlet.h>
12#include <framework/core/ModuleParamList.h>
13#include <tracking/trackFindingCDC/utilities/WeightedRelation.h>
14#include <tracking/trackFindingCDC/utilities/StringManipulation.h>
26 namespace TrackFindingCDC {
41 template <
class ACollectorItem,
class ACollectionItem>
43 public Findlet<WeightedRelation<ACollectorItem, const ACollectionItem>> {
61 void apply(std::vector<WeightedRelationItem>& weightedRelations)
override
64 return std::isnan(relationItem.getWeight()) or relationItem.getWeight() <
m_param_cutValue;
68 weightedRelations.erase(std::remove_if(weightedRelations.begin(),
69 weightedRelations.end(),
71 weightedRelations.end());
The Module parameter list class.
Selector to remove all weighted relations with a weight below a certain cut value.
void apply(std::vector< WeightedRelationItem > &weightedRelations) override
Do the cut.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the cut value to the module.
Weight m_param_cutValue
The cut value to use.
void setCutValue(Weight cutValue)
Function to set the cut value (mostly for tests).
Interface for a minimal algorithm part that wants to expose some parameters to a module.
virtual void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix)
Forward prefixed parameters of this findlet to the module parameter list.
Type for two related objects with a weight.
void addParameter(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module list.
Abstract base class for different kinds of events.