Displays Interactive Markers. More...
#include <interactive_marker_display.h>
Public Member Functions | |
virtual void | fixedFrameChanged () |
Called by setFixedFrame(). Override to respond to changes to fixed_frame_. More... | |
InteractiveMarkerDisplay () | |
virtual void | onInitialize () |
Override this function to do subclass-specific initialization. More... | |
virtual void | reset () |
Called to tell the display to clear its state. More... | |
virtual void | setTopic (const QString &topic, const QString &datatype) |
Set the ROS topic to listen to for this display. More... | |
virtual void | update (float wall_dt, float ros_dt) |
Called periodically by the visualization manager. More... | |
Public Member Functions inherited from rviz::Display | |
virtual void | deleteStatus (const QString &name) |
Delete the status entry with the given name. This is thread-safe. More... | |
void | deleteStatusStd (const std::string &name) |
Delete the status entry with the given std::string name. This is thread-safe. More... | |
Display () | |
void | emitTimeSignal (ros::Time time) |
Emit a time signal that other Displays can synchronize to. More... | |
QWidget * | getAssociatedWidget () const |
Return the current associated widget, or NULL if there is none. More... | |
PanelDockWidget * | getAssociatedWidgetPanel () |
Return the panel containing the associated widget, or NULL if there is none. More... | |
virtual QString | getClassId () const |
Return the class identifier which was used to create this instance. This version just returns whatever was set with setClassId(). More... | |
Ogre::SceneNode * | getSceneNode () const |
Return the Ogre::SceneNode holding all 3D scene elements shown by this Display. More... | |
virtual QVariant | getViewData (int column, int role) const |
Return data appropriate for the given column (0 or 1) and role for this Display. More... | |
virtual Qt::ItemFlags | getViewFlags (int column) const |
Return item flags appropriate for the given column (0 or 1) for this Display. More... | |
uint32_t | getVisibilityBits () |
void | initialize (DisplayContext *context) |
Main initialization, called after constructor, before load() or setEnabled(). More... | |
bool | isEnabled () const |
Return true if this Display is enabled, false if not. More... | |
virtual void | load (const Config &config) |
Load the settings for this display from the given Config node, which must be a map. More... | |
virtual void | save (Config config) const |
Write this display to the given Config node. More... | |
void | setAssociatedWidget (QWidget *widget) |
Associate the given widget with this Display. More... | |
virtual void | setClassId (const QString &class_id) |
Set the class identifier used to create this instance. Typically this will be set by the factory object which created it. More... | |
void | setFixedFrame (const QString &fixed_frame) |
Set the fixed frame in this display. More... | |
void | setName (const QString &name) |
Overridden from Property to set associated widget title to the new name. More... | |
virtual void | setStatus (StatusProperty::Level level, const QString &name, const QString &text) |
Show status level and text. This is thread-safe. More... | |
void | setStatusStd (StatusProperty::Level level, const std::string &name, const std::string &text) |
Show status level and text, using a std::string. Convenience function which converts std::string to QString and calls setStatus(). This is thread-safe. More... | |
void | setVisibilityBits (uint32_t bits) |
void | unsetVisibilityBits (uint32_t bits) |
virtual | ~Display () |
Public Member Functions inherited from rviz::BoolProperty | |
BoolProperty (const QString &name=QString(), bool default_value=false, const QString &description=QString(), Property *parent=0, const char *changed_slot=0, QObject *receiver=0) | |
virtual bool | getBool () const |
virtual bool | getDisableChildren () |
If true, the children of this property should set their ItemIsEnabled flag to false. More... | |
bool | getDisableChildrenIfFalse () |
void | setDisableChildrenIfFalse (bool disable) |
virtual | ~BoolProperty () |
Public Member Functions inherited from rviz::Property | |
virtual void | addChild (Property *child, int index=-1) |
Add a child property. More... | |
Property * | childAt (int index) const |
Return the child Property with the given index, or NULL if the index is out of bounds or if the child at that index is not a Property. More... | |
virtual Property * | childAtUnchecked (int index) const |
Return the child Property with the given index, without checking whether the index is within bounds. More... | |
virtual void | collapse () |
Collapse (hide the children of) this Property. More... | |
bool | contains (Property *possible_child) const |
Return true if the list of children includes possible_child, false if not. More... | |
virtual QWidget * | createEditor (QWidget *parent, const QStyleOptionViewItem &option) |
Create an editor widget to edit the value of this property. More... | |
virtual void | expand () |
Expand (show the children of) this Property. More... | |
virtual QString | getDescription () const |
Return the description. More... | |
virtual bool | getHidden () const |
Return the hidden/shown state. True means hidden, false means visible. More... | |
virtual QIcon | getIcon () const |
PropertyTreeModel * | getModel () const |
Return the model managing this Property and its childrent. More... | |
virtual QString | getName () const |
Return the name of this Property as a QString. More... | |
std::string | getNameStd () const |
Return the name of this Property as a std::string. More... | |
Property * | getParent () const |
Return the parent Property. More... | |
virtual bool | getReadOnly () |
Return the read-only-ness of this property. More... | |
virtual QVariant | getValue () const |
Return the value of this Property as a QVariant. If the value has never been set, an invalid QVariant is returned. More... | |
void | hide () |
Hide this Property in any PropertyTreeWidgets. More... | |
bool | isAncestorOf (Property *possible_child) const |
Returns true if this is an ancestor of possible_child, meaning is the parent or parent of parent etc. More... | |
virtual void | moveChild (int from_index, int to_index) |
Move the child at from_index to to_index. More... | |
virtual int | numChildren () const |
Return the number of child objects (Property or otherwise). More... | |
virtual bool | paint (QPainter *painter, const QStyleOptionViewItem &option) const |
Hook to provide custom painting of the value data (right-hand column) in a subclass. More... | |
Property (const QString &name=QString(), const QVariant default_value=QVariant(), const QString &description=QString(), Property *parent=0, const char *changed_slot=0, QObject *receiver=0) | |
Constructor. More... | |
virtual void | removeChildren (int start_index=0, int count=-1) |
Remove and delete some or all child Properties. Does not change the value of this Property. More... | |
int | rowNumberInParent () const |
Return the row number of this property within its parent, or -1 if it has no parent. More... | |
virtual void | setDescription (const QString &description) |
Set the description. More... | |
virtual void | setHidden (bool hidden) |
Hide or show this property in any PropertyTreeWidget viewing its parent. More... | |
virtual void | setIcon (const QIcon &icon) |
Set the icon to be displayed next to the property. More... | |
void | setModel (PropertyTreeModel *model) |
Set the model managing this Property and all its child properties, recursively. More... | |
void | setParent (Property *new_parent) |
Set parent property, without telling the parent. More... | |
virtual void | setReadOnly (bool read_only) |
Prevent or allow users to edit this property from a PropertyTreeWidget. More... | |
void | setShouldBeSaved (bool save) |
If save is true and getReadOnly() is false, shouldBeSaved will return true; otherwise false. Default is true. More... | |
virtual bool | setValue (const QVariant &new_value) |
Set the new value for this property. Returns true if the new value is different from the old value, false if same. More... | |
bool | shouldBeSaved () const |
Returns true if the property is not read-only AND has data worth saving. More... | |
void | show () |
Show this Property in any PropertyTreeWidgets. More... | |
virtual Property * | subProp (const QString &sub_name) |
Return the first child Property with the given name, or the FailureProperty if no child has the name. More... | |
Property * | takeChild (Property *child) |
Remove a given child object and return a pointer to it. More... | |
virtual Property * | takeChildAt (int index) |
Take a child out of the child list, but don't destroy it. More... | |
virtual | ~Property () |
Destructor. Removes this property from its parent's list of children. More... | |
Protected Slots | |
void | onStatusUpdate (StatusProperty::Level level, const std::string &name, const std::string &text) |
void | publishFeedback (visualization_msgs::InteractiveMarkerFeedback &feedback) |
void | updateEnableTransparency () |
void | updateShowAxes () |
void | updateShowDescriptions () |
void | updateShowVisualAids () |
void | updateTopic () |
Protected Member Functions | |
virtual void | onDisable () |
Derived classes override this to do the actual work of disabling themselves. More... | |
virtual void | onEnable () |
Derived classes override this to do the actual work of enabling themselves. More... | |
Protected Member Functions inherited from rviz::Display | |
virtual void | clearStatuses () |
Delete all status children. This is thread-safe. More... | |
bool | initialized () const |
Returns true if the display has been initialized. More... | |
Protected Member Functions inherited from rviz::Property | |
void | loadValue (const Config &config) |
Load the value of this property specifically, not including children. More... | |
Private Types | |
typedef boost::shared_ptr< InteractiveMarker > | IMPtr |
typedef std::map< std::string, IMPtr > | M_StringToIMPtr |
typedef std::map< std::string, M_StringToIMPtr > | M_StringToStringToIMPtr |
Private Member Functions | |
void | eraseMarkers (const std::string &server_id, const std::vector< std::string > &names) |
M_StringToIMPtr & | getImMap (std::string server_id) |
void | initCb (visualization_msgs::InteractiveMarkerInitConstPtr msg) |
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 | resetCb (std::string server_id) |
void | statusCb (interactive_markers::InteractiveMarkerClient::StatusT, const std::string &server_id, const std::string &msg) |
void | subscribe () |
void | unsubscribe () |
void | updateCb (visualization_msgs::InteractiveMarkerUpdateConstPtr msg) |
void | updateMarkers (const std::string &server_id, const std::vector< visualization_msgs::InteractiveMarker > &markers) |
void | updatePoses (const std::string &server_id, const std::vector< visualization_msgs::InteractiveMarkerPose > &marker_poses) |
Additional Inherited Members | |
Public Slots inherited from rviz::Display | |
virtual void | onEnableChanged () |
void | queueRender () |
Convenience function which calls context_->queueRender(). More... | |
void | setEnabled (bool enabled) |
Enable or disable this Display. More... | |
virtual void | setIcon (const QIcon &icon) |
Set the Display's icon. More... | |
Public Slots inherited from rviz::BoolProperty | |
bool | setBool (bool value) |
Signals inherited from rviz::Display | |
void | timeSignal (rviz::Display *display, ros::Time time) |
Signals inherited from rviz::Property | |
void | aboutToChange () |
Emitted by setValue() just before the value has changed. More... | |
void | changed () |
Emitted by setValue() just after the value has changed. More... | |
void | childListChanged (Property *this_property) |
Emitted after insertions and deletions of child Properties. More... | |
Protected Attributes inherited from rviz::Display | |
DisplayContext * | context_ |
This DisplayContext pointer is the main connection a Display has into the rest of rviz. This is how the FrameManager is accessed, the SelectionManager, etc. When a Display subclass wants to signal that a new render should be done right away, call context_->queueRender(). More... | |
QString | fixed_frame_ |
A convenience variable equal to context_->getFixedFrame(). More... | |
Ogre::SceneManager * | scene_manager_ |
A convenience variable equal to context_->getSceneManager(). More... | |
Ogre::SceneNode * | scene_node_ |
The Ogre::SceneNode to hold all 3D scene elements shown by this Display. More... | |
ros::NodeHandle | threaded_nh_ |
A NodeHandle whose CallbackQueue is run from a different thread than the GUI. More... | |
ros::NodeHandle | update_nh_ |
A NodeHandle whose CallbackQueue is run from the main GUI thread (the "update" thread). More... | |
Protected Attributes inherited from rviz::Property | |
bool | child_indexes_valid_ |
True if row_number_within_parent_ of all children is valid, false if not. More... | |
QIcon | icon_ |
PropertyTreeModel * | model_ |
Pointer to the PropertyTreeModel managing this property tree. More... | |
QVariant | value_ |
This is the central property value. If you set it directly in a subclass, do so with care because many things depend on the aboutToChange() and changed() events emitted by setValue(). More... | |
Displays Interactive Markers.
Definition at line 65 of file interactive_marker_display.h.
|
private |
Definition at line 128 of file interactive_marker_display.h.
|
private |
Definition at line 129 of file interactive_marker_display.h.
|
private |
Definition at line 130 of file interactive_marker_display.h.
rviz::InteractiveMarkerDisplay::InteractiveMarkerDisplay | ( | ) |
Definition at line 83 of file interactive_marker_display.cpp.
|
private |
Definition at line 273 of file interactive_marker_display.cpp.
|
virtual |
Called by setFixedFrame(). Override to respond to changes to fixed_frame_.
Reimplemented from rviz::Display.
Definition at line 351 of file interactive_marker_display.cpp.
|
private |
Definition at line 203 of file interactive_marker_display.cpp.
|
private |
Definition at line 324 of file interactive_marker_display.cpp.
|
protectedvirtual |
Derived classes override this to do the actual work of disabling themselves.
Reimplemented from rviz::Display.
Definition at line 132 of file interactive_marker_display.cpp.
|
protectedvirtual |
Derived classes override this to do the actual work of enabling themselves.
Reimplemented from rviz::Display.
Definition at line 127 of file interactive_marker_display.cpp.
|
virtual |
Override this function to do subclass-specific initialization.
This is called after vis_manager_ and scene_manager_ are set, and before load() or setEnabled().
setName() may or may not have been called before this.
Reimplemented from rviz::Display.
Definition at line 107 of file interactive_marker_display.cpp.
|
protectedslot |
Definition at line 173 of file interactive_marker_display.cpp.
|
private |
|
protectedslot |
Definition at line 167 of file interactive_marker_display.cpp.
|
virtual |
Called to tell the display to clear its state.
Reimplemented from rviz::Display.
Definition at line 358 of file interactive_marker_display.cpp.
|
private |
Definition at line 337 of file interactive_marker_display.cpp.
|
virtual |
Set the ROS topic to listen to for this display.
By default, do nothing. Subclasses should override this method if they subscribe to a single ROS topic.
setTopic() is used by the "New display by topic" window; it is called with a user selected topic and its type.
topic | The published topic to be visualized. |
datatype | The datatype of the topic. |
Reimplemented from rviz::Display.
Definition at line 122 of file interactive_marker_display.cpp.
|
private |
Definition at line 343 of file interactive_marker_display.cpp.
|
private |
Definition at line 156 of file interactive_marker_display.cpp.
|
private |
Definition at line 178 of file interactive_marker_display.cpp.
|
virtual |
Called periodically by the visualization manager.
wall_dt | Wall-clock time, in seconds, since the last time the update list was run through. |
ros_dt | ROS time, in seconds, since the last time the update list was run through. |
Reimplemented from rviz::Display.
Definition at line 188 of file interactive_marker_display.cpp.
|
private |
Definition at line 330 of file interactive_marker_display.cpp.
|
protectedslot |
Definition at line 410 of file interactive_marker_display.cpp.
|
private |
Definition at line 215 of file interactive_marker_display.cpp.
|
private |
Definition at line 286 of file interactive_marker_display.cpp.
|
protectedslot |
Definition at line 380 of file interactive_marker_display.cpp.
|
protectedslot |
Definition at line 365 of file interactive_marker_display.cpp.
|
protectedslot |
Definition at line 395 of file interactive_marker_display.cpp.
|
protectedslot |
Definition at line 137 of file interactive_marker_display.cpp.
|
private |
Definition at line 135 of file interactive_marker_display.h.
|
private |
Definition at line 142 of file interactive_marker_display.h.
|
private |
Definition at line 146 of file interactive_marker_display.h.
|
private |
Definition at line 144 of file interactive_marker_display.h.
|
private |
Definition at line 131 of file interactive_marker_display.h.
|
private |
Definition at line 138 of file interactive_marker_display.h.
|
private |
Definition at line 140 of file interactive_marker_display.h.
|
private |
Definition at line 139 of file interactive_marker_display.h.
|
private |
Definition at line 141 of file interactive_marker_display.h.
|
private |
Definition at line 148 of file interactive_marker_display.h.