aboutsummaryrefslogtreecommitdiff
path: root/vendor/winapi/src/um/bluetoothleapis.rs
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
committerValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
commit1b6a04ca5504955c571d1c97504fb45ea0befee4 (patch)
tree7579f518b23313e8a9748a88ab6173d5e030b227 /vendor/winapi/src/um/bluetoothleapis.rs
parent5ecd8cf2cba827454317368b68571df0d13d7842 (diff)
downloadfparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.tar.xz
fparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.zip
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
Diffstat (limited to 'vendor/winapi/src/um/bluetoothleapis.rs')
-rw-r--r--vendor/winapi/src/um/bluetoothleapis.rs104
1 files changed, 104 insertions, 0 deletions
diff --git a/vendor/winapi/src/um/bluetoothleapis.rs b/vendor/winapi/src/um/bluetoothleapis.rs
new file mode 100644
index 0000000..bca8f97
--- /dev/null
+++ b/vendor/winapi/src/um/bluetoothleapis.rs
@@ -0,0 +1,104 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+use shared::minwindef::{ULONG, USHORT};
+use shared::winerror::HRESULT;
+use um::bthledef::{
+ BLUETOOTH_GATT_EVENT_HANDLE, BTH_LE_GATT_EVENT_TYPE, BTH_LE_GATT_RELIABLE_WRITE_CONTEXT,
+ PBTH_LE_GATT_CHARACTERISTIC, PBTH_LE_GATT_CHARACTERISTIC_VALUE, PBTH_LE_GATT_DESCRIPTOR,
+ PBTH_LE_GATT_DESCRIPTOR_VALUE, PBTH_LE_GATT_RELIABLE_WRITE_CONTEXT, PBTH_LE_GATT_SERVICE,
+ PFNBLUETOOTH_GATT_EVENT_CALLBACK,
+};
+use um::winnt::{HANDLE, PVOID};
+extern "system" {
+ pub fn BluetoothGATTGetServices(
+ hDevice: HANDLE,
+ ServicesBufferCount: USHORT,
+ ServicesBuffer: PBTH_LE_GATT_SERVICE,
+ ServicesBufferActual: *mut USHORT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTGetIncludedServices(
+ hDevice: HANDLE,
+ ParentService: PBTH_LE_GATT_SERVICE,
+ IncludedServicesBufferCount: USHORT,
+ IncludedServicesBuffer: PBTH_LE_GATT_SERVICE,
+ IncludedServicesBufferActual: *mut USHORT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTGetCharacteristics(
+ hDevice: HANDLE,
+ Service: PBTH_LE_GATT_SERVICE,
+ CharacteristicsBufferCount: USHORT,
+ CharacteristicsBuffer: PBTH_LE_GATT_CHARACTERISTIC,
+ CharacteristicsBufferActual: *mut USHORT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTGetDescriptors(
+ hDevice: HANDLE,
+ Characteristic: PBTH_LE_GATT_CHARACTERISTIC,
+ DescriptorsBufferCount: USHORT,
+ DescriptorsBuffer: PBTH_LE_GATT_DESCRIPTOR,
+ DescriptorsBufferActual: *mut USHORT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTGetCharacteristicValue(
+ hDevice: HANDLE,
+ Characteristic: PBTH_LE_GATT_CHARACTERISTIC,
+ CharacteristicValueDataSize: ULONG,
+ CharacteristicValue: PBTH_LE_GATT_CHARACTERISTIC_VALUE,
+ CharacteristicValueSizeRequired: *mut USHORT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTGetDescriptorValue(
+ hDevice: HANDLE,
+ Descriptor: PBTH_LE_GATT_DESCRIPTOR,
+ DescriptorValueDataSize: ULONG,
+ DescriptorValue: PBTH_LE_GATT_DESCRIPTOR_VALUE,
+ DescriptorValueSizeRequired: *mut USHORT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTBeginReliableWrite(
+ hDevice: HANDLE,
+ ReliableWriteContext: PBTH_LE_GATT_RELIABLE_WRITE_CONTEXT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTSetCharacteristicValue(
+ hDevice: HANDLE,
+ Characteristic: PBTH_LE_GATT_CHARACTERISTIC,
+ CharacteristicValue: PBTH_LE_GATT_CHARACTERISTIC_VALUE,
+ ReliableWriteContext: BTH_LE_GATT_RELIABLE_WRITE_CONTEXT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTEndReliableWrite(
+ hDevice: HANDLE,
+ ReliableWriteContext: BTH_LE_GATT_RELIABLE_WRITE_CONTEXT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTAbortReliableWrite(
+ hDevice: HANDLE,
+ ReliableWriteContext: BTH_LE_GATT_RELIABLE_WRITE_CONTEXT,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTSetDescriptorValue(
+ hDevice: HANDLE,
+ Descriptor: PBTH_LE_GATT_DESCRIPTOR,
+ DescriptorValue: PBTH_LE_GATT_DESCRIPTOR_VALUE,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTRegisterEvent(
+ hService: HANDLE,
+ EventType: BTH_LE_GATT_EVENT_TYPE,
+ EventParameterIn: PVOID,
+ Callback: PFNBLUETOOTH_GATT_EVENT_CALLBACK,
+ CallbackContext: PVOID,
+ pEventHandle: *mut BLUETOOTH_GATT_EVENT_HANDLE,
+ Flags: ULONG,
+ ) -> HRESULT;
+ pub fn BluetoothGATTUnregisterEvent(
+ EventHandle: BLUETOOTH_GATT_EVENT_HANDLE,
+ Flags: ULONG,
+ ) -> HRESULT;
+}