Struct arci::JointPositionDifferenceLimiter
source · pub struct JointPositionDifferenceLimiter<C>where
C: JointTrajectoryClient,{ /* private fields */ }
Expand description
JointPositionDifferenceLimiter limits the difference of position between trajectory points and trajectory points are interpolated linearly to satisfy the limits in JointTrajectoryClient::send_joint_positions. In send_joint_trajectory, if no velocities is specified or zero velocities is specified at the last point, trajectory points are interpolated, otherwise simply input trajectory is forwarded to client.
Implementations§
source§impl<C> JointPositionDifferenceLimiter<C>where
C: JointTrajectoryClient,
impl<C> JointPositionDifferenceLimiter<C>where C: JointTrajectoryClient,
Trait Implementations§
source§impl<C> JointTrajectoryClient for JointPositionDifferenceLimiter<C>where
C: JointTrajectoryClient,
impl<C> JointTrajectoryClient for JointPositionDifferenceLimiter<C>where C: JointTrajectoryClient,
source§fn send_joint_trajectory(
&self,
trajectory: Vec<TrajectoryPoint>
) -> Result<WaitFuture, Error>
fn send_joint_trajectory( &self, trajectory: Vec<TrajectoryPoint> ) -> Result<WaitFuture, Error>
If no velocities is specified or zero velocities is specified at the last point, trajectory points are interpolated, otherwise simply input trajectory is forwarded to client.
source§fn joint_names(&self) -> Vec<String>
fn joint_names(&self) -> Vec<String>
Returns names of joints that this client handles.
source§fn current_joint_positions(&self) -> Result<Vec<f64>, Error>
fn current_joint_positions(&self) -> Result<Vec<f64>, Error>
Returns the current joint positions.
source§fn send_joint_positions(
&self,
positions: Vec<f64>,
duration: Duration
) -> Result<WaitFuture, Error>
fn send_joint_positions( &self, positions: Vec<f64>, duration: Duration ) -> Result<WaitFuture, Error>
Send the specified joint positions and returns a future that waits until
complete the move joints. Read more
Auto Trait Implementations§
impl<C> RefUnwindSafe for JointPositionDifferenceLimiter<C>where C: RefUnwindSafe,
impl<C> Send for JointPositionDifferenceLimiter<C>
impl<C> Sync for JointPositionDifferenceLimiter<C>
impl<C> Unpin for JointPositionDifferenceLimiter<C>where C: Unpin,
impl<C> UnwindSafe for JointPositionDifferenceLimiter<C>where C: UnwindSafe,
Blanket Implementations§
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.