diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:18:21 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:18:21 +0000 |
commit | 4e8199b572f2035b7749cba276ece3a26630d23e (patch) | |
tree | f09feeed6a0fe39d027b1908aa63ea6b35e4b631 /vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth | |
parent | Adding upstream version 1.66.0+dfsg1. (diff) | |
download | rustc-4e8199b572f2035b7749cba276ece3a26630d23e.tar.xz rustc-4e8199b572f2035b7749cba276ece3a26630d23e.zip |
Adding upstream version 1.67.1+dfsg1.upstream/1.67.1+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth')
-rw-r--r-- | vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth/mod.rs | 2094 |
1 files changed, 1047 insertions, 1047 deletions
diff --git a/vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth/mod.rs b/vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth/mod.rs index 70b27cd18..681a2024b 100644 --- a/vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth/mod.rs +++ b/vendor/windows-sys/src/Windows/Win32/Devices/Bluetooth/mod.rs @@ -1,17 +1,17 @@ -#[link(name = "windows")] +#[cfg_attr(windows, link(name = "windows"))] extern "system" { #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothAuthenticateDevice(hwndparent: super::super::Foundation::HWND, hradio: super::super::Foundation::HANDLE, pbtbi: *mut BLUETOOTH_DEVICE_INFO, pszpasskey: ::windows_sys::core::PCWSTR, ulpasskeylength: u32) -> u32; + pub fn BluetoothAuthenticateDevice(hwndparent: super::super::Foundation::HWND, hradio: super::super::Foundation::HANDLE, pbtbi: *mut BLUETOOTH_DEVICE_INFO_STRUCT, pszpasskey: ::windows_sys::core::PCWSTR, ulpasskeylength: u32) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothAuthenticateDeviceEx(hwndparentin: super::super::Foundation::HWND, hradioin: super::super::Foundation::HANDLE, pbtdiinout: *mut BLUETOOTH_DEVICE_INFO, pbtoobdata: *const BLUETOOTH_OOB_DATA_INFO, authenticationrequirement: AUTHENTICATION_REQUIREMENTS) -> u32; + pub fn BluetoothAuthenticateDeviceEx(hwndparentin: super::super::Foundation::HWND, hradioin: super::super::Foundation::HANDLE, pbtdiinout: *mut BLUETOOTH_DEVICE_INFO_STRUCT, pbtoobdata: *const BLUETOOTH_OOB_DATA_INFO, authenticationrequirement: AUTHENTICATION_REQUIREMENTS) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothAuthenticateMultipleDevices(hwndparent: super::super::Foundation::HWND, hradio: super::super::Foundation::HANDLE, cdevices: u32, rgbtdi: *mut BLUETOOTH_DEVICE_INFO) -> u32; + pub fn BluetoothAuthenticateMultipleDevices(hwndparent: super::super::Foundation::HWND, hradio: super::super::Foundation::HANDLE, cdevices: u32, rgbtdi: *mut BLUETOOTH_DEVICE_INFO_STRUCT) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothDisplayDeviceProperties(hwndparent: super::super::Foundation::HWND, pbtdi: *mut BLUETOOTH_DEVICE_INFO) -> super::super::Foundation::BOOL; + pub fn BluetoothDisplayDeviceProperties(hwndparent: super::super::Foundation::HWND, pbtdi: *mut BLUETOOTH_DEVICE_INFO_STRUCT) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothEnableDiscovery(hradio: super::super::Foundation::HANDLE, fenabled: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; @@ -20,19 +20,19 @@ extern "system" { pub fn BluetoothEnableIncomingConnections(hradio: super::super::Foundation::HANDLE, fenabled: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothEnumerateInstalledServices(hradio: super::super::Foundation::HANDLE, pbtdi: *const BLUETOOTH_DEVICE_INFO, pcserviceinout: *mut u32, pguidservices: *mut ::windows_sys::core::GUID) -> u32; + pub fn BluetoothEnumerateInstalledServices(hradio: super::super::Foundation::HANDLE, pbtdi: *const BLUETOOTH_DEVICE_INFO_STRUCT, pcserviceinout: *mut u32, pguidservices: *mut ::windows_sys::core::GUID) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothFindDeviceClose(hfind: isize) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothFindFirstDevice(pbtsp: *const BLUETOOTH_DEVICE_SEARCH_PARAMS, pbtdi: *mut BLUETOOTH_DEVICE_INFO) -> isize; + pub fn BluetoothFindFirstDevice(pbtsp: *const BLUETOOTH_DEVICE_SEARCH_PARAMS, pbtdi: *mut BLUETOOTH_DEVICE_INFO_STRUCT) -> isize; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothFindFirstRadio(pbtfrp: *const BLUETOOTH_FIND_RADIO_PARAMS, phradio: *mut super::super::Foundation::HANDLE) -> isize; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothFindNextDevice(hfind: isize, pbtdi: *mut BLUETOOTH_DEVICE_INFO) -> super::super::Foundation::BOOL; + pub fn BluetoothFindNextDevice(hfind: isize, pbtdi: *mut BLUETOOTH_DEVICE_INFO_STRUCT) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothFindNextRadio(hfind: isize, phradio: *mut super::super::Foundation::HANDLE) -> super::super::Foundation::BOOL; @@ -79,7 +79,7 @@ extern "system" { pub fn BluetoothGATTUnregisterEvent(eventhandle: isize, flags: u32) -> ::windows_sys::core::HRESULT; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothGetDeviceInfo(hradio: super::super::Foundation::HANDLE, pbtdi: *mut BLUETOOTH_DEVICE_INFO) -> u32; + pub fn BluetoothGetDeviceInfo(hradio: super::super::Foundation::HANDLE, pbtdi: *mut BLUETOOTH_DEVICE_INFO_STRUCT) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothGetRadioInfo(hradio: super::super::Foundation::HANDLE, pradioinfo: *mut BLUETOOTH_RADIO_INFO) -> u32; @@ -94,12 +94,12 @@ extern "system" { pub fn BluetoothIsVersionAvailable(majorversion: u8, minorversion: u8) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothRegisterForAuthentication(pbtdi: *const BLUETOOTH_DEVICE_INFO, phreghandle: *mut isize, pfncallback: PFN_AUTHENTICATION_CALLBACK, pvparam: *const ::core::ffi::c_void) -> u32; + pub fn BluetoothRegisterForAuthentication(pbtdi: *const BLUETOOTH_DEVICE_INFO_STRUCT, phreghandle: *mut isize, pfncallback: PFN_AUTHENTICATION_CALLBACK, pvparam: *const ::core::ffi::c_void) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothRegisterForAuthenticationEx(pbtdiin: *const BLUETOOTH_DEVICE_INFO, phreghandleout: *mut isize, pfncallbackin: PFN_AUTHENTICATION_CALLBACK_EX, pvparam: *const ::core::ffi::c_void) -> u32; + pub fn BluetoothRegisterForAuthenticationEx(pbtdiin: *const BLUETOOTH_DEVICE_INFO_STRUCT, phreghandleout: *mut isize, pfncallbackin: PFN_AUTHENTICATION_CALLBACK_EX, pvparam: *const ::core::ffi::c_void) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] - pub fn BluetoothRemoveDevice(paddress: *const BLUETOOTH_ADDRESS) -> u32; + pub fn BluetoothRemoveDevice(paddress: *const BLUETOOTH_ADDRESS_STRUCT) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothSdpEnumAttributes(psdpstream: *const u8, cbstreamsize: u32, pfncallback: PFN_BLUETOOTH_ENUM_ATTRIBUTES_CALLBACK, pvparam: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL; @@ -122,22 +122,22 @@ extern "system" { pub fn BluetoothSelectDevicesFree(pbtsdp: *mut BLUETOOTH_SELECT_DEVICE_PARAMS) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothSendAuthenticationResponse(hradio: super::super::Foundation::HANDLE, pbtdi: *const BLUETOOTH_DEVICE_INFO, pszpasskey: ::windows_sys::core::PCWSTR) -> u32; + pub fn BluetoothSendAuthenticationResponse(hradio: super::super::Foundation::HANDLE, pbtdi: *const BLUETOOTH_DEVICE_INFO_STRUCT, pszpasskey: ::windows_sys::core::PCWSTR) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothSendAuthenticationResponseEx(hradioin: super::super::Foundation::HANDLE, pauthresponse: *const BLUETOOTH_AUTHENTICATE_RESPONSE) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothSetLocalServiceInfo(hradioin: super::super::Foundation::HANDLE, pclassguid: *const ::windows_sys::core::GUID, ulinstance: u32, pserviceinfoin: *const BLUETOOTH_LOCAL_SERVICE_INFO) -> u32; + pub fn BluetoothSetLocalServiceInfo(hradioin: super::super::Foundation::HANDLE, pclassguid: *const ::windows_sys::core::GUID, ulinstance: u32, pserviceinfoin: *const BLUETOOTH_LOCAL_SERVICE_INFO_STRUCT) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothSetServiceState(hradio: super::super::Foundation::HANDLE, pbtdi: *const BLUETOOTH_DEVICE_INFO, pguidservice: *const ::windows_sys::core::GUID, dwserviceflags: u32) -> u32; + pub fn BluetoothSetServiceState(hradio: super::super::Foundation::HANDLE, pbtdi: *const BLUETOOTH_DEVICE_INFO_STRUCT, pguidservice: *const ::windows_sys::core::GUID, dwserviceflags: u32) -> u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] pub fn BluetoothUnregisterAuthentication(hreghandle: isize) -> super::super::Foundation::BOOL; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] - pub fn BluetoothUpdateDeviceRecord(pbtdi: *const BLUETOOTH_DEVICE_INFO) -> u32; + pub fn BluetoothUpdateDeviceRecord(pbtdi: *const BLUETOOTH_DEVICE_INFO_STRUCT) -> u32; } #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const A2DP_SINK_SUPPORTED_FEATURES_AMPLIFIER: u32 = 8u32; @@ -160,22 +160,6 @@ pub const AF_BTH: u16 = 32u16; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const ATT_PROTOCOL_UUID16: u32 = 7u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type AUTHENTICATION_REQUIREMENTS = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionNotRequired: AUTHENTICATION_REQUIREMENTS = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionRequired: AUTHENTICATION_REQUIREMENTS = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionNotRequiredBonding: AUTHENTICATION_REQUIREMENTS = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionRequiredBonding: AUTHENTICATION_REQUIREMENTS = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionNotRequiredGeneralBonding: AUTHENTICATION_REQUIREMENTS = 4i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionRequiredGeneralBonding: AUTHENTICATION_REQUIREMENTS = 5i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const MITMProtectionNotDefined: AUTHENTICATION_REQUIREMENTS = 255i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const AVCTP_PROTOCOL_UUID16: u32 = 23u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const AVDTP_PROTOCOL_UUID16: u32 = 25u32; @@ -287,186 +271,8 @@ pub const BDIF_SSP_SUPPORTED: u32 = 256u32; pub const BDIF_TX_POWER: u32 = 2147483648u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BDIF_VISIBLE: u32 = 128u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_ADDRESS { - pub Anonymous: BLUETOOTH_ADDRESS_0, -} -impl ::core::marker::Copy for BLUETOOTH_ADDRESS {} -impl ::core::clone::Clone for BLUETOOTH_ADDRESS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub union BLUETOOTH_ADDRESS_0 { - pub ullLong: u64, - pub rgBytes: [u8; 6], -} -impl ::core::marker::Copy for BLUETOOTH_ADDRESS_0 {} -impl ::core::clone::Clone for BLUETOOTH_ADDRESS_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_AUTHENTICATE_RESPONSE { - pub bthAddressRemote: BLUETOOTH_ADDRESS, - pub authMethod: BLUETOOTH_AUTHENTICATION_METHOD, - pub Anonymous: BLUETOOTH_AUTHENTICATE_RESPONSE_0, - pub negativeResponse: u8, -} -impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATE_RESPONSE {} -impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATE_RESPONSE { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub union BLUETOOTH_AUTHENTICATE_RESPONSE_0 { - pub pinInfo: BLUETOOTH_PIN_INFO, - pub oobInfo: BLUETOOTH_OOB_DATA_INFO, - pub numericCompInfo: BLUETOOTH_NUMERIC_COMPARISON_INFO, - pub passkeyInfo: BLUETOOTH_PASSKEY_INFO, -} -impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATE_RESPONSE_0 {} -impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATE_RESPONSE_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS { - pub deviceInfo: BLUETOOTH_DEVICE_INFO, - pub authenticationMethod: BLUETOOTH_AUTHENTICATION_METHOD, - pub ioCapability: BLUETOOTH_IO_CAPABILITY, - pub authenticationRequirements: BLUETOOTH_AUTHENTICATION_REQUIREMENTS, - pub Anonymous: BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0 { - pub Numeric_Value: u32, - pub Passkey: u32, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0 { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type BLUETOOTH_AUTHENTICATION_METHOD = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_AUTHENTICATION_METHOD_LEGACY: BLUETOOTH_AUTHENTICATION_METHOD = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_AUTHENTICATION_METHOD_OOB: BLUETOOTH_AUTHENTICATION_METHOD = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_AUTHENTICATION_METHOD_NUMERIC_COMPARISON: BLUETOOTH_AUTHENTICATION_METHOD = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_AUTHENTICATION_METHOD_PASSKEY_NOTIFICATION: BLUETOOTH_AUTHENTICATION_METHOD = 4i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_AUTHENTICATION_METHOD_PASSKEY: BLUETOOTH_AUTHENTICATION_METHOD = 5i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type BLUETOOTH_AUTHENTICATION_REQUIREMENTS = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionNotRequired: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionRequired: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionNotRequiredBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionRequiredBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionNotRequiredGeneralBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 4i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionRequiredGeneralBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 5i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_MITM_ProtectionNotDefined: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 255i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_COD_PAIRS { - pub ulCODMask: u32, - pub pcszDescription: ::windows_sys::core::PCWSTR, -} -impl ::core::marker::Copy for BLUETOOTH_COD_PAIRS {} -impl ::core::clone::Clone for BLUETOOTH_COD_PAIRS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BLUETOOTH_DEVICE_INFO { - pub dwSize: u32, - pub Address: BLUETOOTH_ADDRESS, - pub ulClassofDevice: u32, - pub fConnected: super::super::Foundation::BOOL, - pub fRemembered: super::super::Foundation::BOOL, - pub fAuthenticated: super::super::Foundation::BOOL, - pub stLastSeen: super::super::Foundation::SYSTEMTIME, - pub stLastUsed: super::super::Foundation::SYSTEMTIME, - pub szName: [u16; 248], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_DEVICE_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_DEVICE_INFO { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BLUETOOTH_DEVICE_NAME_SIZE: u32 = 256u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BLUETOOTH_DEVICE_SEARCH_PARAMS { - pub dwSize: u32, - pub fReturnAuthenticated: super::super::Foundation::BOOL, - pub fReturnRemembered: super::super::Foundation::BOOL, - pub fReturnUnknown: super::super::Foundation::BOOL, - pub fReturnConnected: super::super::Foundation::BOOL, - pub fIssueInquiry: super::super::Foundation::BOOL, - pub cTimeoutMultiplier: u8, - pub hRadio: super::super::Foundation::HANDLE, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_DEVICE_SEARCH_PARAMS {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_DEVICE_SEARCH_PARAMS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_FIND_RADIO_PARAMS { - pub dwSize: u32, -} -impl ::core::marker::Copy for BLUETOOTH_FIND_RADIO_PARAMS {} -impl ::core::clone::Clone for BLUETOOTH_FIND_RADIO_PARAMS { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BLUETOOTH_GATT_FLAG_CONNECTION_AUTHENTICATED: u32 = 2u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -483,63 +289,6 @@ pub const BLUETOOTH_GATT_FLAG_RETURN_ALL: u32 = 64u32; pub const BLUETOOTH_GATT_FLAG_SIGNED_WRITE: u32 = 16u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BLUETOOTH_GATT_FLAG_WRITE_WITHOUT_RESPONSE: u32 = 32u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_GATT_VALUE_CHANGED_EVENT { - pub ChangedAttributeHandle: u16, - pub CharacteristicValueDataSize: usize, - pub CharacteristicValue: *mut BTH_LE_GATT_CHARACTERISTIC_VALUE, -} -impl ::core::marker::Copy for BLUETOOTH_GATT_VALUE_CHANGED_EVENT {} -impl ::core::clone::Clone for BLUETOOTH_GATT_VALUE_CHANGED_EVENT { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION { - pub NumCharacteristics: u16, - pub Characteristics: [BTH_LE_GATT_CHARACTERISTIC; 1], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type BLUETOOTH_IO_CAPABILITY = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_IO_CAPABILITY_DISPLAYONLY: BLUETOOTH_IO_CAPABILITY = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_IO_CAPABILITY_DISPLAYYESNO: BLUETOOTH_IO_CAPABILITY = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_IO_CAPABILITY_KEYBOARDONLY: BLUETOOTH_IO_CAPABILITY = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_IO_CAPABILITY_NOINPUTNOOUTPUT: BLUETOOTH_IO_CAPABILITY = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const BLUETOOTH_IO_CAPABILITY_UNDEFINED: BLUETOOTH_IO_CAPABILITY = 255i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BLUETOOTH_LOCAL_SERVICE_INFO { - pub Enabled: super::super::Foundation::BOOL, - pub btAddr: BLUETOOTH_ADDRESS, - pub szName: [u16; 256], - pub szDeviceString: [u16; 256], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_LOCAL_SERVICE_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_LOCAL_SERVICE_INFO { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BLUETOOTH_MAX_NAME_SIZE: u32 = 248u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -548,96 +297,6 @@ pub const BLUETOOTH_MAX_PASSKEY_BUFFER_SIZE: u32 = 17u32; pub const BLUETOOTH_MAX_PASSKEY_SIZE: u32 = 16u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BLUETOOTH_MAX_SERVICE_NAME_SIZE: u32 = 256u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_NUMERIC_COMPARISON_INFO { - pub NumericValue: u32, -} -impl ::core::marker::Copy for BLUETOOTH_NUMERIC_COMPARISON_INFO {} -impl ::core::clone::Clone for BLUETOOTH_NUMERIC_COMPARISON_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_OOB_DATA_INFO { - pub C: [u8; 16], - pub R: [u8; 16], -} -impl ::core::marker::Copy for BLUETOOTH_OOB_DATA_INFO {} -impl ::core::clone::Clone for BLUETOOTH_OOB_DATA_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_PASSKEY_INFO { - pub passkey: u32, -} -impl ::core::marker::Copy for BLUETOOTH_PASSKEY_INFO {} -impl ::core::clone::Clone for BLUETOOTH_PASSKEY_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_PIN_INFO { - pub pin: [u8; 16], - pub pinLength: u8, -} -impl ::core::marker::Copy for BLUETOOTH_PIN_INFO {} -impl ::core::clone::Clone for BLUETOOTH_PIN_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BLUETOOTH_RADIO_INFO { - pub dwSize: u32, - pub address: BLUETOOTH_ADDRESS, - pub szName: [u16; 248], - pub ulClassofDevice: u32, - pub lmpSubversion: u16, - pub manufacturer: u16, -} -impl ::core::marker::Copy for BLUETOOTH_RADIO_INFO {} -impl ::core::clone::Clone for BLUETOOTH_RADIO_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BLUETOOTH_SELECT_DEVICE_PARAMS { - pub dwSize: u32, - pub cNumOfClasses: u32, - pub prgClassOfDevices: *mut BLUETOOTH_COD_PAIRS, - pub pszInfo: ::windows_sys::core::PWSTR, - pub hwndParent: super::super::Foundation::HWND, - pub fForceAuthentication: super::super::Foundation::BOOL, - pub fShowAuthenticated: super::super::Foundation::BOOL, - pub fShowRemembered: super::super::Foundation::BOOL, - pub fShowUnknown: super::super::Foundation::BOOL, - pub fAddNewDeviceWizard: super::super::Foundation::BOOL, - pub fSkipServicesPage: super::super::Foundation::BOOL, - pub pfnDeviceCallback: PFN_DEVICE_CALLBACK, - pub pvParam: *mut ::core::ffi::c_void, - pub cNumDevices: u32, - pub pDevices: *mut BLUETOOTH_DEVICE_INFO, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BLUETOOTH_SELECT_DEVICE_PARAMS {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BLUETOOTH_SELECT_DEVICE_PARAMS { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BLUETOOTH_SERVICE_DISABLE: u32 = 0u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -672,23 +331,6 @@ pub const BTH_ADDR_IAC_LAST: u32 = 10390335u32; pub const BTH_ADDR_LIAC: u32 = 10390272u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_ADDR_STRING_SIZE: u32 = 12u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_DEVICE_INFO { - pub flags: u32, - pub address: u64, - pub classOfDevice: u32, - pub name: [super::super::Foundation::CHAR; 248], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_DEVICE_INFO {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_DEVICE_INFO { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_EIR_128_UUIDS_COMPLETE_ID: u32 = 7u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -859,19 +501,6 @@ pub const BTH_ERROR_UNSUPPORTED_FEATURE_OR_PARAMETER: u32 = 17u32; pub const BTH_ERROR_UNSUPPORTED_LMP_PARM_VALUE: u32 = 32u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_ERROR_UNSUPPORTED_REMOTE_FEATURE: u32 = 26u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_HCI_EVENT_INFO { - pub bthAddress: u64, - pub connectionType: u8, - pub connected: u8, -} -impl ::core::marker::Copy for BTH_HCI_EVENT_INFO {} -impl ::core::clone::Clone for BTH_HCI_EVENT_INFO { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_HOST_FEATURE_ENHANCED_RETRANSMISSION_MODE: u64 = 1u64; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -882,59 +511,8 @@ pub const BTH_HOST_FEATURE_SCO_HCI: u64 = 8u64; pub const BTH_HOST_FEATURE_SCO_HCIBYPASS: u64 = 16u64; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_HOST_FEATURE_STREAMING_MODE: u64 = 2u64; -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_INFO_REQ { - pub btAddr: u64, - pub infoType: u16, -} -impl ::core::marker::Copy for BTH_INFO_REQ {} -impl ::core::clone::Clone for BTH_INFO_REQ { - fn clone(&self) -> Self { - *self - } -} -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_INFO_RSP { - pub result: u16, - pub dataLen: u8, - pub Anonymous: BTH_INFO_RSP_0, -} -impl ::core::marker::Copy for BTH_INFO_RSP {} -impl ::core::clone::Clone for BTH_INFO_RSP { - fn clone(&self) -> Self { - *self - } -} -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub union BTH_INFO_RSP_0 { - pub connectionlessMTU: u16, - pub data: [u8; 44], -} -impl ::core::marker::Copy for BTH_INFO_RSP_0 {} -impl ::core::clone::Clone for BTH_INFO_RSP_0 { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_IOCTL_BASE: u32 = 0u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_L2CAP_EVENT_INFO { - pub bthAddress: u64, - pub psm: u16, - pub connected: u8, - pub initiated: u8, -} -impl ::core::marker::Copy for BTH_L2CAP_EVENT_INFO {} -impl ::core::clone::Clone for BTH_L2CAP_EVENT_INFO { - fn clone(&self) -> Self { - *self - } -} pub const BTH_LE_ATT_BLUETOOTH_BASE_GUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 0, data3: 4096, data4: [128, 0, 0, 128, 95, 155, 52, 251] }; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_ATT_CID: u32 = 4u32; @@ -1092,31 +670,6 @@ pub const BTH_LE_GATT_ATTRIBUTE_TYPE_INCLUDE: u32 = 10242u32; pub const BTH_LE_GATT_ATTRIBUTE_TYPE_PRIMARY_SERVICE: u32 = 10240u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_GATT_ATTRIBUTE_TYPE_SECONDARY_SERVICE: u32 = 10241u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_CHARACTERISTIC { - pub ServiceHandle: u16, - pub CharacteristicUuid: BTH_LE_UUID, - pub AttributeHandle: u16, - pub CharacteristicValueHandle: u16, - pub IsBroadcastable: super::super::Foundation::BOOLEAN, - pub IsReadable: super::super::Foundation::BOOLEAN, - pub IsWritable: super::super::Foundation::BOOLEAN, - pub IsWritableWithoutResponse: super::super::Foundation::BOOLEAN, - pub IsSignedWritable: super::super::Foundation::BOOLEAN, - pub IsNotifiable: super::super::Foundation::BOOLEAN, - pub IsIndicatable: super::super::Foundation::BOOLEAN, - pub HasExtendedProperties: super::super::Foundation::BOOLEAN, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_CHARACTERISTIC {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_CHARACTERISTIC { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_GATT_CHARACTERISTIC_DESCRIPTOR_AGGREGATE_FORMAT: u32 = 10501u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -1141,204 +694,12 @@ pub const BTH_LE_GATT_CHARACTERISTIC_TYPE_PERIPHERAL_PRIVACY_FLAG: u32 = 10754u3 pub const BTH_LE_GATT_CHARACTERISTIC_TYPE_RECONNECTION_ADDRESS: u32 = 10755u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_GATT_CHARACTERISTIC_TYPE_SERVICE_CHANGED: u32 = 10757u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_LE_GATT_CHARACTERISTIC_VALUE { - pub DataSize: u32, - pub Data: [u8; 1], -} -impl ::core::marker::Copy for BTH_LE_GATT_CHARACTERISTIC_VALUE {} -impl ::core::clone::Clone for BTH_LE_GATT_CHARACTERISTIC_VALUE { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_GATT_DEFAULT_MAX_INCLUDED_SERVICES_DEPTH: u32 = 3u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_DESCRIPTOR { - pub ServiceHandle: u16, - pub CharacteristicHandle: u16, - pub DescriptorType: BTH_LE_GATT_DESCRIPTOR_TYPE, - pub DescriptorUuid: BTH_LE_UUID, - pub AttributeHandle: u16, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type BTH_LE_GATT_DESCRIPTOR_TYPE = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const CharacteristicExtendedProperties: BTH_LE_GATT_DESCRIPTOR_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const CharacteristicUserDescription: BTH_LE_GATT_DESCRIPTOR_TYPE = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const ClientCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_TYPE = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const ServerCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_TYPE = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const CharacteristicFormat: BTH_LE_GATT_DESCRIPTOR_TYPE = 4i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const CharacteristicAggregateFormat: BTH_LE_GATT_DESCRIPTOR_TYPE = 5i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const CustomDescriptor: BTH_LE_GATT_DESCRIPTOR_TYPE = 6i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_DESCRIPTOR_VALUE { - pub DescriptorType: BTH_LE_GATT_DESCRIPTOR_TYPE, - pub DescriptorUuid: BTH_LE_UUID, - pub Anonymous: BTH_LE_GATT_DESCRIPTOR_VALUE_0, - pub DataSize: u32, - pub Data: [u8; 1], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union BTH_LE_GATT_DESCRIPTOR_VALUE_0 { - pub CharacteristicExtendedProperties: BTH_LE_GATT_DESCRIPTOR_VALUE_0_0, - pub ClientCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_VALUE_0_2, - pub ServerCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_VALUE_0_3, - pub CharacteristicFormat: BTH_LE_GATT_DESCRIPTOR_VALUE_0_1, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_0 { - pub IsReliableWriteEnabled: super::super::Foundation::BOOLEAN, - pub IsAuxiliariesWritable: super::super::Foundation::BOOLEAN, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_1 { - pub Format: u8, - pub Exponent: u8, - pub Unit: BTH_LE_UUID, - pub NameSpace: u8, - pub Description: BTH_LE_UUID, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_1 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_1 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_2 { - pub IsSubscribeToNotification: super::super::Foundation::BOOLEAN, - pub IsSubscribeToIndication: super::super::Foundation::BOOLEAN, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_2 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_2 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_3 { - pub IsBroadcast: super::super::Foundation::BOOLEAN, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_3 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_3 { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type BTH_LE_GATT_EVENT_TYPE = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const CharacteristicValueChangedEvent: BTH_LE_GATT_EVENT_TYPE = 0i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_GATT_SERVICE { - pub ServiceUuid: BTH_LE_UUID, - pub AttributeHandle: u16, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_GATT_SERVICE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_GATT_SERVICE { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_SERVICE_GAP: u32 = 6144u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LE_SERVICE_GATT: u32 = 6145u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_LE_UUID { - pub IsShortUuid: super::super::Foundation::BOOLEAN, - pub Value: BTH_LE_UUID_0, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_UUID {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_UUID { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union BTH_LE_UUID_0 { - pub ShortUuid: u16, - pub LongUuid: ::windows_sys::core::GUID, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_LE_UUID_0 {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_LE_UUID_0 { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_LINK_KEY_LENGTH: u32 = 16u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -1451,94 +812,8 @@ pub const BTH_MFG_WIDCOMM: u32 = 17u32; pub const BTH_MFG_ZEEVO: u32 = 18u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_MINORVERSION: u32 = 1u32; -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_PING_REQ { - pub btAddr: u64, - pub dataLen: u8, - pub data: [u8; 44], -} -impl ::core::marker::Copy for BTH_PING_REQ {} -impl ::core::clone::Clone for BTH_PING_REQ { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_PING_RSP { - pub dataLen: u8, - pub data: [u8; 44], -} -impl ::core::marker::Copy for BTH_PING_RSP {} -impl ::core::clone::Clone for BTH_PING_RSP { - fn clone(&self) -> Self { - *self - } -} -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_QUERY_DEVICE { - pub LAP: u32, - pub length: u8, -} -impl ::core::marker::Copy for BTH_QUERY_DEVICE {} -impl ::core::clone::Clone for BTH_QUERY_DEVICE { - fn clone(&self) -> Self { - *self - } -} -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct BTH_QUERY_SERVICE { - pub r#type: u32, - pub serviceHandle: u32, - pub uuids: [SdpQueryUuid; 12], - pub numRange: u32, - pub pRange: [SdpAttributeRange; 1], -} -impl ::core::marker::Copy for BTH_QUERY_SERVICE {} -impl ::core::clone::Clone for BTH_QUERY_SERVICE { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_RADIO_IN_RANGE { - pub deviceInfo: BTH_DEVICE_INFO, - pub previousDeviceFlags: u32, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_RADIO_IN_RANGE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_RADIO_IN_RANGE { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_SDP_VERSION: u32 = 1u32; -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub struct BTH_SET_SERVICE { - pub pSdpVersion: *mut u32, - pub pRecordHandle: *mut super::super::Foundation::HANDLE, - pub fCodService: u32, - pub Reserved: [u32; 5], - pub ulRecordLength: u32, - pub pRecord: [u8; 1], -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for BTH_SET_SERVICE {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for BTH_SET_SERVICE { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const BTH_VID_DEFAULT_VALUE: u32 = 65535u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -1829,7 +1104,6 @@ pub const GenericFileTransferServiceClassID_UUID16: u32 = 4610u32; pub const GenericNetworkingServiceClassID_UUID16: u32 = 4609u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const GenericTelephonyServiceClassID_UUID16: u32 = 4612u32; -pub type HANDLE_SDP_TYPE = u64; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const HCCC_PROTOCOL_UUID16: u32 = 18u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -1877,18 +1151,6 @@ pub const HealthDeviceProfileSourceServiceClassID_UUID16: u32 = 5121u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const HumanInterfaceDeviceServiceClassID_UUID16: u32 = 4388u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type IO_CAPABILITY = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const IoCaps_DisplayOnly: IO_CAPABILITY = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const IoCaps_DisplayYesNo: IO_CAPABILITY = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const IoCaps_KeyboardOnly: IO_CAPABILITY = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const IoCaps_NoInputNoOutput: IO_CAPABILITY = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const IoCaps_Undefined: IO_CAPABILITY = 255i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const IP_PROTOCOL_UUID16: u32 = 9u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const ImagingAutomaticArchiveServiceClassID_UUID16: u32 = 4380u32; @@ -1951,12 +1213,6 @@ pub const NAPServiceClassID_UUID16: u32 = 4374u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const NS_BTH: u32 = 16u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type NodeContainerType = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const NodeContainerTypeSequence: NodeContainerType = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const NodeContainerTypeAlternative: NodeContainerType = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const OBEXFileTransferServiceClassID_UUID16: u32 = 4358u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const OBEXObjectPushServiceClassID_UUID16: u32 = 4357u32; @@ -1979,20 +1235,6 @@ pub const OBJECT_PUSH_FORMAT_VNOTE: u32 = 5u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const PANUServiceClassID_UUID16: u32 = 4373u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type PFNBLUETOOTH_GATT_EVENT_CALLBACK = ::core::option::Option<unsafe extern "system" fn(eventtype: BTH_LE_GATT_EVENT_TYPE, eventoutparameter: *const ::core::ffi::c_void, context: *const ::core::ffi::c_void)>; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type PFN_AUTHENTICATION_CALLBACK = ::core::option::Option<unsafe extern "system" fn(pvparam: *mut ::core::ffi::c_void, pdevice: *mut BLUETOOTH_DEVICE_INFO) -> super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type PFN_AUTHENTICATION_CALLBACK_EX = ::core::option::Option<unsafe extern "system" fn(pvparam: *const ::core::ffi::c_void, pauthcallbackparams: *const BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS) -> super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type PFN_BLUETOOTH_ENUM_ATTRIBUTES_CALLBACK = ::core::option::Option<unsafe extern "system" fn(uattribid: u32, pvaluestream: *const u8, cbstreamsize: u32, pvparam: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type PFN_DEVICE_CALLBACK = ::core::option::Option<unsafe extern "system" fn(pvparam: *mut ::core::ffi::c_void, pdevice: *const BLUETOOTH_DEVICE_INFO) -> super::super::Foundation::BOOL>; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const PF_BTH: u16 = 32u16; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const PSM_3DSP: u32 = 33u32; @@ -2048,77 +1290,12 @@ pub const RFCOMM_CMD_RPN: u32 = 3u32; pub const RFCOMM_CMD_RPN_REQUEST: u32 = 4u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const RFCOMM_CMD_RPN_RESPONSE: u32 = 5u32; -#[repr(C, packed(1))] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct RFCOMM_COMMAND { - pub CmdType: u32, - pub Data: RFCOMM_COMMAND_0, -} -impl ::core::marker::Copy for RFCOMM_COMMAND {} -impl ::core::clone::Clone for RFCOMM_COMMAND { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub union RFCOMM_COMMAND_0 { - pub MSC: RFCOMM_MSC_DATA, - pub RLS: RFCOMM_RLS_DATA, - pub RPN: RFCOMM_RPN_DATA, -} -impl ::core::marker::Copy for RFCOMM_COMMAND_0 {} -impl ::core::clone::Clone for RFCOMM_COMMAND_0 { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const RFCOMM_MAX_MTU: u32 = 1011u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const RFCOMM_MIN_MTU: u32 = 23u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct RFCOMM_MSC_DATA { - pub Signals: u8, - pub Break: u8, -} -impl ::core::marker::Copy for RFCOMM_MSC_DATA {} -impl ::core::clone::Clone for RFCOMM_MSC_DATA { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const RFCOMM_PROTOCOL_UUID16: u32 = 3u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct RFCOMM_RLS_DATA { - pub LineStatus: u8, -} -impl ::core::marker::Copy for RFCOMM_RLS_DATA {} -impl ::core::clone::Clone for RFCOMM_RLS_DATA { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub struct RFCOMM_RPN_DATA { - pub Baud: u8, - pub Data: u8, - pub FlowControl: u8, - pub XonChar: u8, - pub XoffChar: u8, - pub ParameterMask1: u8, - pub ParameterMask2: u8, -} -impl ::core::marker::Copy for RFCOMM_RPN_DATA {} -impl ::core::clone::Clone for RFCOMM_RPN_DATA { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const RLS_ERROR: u32 = 1u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] @@ -2349,6 +1526,1024 @@ pub const SDP_CONNECT_CACHE: u32 = 1u32; pub const SDP_DEFAULT_INQUIRY_MAX_RESPONSES: u32 = 255u32; #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub const SDP_DEFAULT_INQUIRY_SECONDS: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ERROR_INSUFFICIENT_RESOURCES: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ERROR_INVALID_CONTINUATION_STATE: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ERROR_INVALID_PDU_SIZE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ERROR_INVALID_RECORD_HANDLE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ERROR_INVALID_REQUEST_SYNTAX: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ERROR_INVALID_SDP_VERSION: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_MAX_INQUIRY_SECONDS: u32 = 60u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_PROTOCOL_UUID16: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_REQUEST_TO_DEFAULT: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_REQUEST_TO_MAX: u32 = 45u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_REQUEST_TO_MIN: u32 = 10u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_SEARCH_NO_FORMAT_CHECK: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_SEARCH_NO_PARSE_CHECK: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_SERVICE_ATTRIBUTE_REQUEST: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_SERVICE_SEARCH_ATTRIBUTE_REQUEST: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_SERVICE_SEARCH_REQUEST: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_OPTION_DO_NOT_PUBLISH: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_OPTION_DO_NOT_PUBLISH_EIR: u32 = 8u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_OPTION_NO_PUBLIC_BROWSE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_AUTHENTICATE: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_AUTHORIZE: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_DISABLED: u32 = 268435456u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_ENCRYPT_OPTIONAL: u32 = 32u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_ENCRYPT_REQUIRED: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_NONE: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_NO_ASK: u32 = 536870912u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SERVICE_SECURITY_USE_DEFAULTS: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SOL_L2CAP: u32 = 256u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SOL_RFCOMM: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SOL_SDP: u32 = 257u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SO_BTH_AUTHENTICATE: u32 = 2147483649u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SO_BTH_ENCRYPT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SO_BTH_MTU: u32 = 2147483655u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SO_BTH_MTU_MAX: u32 = 2147483656u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SO_BTH_MTU_MIN: u32 = 2147483658u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STRING_DESCRIPTION_OFFSET: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STRING_NAME_OFFSET: u32 = 0u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STRING_PROVIDER_NAME_OFFSET: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_ADDR_FMT: &str = "(%02x:%02x:%02x:%02x:%02x:%02x)"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_ADDR_FMTA: &str = "(%02x:%02x:%02x:%02x:%02x:%02x)"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_ADDR_FMTW: &str = "(%02x:%02x:%02x:%02x:%02x:%02x)"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_ADDR_SHORT_FMT: &str = "%04x%08x"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_ADDR_SHORT_FMTA: &str = "%04x%08x"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_ADDR_SHORT_FMTW: &str = "%04x%08x"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_USBHCI_CLASS_HARDWAREID: &str = "USB\\Class_E0&SubClass_01&Prot_01"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_USBHCI_CLASS_HARDWAREIDA: &str = "USB\\Class_E0&SubClass_01&Prot_01"; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const STR_USBHCI_CLASS_HARDWAREIDW: &str = "USB\\Class_E0&SubClass_01&Prot_01"; +pub const SVCID_BTH_PROVIDER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 111829984, data2: 32096, data3: 16895, data4: [175, 178, 62, 230, 210, 217, 57, 45] }; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SYNCH_DATA_STORE_CALENDAR: u32 = 3u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SYNCH_DATA_STORE_MESSAGES: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SYNCH_DATA_STORE_NOTES: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SYNCH_DATA_STORE_PHONEBOOK: u32 = 1u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SerialPortServiceClassID_UUID16: u32 = 4353u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const ServiceDiscoveryServerServiceClassID_UUID16: u32 = 4096u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SimAccessServiceClassID_UUID16: u32 = 4397u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const TCP_PROTOCOL_UUID16: u32 = 4u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const TCSAT_PROTOCOL_UUID16: u32 = 6u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const TCSBIN_PROTOCOL_UUID16: u32 = 5u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const ThreeDimensionalDisplayServiceClassID_UUID16: u32 = 4407u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const ThreeDimensionalGlassesServiceClassID_UUID16: u32 = 4408u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const ThreeDimensionalSynchronizationProfileID_UUID16: u32 = 4409u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UDIMTServiceClassID_UUID16: u32 = 4394u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UDIMTServiceClass_UUID16: u32 = 4394u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UDITAServiceClassID_UUID16: u32 = 4395u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UDITAServiceClass_UUID16: u32 = 4395u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UDI_C_PLANE_PROTOCOL_UUID16: u32 = 29u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UDP_PROTOCOL_UUID16: u32 = 2u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UPNP_PROTOCOL_UUID16: u32 = 16u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UPnpIpServiceClassID_UUID16: u32 = 4614u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const UPnpServiceClassID_UUID16: u32 = 4613u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const VideoConferencingGWServiceClassID_UUID16: u32 = 4393u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const VideoConferencingGWServiceClass_UUID16: u32 = 4393u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const VideoConferencingServiceClassID_UUID16: u32 = 4367u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const VideoDistributionProfileID_UUID16: u32 = 4869u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const VideoSinkServiceClassID_UUID16: u32 = 4868u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const VideoSourceServiceClassID_UUID16: u32 = 4867u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const WAPClientServiceClassID_UUID16: u32 = 4372u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const WAPServiceClassID_UUID16: u32 = 4371u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const WSP_PROTOCOL_UUID16: u32 = 14u32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type AUTHENTICATION_REQUIREMENTS = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionNotRequired: AUTHENTICATION_REQUIREMENTS = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionRequired: AUTHENTICATION_REQUIREMENTS = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionNotRequiredBonding: AUTHENTICATION_REQUIREMENTS = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionRequiredBonding: AUTHENTICATION_REQUIREMENTS = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionNotRequiredGeneralBonding: AUTHENTICATION_REQUIREMENTS = 4i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionRequiredGeneralBonding: AUTHENTICATION_REQUIREMENTS = 5i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const MITMProtectionNotDefined: AUTHENTICATION_REQUIREMENTS = 255i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type BLUETOOTH_AUTHENTICATION_METHOD = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_AUTHENTICATION_METHOD_LEGACY: BLUETOOTH_AUTHENTICATION_METHOD = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_AUTHENTICATION_METHOD_OOB: BLUETOOTH_AUTHENTICATION_METHOD = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_AUTHENTICATION_METHOD_NUMERIC_COMPARISON: BLUETOOTH_AUTHENTICATION_METHOD = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_AUTHENTICATION_METHOD_PASSKEY_NOTIFICATION: BLUETOOTH_AUTHENTICATION_METHOD = 4i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_AUTHENTICATION_METHOD_PASSKEY: BLUETOOTH_AUTHENTICATION_METHOD = 5i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type BLUETOOTH_AUTHENTICATION_REQUIREMENTS = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionNotRequired: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionRequired: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionNotRequiredBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionRequiredBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionNotRequiredGeneralBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 4i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionRequiredGeneralBonding: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 5i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_MITM_ProtectionNotDefined: BLUETOOTH_AUTHENTICATION_REQUIREMENTS = 255i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type BLUETOOTH_IO_CAPABILITY = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_IO_CAPABILITY_DISPLAYONLY: BLUETOOTH_IO_CAPABILITY = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_IO_CAPABILITY_DISPLAYYESNO: BLUETOOTH_IO_CAPABILITY = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_IO_CAPABILITY_KEYBOARDONLY: BLUETOOTH_IO_CAPABILITY = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_IO_CAPABILITY_NOINPUTNOOUTPUT: BLUETOOTH_IO_CAPABILITY = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const BLUETOOTH_IO_CAPABILITY_UNDEFINED: BLUETOOTH_IO_CAPABILITY = 255i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type BTH_LE_GATT_DESCRIPTOR_TYPE = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const CharacteristicExtendedProperties: BTH_LE_GATT_DESCRIPTOR_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const CharacteristicUserDescription: BTH_LE_GATT_DESCRIPTOR_TYPE = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const ClientCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const ServerCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_TYPE = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const CharacteristicFormat: BTH_LE_GATT_DESCRIPTOR_TYPE = 4i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const CharacteristicAggregateFormat: BTH_LE_GATT_DESCRIPTOR_TYPE = 5i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const CustomDescriptor: BTH_LE_GATT_DESCRIPTOR_TYPE = 6i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type BTH_LE_GATT_EVENT_TYPE = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const CharacteristicValueChangedEvent: BTH_LE_GATT_EVENT_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type IO_CAPABILITY = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const IoCaps_DisplayOnly: IO_CAPABILITY = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const IoCaps_DisplayYesNo: IO_CAPABILITY = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const IoCaps_KeyboardOnly: IO_CAPABILITY = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const IoCaps_NoInputNoOutput: IO_CAPABILITY = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const IoCaps_Undefined: IO_CAPABILITY = 255i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type NodeContainerType = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const NodeContainerTypeSequence: NodeContainerType = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const NodeContainerTypeAlternative: NodeContainerType = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type SDP_SPECIFICTYPE = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_NONE: SDP_SPECIFICTYPE = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UINT8: SDP_SPECIFICTYPE = 16i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UINT16: SDP_SPECIFICTYPE = 272i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UINT32: SDP_SPECIFICTYPE = 528i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UINT64: SDP_SPECIFICTYPE = 784i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UINT128: SDP_SPECIFICTYPE = 1040i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_INT8: SDP_SPECIFICTYPE = 32i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_INT16: SDP_SPECIFICTYPE = 288i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_INT32: SDP_SPECIFICTYPE = 544i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_INT64: SDP_SPECIFICTYPE = 800i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_INT128: SDP_SPECIFICTYPE = 1056i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UUID16: SDP_SPECIFICTYPE = 304i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UUID32: SDP_SPECIFICTYPE = 544i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_ST_UUID128: SDP_SPECIFICTYPE = 1072i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub type SDP_TYPE = i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_NIL: SDP_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_UINT: SDP_TYPE = 1i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_INT: SDP_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_UUID: SDP_TYPE = 3i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_STRING: SDP_TYPE = 4i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_BOOLEAN: SDP_TYPE = 5i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_SEQUENCE: SDP_TYPE = 6i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_ALTERNATIVE: SDP_TYPE = 7i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_URL: SDP_TYPE = 8i32; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub const SDP_TYPE_CONTAINER: SDP_TYPE = 32i32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_ADDRESS_STRUCT { + pub Anonymous: BLUETOOTH_ADDRESS_STRUCT_0, +} +impl ::core::marker::Copy for BLUETOOTH_ADDRESS_STRUCT {} +impl ::core::clone::Clone for BLUETOOTH_ADDRESS_STRUCT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub union BLUETOOTH_ADDRESS_STRUCT_0 { + pub ullLong: u64, + pub rgBytes: [u8; 6], +} +impl ::core::marker::Copy for BLUETOOTH_ADDRESS_STRUCT_0 {} +impl ::core::clone::Clone for BLUETOOTH_ADDRESS_STRUCT_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_AUTHENTICATE_RESPONSE { + pub bthAddressRemote: BLUETOOTH_ADDRESS_STRUCT, + pub authMethod: BLUETOOTH_AUTHENTICATION_METHOD, + pub Anonymous: BLUETOOTH_AUTHENTICATE_RESPONSE_0, + pub negativeResponse: u8, +} +impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATE_RESPONSE {} +impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATE_RESPONSE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub union BLUETOOTH_AUTHENTICATE_RESPONSE_0 { + pub pinInfo: BLUETOOTH_PIN_INFO, + pub oobInfo: BLUETOOTH_OOB_DATA_INFO, + pub numericCompInfo: BLUETOOTH_NUMERIC_COMPARISON_INFO, + pub passkeyInfo: BLUETOOTH_PASSKEY_INFO, +} +impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATE_RESPONSE_0 {} +impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATE_RESPONSE_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS { + pub deviceInfo: BLUETOOTH_DEVICE_INFO_STRUCT, + pub authenticationMethod: BLUETOOTH_AUTHENTICATION_METHOD, + pub ioCapability: BLUETOOTH_IO_CAPABILITY, + pub authenticationRequirements: BLUETOOTH_AUTHENTICATION_REQUIREMENTS, + pub Anonymous: BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0 { + pub Numeric_Value: u32, + pub Passkey: u32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_COD_PAIRS { + pub ulCODMask: u32, + pub pcszDescription: ::windows_sys::core::PCWSTR, +} +impl ::core::marker::Copy for BLUETOOTH_COD_PAIRS {} +impl ::core::clone::Clone for BLUETOOTH_COD_PAIRS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BLUETOOTH_DEVICE_INFO_STRUCT { + pub dwSize: u32, + pub Address: BLUETOOTH_ADDRESS_STRUCT, + pub ulClassofDevice: u32, + pub fConnected: super::super::Foundation::BOOL, + pub fRemembered: super::super::Foundation::BOOL, + pub fAuthenticated: super::super::Foundation::BOOL, + pub stLastSeen: super::super::Foundation::SYSTEMTIME, + pub stLastUsed: super::super::Foundation::SYSTEMTIME, + pub szName: [u16; 248], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_DEVICE_INFO_STRUCT {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_DEVICE_INFO_STRUCT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BLUETOOTH_DEVICE_SEARCH_PARAMS { + pub dwSize: u32, + pub fReturnAuthenticated: super::super::Foundation::BOOL, + pub fReturnRemembered: super::super::Foundation::BOOL, + pub fReturnUnknown: super::super::Foundation::BOOL, + pub fReturnConnected: super::super::Foundation::BOOL, + pub fIssueInquiry: super::super::Foundation::BOOL, + pub cTimeoutMultiplier: u8, + pub hRadio: super::super::Foundation::HANDLE, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_DEVICE_SEARCH_PARAMS {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_DEVICE_SEARCH_PARAMS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_FIND_RADIO_PARAMS { + pub dwSize: u32, +} +impl ::core::marker::Copy for BLUETOOTH_FIND_RADIO_PARAMS {} +impl ::core::clone::Clone for BLUETOOTH_FIND_RADIO_PARAMS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_GATT_VALUE_CHANGED_EVENT { + pub ChangedAttributeHandle: u16, + pub CharacteristicValueDataSize: usize, + pub CharacteristicValue: *mut BTH_LE_GATT_CHARACTERISTIC_VALUE, +} +impl ::core::marker::Copy for BLUETOOTH_GATT_VALUE_CHANGED_EVENT {} +impl ::core::clone::Clone for BLUETOOTH_GATT_VALUE_CHANGED_EVENT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION { + pub NumCharacteristics: u16, + pub Characteristics: [BTH_LE_GATT_CHARACTERISTIC; 1], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_GATT_VALUE_CHANGED_EVENT_REGISTRATION { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BLUETOOTH_LOCAL_SERVICE_INFO_STRUCT { + pub Enabled: super::super::Foundation::BOOL, + pub btAddr: BLUETOOTH_ADDRESS_STRUCT, + pub szName: [u16; 256], + pub szDeviceString: [u16; 256], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_LOCAL_SERVICE_INFO_STRUCT {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_LOCAL_SERVICE_INFO_STRUCT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_NUMERIC_COMPARISON_INFO { + pub NumericValue: u32, +} +impl ::core::marker::Copy for BLUETOOTH_NUMERIC_COMPARISON_INFO {} +impl ::core::clone::Clone for BLUETOOTH_NUMERIC_COMPARISON_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_OOB_DATA_INFO { + pub C: [u8; 16], + pub R: [u8; 16], +} +impl ::core::marker::Copy for BLUETOOTH_OOB_DATA_INFO {} +impl ::core::clone::Clone for BLUETOOTH_OOB_DATA_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_PASSKEY_INFO { + pub passkey: u32, +} +impl ::core::marker::Copy for BLUETOOTH_PASSKEY_INFO {} +impl ::core::clone::Clone for BLUETOOTH_PASSKEY_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_PIN_INFO { + pub pin: [u8; 16], + pub pinLength: u8, +} +impl ::core::marker::Copy for BLUETOOTH_PIN_INFO {} +impl ::core::clone::Clone for BLUETOOTH_PIN_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BLUETOOTH_RADIO_INFO { + pub dwSize: u32, + pub address: BLUETOOTH_ADDRESS_STRUCT, + pub szName: [u16; 248], + pub ulClassofDevice: u32, + pub lmpSubversion: u16, + pub manufacturer: u16, +} +impl ::core::marker::Copy for BLUETOOTH_RADIO_INFO {} +impl ::core::clone::Clone for BLUETOOTH_RADIO_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BLUETOOTH_SELECT_DEVICE_PARAMS { + pub dwSize: u32, + pub cNumOfClasses: u32, + pub prgClassOfDevices: *mut BLUETOOTH_COD_PAIRS, + pub pszInfo: ::windows_sys::core::PWSTR, + pub hwndParent: super::super::Foundation::HWND, + pub fForceAuthentication: super::super::Foundation::BOOL, + pub fShowAuthenticated: super::super::Foundation::BOOL, + pub fShowRemembered: super::super::Foundation::BOOL, + pub fShowUnknown: super::super::Foundation::BOOL, + pub fAddNewDeviceWizard: super::super::Foundation::BOOL, + pub fSkipServicesPage: super::super::Foundation::BOOL, + pub pfnDeviceCallback: PFN_DEVICE_CALLBACK, + pub pvParam: *mut ::core::ffi::c_void, + pub cNumDevices: u32, + pub pDevices: *mut BLUETOOTH_DEVICE_INFO_STRUCT, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BLUETOOTH_SELECT_DEVICE_PARAMS {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BLUETOOTH_SELECT_DEVICE_PARAMS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_DEVICE_INFO { + pub flags: u32, + pub address: u64, + pub classOfDevice: u32, + pub name: [super::super::Foundation::CHAR; 248], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_DEVICE_INFO {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_DEVICE_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_HCI_EVENT_INFO { + pub bthAddress: u64, + pub connectionType: u8, + pub connected: u8, +} +impl ::core::marker::Copy for BTH_HCI_EVENT_INFO {} +impl ::core::clone::Clone for BTH_HCI_EVENT_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_INFO_REQ { + pub btAddr: u64, + pub infoType: u16, +} +impl ::core::marker::Copy for BTH_INFO_REQ {} +impl ::core::clone::Clone for BTH_INFO_REQ { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_INFO_RSP { + pub result: u16, + pub dataLen: u8, + pub Anonymous: BTH_INFO_RSP_0, +} +impl ::core::marker::Copy for BTH_INFO_RSP {} +impl ::core::clone::Clone for BTH_INFO_RSP { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub union BTH_INFO_RSP_0 { + pub connectionlessMTU: u16, + pub data: [u8; 44], +} +impl ::core::marker::Copy for BTH_INFO_RSP_0 {} +impl ::core::clone::Clone for BTH_INFO_RSP_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_L2CAP_EVENT_INFO { + pub bthAddress: u64, + pub psm: u16, + pub connected: u8, + pub initiated: u8, +} +impl ::core::marker::Copy for BTH_L2CAP_EVENT_INFO {} +impl ::core::clone::Clone for BTH_L2CAP_EVENT_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_CHARACTERISTIC { + pub ServiceHandle: u16, + pub CharacteristicUuid: BTH_LE_UUID, + pub AttributeHandle: u16, + pub CharacteristicValueHandle: u16, + pub IsBroadcastable: super::super::Foundation::BOOLEAN, + pub IsReadable: super::super::Foundation::BOOLEAN, + pub IsWritable: super::super::Foundation::BOOLEAN, + pub IsWritableWithoutResponse: super::super::Foundation::BOOLEAN, + pub IsSignedWritable: super::super::Foundation::BOOLEAN, + pub IsNotifiable: super::super::Foundation::BOOLEAN, + pub IsIndicatable: super::super::Foundation::BOOLEAN, + pub HasExtendedProperties: super::super::Foundation::BOOLEAN, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_CHARACTERISTIC {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_CHARACTERISTIC { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_LE_GATT_CHARACTERISTIC_VALUE { + pub DataSize: u32, + pub Data: [u8; 1], +} +impl ::core::marker::Copy for BTH_LE_GATT_CHARACTERISTIC_VALUE {} +impl ::core::clone::Clone for BTH_LE_GATT_CHARACTERISTIC_VALUE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_DESCRIPTOR { + pub ServiceHandle: u16, + pub CharacteristicHandle: u16, + pub DescriptorType: BTH_LE_GATT_DESCRIPTOR_TYPE, + pub DescriptorUuid: BTH_LE_UUID, + pub AttributeHandle: u16, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_DESCRIPTOR_VALUE { + pub DescriptorType: BTH_LE_GATT_DESCRIPTOR_TYPE, + pub DescriptorUuid: BTH_LE_UUID, + pub Anonymous: BTH_LE_GATT_DESCRIPTOR_VALUE_0, + pub DataSize: u32, + pub Data: [u8; 1], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union BTH_LE_GATT_DESCRIPTOR_VALUE_0 { + pub CharacteristicExtendedProperties: BTH_LE_GATT_DESCRIPTOR_VALUE_0_0, + pub ClientCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_VALUE_0_2, + pub ServerCharacteristicConfiguration: BTH_LE_GATT_DESCRIPTOR_VALUE_0_3, + pub CharacteristicFormat: BTH_LE_GATT_DESCRIPTOR_VALUE_0_1, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_0 { + pub IsReliableWriteEnabled: super::super::Foundation::BOOLEAN, + pub IsAuxiliariesWritable: super::super::Foundation::BOOLEAN, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_1 { + pub Format: u8, + pub Exponent: u8, + pub Unit: BTH_LE_UUID, + pub NameSpace: u8, + pub Description: BTH_LE_UUID, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_1 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_1 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_2 { + pub IsSubscribeToNotification: super::super::Foundation::BOOLEAN, + pub IsSubscribeToIndication: super::super::Foundation::BOOLEAN, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_2 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_2 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_DESCRIPTOR_VALUE_0_3 { + pub IsBroadcast: super::super::Foundation::BOOLEAN, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_DESCRIPTOR_VALUE_0_3 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_DESCRIPTOR_VALUE_0_3 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_GATT_SERVICE { + pub ServiceUuid: BTH_LE_UUID, + pub AttributeHandle: u16, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_GATT_SERVICE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_GATT_SERVICE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_LE_UUID { + pub IsShortUuid: super::super::Foundation::BOOLEAN, + pub Value: BTH_LE_UUID_0, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_UUID {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_UUID { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union BTH_LE_UUID_0 { + pub ShortUuid: u16, + pub LongUuid: ::windows_sys::core::GUID, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_LE_UUID_0 {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_LE_UUID_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_PING_REQ { + pub btAddr: u64, + pub dataLen: u8, + pub data: [u8; 44], +} +impl ::core::marker::Copy for BTH_PING_REQ {} +impl ::core::clone::Clone for BTH_PING_REQ { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_PING_RSP { + pub dataLen: u8, + pub data: [u8; 44], +} +impl ::core::marker::Copy for BTH_PING_RSP {} +impl ::core::clone::Clone for BTH_PING_RSP { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_QUERY_DEVICE { + pub LAP: u32, + pub length: u8, +} +impl ::core::marker::Copy for BTH_QUERY_DEVICE {} +impl ::core::clone::Clone for BTH_QUERY_DEVICE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct BTH_QUERY_SERVICE { + pub r#type: u32, + pub serviceHandle: u32, + pub uuids: [SdpQueryUuid; 12], + pub numRange: u32, + pub pRange: [SdpAttributeRange; 1], +} +impl ::core::marker::Copy for BTH_QUERY_SERVICE {} +impl ::core::clone::Clone for BTH_QUERY_SERVICE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_RADIO_IN_RANGE { + pub deviceInfo: BTH_DEVICE_INFO, + pub previousDeviceFlags: u32, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_RADIO_IN_RANGE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_RADIO_IN_RANGE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub struct BTH_SET_SERVICE { + pub pSdpVersion: *mut u32, + pub pRecordHandle: *mut super::super::Foundation::HANDLE, + pub fCodService: u32, + pub Reserved: [u32; 5], + pub ulRecordLength: u32, + pub pRecord: [u8; 1], +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for BTH_SET_SERVICE {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for BTH_SET_SERVICE { + fn clone(&self) -> Self { + *self + } +} +pub type HANDLE_SDP_TYPE = u64; +#[repr(C, packed(1))] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct RFCOMM_COMMAND { + pub CmdType: u32, + pub Data: RFCOMM_COMMAND_0, +} +impl ::core::marker::Copy for RFCOMM_COMMAND {} +impl ::core::clone::Clone for RFCOMM_COMMAND { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub union RFCOMM_COMMAND_0 { + pub MSC: RFCOMM_MSC_DATA, + pub RLS: RFCOMM_RLS_DATA, + pub RPN: RFCOMM_RPN_DATA, +} +impl ::core::marker::Copy for RFCOMM_COMMAND_0 {} +impl ::core::clone::Clone for RFCOMM_COMMAND_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct RFCOMM_MSC_DATA { + pub Signals: u8, + pub Break: u8, +} +impl ::core::marker::Copy for RFCOMM_MSC_DATA {} +impl ::core::clone::Clone for RFCOMM_MSC_DATA { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct RFCOMM_RLS_DATA { + pub LineStatus: u8, +} +impl ::core::marker::Copy for RFCOMM_RLS_DATA {} +impl ::core::clone::Clone for RFCOMM_RLS_DATA { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] +pub struct RFCOMM_RPN_DATA { + pub Baud: u8, + pub Data: u8, + pub FlowControl: u8, + pub XonChar: u8, + pub XoffChar: u8, + pub ParameterMask1: u8, + pub ParameterMask2: u8, +} +impl ::core::marker::Copy for RFCOMM_RPN_DATA {} +impl ::core::clone::Clone for RFCOMM_RPN_DATA { + fn clone(&self) -> Self { + *self + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] #[cfg(feature = "Win32_Foundation")] @@ -2456,18 +2651,6 @@ impl ::core::clone::Clone for SDP_ELEMENT_DATA_0_3 { *self } } -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ERROR_INSUFFICIENT_RESOURCES: u32 = 6u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ERROR_INVALID_CONTINUATION_STATE: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ERROR_INVALID_PDU_SIZE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ERROR_INVALID_RECORD_HANDLE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ERROR_INVALID_REQUEST_SYNTAX: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ERROR_INVALID_SDP_VERSION: u32 = 1u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub struct SDP_LARGE_INTEGER_16 { @@ -2480,56 +2663,6 @@ impl ::core::clone::Clone for SDP_LARGE_INTEGER_16 { *self } } -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_MAX_INQUIRY_SECONDS: u32 = 60u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_PROTOCOL_UUID16: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_REQUEST_TO_DEFAULT: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_REQUEST_TO_MAX: u32 = 45u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_REQUEST_TO_MIN: u32 = 10u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_SEARCH_NO_FORMAT_CHECK: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_SEARCH_NO_PARSE_CHECK: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_SERVICE_ATTRIBUTE_REQUEST: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_SERVICE_SEARCH_ATTRIBUTE_REQUEST: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_SERVICE_SEARCH_REQUEST: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type SDP_SPECIFICTYPE = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_NONE: SDP_SPECIFICTYPE = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UINT8: SDP_SPECIFICTYPE = 16i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UINT16: SDP_SPECIFICTYPE = 272i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UINT32: SDP_SPECIFICTYPE = 528i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UINT64: SDP_SPECIFICTYPE = 784i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UINT128: SDP_SPECIFICTYPE = 1040i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_INT8: SDP_SPECIFICTYPE = 32i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_INT16: SDP_SPECIFICTYPE = 288i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_INT32: SDP_SPECIFICTYPE = 544i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_INT64: SDP_SPECIFICTYPE = 800i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_INT128: SDP_SPECIFICTYPE = 1056i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UUID16: SDP_SPECIFICTYPE = 304i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UUID32: SDP_SPECIFICTYPE = 544i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_ST_UUID128: SDP_SPECIFICTYPE = 1072i32; #[repr(C)] #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub struct SDP_STRING_TYPE_DATA { @@ -2543,28 +2676,6 @@ impl ::core::clone::Clone for SDP_STRING_TYPE_DATA { *self } } -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub type SDP_TYPE = i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_NIL: SDP_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_UINT: SDP_TYPE = 1i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_INT: SDP_TYPE = 2i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_UUID: SDP_TYPE = 3i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_STRING: SDP_TYPE = 4i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_BOOLEAN: SDP_TYPE = 5i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_SEQUENCE: SDP_TYPE = 6i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_ALTERNATIVE: SDP_TYPE = 7i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_URL: SDP_TYPE = 8i32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SDP_TYPE_CONTAINER: SDP_TYPE = 32i32; #[repr(C)] #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub struct SDP_ULARGE_INTEGER_16 { @@ -2577,28 +2688,6 @@ impl ::core::clone::Clone for SDP_ULARGE_INTEGER_16 { *self } } -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_OPTION_DO_NOT_PUBLISH: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_OPTION_DO_NOT_PUBLISH_EIR: u32 = 8u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_OPTION_NO_PUBLIC_BROWSE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_AUTHENTICATE: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_AUTHORIZE: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_DISABLED: u32 = 268435456u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_ENCRYPT_OPTIONAL: u32 = 32u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_ENCRYPT_REQUIRED: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_NONE: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_NO_ASK: u32 = 536870912u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SERVICE_SECURITY_USE_DEFAULTS: u32 = 0u32; #[repr(C, packed(1))] #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub struct SOCKADDR_BTH { @@ -2613,55 +2702,6 @@ impl ::core::clone::Clone for SOCKADDR_BTH { *self } } -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SOL_L2CAP: u32 = 256u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SOL_RFCOMM: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SOL_SDP: u32 = 257u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SO_BTH_AUTHENTICATE: u32 = 2147483649u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SO_BTH_ENCRYPT: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SO_BTH_MTU: u32 = 2147483655u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SO_BTH_MTU_MAX: u32 = 2147483656u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SO_BTH_MTU_MIN: u32 = 2147483658u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STRING_DESCRIPTION_OFFSET: u32 = 1u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STRING_NAME_OFFSET: u32 = 0u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STRING_PROVIDER_NAME_OFFSET: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_ADDR_FMT: &str = "(%02x:%02x:%02x:%02x:%02x:%02x)"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_ADDR_FMTA: &str = "(%02x:%02x:%02x:%02x:%02x:%02x)"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_ADDR_FMTW: &str = "(%02x:%02x:%02x:%02x:%02x:%02x)"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_ADDR_SHORT_FMT: &str = "%04x%08x"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_ADDR_SHORT_FMTA: &str = "%04x%08x"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_ADDR_SHORT_FMTW: &str = "%04x%08x"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_USBHCI_CLASS_HARDWAREID: &str = "USB\\Class_E0&SubClass_01&Prot_01"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_USBHCI_CLASS_HARDWAREIDA: &str = "USB\\Class_E0&SubClass_01&Prot_01"; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const STR_USBHCI_CLASS_HARDWAREIDW: &str = "USB\\Class_E0&SubClass_01&Prot_01"; -pub const SVCID_BTH_PROVIDER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 111829984, data2: 32096, data3: 16895, data4: [175, 178, 62, 230, 210, 217, 57, 45] }; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SYNCH_DATA_STORE_CALENDAR: u32 = 3u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SYNCH_DATA_STORE_MESSAGES: u32 = 6u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SYNCH_DATA_STORE_NOTES: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SYNCH_DATA_STORE_PHONEBOOK: u32 = 1u32; #[repr(C)] #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] pub struct SdpAttributeRange { @@ -2700,56 +2740,16 @@ impl ::core::clone::Clone for SdpQueryUuidUnion { } } #[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SerialPortServiceClassID_UUID16: u32 = 4353u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const ServiceDiscoveryServerServiceClassID_UUID16: u32 = 4096u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const SimAccessServiceClassID_UUID16: u32 = 4397u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const TCP_PROTOCOL_UUID16: u32 = 4u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const TCSAT_PROTOCOL_UUID16: u32 = 6u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const TCSBIN_PROTOCOL_UUID16: u32 = 5u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const ThreeDimensionalDisplayServiceClassID_UUID16: u32 = 4407u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const ThreeDimensionalGlassesServiceClassID_UUID16: u32 = 4408u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const ThreeDimensionalSynchronizationProfileID_UUID16: u32 = 4409u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UDIMTServiceClassID_UUID16: u32 = 4394u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UDIMTServiceClass_UUID16: u32 = 4394u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UDITAServiceClassID_UUID16: u32 = 4395u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UDITAServiceClass_UUID16: u32 = 4395u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UDI_C_PLANE_PROTOCOL_UUID16: u32 = 29u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UDP_PROTOCOL_UUID16: u32 = 2u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UPNP_PROTOCOL_UUID16: u32 = 16u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UPnpIpServiceClassID_UUID16: u32 = 4614u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const UPnpServiceClassID_UUID16: u32 = 4613u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const VideoConferencingGWServiceClassID_UUID16: u32 = 4393u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const VideoConferencingGWServiceClass_UUID16: u32 = 4393u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const VideoConferencingServiceClassID_UUID16: u32 = 4367u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const VideoDistributionProfileID_UUID16: u32 = 4869u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const VideoSinkServiceClassID_UUID16: u32 = 4868u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const VideoSourceServiceClassID_UUID16: u32 = 4867u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const WAPClientServiceClassID_UUID16: u32 = 4372u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const WAPServiceClassID_UUID16: u32 = 4371u32; -#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`*"] -pub const WSP_PROTOCOL_UUID16: u32 = 14u32; +pub type PFNBLUETOOTH_GATT_EVENT_CALLBACK = ::core::option::Option<unsafe extern "system" fn(eventtype: BTH_LE_GATT_EVENT_TYPE, eventoutparameter: *const ::core::ffi::c_void, context: *const ::core::ffi::c_void)>; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub type PFN_AUTHENTICATION_CALLBACK = ::core::option::Option<unsafe extern "system" fn(pvparam: *mut ::core::ffi::c_void, pdevice: *mut BLUETOOTH_DEVICE_INFO_STRUCT) -> super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub type PFN_AUTHENTICATION_CALLBACK_EX = ::core::option::Option<unsafe extern "system" fn(pvparam: *const ::core::ffi::c_void, pauthcallbackparams: *const BLUETOOTH_AUTHENTICATION_CALLBACK_PARAMS) -> super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub type PFN_BLUETOOTH_ENUM_ATTRIBUTES_CALLBACK = ::core::option::Option<unsafe extern "system" fn(uattribid: u32, pvaluestream: *const u8, cbstreamsize: u32, pvparam: *const ::core::ffi::c_void) -> super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_Devices_Bluetooth\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub type PFN_DEVICE_CALLBACK = ::core::option::Option<unsafe extern "system" fn(pvparam: *mut ::core::ffi::c_void, pdevice: *const BLUETOOTH_DEVICE_INFO_STRUCT) -> super::super::Foundation::BOOL>; |