pub struct Ieee802154Component<R: 'static + Radio<'static>, A: 'static + AES128<'static> + AES128Ctr + AES128CBC + AES128ECB> { /* private fields */ }
Implementations§
Source§impl<R: 'static + Radio<'static>, A: 'static + AES128<'static> + AES128Ctr + AES128CBC + AES128ECB> Ieee802154Component<R, A>
impl<R: 'static + Radio<'static>, A: 'static + AES128<'static> + AES128Ctr + AES128CBC + AES128ECB> Ieee802154Component<R, A>
pub fn new( board_kernel: &'static Kernel, driver_num: usize, radio: &'static R, aes_mux: &'static MuxAES128CCM<'static, A>, pan_id: PanID, short_addr: u16, long_addr: [u8; 8], ) -> Self
Trait Implementations§
Source§impl<R: 'static + Radio<'static>, A: 'static + AES128<'static> + AES128Ctr + AES128CBC + AES128ECB> Component for Ieee802154Component<R, A>
impl<R: 'static + Radio<'static>, A: 'static + AES128<'static> + AES128Ctr + AES128CBC + AES128ECB> Component for Ieee802154Component<R, A>
Source§type StaticInput = (&'static mut MaybeUninit<VirtualAES128CCM<'static, A>>, &'static mut MaybeUninit<AwakeMac<'static, R>>, &'static mut MaybeUninit<Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>, &'static mut MaybeUninit<MuxMac<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>, &'static mut MaybeUninit<MacUser<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>, &'static mut MaybeUninit<RadioDriver<'static, MacUser<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>>, &'static mut MaybeUninit<[u8; 130]>, &'static mut MaybeUninit<[u8; 130]>, &'static mut MaybeUninit<[u8; 178]>, &'static mut MaybeUninit<[u8; 130]>)
type StaticInput = (&'static mut MaybeUninit<VirtualAES128CCM<'static, A>>, &'static mut MaybeUninit<AwakeMac<'static, R>>, &'static mut MaybeUninit<Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>, &'static mut MaybeUninit<MuxMac<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>, &'static mut MaybeUninit<MacUser<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>, &'static mut MaybeUninit<RadioDriver<'static, MacUser<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>>, &'static mut MaybeUninit<[u8; 130]>, &'static mut MaybeUninit<[u8; 130]>, &'static mut MaybeUninit<[u8; 178]>, &'static mut MaybeUninit<[u8; 130]>)
An optional type to specify the chip or board specific static memory
that a component needs to setup the output object(s). This is the memory
that
crate::static_buf!()
would normally setup, but generic
components cannot setup static buffers for types which are
chip-dependent, so those buffers have to be passed in manually, and the
Component::StaticInput
type makes this possible.Source§type Output = (&'static RadioDriver<'static, MacUser<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>, &'static MuxMac<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>)
type Output = (&'static RadioDriver<'static, MacUser<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>>, &'static MuxMac<'static, Framer<'static, AwakeMac<'static, R>, VirtualAES128CCM<'static, A>>>)
The type (e.g., capsule, peripheral) that this implementation of
Component
produces via Component::finalize()
. This is typically
a static reference (&'static
).Source§fn finalize(self, static_buffer: Self::StaticInput) -> Self::Output
fn finalize(self, static_buffer: Self::StaticInput) -> Self::Output
Auto Trait Implementations§
impl<R, A> Freeze for Ieee802154Component<R, A>
impl<R, A> !RefUnwindSafe for Ieee802154Component<R, A>
impl<R, A> !Send for Ieee802154Component<R, A>
impl<R, A> !Sync for Ieee802154Component<R, A>
impl<R, A> Unpin for Ieee802154Component<R, A>
impl<R, A> !UnwindSafe for Ieee802154Component<R, A>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more