Classes | Public Member Functions | Protected Member Functions | Protected Attributes
planning_scene_monitor::LockedPlanningSceneRO Class Reference

This is a convenience class for obtaining access to an instance of a locked PlanningScene. More...

#include <planning_scene_monitor.h>

Inheritance diagram for planning_scene_monitor::LockedPlanningSceneRO:
Inheritance graph

List of all members.


struct  SingleUnlock

Public Member Functions

const PlanningSceneMonitorPtr & getPlanningSceneMonitor ()
 LockedPlanningSceneRO (const PlanningSceneMonitorPtr &planning_scene_monitor)
 operator bool () const
 operator const planning_scene::PlanningSceneConstPtr & () const
planning_scene::PlanningSceneConstPtr & 
operator-> () const

Protected Member Functions

void initialize (bool read_only)
 LockedPlanningSceneRO (const PlanningSceneMonitorPtr &planning_scene_monitor, bool read_only)

Protected Attributes

SingleUnlockPtr lock_
PlanningSceneMonitorPtr planning_scene_monitor_

Detailed Description

This is a convenience class for obtaining access to an instance of a locked PlanningScene.

Instances of this class can be used almost exactly like instances of a PlanningScenePtr because of the typecast operator and "operator->" functions. Therefore you will often see code like this:

   planning_scene_monitor::LockedPlanningSceneRO ls(planning_scene_monitor);
   robot_model::RobotModelConstPtr model = ls->getRobotModel();

The function "getRobotModel()" is a member of PlanningScene and not a member of this class. However because of the "operator->" here which returns a PlanningSceneConstPtr, this works.

Any number of these "ReadOnly" locks can exist at a given time. The intention is that users which only need to read from the PlanningScene will use these and will thus not interfere with each other.

See also:

Definition at line 567 of file planning_scene_monitor.h.

Constructor & Destructor Documentation

planning_scene_monitor::LockedPlanningSceneRO::LockedPlanningSceneRO ( const PlanningSceneMonitorPtr &  planning_scene_monitor) [inline]

Definition at line 570 of file planning_scene_monitor.h.

planning_scene_monitor::LockedPlanningSceneRO::LockedPlanningSceneRO ( const PlanningSceneMonitorPtr &  planning_scene_monitor,
bool  read_only 
) [inline, protected]

Definition at line 597 of file planning_scene_monitor.h.

Member Function Documentation

Definition at line 576 of file planning_scene_monitor.h.

void planning_scene_monitor::LockedPlanningSceneRO::initialize ( bool  read_only) [inline, protected]

Definition at line 603 of file planning_scene_monitor.h.

planning_scene_monitor::LockedPlanningSceneRO::operator bool ( ) const [inline]

Definition at line 581 of file planning_scene_monitor.h.

planning_scene_monitor::LockedPlanningSceneRO::operator const planning_scene::PlanningSceneConstPtr & ( ) const [inline]

Definition at line 586 of file planning_scene_monitor.h.

const planning_scene::PlanningSceneConstPtr& planning_scene_monitor::LockedPlanningSceneRO::operator-> ( ) const [inline]

Definition at line 591 of file planning_scene_monitor.h.

Member Data Documentation

Definition at line 635 of file planning_scene_monitor.h.

Definition at line 634 of file planning_scene_monitor.h.

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

Author(s): Ioan Sucan , Sachin Chitta
autogenerated on Wed Jan 17 2018 03:32:07