KrisLibrary  1.0.0
Public Member Functions | Public Attributes | List of all members
ReversibleControlSpace Class Reference

#include <ControlSpace.h>

Inheritance diagram for ReversibleControlSpace:
ControlSpace KinematicControlSpace

Public Member Functions

virtual bool ReverseControl (const State &x0, const State &x1, ControlInput &u)
 
- Public Member Functions inherited from ControlSpace
virtual std::string VariableName (int i)
 Returns an identifier for the i'th control variable.
 
virtual std::shared_ptr< CSetGetControlSet (const State &x)
 
virtual std::shared_ptr< SteeringFunctionGetSteeringFunction ()
 Returns this space's steering function, if available.
 
virtual InterpolatorPtr Simulate (const State &x0, const ControlInput &u)=0
 
virtual void Successor (const State &x0, const ControlInput &u, State &x1)
 
virtual Math::VectorFieldFunctionSuccessorNumeric ()
 
virtual void SampleControl (const State &x, ControlInput &u)
 
virtual bool IsValidControl (const State &x, const ControlInput &u)
 

Public Attributes

std::shared_ptr< ControlSpacereverseControlSpace
 
- Public Attributes inherited from ControlSpace
std::shared_ptr< CSetmyControlSet
 Dynamically overridable default control set (Note: state independent)
 
std::shared_ptr< SteeringFunctionmySteeringFunction
 Dynamically overridable default steering function.
 

Detailed Description

A control space that also can be reversed.

In addition to the forward successor function x1 = f(x0,u), this also defines a precessor function x0 = g(x1,u') and a control reversal u' such that g(f(x0,u),u') = x1.

Member Function Documentation

virtual bool ReversibleControlSpace::ReverseControl ( const State x0,
const State x1,
ControlInput u 
)
inlinevirtual

If the system is reversible and x1 = f(x0,u), changes u so that x0 = f(x1,u) and returns true. If no such u exists, return false.

Reimplemented in KinematicControlSpace.


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