| 
    Aikido
    
   | 
 
Executes trajectories in DART. More...
#include <aikido/control/KinematicSimulationTrajectoryExecutor.hpp>
  
Public Member Functions | |
| KinematicSimulationTrajectoryExecutor (::dart::dynamics::MetaSkeletonPtr metaskeleton) | |
| Constructor.  More... | |
| virtual | ~KinematicSimulationTrajectoryExecutor () | 
| void | validate (const trajectory::Trajectory *traj) override | 
| Validate the traj in preparation for execution.  More... | |
| std::future< void > | execute (const trajectory::ConstTrajectoryPtr &traj) override | 
| Execute traj and set future upon completion.  More... | |
| void | step (const std::chrono::system_clock::time_point &timepoint) override | 
| Step to a point in time.  More... | |
| void | cancel () override | 
| Cancels the current trajectory.  More... | |
  Public Member Functions inherited from aikido::control::TrajectoryExecutor | |
| TrajectoryExecutor (const std::vector< dart::dynamics::DegreeOfFreedom * > &dofs, const std::set< ExecutorType > otherTypes=std::set< ExecutorType >(), const std::chrono::milliseconds threadRate=defaultThreadRate) | |
| Constructor Documentation Inherited.  More... | |
| virtual | ~TrajectoryExecutor ()=default | 
  Public Member Functions inherited from aikido::control::Executor | |
| Executor (const std::set< ExecutorType > &types, const std::vector< dart::dynamics::DegreeOfFreedom * > &dofs, const std::chrono::milliseconds threadRate=defaultThreadRate) | |
| Constructor.  More... | |
| Executor (const ExecutorType type, const std::vector< dart::dynamics::DegreeOfFreedom * > &dofs, std::chrono::milliseconds threadRate=defaultThreadRate) | |
| Constructor.  More... | |
| virtual | ~Executor () | 
| std::set< ExecutorType > | getTypes () const | 
| Get all of this Executor's ExecutorTypes.  More... | |
| const std::vector< dart::dynamics::DegreeOfFreedom * > | getDofs () const | 
| Get list of dofs needed by this Executor.  More... | |
| void | start () | 
| Start the underlying ExecutorThread.  More... | |
| void | stop () | 
| Stops the underlying ExecutorThread.  More... | |
| bool | registerDofs () | 
| Lock the resources required by the DoFs.  More... | |
| void | releaseDofs () | 
| Unlock any resources required by the DoFs.  More... | |
Private Attributes | |
| ::dart::dynamics::MetaSkeletonPtr | mMetaSkeleton | 
| MetaSkeleton to execute trajectories on.  More... | |
| trajectory::ConstTrajectoryPtr | mTraj | 
| Trajectory being executed.  More... | |
| statespace::dart::ConstMetaSkeletonStateSpacePtr | mStateSpace | 
| Trajectory's MetaSkeletonStateSpace.  More... | |
| bool | mInProgress | 
| Whether a trajectory is being executed.  More... | |
| std::unique_ptr< std::promise< void > > | mPromise | 
| Promise whose future is returned by execute()  More... | |
| std::mutex | mMutex | 
| Manages access to mTraj, mInProgress, mPromise.  More... | |
Additional Inherited Members | |
  Protected Attributes inherited from aikido::control::TrajectoryExecutor | |
| std::set< const trajectory::Trajectory * > | mValidatedTrajectories | 
| Set of trajectories validated by executor.  More... | |
| std::chrono::system_clock::time_point | mExecutionStartTime | 
| Time of previous call.  More... | |
  Protected Attributes inherited from aikido::control::Executor | |
| std::set< ExecutorType > | mTypes | 
| Vector of executor types.  More... | |
| std::vector< dart::dynamics::DegreeOfFreedom * > | mDofs | 
| Vector of dof names.  More... | |
Executes trajectories in DART.
This simulates trajectories by setting interpolated DOF positions, without running dynamic simulation.
      
  | 
  explicit | 
Constructor.
| metaskeleton | MetaSkeleton to execute trajectories on. All trajectories must have dofs only in this skeleton. | 
      
  | 
  virtual | 
      
  | 
  overridevirtual | 
Cancels the current trajectory.
Implements aikido::control::TrajectoryExecutor.
      
  | 
  overridevirtual | 
Execute traj and set future upon completion.
| traj | Trajectory to be executed. Its StateSpace should be a MetaSkeletonStateSpace, where the dofs are all in the skeleton passed to this constructor. | 
| invalid_argument | if traj is invalid. | 
Implements aikido::control::TrajectoryExecutor.
      
  | 
  overridevirtual | 
Step to a point in time.
timepoint can be a time in the future to enable faster than real-time execution.| timepoint | Time to simulate to | 
If multiple threads are accessing this function or the skeleton associated with this executor, it is necessary to lock the skeleton before calling this method.
Implements aikido::control::TrajectoryExecutor.
      
  | 
  overridevirtual | 
Validate the traj in preparation for execution.
| traj | Trajectory to be validated | 
Implements aikido::control::TrajectoryExecutor.
      
  | 
  private | 
Whether a trajectory is being executed.
      
  | 
  private | 
MetaSkeleton to execute trajectories on.
      
  | 
  mutableprivate | 
Manages access to mTraj, mInProgress, mPromise.
      
  | 
  private | 
Promise whose future is returned by execute()
      
  | 
  private | 
Trajectory's MetaSkeletonStateSpace.
      
  | 
  private | 
Trajectory being executed.