Struct capsules::ieee802154::mac::AwakeMac [] [src]

pub struct AwakeMac<'a, R: Radio + 'a> {
    radio: &'a R,
    tx_client: Cell<Option<&'static TxClient>>,
    rx_client: Cell<Option<&'static RxClient>>,
}

Default implementation of a Mac layer. Acts as a pass-through between a MacDevice implementation and the underlying radio::Radio device. Does not change the power state of the radio during operation.

Fields

Methods

impl<'a, R: Radio + 'a> AwakeMac<'a, R>
[src]

[src]

Trait Implementations

impl<'a, R: Radio + 'a> Mac for AwakeMac<'a, R>
[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> TxClient for AwakeMac<'a, R>
[src]

[src]

impl<'a, R: Radio + 'a> RxClient for AwakeMac<'a, R>
[src]

[src]