Struct DeviceInfo

Source
pub struct DeviceInfo {
Show 22 fields pub id: DeviceId, pub mac_address: MacAddress, pub address_type: AddressType, pub name: Option<String>, pub appearance: Option<u16>, pub services: Vec<Uuid>, pub paired: bool, pub connected: bool, pub rssi: Option<i16>, pub tx_power: Option<i16>, pub manufacturer_data: HashMap<u16, Vec<u8>>, pub service_data: HashMap<Uuid, Vec<u8>>, pub services_resolved: bool, pub alias: Option<String>, pub class: Option<u32>, pub bonded: bool, pub icon: Option<String>, pub trusted: bool, pub blocked: bool, pub legacy_pairing: bool, pub modalias: Option<String>, pub wake_allowed: bool,
}
Expand description

Information about a Bluetooth device which was discovered. See https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/doc/device-api.txt

Fields§

§id: DeviceId

An opaque identifier for the device, including a reference to which adapter it was discovered on. This can be used to connect to it.

§mac_address: MacAddress

The MAC address of the device.

§address_type: AddressType

The type of MAC address the device uses.

§name: Option<String>

The human-readable name of the device, if available. Use the Alias property instead.

§appearance: Option<u16>

The appearance of the device, as defined by GAP.

§services: Vec<Uuid>

The GATT service UUIDs (if any) from the device’s advertisement or service discovery.

Note that service discovery only happens after a connection has been made to the device, but BlueZ may cache the list of services after it is disconnected.

§paired: bool

Whether the device is currently paired with the adapter.

§connected: bool

Whether the device is currently connected to the adapter.

§rssi: Option<i16>

The Received Signal Strength Indicator of the device advertisement or inquiry.

§tx_power: Option<i16>

The transmission power level advertised by the device.

§manufacturer_data: HashMap<u16, Vec<u8>>

Manufacturer-specific advertisement data, if any. The keys are ‘manufacturer IDs’.

§service_data: HashMap<Uuid, Vec<u8>>

The GATT service data from the device’s advertisement, if any. This is a map from the service UUID to its data.

§services_resolved: bool

Whether service discovery has finished for the device.

§alias: Option<String>

The Bluetooth friendly name. This defaults to the system hostname.

§class: Option<u32>

The Bluetooth class of device, automatically configured by DMI/ACPI information or provided as static configuration.

§bonded: bool§icon: Option<String>§trusted: bool§blocked: bool§legacy_pairing: bool§modalias: Option<String>§wake_allowed: bool

Trait Implementations§

Source§

impl Clone for DeviceInfo

Source§

fn clone(&self) -> DeviceInfo

Returns a duplicate 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 DeviceInfo

Source§

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

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

impl PartialEq for DeviceInfo

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for DeviceInfo

Source§

impl StructuralPartialEq for DeviceInfo

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
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
Source§

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

Source§

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
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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.

Source§

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

Source§

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>,

Source§

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>,

Source§

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.