pub struct WlanSoftmacBandCapability {
    pub band: Option<WlanBand>,
    pub basic_rate_count: Option<u8>,
    pub basic_rate_list: Option<[u8; 12]>,
    pub ht_supported: Option<bool>,
    pub ht_caps: Option<HtCapabilities>,
    pub vht_supported: Option<bool>,
    pub vht_caps: Option<VhtCapabilities>,
    pub operating_channel_count: Option<u16>,
    pub operating_channel_list: Option<[u8; 256]>,
    pub basic_rates: Option<Vec<u8>>,
    pub operating_channels: Option<Vec<u8>>,
    /* private fields */
}
Expand description

Describes the capabilities of a SoftMAC on a particular band.

Fields§

§band: Option<WlanBand>

Band to which the capabilities described by this datagram apply.

§basic_rate_count: Option<u8>

Count of supported basic rates. If the basic_rate_list field is present, then this field must also be present and must be consistent with the basic_rate_list field.

§Deprecation

This field has been replaced by basic_rates. Servers (i.e., drivers) that target platform versions wherein basic_rate_count is deprecated should omit it and write basic rates to the basic_rates field instead. Clients attempt to read basic_rates before basic_rate_count.

§basic_rate_list: Option<[u8; 12]>

Set of supported basic rates in units of 500 Kbit/s (as defined in IEEE Std 802.11-2016, 9.4.2.3), e.g., 0x02 represents 1 Mbps. This set represents all of the non-HT rates that the device supports for both transmitting and receiving.

The count of rates present in this field must be consistent with the basic_rate_count field when present.

§Deprecation

This field has been replaced by basic_rates. Servers (i.e., drivers) that target platform versions wherein basic_rate_list is deprecated should omit it and write basic rates to the basic_rates field instead. Clients attempt to read basic_rates before basic_rate_list.

§ht_supported: Option<bool>

Determines if the ht_caps fields should be read by clients. If the device supports HT PHY mode, then ht_supported must be true and the ht_caps field must be set and provide data that describes HT capabilities. Any other configuration of these fields means that the device does not support HT PHY mode. See HtCapabilities.

§Deprecation

This field determines whether or not the ht_caps field is read by clients, but is not strictly necessary as table fields like ht_caps may be set or unset. Servers (i.e., drivers) that target platform versions wherein ht_supported is deprecated should always set the field to true and set ht_caps if the device supports HT PHY mode or unset ht_caps if the device does not.

§ht_caps: Option<HtCapabilities>§vht_supported: Option<bool>

Determines if the vht_caps fields should be read by clients. If the device supports VHT PHY mode, then vht_supported must be true and the vht_caps field must be set and provide data that describes VHT capabilities. Any other configuration of these fields means that the device does not support VHT PHY mode. See VhtCapabilities.

§Deprecation

This field determines whether or not the vht_caps field is read by clients, but is not strictly necessary as table fields like vht_caps may be set or unset. Servers (i.e., drivers) that target platform versions wherein vht_supported is deprecated should always set the field to true and set vht_caps if the device supports VHT PHY mode or unset vht_caps if the device does not.

§vht_caps: Option<VhtCapabilities>§operating_channel_count: Option<u16>

Count of operating channels. If the operating_channel_list field is present, then this field must also be present and must be consistent with the operating_channel_list field.

§Deprecation

This field has been replaced by operating_channels. Servers (i.e., drivers) that target platform versions wherein operating_channel_count is deprecated should omit it and write operating channels to the operating_channels field instead. Clients attempt to read operating_channels before operating_channel_count.

§operating_channel_list: Option<[u8; 256]>

Set of valid operating channels per regulatory information as determined by the device driver during iface creation. An operating channel refers to a channel on which APs may transmit beacon frames.

The count of channels present in this field must be consistent with the operating_channel_count field when present.

§Deprecation

This field has been replaced by operating_channels. Servers (i.e., drivers) that target platform versions wherein operating_channel_list is deprecated should omit it and write operating channels to the operating_channels field instead. Clients attempt to read operating_channels before operating_channel_list.

§basic_rates: Option<Vec<u8>>

Set of supported basic rates in units of 500 Kbit/s (as defined in IEEE Std 802.11-2016, 9.4.2.3), e.g., 0x02 represents 1 Mbps. This set represents all of the non-HT rates that the device supports for both transmitting and receiving.

§operating_channels: Option<Vec<u8>>

Set of valid operating channels per regulatory information as determined by the device driver during iface creation. An operating channel refers to a channel on which APs may transmit beacon frames.

The client must use this set to determine the efficacy of subsequent requests to scan a subset of channels using the iface or to determine which operating channel to use when starting an AP.

Trait Implementations§

source§

impl Clone for WlanSoftmacBandCapability

source§

fn clone(&self) -> WlanSoftmacBandCapability

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Debug for WlanSoftmacBandCapability

source§

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

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

impl Decode<WlanSoftmacBandCapability> for WlanSoftmacBandCapability

source§

fn new_empty() -> Self

Creates a valid instance of Self. The specific value does not matter, since it will be overwritten by decode.
source§

unsafe fn decode( &mut self, decoder: &mut Decoder<'_>, offset: usize, depth: Depth ) -> Result<()>

Decodes an object of type T from the decoder’s buffers into self. Read more
source§

impl Default for WlanSoftmacBandCapability

source§

fn default() -> WlanSoftmacBandCapability

Returns the “default value” for a type. Read more
source§

impl Encode<WlanSoftmacBandCapability> for &WlanSoftmacBandCapability

source§

unsafe fn encode( self, encoder: &mut Encoder<'_>, offset: usize, depth: Depth ) -> Result<()>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl PartialEq for WlanSoftmacBandCapability

source§

fn eq(&self, other: &WlanSoftmacBandCapability) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl TypeMarker for WlanSoftmacBandCapability

§

type Owned = WlanSoftmacBandCapability

The owned Rust type which this FIDL type decodes into.
source§

fn inline_align(_context: Context) -> usize

Returns the minimum required alignment of the inline portion of the encoded object. It must be a (nonzero) power of two.
source§

fn inline_size(_context: Context) -> usize

Returns the size of the inline portion of the encoded object, including padding for alignment. Must be a multiple of inline_align.
§

fn encode_is_copy() -> bool

Returns true if the memory layout of Self::Owned matches the FIDL wire format and encoding requires no validation. When true, we can optimize encoding arrays and vectors of Self::Owned to a single memcpy. Read more
§

fn decode_is_copy() -> bool

Returns true if the memory layout of Self::Owned matches the FIDL wire format and decoding requires no validation. When true, we can optimize decoding arrays and vectors of Self::Owned to a single memcpy.
source§

impl ValueTypeMarker for WlanSoftmacBandCapability

§

type Borrowed<'a> = &'a WlanSoftmacBandCapability

The Rust type to use for encoding. This is a particular Encode<Self> type cheaply obtainable from &Self::Owned. There are three cases: Read more
source§

fn borrow<'a>(value: &'a <Self as TypeMarker>::Owned) -> Self::Borrowed<'a>

Cheaply converts from &Self::Owned to Self::Borrowed.
source§

impl Persistable for WlanSoftmacBandCapability

source§

impl StructuralPartialEq for WlanSoftmacBandCapability

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Body for T
where T: Persistable,

§

type MarkerAtTopLevel = T

The marker type to use when the body is at the top-level.
§

type MarkerInResultUnion = T

The marker type to use when the body is nested in a result union.
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
§

impl<T> Encode<Ambiguous1> for T

§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
§

impl<T> Encode<Ambiguous2> for T

§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
§

impl<E> ErrorType for E
where E: ValueTypeMarker<Owned = E> + Decode<E>,

§

type Marker = E

The marker type.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

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

source§

fn into(self) -> U

Calls U::from(self).

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

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

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

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

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

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

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

§

type Error = Infallible

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

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

Performs the conversion.
source§

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.
source§

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

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more