53 std::vector<CDCTrack>& outputTracks)
58 outputTracks = inputTracks;
61 outputTracks.reserve(2 * inputTracks.size());
62 for (
const CDCTrack& track : inputTracks) {
63 outputTracks.push_back(track.reversed());
64 outputTracks.push_back(track);
70 outputTracks.reserve(1.5 * inputTracks.size());
71 for (
const CDCTrack& track : inputTracks) {
72 const CDCTrajectory3D& startTrajectory3D = track.getStartTrajectory3D();
78 bool isStartLeaver = (not endTrajectory2D.
isCurler(1.1)) and startTrajectory2D.
isOriginer();
79 bool isEndLeaver = (not startTrajectory2D.
isCurler(1.1)) and endTrajectory2D.
isOriginer();
81 bool isLeaver = isFitted and (isStartLeaver or isEndLeaver);
87 outputTracks.push_back(track.reversed());
89 outputTracks.push_back(track);
93 outputTracks.push_back(track);
94 outputTracks.push_back(track.reversed());
99 outputTracks.reserve(inputTracks.size());
100 for (
const CDCTrack& track : inputTracks) {
104 outputTracks.push_back(track.reversed());
106 outputTracks.push_back(track);
111 outputTracks.reserve(inputTracks.size());
112 for (
const CDCTrack& track : inputTracks) {
116 outputTracks.push_back(track.reversed());
118 outputTracks.push_back(track);
123 B2WARNING(
"Unexpected 'TrackOrientation' parameter of track finder module : '" <<
125 "'. No tracks are put out.");