#include <selection_handler.h>
Classes | |
class | Listener |
Public Member Functions | |
void | addTrackedObject (Ogre::MovableObject *object) |
void | addTrackedObjects (Ogre::SceneNode *node) |
virtual void | createProperties (const Picked &obj, Property *parent_property) |
Override to create properties of the given picked object(s). More... | |
virtual void | destroyProperties (const Picked &obj, Property *parent_property) |
Destroy all properties for the given picked object(s). More... | |
virtual void | getAABBs (const Picked &obj, V_AABB &aabbs) |
CollObjectHandle | getHandle () const |
virtual InteractiveObjectWPtr | getInteractiveObject () |
Get the object to listen to mouse events and other interaction calls during use of the 'interact' tool. More... | |
virtual bool | needsAdditionalRenderPass (uint32_t pass) |
virtual void | onDeselect (const Picked &obj) |
virtual void | onSelect (const Picked &obj) |
virtual void | postRenderPass (uint32_t pass) |
virtual void | preRenderPass (uint32_t pass) |
void | removeTrackedObject (Ogre::MovableObject *object) |
SelectionHandler (DisplayContext *context) | |
virtual void | setInteractiveObject (InteractiveObjectWPtr object) |
Set an object to listen to mouse events and other interaction calls during use of the 'interact' tool. More... | |
virtual void | updateProperties () |
Override to update property values. More... | |
virtual void | updateTrackedBoxes () |
virtual | ~SelectionHandler () |
Protected Types | |
typedef boost::shared_ptr< Listener > | ListenerPtr |
typedef std::map< std::pair< CollObjectHandle, uint64_t >, std::pair< Ogre::SceneNode *, Ogre::WireBoundingBox * > > | M_HandleToBox |
typedef std::set< Ogre::MovableObject * > | S_Movable |
Protected Member Functions | |
void | createBox (const std::pair< CollObjectHandle, uint64_t > &handles, const Ogre::AxisAlignedBox &aabb, const std::string &material_name) |
Create or update a box for the given handle-int pair, with the box specified by aabb. More... | |
void | destroyBox (const std::pair< CollObjectHandle, uint64_t > &handles) |
Destroy the box associated with the given handle-int pair, if there is one. More... | |
Protected Attributes | |
M_HandleToBox | boxes_ |
DisplayContext * | context_ |
InteractiveObjectWPtr | interactive_object_ |
ListenerPtr | listener_ |
QList< Property * > | properties_ |
S_Movable | tracked_objects_ |
Private Attributes | |
CollObjectHandle | pick_handle_ |
Friends | |
class | SelectionManager |
Definition at line 64 of file selection_handler.h.
|
protected |
Definition at line 168 of file selection_handler.h.
|
protected |
Definition at line 142 of file selection_handler.h.
|
protected |
Definition at line 147 of file selection_handler.h.
rviz::SelectionHandler::SelectionHandler | ( | DisplayContext * | context | ) |
Definition at line 49 of file selection_handler.cpp.
|
virtual |
Definition at line 57 of file selection_handler.cpp.
void rviz::SelectionHandler::addTrackedObject | ( | Ogre::MovableObject * | object | ) |
Definition at line 119 of file selection_handler.cpp.
void rviz::SelectionHandler::addTrackedObjects | ( | Ogre::SceneNode * | node | ) |
Definition at line 97 of file selection_handler.cpp.
|
protected |
Create or update a box for the given handle-int pair, with the box specified by aabb.
Definition at line 180 of file selection_handler.cpp.
|
inlinevirtual |
Override to create properties of the given picked object(s).
Top-level properties created here should be added to properties_ so they will be automatically deleted by deleteProperties().
This base implementation does nothing.
Reimplemented in rviz::PointCloudSelectionHandler, rviz::RobotLinkSelectionHandler, rviz::PoseWithCovarianceDisplaySelectionHandler, rviz::PoseDisplaySelectionHandler, rviz::FrameSelectionHandler, and rviz::MarkerSelectionHandler.
Definition at line 83 of file selection_handler.h.
|
protected |
Destroy the box associated with the given handle-int pair, if there is one.
Definition at line 208 of file selection_handler.cpp.
|
virtual |
Destroy all properties for the given picked object(s).
This base implementation destroys all the properties in properties_.
If createProperties() adds all the top-level properties to properties_, there is no need to override this in a subclass.
Reimplemented in rviz::PointCloudSelectionHandler, and rviz::FrameSelectionHandler.
Definition at line 171 of file selection_handler.cpp.
Reimplemented in rviz::PointCloudSelectionHandler, rviz::PoseWithCovarianceDisplaySelectionHandler, and rviz::PoseDisplaySelectionHandler.
Definition at line 161 of file selection_handler.cpp.
|
inline |
Definition at line 131 of file selection_handler.h.
|
virtual |
Get the object to listen to mouse events and other interaction calls during use of the 'interact' tool.
Returns a boost::weak_ptr to the object, which may or may not point to something. Do not lock() the result and hold it for long periods because it may cause something visual to stick around after it was meant to be destroyed.
Definition at line 258 of file selection_handler.cpp.
|
inlinevirtual |
Reimplemented in rviz::PointCloudSelectionHandler.
Definition at line 105 of file selection_handler.h.
|
virtual |
Reimplemented in rviz::PointCloudSelectionHandler.
Definition at line 246 of file selection_handler.cpp.
|
virtual |
Reimplemented in rviz::PointCloudSelectionHandler.
Definition at line 225 of file selection_handler.cpp.
|
virtual |
Reimplemented in rviz::PointCloudSelectionHandler, and rviz::RobotLinkSelectionHandler.
Definition at line 85 of file selection_handler.cpp.
|
virtual |
Reimplemented in rviz::PointCloudSelectionHandler, and rviz::RobotLinkSelectionHandler.
Definition at line 74 of file selection_handler.cpp.
void rviz::SelectionHandler::removeTrackedObject | ( | Ogre::MovableObject * | object | ) |
Definition at line 127 of file selection_handler.cpp.
|
virtual |
Set an object to listen to mouse events and other interaction calls during use of the 'interact' tool.
Definition at line 253 of file selection_handler.cpp.
|
inlinevirtual |
Override to update property values.
updateProperties() is called on a timer to give selection handlers a chance to update displayed property values. Subclasses with properties that can change should implement this to update the property values based on new information from the selected object(s).
This base implementation does nothing.
Reimplemented in rviz::RobotLinkSelectionHandler, and rviz::MarkerSelectionHandler.
Definition at line 103 of file selection_handler.h.
|
virtual |
Definition at line 135 of file selection_handler.cpp.
|
friend |
Definition at line 179 of file selection_handler.h.
|
protected |
Definition at line 143 of file selection_handler.h.
|
protected |
Definition at line 145 of file selection_handler.h.
|
protected |
Definition at line 171 of file selection_handler.h.
|
protected |
Definition at line 169 of file selection_handler.h.
|
private |
Definition at line 177 of file selection_handler.h.
|
protected |
Definition at line 140 of file selection_handler.h.
|
protected |
Definition at line 148 of file selection_handler.h.