From befd5700136cd9a12646e665dced5dedd5111298 Mon Sep 17 00:00:00 2001 From: Davide Risi Date: Mon, 23 Mar 2026 11:28:59 +0100 Subject: [PATCH] [ADD] add virtual methods for base acceleration and Jacobian computations in RobotBase class --- include/robotlib/robot_base.hpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/include/robotlib/robot_base.hpp b/include/robotlib/robot_base.hpp index 579f053..875c09c 100644 --- a/include/robotlib/robot_base.hpp +++ b/include/robotlib/robot_base.hpp @@ -621,6 +621,32 @@ namespace robotlib const robotlib::eigen::aligned_map &f_contact, robotlib::JointState &tau_joints) = 0; + /** + * @brief Get base acceleration. + */ + virtual void getBaseAcceleration(const robotlib::JointState &, + const robotlib::JointState &, + const robotlib::JointState &, + Eigen::Matrix &) { + throw std::runtime_error("getBaseAcceleration not implemented"); + } + + /** + * @brief Get Joint Jacobian Time Variation. + */ + virtual void getJointJacobianTimeVariation(const Eigen::Matrix &, + const robotlib::JointState &, + const robotlib::JointState &, + const std::string &, + Eigen::MatrixXd &) { + throw std::runtime_error("getJointJacobianTimeVariation not implemented"); + } + + virtual void computeBaseJacobian(const robotlib::JointState &, Eigen::MatrixXd &) + { + throw std::runtime_error("computeBaseJacobian not implemented"); + } + // ** SET FUNCTIONS ** // template // T& getLimbData(const LimbPtr limb, Eigen::Matrix& data_vector);