mrs_lib
Various reusable classes, functions and utilities for use in MRS projects
Loading...
Searching...
No Matches
transform_broadcaster.h
1#ifndef TRANSFORM_BROADCASTER_H
2#define TRANSFORM_BROADCASTER_H
3
4#include <rclcpp/rclcpp.hpp>
5#include <tf2_ros/transform_broadcaster.h>
6
7namespace mrs_lib
8{
9
10/* TransformBroadcaster //{ */
11
19
20public:
22 struct NotInitializedException : public std::exception
23 {
24 const char *what() const throw() {
25 return "TransformBroadcaster: not initialized! Call the constructor and pass the node pointer.";
26 }
27 };
28
33
37 TransformBroadcaster(const rclcpp::Node::SharedPtr &node);
38
44 void sendTransform(const geometry_msgs::msg::TransformStamped &transform);
45
51 void sendTransform(const std::vector<geometry_msgs::msg::TransformStamped> &transforms);
52
53private:
54 rclcpp::Node::SharedPtr node_;
55
59 std::shared_ptr<tf2_ros::TransformBroadcaster> broadcaster_;
60
67 std::map<std::string, rclcpp::Time> last_messages_;
68};
69//}
70
71} // namespace mrs_lib
72
73#endif // TRANSFORM_BROADCASTER_H
Wrapper for the tf2_ros::TransformBroadcaster. With each sendTransform() command, the message is chec...
Definition transform_broadcaster.h:18
void sendTransform(const geometry_msgs::msg::TransformStamped &transform)
check if the transform is newer than the last published one and publish it. Transform is skipped if a...
Definition transform_broadcaster.cpp:21
TransformBroadcaster()
constructor, internally starts the TransformBroadcaster
Definition transform_broadcaster.cpp:8
All mrs_lib functions, classes, variables and definitions are contained in this namespace.
Definition attitude_converter.h:24
is thrown when calculating of heading is not possible due to atan2 exception
Definition transform_broadcaster.h:23