30 #ifndef RVIZ_INTERACTIVE_MARKER_DISPLAY_H 31 #define RVIZ_INTERACTIVE_MARKER_DISPLAY_H 36 #include <visualization_msgs/InteractiveMarker.h> 37 #include <visualization_msgs/InteractiveMarkerUpdate.h> 38 #include <visualization_msgs/InteractiveMarkerInit.h> 55 class RosTopicProperty;
59 typedef std::pair<std::string, int32_t>
MarkerID;
73 virtual void update(
float wall_dt,
float ros_dt);
79 virtual void setTopic(
const QString &topic,
const QString &datatype );
91 void publishFeedback(visualization_msgs::InteractiveMarkerFeedback &feedback);
102 void initCb( visualization_msgs::InteractiveMarkerInitConstPtr msg );
103 void updateCb( visualization_msgs::InteractiveMarkerUpdateConstPtr msg );
105 void resetCb( std::string server_id );
108 const std::string& server_id,
109 const std::string& msg );
112 const std::string& server_id,
113 const std::vector<visualization_msgs::InteractiveMarker>& markers );
116 const std::string& server_id,
117 const std::vector<visualization_msgs::InteractiveMarkerPose>& marker_poses );
120 const std::string& server_id,
121 const std::vector<std::string>& names );
125 const std::vector<visualization_msgs::InteractiveMarkerPose>* poses =
NULL,
126 const std::vector<std::string>* erases =
NULL );
133 M_StringToIMPtr&
getImMap( std::string server_id );
std::map< std::string, IMPtr > M_StringToIMPtr
void updateShowVisualAids()
virtual void reset()
Called to tell the display to clear its state.
void updateMarkers(const std::string &server_id, const std::vector< visualization_msgs::InteractiveMarker > &markers)
std::map< std::string, M_StringToIMPtr > M_StringToStringToIMPtr
void statusCb(interactive_markers::InteractiveMarkerClient::StatusT, const std::string &server_id, const std::string &msg)
void initCb(visualization_msgs::InteractiveMarkerInitConstPtr msg)
M_StringToIMPtr & getImMap(std::string server_id)
void eraseMarkers(const std::string &server_id, const std::vector< std::string > &names)
void updateCb(visualization_msgs::InteractiveMarkerUpdateConstPtr msg)
BoolProperty * show_descriptions_property_
BoolProperty * enable_transparency_property_
boost::shared_ptr< interactive_markers::InteractiveMarkerClient > im_client_
void updatePoses(const std::string &server_id, const std::vector< visualization_msgs::InteractiveMarkerPose > &marker_poses)
virtual void onDisable()
Derived classes override this to do the actual work of disabling themselves.
std::pair< std::string, int32_t > MarkerID
virtual void setTopic(const QString &topic, const QString &datatype)
Set the ROS topic to listen to for this display.
void publishFeedback(visualization_msgs::InteractiveMarkerFeedback &feedback)
BoolProperty * show_axes_property_
virtual void onInitialize()
Override this function to do subclass-specific initialization.
void processMarkerChanges(const std::vector< visualization_msgs::InteractiveMarker > *markers=NULL, const std::vector< visualization_msgs::InteractiveMarkerPose > *poses=NULL, const std::vector< std::string > *erases=NULL)
void updateShowDescriptions()
BoolProperty * show_visual_aids_property_
RosTopicProperty * marker_update_topic_property_
virtual void onEnable()
Derived classes override this to do the actual work of enabling themselves.
Displays Interactive Markers.
boost::shared_ptr< MarkerBase > MarkerBasePtr
void updateEnableTransparency()
Property specialized to provide getter for booleans.
ros::Publisher feedback_pub_
virtual void update(float wall_dt, float ros_dt)
Called periodically by the visualization manager.
M_StringToStringToIMPtr interactive_markers_
virtual void fixedFrameChanged()
Called by setFixedFrame(). Override to respond to changes to fixed_frame_.
void onStatusUpdate(StatusProperty::Level level, const std::string &name, const std::string &text)
void resetCb(std::string server_id)
boost::shared_ptr< InteractiveMarker > IMPtr
InteractiveMarkerDisplay()