| /* |
| * Copyright 2025 Vibhav Pant |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Lesser General Public |
| * License as published by the Free Software Foundation; either |
| * version 2.1 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Lesser General Public License for more details. |
| * |
| * You should have received a copy of the GNU Lesser General Public |
| * License along with this library; if not, write to the Free Software |
| * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
| */ |
| |
| #ifdef __WIDL__ |
| #pragma winrt ns_prefix |
| #endif |
| |
| #ifndef DO_NO_IMPORTS |
| import "inspectable.idl"; |
| import "asyncinfo.idl"; |
| import "eventtoken.idl"; |
| import "windowscontracts.idl"; |
| import "windows.foundation.idl"; |
| import "windows.storage.streams.idl"; |
| import "windows.devices.bluetooth.idl"; |
| import "windows.devices.enumeration.idl"; |
| #endif |
| |
| namespace Windows.Devices.Bluetooth { |
| typedef enum BluetoothCacheMode BluetoothCacheMode; |
| typedef enum BluetoothError BluetoothError; |
| |
| runtimeclass BluetoothLEDevice; |
| runtimeclass BluetoothDeviceId; |
| } |
| |
| namespace Windows.Devices.Bluetooth.GenericAttributeProfile { |
| typedef enum GattCommunicationStatus GattCommunicationStatus; |
| typedef enum GattCharacteristicProperties GattCharacteristicProperties; |
| typedef enum GattProtectionLevel GattProtectionLevel; |
| typedef enum GattWriteOption GattWriteOption; |
| typedef enum GattClientCharacteristicConfigurationDescriptorValue GattClientCharacteristicConfigurationDescriptorValue; |
| typedef enum GattSharingMode GattSharingMode; |
| typedef enum GattOpenStatus GattOpenStatus; |
| typedef enum GattSessionStatus GattSessionStatus; |
| |
| interface IGattDeviceService; |
| interface IGattDeviceService2; |
| interface IGattDeviceService3; |
| interface IGattDeviceServiceStatics; |
| interface IGattDeviceServiceStatics2; |
| interface IGattDeviceServicesResult; |
| interface IGattSession; |
| interface IGattSessionStatusChangedEventArgs; |
| interface IGattSessionStatics; |
| interface IGattCharacteristic; |
| interface IGattCharacteristic2; |
| interface IGattCharacteristic3; |
| interface IGattCharacteristicStatics; |
| interface IGattDescriptorsResult; |
| interface IGattDescriptor; |
| interface IGattDescriptor2; |
| interface IGattDescriptorStatics; |
| interface IGattValueChangedEventArgs; |
| interface IGattReadResult; |
| interface IGattReadResult2; |
| interface IGattWriteResult; |
| interface IGattReadClientCharacteristicConfigurationDescriptorResult; |
| interface IGattReadClientCharacteristicConfigurationDescriptorResult2; |
| interface IGattPresentationFormat; |
| interface IGattPresentationFormatStatics; |
| interface IGattPresentationFormatStatics2; |
| |
| runtimeclass GattDeviceService; |
| runtimeclass GattDeviceServicesResult; |
| runtimeclass GattSession; |
| runtimeclass GattSessionStatusChangedEventArgs; |
| runtimeclass GattCharacteristic; |
| runtimeclass GattDescriptorsResult; |
| runtimeclass GattDescriptor; |
| runtimeclass GattPresentationFormat; |
| runtimeclass GattValueChangedEventArgs; |
| runtimeclass GattWriteResult; |
| runtimeclass GattReadResult; |
| runtimeclass GattReadClientCharacteristicConfigurationDescriptorResult; |
| runtimeclass GattReadClientCharacteristicConfigurationDescriptorResult; |
| runtimeclass GattPresentationFormat; |
| runtimeclass GattCharacteristicsResult; |
| |
| declare { |
| interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *>; |
| interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *>; |
| interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *>; |
| interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor *>; |
| interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor *>; |
| interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor *>; |
| interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.GenericAttributeProfile.GattPresentationFormat *>; |
| interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.GenericAttributeProfile.GattPresentationFormat *>; |
| interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattPresentationFormat *>; |
| interface Windows.Foundation.Collections.IIterator<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *>; |
| interface Windows.Foundation.Collections.IIterable<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *>; |
| interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult*>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult*>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadClientCharacteristicConfigurationDescriptorResult *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadClientCharacteristicConfigurationDescriptorResult *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Enumeration.DeviceAccessStatus>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Enumeration.DeviceAccessStatus>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattOpenStatus>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattOpenStatus>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *>; |
| interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult *>; |
| interface Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult *>; |
| interface Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *, Windows.Devices.Bluetooth.GenericAttributeProfile.GattValueChangedEventArgs *>; |
| interface Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *, Windows.Devices.Bluetooth.GenericAttributeProfile.GattSessionStatusChangedEventArgs *>; |
| interface Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *, IInspectable *>; |
| interface Windows.Foundation.IReference<BYTE>; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0) |
| ] |
| enum GattCommunicationStatus |
| { |
| Success = 0, |
| Unreachable = 1, |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] |
| ProtocolError = 2, |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] |
| AccessDenied = 3, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| flags |
| ] |
| enum GattCharacteristicProperties |
| { |
| None = 0x0000, |
| Broadcast = 0x0001, |
| Read = 0x0002, |
| WriteWithoutResponse = 0x0004, |
| Write = 0x0008, |
| Notify = 0x0010, |
| Indicate = 0x0020, |
| AuthenticatedSignedWrites = 0x0040, |
| ExtendedProperties = 0x0080, |
| ReliableWrites = 0x0100, |
| WritableAuxiliaries = 0x0200, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0) |
| ] |
| enum GattProtectionLevel |
| { |
| Plain = 0, |
| AuthenticationRequired = 1, |
| EncryptionRequired = 2, |
| EncryptionAndAuthenticationRequired = 3, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0) |
| ] |
| enum GattWriteOption |
| { |
| WriteWithResponse = 0, |
| WriteWithoutResponse = 1, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0) |
| ] |
| enum GattClientCharacteristicConfigurationDescriptorValue |
| { |
| None = 0, |
| Notify = 1, |
| Indicate = 2, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0) |
| ] |
| enum GattSharingMode |
| { |
| Unspecified = 0, |
| Exclusive = 1, |
| SharedReadOnly = 2, |
| SharedReadAndWrite = 3, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0) |
| ] |
| enum GattOpenStatus |
| { |
| Unspecified = 0, |
| Success = 1, |
| AlreadyOpened = 2, |
| NotFound = 3, |
| SharingViolation = 4, |
| AccessDenied = 5, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0) |
| ] |
| enum GattSessionStatus |
| { |
| Closed = 0, |
| Active = 1, |
| }; |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService), |
| uuid(ac7b7c05-b33c-47cf-990f-6b8f5577df71) |
| ] |
| interface IGattDeviceService : IInspectable requires Windows.Foundation.IClosable |
| { |
| HRESULT GetCharacteristics([in] GUID uuid, |
| [out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *> **value); |
| HRESULT GetIncludedServices([in] GUID uuid, |
| [out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *> **value); |
| [propget] HRESULT DeviceId([out, retval] HSTRING *value); |
| [propget] HRESULT Uuid([out, retval] GUID *value); |
| [propget] HRESULT AttributeHandle([out, retval] UINT16 *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService), |
| uuid(fc54520b-0b0d-4708-bae0-9ffd9489bc59) |
| ] |
| interface IGattDeviceService2 : IInspectable requires Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceService, Windows.Foundation.IClosable |
| { |
| [propget] HRESULT Device([out, retval] Windows.Devices.Bluetooth.BluetoothLEDevice **value); |
| [propget] HRESULT ParentServices([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *> **value); |
| HRESULT GetAllCharacteristics([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *> **value); |
| HRESULT GetAllIncludedServices([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *> **value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService), |
| uuid(b293a950-0c53-437c-a9b3-5c3210c6e569), |
| ] |
| interface IGattDeviceService3 : IInspectable |
| { |
| [propget] HRESULT DeviceAccessInformation([out, retval] Windows.Devices.Enumeration.DeviceAccessInformation **value); |
| [propget] HRESULT Session([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession **value); |
| [propget] HRESULT SharingMode([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattSharingMode *value); |
| HRESULT RequestAccessAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Enumeration.DeviceAccessStatus> **async); |
| HRESULT OpenAsync([in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattSharingMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattOpenStatus> **async); |
| [overload("GetCharacteristicsAsync")] |
| HRESULT GetCharacteristicsAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult *> **async); |
| [overload("GetCharacteristicsAsync")] |
| HRESULT GetCharacteristicsWithCacheModeAsync([in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult *> **async); |
| [overload("GetCharacteristicsForUuidAsync")] |
| HRESULT GetCharacteristicsForUuidAsync([in] GUID uuid, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult *> **async); |
| [overload("GetCharacteristicsForUuidAsync")] |
| HRESULT GetCharacteristicsForUuidWithCacheModeAsync([in] GUID uuid, |
| [in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult *> **async); |
| [overload("GetIncludedServicesAsync")] |
| HRESULT GetIncludedServicesAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult *> **async); |
| [overload("GetIncludedServicesAsync")] |
| HRESULT GetIncludedServicesWithCacheModeAsync([in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult *> **async); |
| [overload("GetIncludedServicesForUuidAsync")] |
| HRESULT GetIncludedServicesForUuidAsync([in] GUID uuid, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult *> **async); |
| [overload("GetIncludedServicesForUuidAsync")] |
| HRESULT GetIncludedServicesForUuidWithCacheModeAsync([in] GUID uuid, |
| [in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult *> **async); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService), |
| uuid(196d0022-faad-45dc-ae5b-2ac3184e84db) |
| ] |
| interface IGattDeviceServiceStatics : IInspectable |
| { |
| [overload("FromIdAsync")] |
| HRESULT FromIdAsync([in] HSTRING id, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *> **async); |
| HRESULT GetDeviceSelectorFromUuid([in] GUID uuid, [out, retval] HSTRING *selector); |
| HRESULT GetDeviceSelectorFromShortId([in] UINT16 id, [out, retval] HSTRING *selector); |
| HRESULT ConvertShortIdToUuid([in] UINT16 id, [out, retval] GUID *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService), |
| uuid(0604186e-24a6-4b0d-a2f2-30cc01545d25) |
| ] |
| interface IGattDeviceServiceStatics2 : IInspectable |
| { |
| [overload("FromIdAsync")] |
| HRESULT FromIdWithSharingModeAsync([in] HSTRING id, |
| [in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattSharingMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *> **async); |
| [overload("GetDeviceSelectorForBluetoothDeviceId")] |
| HRESULT GetDeviceSelectorForBluetoothDeviceId([in] Windows.Devices.Bluetooth.BluetoothDeviceId *id, |
| [out, retval] HSTRING *selector); |
| [overload("GetDeviceSelectorForBluetoothDeviceId")] |
| HRESULT GetDeviceSelectorForBluetoothDeviceIdWithCacheMode([in] Windows.Devices.Bluetooth.BluetoothDeviceId *id, |
| [in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] HSTRING *selector); |
| [overload("GetDeviceSelectorForBluetoothDeviceIdAndUuid")] |
| HRESULT GetDeviceSelectorForBluetoothDeviceIdAndUuid([in] Windows.Devices.Bluetooth.BluetoothDeviceId *id, |
| [in] GUID uuid, |
| [out, retval] HSTRING *selector); |
| [overload("GetDeviceSelectorForBluetoothDeviceIdAndUuid")] |
| HRESULT GetDeviceSelectorForBluetoothDeviceIdAndUuidWithCacheMode([in] Windows.Devices.Bluetooth.BluetoothDeviceId *id, |
| [in] GUID uuid, |
| [in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] HSTRING *selector); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceServiceStatics, Windows.Foundation.UniversalApiContract, 1.0), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceServiceStatics2, Windows.Foundation.UniversalApiContract, 4.0), |
| threading(both) |
| ] |
| runtimeclass GattDeviceService |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceService; |
| interface Windows.Foundation.IClosable; |
| [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceService2; |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceService3; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceServicesResult), |
| uuid(171dd3ee-016d-419d-838a-576cf475a3d8) |
| ] |
| interface IGattDeviceServicesResult : IInspectable |
| { |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus *value); |
| [propget] HRESULT ProtocolError([out, retval] Windows.Foundation.IReference<BYTE> **value); |
| [propget] HRESULT Services([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService *> **value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattDeviceServicesResult |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDeviceServicesResult; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession), |
| uuid(d23b5143-e04e-4c24-999c-9c256f9856b1) |
| ] |
| interface IGattSession : IInspectable |
| { |
| [propget] HRESULT DeviceId([out, retval] Windows.Devices.Bluetooth.BluetoothDeviceId **value); |
| [propget] HRESULT CanMaintainConnection([out, retval] boolean *value); |
| [propput] HRESULT MaintainConnection([in] boolean value); |
| [propget] HRESULT MaintainConnection([out, retval] boolean *value); |
| [propget] HRESULT MaxPduSize([out, retval] UINT16 * value); |
| [propget] HRESULT SessionStatus([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattSessionStatus *value); |
| [eventadd] HRESULT MaxPduSizeChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *, IInspectable *> *handler, |
| [out, retval] EventRegistrationToken *token); |
| [eventremove] HRESULT MaxPduSizeChanged([in] EventRegistrationToken token); |
| [eventadd] HRESULT SessionStatusChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *, Windows.Devices.Bluetooth.GenericAttributeProfile.GattSessionStatusChangedEventArgs *> *handler, |
| [out, retval] EventRegistrationToken *token); |
| [eventremove] HRESULT SessionStatusChanged([in] EventRegistrationToken token); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession), |
| uuid(2e65b95c-539f-4db7-82a8-73bdbbf73ebf) |
| ] |
| interface IGattSessionStatics : IInspectable |
| { |
| HRESULT FromDeviceIdAsync([in] Windows.Devices.Bluetooth.BluetoothDeviceId *id, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattSession *> **async); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| marshaling_behavior(agile), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattSessionStatics, Windows.Foundation.UniversalApiContract, 4.0), |
| threading(both) |
| ] |
| runtimeclass GattSession |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattSession; |
| interface Windows.Foundation.IClosable; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattSessionStatusChangedEventArgs), |
| uuid(7605b72e-837f-404c-ab34-3163f39ddf32) |
| ] |
| interface IGattSessionStatusChangedEventArgs : IInspectable |
| { |
| [propget] HRESULT Error([out, retval] Windows.Devices.Bluetooth.BluetoothError *value); |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattSessionStatus *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattSessionStatusChangedEventArgs |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattSessionStatusChangedEventArgs; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic), |
| uuid(59cb50c1-5934-4f68-a198-eb864fa44e6b), |
| ] |
| interface IGattCharacteristic : IInspectable |
| { |
| HRESULT GetDescriptors([in] GUID uuid, |
| [out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor *> **value); |
| [propget] HRESULT CharacteristicProperties([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicProperties *value); |
| [propget] HRESULT ProtectionLevel([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattProtectionLevel *value); |
| [propput] HRESULT ProtectionLevel([in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattProtectionLevel value); |
| [propget] HRESULT UserDescription([out, retval] HSTRING *value); |
| [propget] HRESULT Uuid([out, retval] GUID *value); |
| [propget] HRESULT AttributeHandle([out, retval] UINT16 *value); |
| [propget] HRESULT PresentationFormats([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattPresentationFormat *> **value); |
| [overload("ReadValueAsync")] |
| HRESULT ReadValueAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult *> **value); |
| [overload("ReadValueAsync")] |
| HRESULT ReadValueWithCacheModeAsync([in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult *> **value); |
| [overload("WriteValueAsync")] |
| HRESULT WriteValueAsync([in] Windows.Storage.Streams.IBuffer *value, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus> **async); |
| [overload("WriteValueAsync")] |
| HRESULT WriteValueWithOptionAsync([in] Windows.Storage.Streams.IBuffer *value, |
| [in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteOption opt, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus> **async); |
| HRESULT ReadClientCharacteristicConfigurationDescriptorAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadClientCharacteristicConfigurationDescriptorResult *> **async); |
| HRESULT WriteClientCharacteristicConfigurationDescriptorAsync([in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattClientCharacteristicConfigurationDescriptorValue value, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus> **async); |
| [eventadd] HRESULT ValueChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *, Windows.Devices.Bluetooth.GenericAttributeProfile.GattValueChangedEventArgs *> *handler, |
| [out, retval] EventRegistrationToken *token); |
| [eventremove] HRESULT ValueChanged([in] EventRegistrationToken token); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic), |
| uuid(ae1ab578-ec06-4764-b780-9835a1d35d6e) |
| ] |
| interface IGattCharacteristic2 : IInspectable requires Windows.Devices.Bluetooth.GenericAttributeProfile.IGattCharacteristic |
| { |
| [propget] HRESULT Service([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattDeviceService **value); |
| HRESULT GetAllDescriptors([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor *> **descriptors); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic), |
| uuid(3f3c663e-93d4-406b-b817-db81f8ed53b3) |
| ] |
| interface IGattCharacteristic3 : IInspectable |
| { |
| [overload("GetDescriptorsAsync")] |
| HRESULT GetDescriptorsAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult *> **async); |
| [overload("GetDescriptorsAsync")] |
| HRESULT GetDescriptorsWithCacheModeAsync([in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult *> **async); |
| [overload("GetDescriptorsForUuidAsync")] |
| HRESULT GetDescriptorsForUuidAsync([in] GUID uuid, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult *> **async); |
| [overload("GetDescriptorsForUuidAsync")] |
| HRESULT GetDescriptorsForUuidWithCacheModeAsync([in] GUID uuid, |
| [in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult *> **async); |
| [overload("WriteValueWithResultAsync")] |
| HRESULT WriteValueWithResultAsync([in] Windows.Storage.Streams.IBuffer *value, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult *> **async); |
| [overload("WriteValueWithResultAsync")] |
| HRESULT WriteValueWithResultAndOptionAsync([in] Windows.Storage.Streams.IBuffer *value, |
| [in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteOption option, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult *> **async); |
| HRESULT WriteClientCharacteristicConfigurationDescriptorWithResultAsync([in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattClientCharacteristicConfigurationDescriptorValue value, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult *> **async); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic), |
| uuid(59cb50c3-5934-4f68-a198-eb864fa44e6b) |
| ] |
| interface IGattCharacteristicStatics : IInspectable |
| { |
| HRESULT ConvertShortIdToUuid([in] UINT16 id, [out, retval] GUID *uuid); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattCharacteristicStatics, Windows.Foundation.UniversalApiContract, 1.0), |
| threading(both) |
| ] |
| runtimeclass GattCharacteristic |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattCharacteristic; |
| [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattCharacteristic2; |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattCharacteristic3; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult), |
| uuid(1194945C-B257-4F3E-9DB7-F68BC9A9AEF2) |
| ] |
| interface IGattCharacteristicsResult : IInspectable |
| { |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus *value); |
| [propget] HRESULT ProtocolError([out, retval] Windows.Foundation.IReference<BYTE> **value); |
| [propget] HRESULT Characteristics([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristic *> **value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattCharacteristicsResult |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattCharacteristicsResult; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor), |
| uuid(92055f2b-8084-4344-b4c2-284de19a8506) |
| ] |
| interface IGattDescriptor : IInspectable |
| { |
| [propget] HRESULT ProtectionLevel([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattProtectionLevel *value); |
| [propput] HRESULT ProtectionLevel([in] Windows.Devices.Bluetooth.GenericAttributeProfile.GattProtectionLevel value); |
| [propget] HRESULT Uuid([out, retval] GUID *value); |
| [propget] HRESULT AttributeHandle([out, retval] UINT16 *value); |
| [overload("ReadValueAsync")] |
| HRESULT ReadValueAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult *> **async); |
| [overload("ReadValueAsync")] |
| HRESULT ReadValueWithCacheModeAsync([in] Windows.Devices.Bluetooth.BluetoothCacheMode mode, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult *> **async); |
| HRESULT WriteValueAsync([in] Windows.Storage.Streams.IBuffer *value, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus> **async); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor), |
| uuid(8f563d39-d630-406c-ba11-10cdd16b0e5e) |
| ] |
| interface IGattDescriptor2 : IInspectable |
| { |
| HRESULT WriteValueWithResultAsync([in] Windows.Storage.Streams.IBuffer *value, |
| [out, retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult *> **async); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor), |
| uuid(92055f2d-8084-4344-b4c2-284de19a8506), |
| ] |
| interface IGattDescriptorStatics : IInspectable |
| { |
| HRESULT ConvertShortIdToUuid([in] UINT16 id, [out, retval] GUID *uuid); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDescriptorStatics, Windows.Foundation.UniversalApiContract, 1.0), |
| threading(both), |
| ] |
| runtimeclass GattDescriptor |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDescriptor; |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDescriptor2; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptorsResult), |
| uuid(9bc091f3-95e7-4489-8d25-ff81955a57b9) |
| ] |
| interface IGattDescriptorsResult : IInspectable |
| { |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus *value); |
| [propget] HRESULT ProtocolError([out, retval] Windows.Foundation.IReference<BYTE> **value); |
| [propget] HRESULT Descriptors([out, retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Bluetooth.GenericAttributeProfile.GattDescriptor *> **value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| marshaling_behavior(agile), |
| threading(both), |
| ] |
| runtimeclass GattDescriptorsResult |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattDescriptorsResult; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattValueChangedEventArgs), |
| uuid(d21bdb54-06e3-4ed8-a263-acfac8ba7313) |
| ] |
| interface IGattValueChangedEventArgs : IInspectable |
| { |
| [propget] HRESULT CharacteristicValue([out, retval] Windows.Storage.Streams.IBuffer **value); |
| [propget] HRESULT Timestamp([out, retval] Windows.Foundation.DateTime *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattValueChangedEventArgs |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattValueChangedEventArgs; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadResult), |
| uuid(63a66f08-1aea-4c4c-a50f-97bae474b348) |
| ] |
| interface IGattReadResult : IInspectable |
| { |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus *value); |
| [propget] HRESULT Value([out, retval] Windows.Storage.Streams.IBuffer **value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattReadResult |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattReadResult; |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattReadResult2; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattWriteResult), |
| uuid(4991ddb1-cb2b-44f7-99fc-d29a2871dc9b) |
| ] |
| interface IGattWriteResult : IInspectable |
| { |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus* value); |
| [propget] HRESULT ProtocolError([out, retval] Windows.Foundation.IReference<BYTE>** value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattWriteResult |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattWriteResult; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadClientCharacteristicConfigurationDescriptorResult), |
| uuid(63a66f09-1aea-4c4c-a50f-97bae474b348) |
| ] |
| |
| interface IGattReadClientCharacteristicConfigurationDescriptorResult : IInspectable |
| { |
| [propget] HRESULT Status([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattCommunicationStatus *value); |
| [propget] HRESULT ClientCharacteristicConfigurationDescriptor([out, retval] Windows.Devices.Bluetooth.GenericAttributeProfile.GattClientCharacteristicConfigurationDescriptorValue *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 4.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattReadClientCharacteristicConfigurationDescriptorResult), |
| uuid(1bf1a59d-ba4d-4622-8651-f4ee150d0a5d) |
| ] |
| interface IGattReadClientCharacteristicConfigurationDescriptorResult2 : IInspectable |
| { |
| [propget] HRESULT ProtocolError([out, retval] Windows.Foundation.IReference<BYTE>** value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| threading(both) |
| ] |
| runtimeclass GattReadClientCharacteristicConfigurationDescriptorResult |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattReadClientCharacteristicConfigurationDescriptorResult; |
| [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattReadClientCharacteristicConfigurationDescriptorResult2; |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| exclusiveto(Windows.Devices.Bluetooth.GenericAttributeProfile.GattPresentationFormat), |
| uuid(196d0021-faad-45dc-ae5b-2ac3184e84db) |
| ] |
| interface IGattPresentationFormat : IInspectable |
| { |
| [propget] HRESULT FormatType([out, retval] BYTE *value); |
| [propget] HRESULT Exponent([out, retval] INT32 *value); |
| [propget] HRESULT Unit([out, retval] UINT16 *value); |
| [propget] HRESULT Namespace([out, retval] BYTE *value); |
| [propget] HRESULT Description([out, retval] UINT16 *value); |
| } |
| |
| [ |
| contract(Windows.Foundation.UniversalApiContract, 1.0), |
| marshaling_behavior(agile), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormatStatics, Windows.Foundation.UniversalApiContract, 1.0), |
| static(Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormatStatics2, Windows.Foundation.UniversalApiContract, 4.0), |
| threading(both) |
| ] |
| runtimeclass GattPresentationFormat |
| { |
| [default] interface Windows.Devices.Bluetooth.GenericAttributeProfile.IGattPresentationFormat; |
| } |
| } |