10#include <tracking/trackFindingCDC/findlets/base/Findlet.h>
11#include <tracking/trackFindingCDC/utilities/Algorithms.h>
12#include <tracking/ckf/cdc/entities/CDCCKFPath.h>
14#include <tracking/ckf/cdc/filters/pathPairs/CDCPathPairFilterFactory.h>
15#include <tracking/trackFindingCDC/filters/base/ChooseableFilter.icc.h>
16#include <tracking/trackFindingCDC/utilities/StringManipulation.h>
17#include <framework/core/ModuleParamList.h>
35 moduleParamList->
addParameter(TrackFindingCDC::prefixed(prefix,
"maximalCandidatesInFlight"),
38 m_filter.exposeParameters(moduleParamList, prefix);
42 void apply(std::vector<CDCCKFPath>& newPaths)
override
45 return m_filter(std::pair(&lhs, &rhs)) > 0;
47 std::sort(newPaths.begin(), newPaths.end(), pathComparison);
Select the m_maximalCandidatesInFlight paths for further processing.
void apply(std::vector< CDCCKFPath > &newPaths) override
main method of the findlet, out of all paths "newPaths" select the best N=m_maximalCandidatesInFlight
TrackFindingCDC::ChooseableFilter< CDCPathPairFilterFactory > m_filter
Filter to order paths.
size_t m_maximalCandidatesInFlight
Maximum number of paths to select.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the parameters of the sub findlets.
The Module parameter list class.
Convenvience wrapper to setup a Chooseable filter from a specific factory object.
void addProcessingSignalListener(ProcessingSignalListener *psl)
Register a processing signal listener to be notified.
Interface for a minimal algorithm part that wants to expose some parameters to a module.
void addParameter(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module list.
std::vector< CDCCKFState > CDCCKFPath
Shortcut for the collection of CDC CKF-algorithm states.
Abstract base class for different kinds of events.