Instead of template the pattern generator only by the footprint type, switch to a more extensible mechanism (i.e. C++ traits). Now, is is possible to use different kind of trajectory types depending on the pattern generator algorithm. One goal would be to allow the use of trajectories defined as spline functions.
This new version has been validated on simulation.