This package takes in position trajectories (with times), and can fill in velocities and accelerations at the knot points using various schemes, like numerical differentiation, clamped cubic splines, or the Fritsch-Butland monotonic cubic interpolator.
All spline smoothers are derived from a common base class, spline_smoother::SplineSmoother. Each derived class just overrides a single method: spline_smoother::SplineSmoother::smooth(). These smoothers are "filters" (filters::FilterBase), so they can be dynamically loaded from a library file, and a chain of such filters can be instantiated from an XML file using filters::FilterChain.
There are currently three implementations of smoothers in the library. Detailed documentation for each of these is available in the code API:
Additionally, splines.h contains some useful functions for converting back and forth between waypoints and spline coefficients, and for sampling from cubic and quintic splines.
This package is just a library and does not have any ROS nodes.