24 template <
typename TrackFinder>
25 struct TrackFinderFunctionImpl {
26 TrackFinder trackFinder;
28 TrackFinderFunctionImpl(TrackFinder&& f) : trackFinder(std::move(f)) {}
35 return trackFinder.findTracks(sourceLinks, initialParameters, options);
53 using InputMagneticField =
54 typename std::decay_t<decltype(inputField)>::element_type;
65 MagneticField field(std::move(inputField));
68 navigator.resolvePassive =
false;
69 navigator.resolveMaterial =
true;
70 navigator.resolveSensitive =
true;
71 Propagator propagator(std::move(stepper), std::move(navigator));
72 CKF trackFinder(std::move(propagator));
75 return TrackFinderFunctionImpl<CKF>(std::move(trackFinder));
77 std::move(magneticField));