Class FrameManager

Inheritance Relationships

Base Type

  • public QObject

Class Documentation

class FrameManager : public QObject

Manages and provides information about all the frames.

Subscribes to TF data to determine the location and orientation of frames

Public Functions

explicit FrameManager(rclcpp::Node::SharedPtr _node)

Constructor for FrameManager.

Parameters:

_node[in] ROS Node shared pointer

void setFixedFrame(const std::string &_fixedFrame)

Sets fixed frame for frame tranformations.

Parameters:

_fixedFrame[in] Fixed frame

bool getFramePose(const std::string &_frame, ignition::math::Pose3d &_pose)

Get frame pose (position and orientation)

Parameters:
  • _frame[in] Frame name

  • _pose[out] Frame pose

Returns:

Pose validity (true if pose is valid, else false)

bool getParentPose(const std::string &_child, ignition::math::Pose3d &_pose)

Get parent frame pose (position and orientation)

Parameters:
  • _child[in] Child frame name

  • _pose[out] Parent frame pose

Returns:

Pose validity (true if pose is valid, else false)

void getFrames(std::vector<std::string> &_frames)

Get available tf frames.

Parameters:

_frames[out] List of available frames

std::string getFixedFrame()

Get fixed frame.

Returns:

Fixed frame

Protected Functions

void tf_callback(const tf2_msgs::msg::TFMessage::SharedPtr _msg)

Callback function to received transform messages.

Parameters:

_msg[in] Transform message