Loading...
Searching...
No Matches
ompl::control::MorseStatePropagator Class Reference

State propagation with MORSE. Only forward propagation is possible. More...

#include <ompl/extensions/morse/MorseStatePropagator.h>

Inheritance diagram for ompl::control::MorseStatePropagator:

Public Member Functions

 MorseStatePropagator (const SpaceInformationPtr &si)
 Construct representation of a MORSE state propagator. If si->getStateSpace() does not cast to a MorseStateSpace, an exception is thrown.
 
const base::MorseEnvironmentPtr & getEnvironment () const
 Get the MORSE environment this state propagator operates on.
 
bool canPropagateBackward () const override
 Will always return false, as the simulation can only proceed forward in time.
 
void propagate (const base::State *state, const Control *control, double duration, base::State *result) const override
 Propagate from a state, under a given control, for some specified amount of time.
 
- Public Member Functions inherited from ompl::control::StatePropagator
 StatePropagator (SpaceInformation *si)
 Constructor.
 
 StatePropagator (const SpaceInformationPtr &si)
 Constructor.
 
virtual void propagate (const base::State *state, const Control *control, double duration, base::State *result) const =0
 Propagate from a state, given a control, for some specified amount of time (the amount of time can also be negative, if canPropagateBackward() returns true)
 
virtual bool canPropagateBackward () const
 Some systems can only propagate forward in time (i.e., the duration argument for the propagate() function is always positive). If this is the case, this function should return false. Planners that need backward propagation (negative durations) will call this function to check. If backward propagation is possible, this function should return true (this is the default).
 
virtual bool steer (const base::State *, const base::State *, Control *, double &) const
 Compute the control that can take the system from state from to state to. Store that control in result; the duration for which the control should be applied is stored in duration; return true if the computation was successful; return false otherwise;.
 
virtual bool canSteer () const
 Return true if the steer() function has been implemented.
 

Protected Attributes

base::MorseEnvironmentPtr env_
 The MORSE environment this state propagator operates on.
 
- Protected Attributes inherited from ompl::control::StatePropagator
SpaceInformationsi_
 The instance of space information this state propagator operates on.
 

Detailed Description

State propagation with MORSE. Only forward propagation is possible.

At every propagation step, controls are applied using MorseEnvironment::applyControl(), and then worldStep() is called.

Definition at line 53 of file MorseStatePropagator.h.

Constructor & Destructor Documentation

◆ MorseStatePropagator()

ompl::control::MorseStatePropagator::MorseStatePropagator ( const SpaceInformationPtr si)

Construct representation of a MORSE state propagator. If si->getStateSpace() does not cast to a MorseStateSpace, an exception is thrown.

Definition at line 42 of file MorseStatePropagator.cpp.

◆ ~MorseStatePropagator()

virtual ompl::control::MorseStatePropagator::~MorseStatePropagator ( )
inlinevirtual

Definition at line 61 of file MorseStatePropagator.h.

Member Function Documentation

◆ canPropagateBackward()

bool ompl::control::MorseStatePropagator::canPropagateBackward ( ) const
overridevirtual

Will always return false, as the simulation can only proceed forward in time.

Reimplemented from ompl::control::StatePropagator.

Definition at line 74 of file MorseStatePropagator.cpp.

◆ getEnvironment()

const base::MorseEnvironmentPtr & ompl::control::MorseStatePropagator::getEnvironment ( ) const
inline

Get the MORSE environment this state propagator operates on.

Definition at line 66 of file MorseStatePropagator.h.

◆ propagate()

void ompl::control::MorseStatePropagator::propagate ( const base::State state,
const Control control,
double  duration,
base::State result 
) const
overridevirtual

Propagate from a state, under a given control, for some specified amount of time.

Implements ompl::control::StatePropagator.

Definition at line 50 of file MorseStatePropagator.cpp.

Member Data Documentation

◆ env_

base::MorseEnvironmentPtr ompl::control::MorseStatePropagator::env_
protected

The MORSE environment this state propagator operates on.

Definition at line 80 of file MorseStatePropagator.h.


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