5 template <
typename PostProcessor>
6 std::shared_ptr<aikido::planner::TrajectoryPostProcessor>
8 const dart::dynamics::MetaSkeletonPtr& metaSkeleton,
9 const typename PostProcessor::Params& postProcessorParams)
const
11 return getTrajectoryPostProcessor<PostProcessor>(
18 template <
typename PostProcessor>
19 std::shared_ptr<aikido::planner::TrajectoryPostProcessor>
21 const Eigen::VectorXd& velocityLimits,
22 const Eigen::VectorXd& accelerationLimits,
23 const typename PostProcessor::Params& postProcessorParams)
const
26 std::is_base_of<aikido::planner::TrajectoryPostProcessor, PostProcessor>::
28 "PostProcessor must derive from "
29 "aikido::planner::TrajectoryPostProcessor");
31 return std::make_shared<PostProcessor>(
32 velocityLimits, accelerationLimits, postProcessorParams);
36 template <
typename PostProcessor>
38 const dart::dynamics::MetaSkeletonPtr& metaSkeleton,
41 const typename PostProcessor::Params& postProcessorParams)
43 return postProcessPath<PostProcessor>(
52 template <
typename PostProcessor>
54 const Eigen::VectorXd& velocityLimits,
55 const Eigen::VectorXd& accelerationLimits,
58 const typename PostProcessor::Params& postProcessorParams)
60 auto postProcessor = getTrajectoryPostProcessor<PostProcessor>(
61 velocityLimits, accelerationLimits, postProcessorParams);
66 return postProcessor->postprocess(
67 *interpolated, *(
cloneRNG().get()), constraint);
71 return postProcessor->postprocess(*spline, *(
cloneRNG().get()), constraint);
74 <<
"[postProcessPath]: Path should be either Spline or Interpolated."