Public Types | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
tuw_multi_robot_rviz::RobotAttributes Class Reference

#include <MultiRobotInfoVisual.h>

Public Types

using buf_type = boost::circular_buffer< geometry_msgs::PoseWithCovariance >
 

Public Member Functions

double getPathLength ()
 
void render ()
 
 RobotAttributes (size_t id, std::string &rname, double rad, buf_type &pose, Ogre::ColourValue color, Ogre::SceneManager *_scene_manager, Ogre::SceneNode *_parent_node)
 
void setDisabled ()
 
void setPoseBufferLength (size_t len)
 
void updateColor (Ogre::ColourValue &c)
 
void updatePose (const geometry_msgs::PoseWithCovariance &pose)
 
void updatePose (const buf_type &pose)
 
 ~RobotAttributes ()
 

Public Attributes

bool disabled
 
double path_length_
 
bool path_stale
 
size_t robot_id
 
std::string robot_name
 
double robot_radius
 
std::vector< std::unique_ptr< TextVisual > > route_visuals
 

Private Member Functions

void cbRoute (const ros::MessageEvent< const tuw_multi_robot_msgs::Route > &_event, int _topic)
 
void make_robot ()
 
void make_route ()
 
void updateArrow (bool first_time=false)
 
void updateCircle (bool first_time=false)
 
void updatePathLength ()
 
void updateText (bool first_time=false)
 

Private Attributes

Ogre::ManualObject * arrow
 
Ogre::ManualObject * circle
 
Ogre::ColourValue color
 
Ogre::Quaternion current_orient
 
Ogre::Vector3 current_pos
 
Ogre::SceneNode * frame_node
 
buf_type ros_poses
 
std::shared_ptr< tuw_multi_robot_msgs::Route > route
 
Ogre::SceneManager * scene_manager
 
std::size_t seg_id_current
 
ros::Subscriber sub_route
 
std::unique_ptr< TextVisualtext
 

Detailed Description

Definition at line 28 of file MultiRobotInfoVisual.h.

Member Typedef Documentation

◆ buf_type

using tuw_multi_robot_rviz::RobotAttributes::buf_type = boost::circular_buffer<geometry_msgs::PoseWithCovariance>

Definition at line 32 of file MultiRobotInfoVisual.h.

Constructor & Destructor Documentation

◆ RobotAttributes()

tuw_multi_robot_rviz::RA::RobotAttributes ( size_t  id,
std::string &  rname,
double  rad,
buf_type pose,
Ogre::ColourValue  color,
Ogre::SceneManager *  _scene_manager,
Ogre::SceneNode *  _parent_node 
)

Definition at line 8 of file MultiRobotInfoVisual.cpp.

◆ ~RobotAttributes()

tuw_multi_robot_rviz::RA::~RobotAttributes ( )

Definition at line 34 of file MultiRobotInfoVisual.cpp.

Member Function Documentation

◆ cbRoute()

void tuw_multi_robot_rviz::RA::cbRoute ( const ros::MessageEvent< const tuw_multi_robot_msgs::Route > &  _event,
int  _topic 
)
private

callback for obtaining route information

Definition at line 58 of file MultiRobotInfoVisual.cpp.

◆ getPathLength()

double tuw_multi_robot_rviz::RobotAttributes::getPathLength ( )
inline

get the path length, recomputed if necessary

Definition at line 101 of file MultiRobotInfoVisual.h.

◆ make_robot()

void tuw_multi_robot_rviz::RA::make_robot ( )
private

Make complete robot rendering

Definition at line 150 of file MultiRobotInfoVisual.cpp.

◆ make_route()

void tuw_multi_robot_rviz::RA::make_route ( )
private

Make complete route rendering

Definition at line 123 of file MultiRobotInfoVisual.cpp.

◆ render()

void tuw_multi_robot_rviz::RA::render ( )

Definition at line 40 of file MultiRobotInfoVisual.cpp.

◆ setDisabled()

void tuw_multi_robot_rviz::RobotAttributes::setDisabled ( )
inline

Disables the renderings of the robot poses are still stored

Definition at line 59 of file MultiRobotInfoVisual.h.

◆ setPoseBufferLength()

void tuw_multi_robot_rviz::RobotAttributes::setPoseBufferLength ( size_t  len)
inline

Definition at line 95 of file MultiRobotInfoVisual.h.

◆ updateArrow()

void tuw_multi_robot_rviz::RA::updateArrow ( bool  first_time = false)
private

Update Arrow rendering

Definition at line 87 of file MultiRobotInfoVisual.cpp.

◆ updateCircle()

void tuw_multi_robot_rviz::RA::updateCircle ( bool  first_time = false)
private

Update Circle rendering

Definition at line 63 of file MultiRobotInfoVisual.cpp.

◆ updateColor()

void tuw_multi_robot_rviz::RobotAttributes::updateColor ( Ogre::ColourValue &  c)
inline

Color value set in rviz

Definition at line 53 of file MultiRobotInfoVisual.h.

◆ updatePathLength()

void tuw_multi_robot_rviz::RobotAttributes::updatePathLength ( )
inlineprivate

Update old path information

Definition at line 147 of file MultiRobotInfoVisual.h.

◆ updatePose() [1/2]

void tuw_multi_robot_rviz::RobotAttributes::updatePose ( const geometry_msgs::PoseWithCovariance &  pose)
inline

Definition at line 68 of file MultiRobotInfoVisual.h.

◆ updatePose() [2/2]

void tuw_multi_robot_rviz::RobotAttributes::updatePose ( const buf_type pose)
inline

Definition at line 75 of file MultiRobotInfoVisual.h.

◆ updateText()

void tuw_multi_robot_rviz::RA::updateText ( bool  first_time = false)
private

Update the text rendering

Definition at line 135 of file MultiRobotInfoVisual.cpp.

Member Data Documentation

◆ arrow

Ogre::ManualObject* tuw_multi_robot_rviz::RobotAttributes::arrow
private

Definition at line 125 of file MultiRobotInfoVisual.h.

◆ circle

Ogre::ManualObject* tuw_multi_robot_rviz::RobotAttributes::circle
private

Definition at line 124 of file MultiRobotInfoVisual.h.

◆ color

Ogre::ColourValue tuw_multi_robot_rviz::RobotAttributes::color
private

all things ogre

Definition at line 119 of file MultiRobotInfoVisual.h.

◆ current_orient

Ogre::Quaternion tuw_multi_robot_rviz::RobotAttributes::current_orient
private

Definition at line 121 of file MultiRobotInfoVisual.h.

◆ current_pos

Ogre::Vector3 tuw_multi_robot_rviz::RobotAttributes::current_pos
private

Definition at line 120 of file MultiRobotInfoVisual.h.

◆ disabled

bool tuw_multi_robot_rviz::RobotAttributes::disabled

Definition at line 47 of file MultiRobotInfoVisual.h.

◆ frame_node

Ogre::SceneNode* tuw_multi_robot_rviz::RobotAttributes::frame_node
private

Definition at line 123 of file MultiRobotInfoVisual.h.

◆ path_length_

double tuw_multi_robot_rviz::RobotAttributes::path_length_

Definition at line 46 of file MultiRobotInfoVisual.h.

◆ path_stale

bool tuw_multi_robot_rviz::RobotAttributes::path_stale

Definition at line 48 of file MultiRobotInfoVisual.h.

◆ robot_id

size_t tuw_multi_robot_rviz::RobotAttributes::robot_id

Definition at line 45 of file MultiRobotInfoVisual.h.

◆ robot_name

std::string tuw_multi_robot_rviz::RobotAttributes::robot_name

Definition at line 43 of file MultiRobotInfoVisual.h.

◆ robot_radius

double tuw_multi_robot_rviz::RobotAttributes::robot_radius

Definition at line 44 of file MultiRobotInfoVisual.h.

◆ ros_poses

buf_type tuw_multi_robot_rviz::RobotAttributes::ros_poses
private

Definition at line 113 of file MultiRobotInfoVisual.h.

◆ route

std::shared_ptr<tuw_multi_robot_msgs::Route> tuw_multi_robot_rviz::RobotAttributes::route
private

Definition at line 114 of file MultiRobotInfoVisual.h.

◆ route_visuals

std::vector<std::unique_ptr<TextVisual> > tuw_multi_robot_rviz::RobotAttributes::route_visuals

Definition at line 50 of file MultiRobotInfoVisual.h.

◆ scene_manager

Ogre::SceneManager* tuw_multi_robot_rviz::RobotAttributes::scene_manager
private

Definition at line 122 of file MultiRobotInfoVisual.h.

◆ seg_id_current

std::size_t tuw_multi_robot_rviz::RobotAttributes::seg_id_current
private

Definition at line 116 of file MultiRobotInfoVisual.h.

◆ sub_route

ros::Subscriber tuw_multi_robot_rviz::RobotAttributes::sub_route
private

Definition at line 115 of file MultiRobotInfoVisual.h.

◆ text

std::unique_ptr<TextVisual> tuw_multi_robot_rviz::RobotAttributes::text
private

Definition at line 126 of file MultiRobotInfoVisual.h.


The documentation for this class was generated from the following files:


tuw_multi_robot_rviz
Author(s): Benjamin Binder
autogenerated on Mon Feb 28 2022 23:57:45