5 #include <cnoid/Archive>
7 #include <cnoid/SimulatorItem>
8 #include <cnoid/WorldItem>
10 #include <geometry_msgs/msg/twist_stamped.hpp>
11 #include <tf2_eigen/tf2_eigen.hpp>
12 #include <tf2_ros/transform_broadcaster.h>
13 #include <rclcpp/rclcpp.hpp>
34 static void initialize(cnoid::ExtensionManager * ext);
48 virtual void doPutProperties(cnoid::PutPropertyFunction & putProperty)
override;
50 virtual bool store(cnoid::Archive & archive)
override;
52 virtual bool restore(
const cnoid::Archive & archive)
override;
66 cnoid::SimulatorItemPtr
sim_;
78 rclcpp::Node::SharedPtr
nh_;
84 rclcpp::Publisher<geometry_msgs::msg::PoseStamped>::SharedPtr
pose_pub_;
85 rclcpp::Publisher<geometry_msgs::msg::TwistStamped>::SharedPtr
vel_pub_;
86 std::shared_ptr<tf2_ros::TransformBroadcaster>
tf_br_;
Plugin item to publish topics and broadcast TF of pose and velocity of the model.
rclcpp::Publisher< geometry_msgs::msg::PoseStamped >::SharedPtr pose_pub_
cnoid::WorldItemPtr world_
std::set< std::string > hooked_sims_
std::string pose_topic_name_
virtual bool store(cnoid::Archive &archive) override
virtual void doPutProperties(cnoid::PutPropertyFunction &putProperty) override
virtual bool restore(const cnoid::Archive &archive) override
cnoid::BodyItem * body_item_
std::string tf_child_frame_id_
virtual cnoid::Item * doDuplicate() const override
rclcpp::Publisher< geometry_msgs::msg::TwistStamped >::SharedPtr vel_pub_
int post_dynamics_func_id_
static void initialize(cnoid::ExtensionManager *ext)
std::string vel_topic_name_
cnoid::SimulatorItemPtr sim_
rclcpp::Node::SharedPtr nh_
std::shared_ptr< tf2_ros::TransformBroadcaster > tf_br_