Struct capsules::ieee802154::xmac::XMac [] [src]

pub struct XMac<'a, R: Radio + 'a, A: Alarm + 'a> {
    radio: &'a R,
    alarm: &'a A,
    rng: &'a RNG,
    tx_client: Cell<Option<&'static TxClient>>,
    rx_client: Cell<Option<&'static RxClient>>,
    state: Cell<XMacState>,
    delay_sleep: Cell<bool>,
    tx_header: Cell<Option<XMacHeaderInfo>>,
    tx_payload: TakeCell<'static, [u8]>,
    tx_len: Cell<usize>,
    tx_preamble_pending: Cell<bool>,
    tx_preamble_seq_num: Cell<u8>,
    tx_preamble_buf: TakeCell<'static, [u8]>,
    rx_pending: Cell<bool>,
}

Fields

Methods

impl<'a, R: Radio + 'a, A: Alarm + 'a> XMac<'a, R, A>
[src]

[src]

[src]

[src]

[src]

[src]

[src]

[src]

[src]

Trait Implementations

impl<'a, R: Radio + 'a, A: Alarm + 'a> Client for XMac<'a, R, A>
[src]

[src]

Called by the (RNG)[trait.RNG.html] when there are one or more random numbers available Read more

impl<'a, R: Radio + 'a, A: Alarm> Mac for XMac<'a, R, A>
[src]

[src]

Initializes the layer; may require a buffer to temporarily retaining frames to be transmitted Read more

[src]

Indicates whether or not the MAC protocol is active and can send frames

[src]

Sets the notified client for configuration changes

[src]

Sets the short 16-bit address of the radio

[src]

Sets the long 64-bit address of the radio

[src]

Sets the 16-bit PAN id of the radio

[src]

The short 16-bit address of the radio

[src]

The long 64-bit address of the radio

[src]

The 16-bit PAN id of the radio

[src]

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 specificed config_client is notified on completed reconfiguration. Read more

[src]

Sets the notified client for transmission completions

[src]

Sets the notified client for frame receptions

[src]

Sets the buffer for packet reception

[src]

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. Read more

impl<'a, R: Radio + 'a, A: Alarm + 'a> Client for XMac<'a, R, A>
[src]

[src]

Callback signaled when the alarm's clock reaches the value set in Alarm#set_alarm. Read more

impl<'a, R: Radio + 'a, A: Alarm + 'a> PowerClient for XMac<'a, R, A>
[src]

[src]

impl<'a, R: Radio + 'a, A: Alarm + 'a> TxClient for XMac<'a, R, A>
[src]

[src]

impl<'a, R: Radio + 'a, A: Alarm + 'a> RxClient for XMac<'a, R, A>
[src]

[src]