pub struct FrameSender<BUFFER, PAYLOAD, const N: usize>{ /* private fields */ }Expand description
Frame sender “worker”, access and handling of frame transmissions is made through this structure.
Implementations§
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C1>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C1>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C1>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C1>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C2>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C2>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C2>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C2>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C3>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C3>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C3>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C3>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C4>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C4>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C4>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C4>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C5>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C5>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C5>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C5>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C6>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C6>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C6>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C6>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C7>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C7>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C7>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C7>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C1>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C1>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C1>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C1>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C2>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C2>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C2>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C2>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C3>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C3>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C3>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C3>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C4>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C4>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C4>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C4>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C5>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C5>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C5>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C5>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C6>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C6>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C6>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C6>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.
Source§impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C7>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C7>: TransferPayload,
impl<BUFFER, PAYLOAD, const N: usize> FrameSender<BUFFER, TxDma<PAYLOAD, C7>, N>where
BUFFER: Sized + StableDeref<Target = DMAFrame<N>> + DerefMut + 'static,
TxDma<PAYLOAD, C7>: TransferPayload,
Sourcepub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
pub fn transfer_complete_interrupt(&mut self) -> Option<BUFFER>
This method should be called in the transfer complete interrupt of the DMA, will return the sent frame if the transfer was truly completed.
Sourcepub fn ongoing_transfer(&self) -> bool
pub fn ongoing_transfer(&self) -> bool
Returns true if there is an ongoing transfer.