Robowflex
v0.1
Making MoveIt Easy
|
Helper class to broadcast transform information on TF and joint states. More...
#include <broadcaster.h>
Classes | |
struct | StaticTransform |
Information for a static transform. More... | |
Public Member Functions | |
RobotBroadcaster (const RobotConstPtr &robot, const std::string &base_frame="world", const std::string &name="robowflex") | |
Constructor. Sets up TF2 broadcaster. More... | |
~RobotBroadcaster () | |
Destructor. More... | |
void | start () |
Begin publishing TF and joint information. More... | |
void | stop () |
Stop publishing TF and joint information. More... | |
void | addStaticTransform (const std::string &name, const std::string &base, const std::string &target, const RobotPose &tf=RobotPose::Identity()) |
Add a new static transform to the broadcaster. More... | |
void | removeStaticTransform (const std::string &name) |
Remove a named static transform. More... | |
Private Member Functions | |
void | update () |
Send out the TF and joint information. More... | |
Private Attributes | |
RobotConstPtr | robot_ |
Robot being published. More... | |
const std::string | base_ |
Base frame to use. More... | |
bool | active_ {false} |
Is thread active? More... | |
bool | done_ {false} |
Is thread done? More... | |
unsigned int | rate_ {10} |
Times per second to send out. More... | |
std::unique_ptr< std::thread > | thread_ |
Worker thread. More... | |
ros::NodeHandle | nh_ |
Handle for publishing. More... | |
tf2_ros::TransformBroadcaster | tf2br_ |
TF2 broadcaster. More... | |
ros::Publisher | state_pub_ |
State publisher. More... | |
std::map< std::string, StaticTransform > | static_ |
Static transforms. More... | |
Helper class to broadcast transform information on TF and joint states.
Definition at line 23 of file broadcaster.h.
IO::RobotBroadcaster::RobotBroadcaster | ( | const RobotConstPtr & | robot, |
const std::string & | base_frame = "world" , |
||
const std::string & | name = "robowflex" |
||
) |
Constructor. Sets up TF2 broadcaster.
[in] | robot | Robot to broadcast. |
[in] | base_frame | Base frame to use for robot transforms. |
[in] | name | Namespace to use. |
Definition at line 20 of file broadcaster.cpp.
IO::RobotBroadcaster::~RobotBroadcaster | ( | ) |
Destructor.
Definition at line 27 of file broadcaster.cpp.
void IO::RobotBroadcaster::addStaticTransform | ( | const std::string & | name, |
const std::string & | base, | ||
const std::string & | target, | ||
const RobotPose & | tf = RobotPose::Identity() |
||
) |
Add a new static transform to the broadcaster.
[in] | name | Name of transform (used for removal) |
[in] | base | Base frame of transform. |
[in] | target | Target frame of transform. |
[in] | tf | The transform from base to target. |
Definition at line 60 of file broadcaster.cpp.
void IO::RobotBroadcaster::removeStaticTransform | ( | const std::string & | name | ) |
void IO::RobotBroadcaster::start | ( | void | ) |
Begin publishing TF and joint information.
Definition at line 37 of file broadcaster.cpp.
void IO::RobotBroadcaster::stop | ( | void | ) |
Stop publishing TF and joint information.
Definition at line 55 of file broadcaster.cpp.
|
private |
Send out the TF and joint information.
Definition at line 85 of file broadcaster.cpp.
|
private |
Is thread active?
Definition at line 67 of file broadcaster.h.
|
private |
Base frame to use.
Definition at line 66 of file broadcaster.h.
|
private |
Is thread done?
Definition at line 68 of file broadcaster.h.
|
private |
Handle for publishing.
Definition at line 71 of file broadcaster.h.
|
private |
Times per second to send out.
Definition at line 69 of file broadcaster.h.
|
private |
Robot being published.
Definition at line 65 of file broadcaster.h.
|
private |
State publisher.
Definition at line 73 of file broadcaster.h.
|
private |
Static transforms.
Definition at line 84 of file broadcaster.h.
|
private |
TF2 broadcaster.
Definition at line 72 of file broadcaster.h.
|
private |
Worker thread.
Definition at line 70 of file broadcaster.h.