54 std::vector<CDCTrack>& outputTracks)
59 outputTracks = inputTracks;
62 outputTracks.reserve(2 * inputTracks.size());
63 for (
const CDCTrack& track : inputTracks) {
64 outputTracks.push_back(track.reversed());
65 outputTracks.push_back(track);
71 outputTracks.reserve(1.5 * inputTracks.size());
72 for (
const CDCTrack& track : inputTracks) {
73 const CDCTrajectory3D& startTrajectory3D = track.getStartTrajectory3D();
79 bool isStartLeaver = (not endTrajectory2D.
isCurler(1.1)) and startTrajectory2D.
isOriginer();
80 bool isEndLeaver = (not startTrajectory2D.
isCurler(1.1)) and endTrajectory2D.
isOriginer();
82 bool isLeaver = isFitted and (isStartLeaver or isEndLeaver);
88 outputTracks.push_back(track.reversed());
90 outputTracks.push_back(track);
94 outputTracks.push_back(track);
95 outputTracks.push_back(track.reversed());
100 outputTracks.reserve(inputTracks.size());
101 for (
const CDCTrack& track : inputTracks) {
105 outputTracks.push_back(track.reversed());
107 outputTracks.push_back(track);
112 outputTracks.reserve(inputTracks.size());
113 for (
const CDCTrack& track : inputTracks) {
117 outputTracks.push_back(track.reversed());
119 outputTracks.push_back(track);
124 B2WARNING(
"Unexpected 'TrackOrientation' parameter of track finder module : '" <<
126 "'. No tracks are put out.");