This class represents the data necessary for CollisionChecker to operate safely across multiple threads in its const
API.
Instances of this class are owned and managed by a particular CollisionChecker.
If using OMP to perform parallel const queries on a CollisionChecker, it will never be necessary to interact with CollisionCheckerContext instances. Only if using some other threading paradigm will it be necessary to work with "stand alone" instances. See CollisionChecker's documentation for more details.
In all cases, modifying context should happen through CollisionChecker::PerformOperationAgainstAllModelContexts(). Modifying the contained Drake Contexts directly is generally erroneous.
#include <drake/planning/collision_checker_context.h>
Public Member Functions | |
CollisionCheckerContext (const RobotDiagram< double > *model) | |
The resulting object stores an alias to model ; the passed model should have a lifetime greater than the constructed object. More... | |
virtual | ~CollisionCheckerContext () |
std::unique_ptr< CollisionCheckerContext > | Clone () const |
const systems::Context< double > & | model_context () const |
Gets the contained model context. More... | |
const systems::Context< double > & | plant_context () const |
Gets the contained plant context. More... | |
const systems::Context< double > & | scene_graph_context () const |
Gets the contained scene graph context. More... | |
const geometry::QueryObject< double > & | GetQueryObject () const |
Gets the scene graph geometry query object. More... | |
systems::Context< double > & | mutable_model_context () |
systems::Context< double > & | mutable_plant_context () |
systems::Context< double > & | mutable_scene_graph_context () |
Does not allow copy, move, or assignment generally. | |
Protected copy construction is enabled for sub-classes to use in their implementation of DoClone(). | |
CollisionCheckerContext & | operator= (const CollisionCheckerContext &)=delete |
CollisionCheckerContext (CollisionCheckerContext &&)=delete | |
CollisionCheckerContext & | operator= (CollisionCheckerContext &&)=delete |
Protected Member Functions | |
CollisionCheckerContext (const CollisionCheckerContext &other) | |
Derived classes can use this copy constructor to help implement their own DoClone() methods. More... | |
virtual std::unique_ptr< CollisionCheckerContext > | DoClone () const |
Allow derived context types to implement additional clone behavior. More... | |
|
delete |
|
explicit |
The resulting object stores an alias to model
; the passed model should have a lifetime greater than the constructed object.
|
virtual |
|
protected |
Derived classes can use this copy constructor to help implement their own DoClone() methods.
std::unique_ptr<CollisionCheckerContext> Clone | ( | ) | const |
|
protectedvirtual |
Allow derived context types to implement additional clone behavior.
const geometry::QueryObject<double>& GetQueryObject | ( | ) | const |
Gets the scene graph geometry query object.
const systems::Context<double>& model_context | ( | ) | const |
Gets the contained model context.
systems::Context<double>& mutable_model_context | ( | ) |
systems::Context<double>& mutable_plant_context | ( | ) |
systems::Context<double>& mutable_scene_graph_context | ( | ) |
|
delete |
|
delete |
const systems::Context<double>& plant_context | ( | ) | const |
Gets the contained plant context.
const systems::Context<double>& scene_graph_context | ( | ) | const |
Gets the contained scene graph context.