Trait arci::JointTrajectoryClient [−][src]
pub trait JointTrajectoryClient: Send + Sync { fn joint_names(&self) -> Vec<String>; fn current_joint_positions(&self) -> Result<Vec<f64>, Error>; fn send_joint_positions(
&self,
positions: Vec<f64>,
duration: Duration
) -> Result<WaitFuture, Error>; fn send_joint_trajectory(
&self,
trajectory: Vec<TrajectoryPoint>
) -> Result<WaitFuture, Error>; }
Required methods
fn joint_names(&self) -> Vec<String>
fn joint_names(&self) -> Vec<String>
Returns names of joints that this client handles.
Returns the current joint positions.
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.
Implementation
The returned future is expected to behave similarly to
std::thread::JoinHandle
and [tokio::task::JoinHandle
]:
- Can wait for the operation to complete by
.await
. - The operation does not end even if it is dropped.
If the operation may block the current thread for an extended period of time, consider spawning a thread to running blocking operations.
fn send_joint_trajectory(
&self,
trajectory: Vec<TrajectoryPoint>
) -> Result<WaitFuture, Error>
fn send_joint_trajectory(
&self,
trajectory: Vec<TrajectoryPoint>
) -> Result<WaitFuture, Error>
Send the specified joint trajectory and returns a future that waits until complete the move joints.
Implementation
See the “Implementation” section of the
send_joint_positions
method.
Implementations on Foreign Types
impl<T: JointTrajectoryClient + ?Sized> JointTrajectoryClient for Box<T> where
Box<T>: Send + Sync,
impl<T: JointTrajectoryClient + ?Sized> JointTrajectoryClient for Box<T> where
Box<T>: Send + Sync,
fn send_joint_positions(
&self,
positions: Vec<f64>,
duration: Duration
) -> Result<WaitFuture, Error>
fn send_joint_trajectory(
&self,
trajectory: Vec<TrajectoryPoint>
) -> Result<WaitFuture, Error>
impl<T: JointTrajectoryClient + ?Sized> JointTrajectoryClient for Arc<T> where
Arc<T>: Send + Sync,
impl<T: JointTrajectoryClient + ?Sized> JointTrajectoryClient for Arc<T> where
Arc<T>: Send + Sync,
fn send_joint_positions(
&self,
positions: Vec<f64>,
duration: Duration
) -> Result<WaitFuture, Error>
fn send_joint_trajectory(
&self,
trajectory: Vec<TrajectoryPoint>
) -> Result<WaitFuture, Error>
Implementors
impl<C> JointTrajectoryClient for PartialJointTrajectoryClient<C> where
C: JointTrajectoryClient,
impl<T> JointTrajectoryClient for JointTrajectoryClientsContainer<T> where
T: JointTrajectoryClient + Sync,