pub struct CameraTransfer<'d, BUF: DmaRxBuffer> { /* private fields */ }
Available on crate feature
unstable
only.Expand description
Represents an ongoing (or potentially stopped) transfer from the Camera to a DMA buffer.
Implementations§
Source§impl<'d, BUF: DmaRxBuffer> CameraTransfer<'d, BUF>
impl<'d, BUF: DmaRxBuffer> CameraTransfer<'d, BUF>
Sourcepub fn is_done(&self) -> bool
pub fn is_done(&self) -> bool
Returns true when Self::wait will not block.
Sourcepub fn stop(self) -> (Camera<'d>, BUF)
pub fn stop(self) -> (Camera<'d>, BUF)
Stops this transfer on the spot and returns the peripheral and buffer.
Sourcepub fn wait(self) -> (Result<(), DmaError>, Camera<'d>, BUF)
pub fn wait(self) -> (Result<(), DmaError>, Camera<'d>, BUF)
Waits for the transfer to stop and returns the peripheral and buffer.
Note: The camera doesn’t really “finish” its transfer, so what you’re really waiting for here is a DMA Error. You typically just want to call Self::stop once you have the data you need.
Trait Implementations§
Source§impl<BUF: DmaRxBuffer> Deref for CameraTransfer<'_, BUF>
impl<BUF: DmaRxBuffer> Deref for CameraTransfer<'_, BUF>
Source§impl<BUF: DmaRxBuffer> DerefMut for CameraTransfer<'_, BUF>
impl<BUF: DmaRxBuffer> DerefMut for CameraTransfer<'_, BUF>
Source§impl<BUF: DmaRxBuffer> Drop for CameraTransfer<'_, BUF>
impl<BUF: DmaRxBuffer> Drop for CameraTransfer<'_, BUF>
Auto Trait Implementations§
impl<'d, BUF> Freeze for CameraTransfer<'d, BUF>where
<BUF as DmaRxBuffer>::View: Freeze,
impl<'d, BUF> RefUnwindSafe for CameraTransfer<'d, BUF>where
<BUF as DmaRxBuffer>::View: RefUnwindSafe,
impl<'d, BUF> Send for CameraTransfer<'d, BUF>where
<BUF as DmaRxBuffer>::View: Send,
impl<'d, BUF> Sync for CameraTransfer<'d, BUF>where
<BUF as DmaRxBuffer>::View: Sync,
impl<'d, BUF> Unpin for CameraTransfer<'d, BUF>where
<BUF as DmaRxBuffer>::View: Unpin,
impl<'d, BUF> !UnwindSafe for CameraTransfer<'d, BUF>
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
§impl<P, T> Receiver for Pwhere
P: Deref<Target = T> + ?Sized,
T: ?Sized,
impl<P, T> Receiver for Pwhere
P: Deref<Target = T> + ?Sized,
T: ?Sized,
§impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
impl<T, U> TryFrom<U> for Twhere
U: Into<T>,
§impl<T, U> TryInto<U> for Twhere
U: TryFrom<T>,
impl<T, U> TryInto<U> for Twhere
U: TryFrom<T>,
Source§impl<R> TryRngCore for Rwhere
R: RngCore + ?Sized,
impl<R> TryRngCore for Rwhere
R: RngCore + ?Sized,
Source§fn try_next_u32(&mut self) -> Result<u32, <R as TryRngCore>::Error>
fn try_next_u32(&mut self) -> Result<u32, <R as TryRngCore>::Error>
Return the next random
u32
.Source§fn try_next_u64(&mut self) -> Result<u64, <R as TryRngCore>::Error>
fn try_next_u64(&mut self) -> Result<u64, <R as TryRngCore>::Error>
Return the next random
u64
.Source§fn try_fill_bytes(
&mut self,
dst: &mut [u8],
) -> Result<(), <R as TryRngCore>::Error>
fn try_fill_bytes( &mut self, dst: &mut [u8], ) -> Result<(), <R as TryRngCore>::Error>
Fill
dest
entirely with random data.Source§fn unwrap_err(self) -> UnwrapErr<Self>where
Self: Sized,
fn unwrap_err(self) -> UnwrapErr<Self>where
Self: Sized,
Wrap RNG with the
UnwrapErr
wrapper.Source§fn unwrap_mut(&mut self) -> UnwrapMut<'_, Self>
fn unwrap_mut(&mut self) -> UnwrapMut<'_, Self>
Wrap RNG with the
UnwrapMut
wrapper.