pub struct XMac<'a, R: Radio<'a>, A: Alarm<'a>> { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl<'a, R: Radio<'a>, A: Alarm<'a>> Mac<'a> for XMac<'a, R, A>
impl<'a, R: Radio<'a>, A: Alarm<'a>> Mac<'a> for XMac<'a, R, A>
Source§fn is_on(&self) -> bool
fn is_on(&self) -> bool
Indicates whether or not the MAC protocol is active and can send frames
Source§fn set_config_client(&self, client: &'a dyn ConfigClient)
fn set_config_client(&self, client: &'a dyn ConfigClient)
Sets the notified client for configuration changes
Source§fn set_address(&self, addr: u16)
fn set_address(&self, addr: u16)
Sets the short 16-bit address of the radio
Source§fn set_address_long(&self, addr: [u8; 8])
fn set_address_long(&self, addr: [u8; 8])
Sets the long 64-bit address of the radio
Source§fn get_address(&self) -> u16
fn get_address(&self) -> u16
The short 16-bit address of the radio
Source§fn get_address_long(&self) -> [u8; 8]
fn get_address_long(&self) -> [u8; 8]
The long 64-bit address of the radio
Source§fn config_commit(&self)
fn config_commit(&self)
Must be called after one or more calls to
set_*
. If
set_*
is called without calling config_commit
, there is no guarantee
that the underlying hardware configuration (addresses, pan ID) is in
line with this MAC protocol implementation. The specified config_client is
notified on completed reconfiguration.Source§fn set_transmit_client(&self, client: &'a dyn TxClient)
fn set_transmit_client(&self, client: &'a dyn TxClient)
Sets the notified client for transmission completions
Source§fn set_receive_client(&self, client: &'a dyn RxClient)
fn set_receive_client(&self, client: &'a dyn RxClient)
Sets the notified client for frame receptions
Source§fn set_receive_buffer(&self, buffer: &'static mut [u8])
fn set_receive_buffer(&self, buffer: &'static mut [u8])
Sets the buffer for packet reception
Source§fn transmit(
&self,
full_mac_frame: &'static mut [u8],
frame_len: usize,
) -> Result<(), (ErrorCode, &'static mut [u8])>
fn transmit( &self, full_mac_frame: &'static mut [u8], frame_len: usize, ) -> Result<(), (ErrorCode, &'static mut [u8])>
Transmits complete MAC frames, which must be prepared by an ieee802154::device::MacDevice
before being passed to the Mac layer. Returns the frame buffer in case of an error.
Auto Trait Implementations§
impl<'a, R, A> !Freeze for XMac<'a, R, A>
impl<'a, R, A> !RefUnwindSafe for XMac<'a, R, A>
impl<'a, R, A> !Send for XMac<'a, R, A>
impl<'a, R, A> !Sync for XMac<'a, R, A>
impl<'a, R, A> Unpin for XMac<'a, R, A>
impl<'a, R, A> !UnwindSafe for XMac<'a, 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