10#include <tracking/vxdHoughTracking/findlets/PathLengthToggledApplier.dcl.h>
11#include <tracking/vxdHoughTracking/findlets/OnHitApplier.icc.h>
12#include <tracking/trackFindingCDC/utilities/StringManipulation.h>
19 namespace vxdHoughTracking {
22 template <
class AHit,
class AFindlet>
32 template <
class AHit,
class AFindlet>
34 const std::string& prefix)
36 m_twoHitFilterFindlet.exposeParameters(moduleParamList, TrackFindingCDC::prefixed(prefix,
"twoHit"));
37 m_threeHitFilterFindlet.exposeParameters(moduleParamList, TrackFindingCDC::prefixed(prefix,
"threeHit"));
38 m_fourHitFilterFindlet.exposeParameters(moduleParamList, TrackFindingCDC::prefixed(prefix,
"fourHit"));
39 m_fiveHitFilterFindlet.exposeParameters(moduleParamList, TrackFindingCDC::prefixed(prefix,
"fiveHit"));
43 template <
class AHit,
class AFindlet>
53 if (currentPath.size() == 1) {
54 m_twoHitFilterFindlet.apply(currentPath, childHits);
55 }
else if (currentPath.size() == 2) {
56 m_threeHitFilterFindlet.apply(currentPath, childHits);
57 }
else if (currentPath.size() == 3) {
58 m_fourHitFilterFindlet.apply(currentPath, childHits);
59 }
else if (currentPath.size() == 4) {
60 m_fiveHitFilterFindlet.apply(currentPath, childHits);
The Module parameter list class.
void addProcessingSignalListener(ProcessingSignalListener *psl)
Register a processing signal listener to be notified.
A mixin class to attach a weight to an object.
Helper findlet which applies its () operator to all pairs of path and hit with all hits in the given ...
AFindlet m_fiveHitFilterFindlet
Findlet used for currentPath.size() == 4.
PathLengthToggledApplier()
Add the subfilters as listeners.
AFindlet m_fourHitFilterFindlet
Findlet used for currentPath.size() == 3.
AFindlet m_threeHitFilterFindlet
Findlet used for currentPath.size() == 2.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose parameters of the subfilters and the layer to change.
AFindlet m_twoHitFilterFindlet
Findlet used for currentPath.size() == 1.
void apply(const std::vector< TrackFindingCDC::WithWeight< const AHit * > > ¤tPath, std::vector< TrackFindingCDC::WithWeight< AHit * > > &childHits) override
The weight is calculated using the subfilter based on the geometrical layer of the state.
Abstract base class for different kinds of events.