Connection

Struct Connection 

Source
pub struct Connection { /* private fields */ }
Expand description

Connection to a Crazyflie

Implementations§

Source§

impl Connection

Source

pub fn new(internal_connection: Box<dyn ConnectionTrait + Send + Sync>) -> Self

Create a new connection object

Source

pub async fn wait_close(&self) -> String

Wait for the connection to be closed. Returns the message stored in the disconnected connection status that indicate the reason for the disconnection

Source

pub async fn close(&self)

Close the connection and wait for the connection task to stop.

The connection can also be closed by simply dropping the connection object. Though, if the connection task is currently processing a packet, it will continue running until the current packet has been processed. This function will wait for any ongoing packet to be processed and for the communication task to stop.

Source

pub async fn status(&self) -> ConnectionStatus

Return the connection status

Source

pub async fn wait_disconnect(&self)

Block until the connection is dropped. The status() function can be used to get the reason for the disconnection.

Source

pub async fn send_packet(&self, packet: Packet) -> Result<(), Error>

Send a packet to the connected Crazyflie

This function can return an error if the connection task is not active anymore. This can happen if the Crazyflie is disconnected due to a timeout

Source

pub async fn recv_packet(&self) -> Result<Packet, Error>

Receive a packet from the connected Crazyflie

This function can return an error if the connection task is not active anymore. This can happen if the Crazyflie is disconnected due to a timeout

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.