RxControlInfo

Struct RxControlInfo 

Source
pub struct RxControlInfo {
Show 19 fields pub rssi: i32, pub rate: u32, pub sig_len: u32, pub rx_state: u32, pub dump_len: u32, pub he_sigb_len: u32, pub cur_single_mpdu: u32, pub cur_bb_format: u32, pub rx_channel_estimate_info_vld: u32, pub rx_channel_estimate_len: u32, pub second: u32, pub channel: u32, pub noise_floor: i32, pub is_group: u32, pub rxend_state: u32, pub rxmatch3: u32, pub rxmatch2: u32, pub rxmatch1: u32, pub rxmatch0: u32,
}
Available on crate feature wifi and esp32c6 and (crate features esp-now or sniffer) and crate feature unstable only.
Expand description

The radio metadata header of the received packet, which is the common header at the beginning of all RX callback buffers in promiscuous mode.

Fields§

§rssi: i32

Received Signal Strength Indicator (RSSI) of the packet, in dBm.

§rate: u32

PHY rate encoding of the packet. Only valid for non-HT (802.11b/g) packets.

§sig_len: u32

Length of the received packet including the Frame Check Sequence (FCS).

§rx_state: u32

Reception state of the packet: 0 for no error, others indicate error codes.

§dump_len: u32

Length of the dump buffer.

§he_sigb_len: u32

Length of HE-SIG-B field (802.11ax).

§cur_single_mpdu: u32

Indicates if this is a single MPDU.

§cur_bb_format: u32

Current baseband format.

§rx_channel_estimate_info_vld: u32

Channel estimation validity.

§rx_channel_estimate_len: u32

Length of the channel estimation.

§second: u32

Timing information in seconds.

§channel: u32

Primary channel on which the packet is received.

§noise_floor: i32

Noise floor of the Radio Frequency module, in dBm.

§is_group: u32

Indicates if this is a group-addressed frame.

§rxend_state: u32

End state of the packet reception.

§rxmatch3: u32

Indicate whether the reception frame is from interface 3.

§rxmatch2: u32

Indicate whether the reception frame is from interface 2.

§rxmatch1: u32

Indicate whether the reception frame is from interface 1.

§rxmatch0: u32

Indicate whether the reception frame is from interface 0.

Implementations§

Source§

impl RxControlInfo

Source

pub unsafe fn from_raw(rx_cntl: *const wifi_pkt_rx_ctrl_t) -> Self

Create an instance from a raw pointer to wifi_pkt_rx_ctrl_t.

§Safety

When calling this, you must ensure, that rx_cntl points to a valid instance of wifi_pkt_rx_ctrl_t.

Trait Implementations§

Source§

impl Clone for RxControlInfo

Source§

fn clone(&self) -> RxControlInfo

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RxControlInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Format for RxControlInfo

Source§

fn format(&self, f: Formatter<'_>)

Writes the defmt representation of self to fmt.
Source§

impl Copy for RxControlInfo

Auto Trait Implementations§

§

impl Freeze for RxControlInfo

§

impl RefUnwindSafe for RxControlInfo

§

impl Send for RxControlInfo

§

impl Sync for RxControlInfo

§

impl Unpin for RxControlInfo

§

impl UnwindSafe for RxControlInfo

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.