10#include <tracking/ckf/general/findlets/OnStateApplier.dcl.h>
11#include <tracking/trackFindingCDC/numerics/WeightComperator.h>
12#include <tracking/trackFindingCDC/utilities/Algorithms.h>
19 template <
class AState>
23 if (childStates.empty()) {
28 AState& state = *stateWithWeight;
29 const TrackFindingCDC::Weight& weight = this->operator()({currentPath, &state});
30 stateWithWeight.setWeight(weight);
36 template <
class AState>
std::pair< const std::vector< TrackFindingCDC::WithWeight< const AState * > >, AState * > Object
The object this filter refers to.
A mixin class to attach a weight to an object.
virtual TrackFindingCDC::Weight operator()(const Object &object)
The filter operator for this class.
void apply(const std::vector< TrackFindingCDC::WithWeight< const AState * > > ¤tPath, std::vector< TrackFindingCDC::WithWeight< AState * > > &childStates) override
Apply the () operator to all pairs of state and current path.
Abstract base class for different kinds of events.
Functor factory from the functional composition of two functors.