Files
go-winrt/windows/devices/bluetooth/genericattributeprofile/gattclientnotificationresult.go
2025-08-22 17:42:23 -04:00

145 lines
4.0 KiB
Go

// Code generated by winrt-go-gen. DO NOT EDIT.
//go:build windows
//nolint:all
package genericattributeprofile
import (
"syscall"
"unsafe"
"github.com/go-ole/go-ole"
"github.com/saltosystems/winrt-go/windows/foundation"
)
const SignatureGattClientNotificationResult string = "rc(Windows.Devices.Bluetooth.GenericAttributeProfile.GattClientNotificationResult;{506d5599-0112-419a-8e3b-ae21afabd2c2})"
type GattClientNotificationResult struct {
ole.IUnknown
}
func (impl *GattClientNotificationResult) GetSubscribedClient() (*GattSubscribedClient, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattClientNotificationResult))
defer itf.Release()
v := (*iGattClientNotificationResult)(unsafe.Pointer(itf))
return v.GetSubscribedClient()
}
func (impl *GattClientNotificationResult) GetStatus() (GattCommunicationStatus, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattClientNotificationResult))
defer itf.Release()
v := (*iGattClientNotificationResult)(unsafe.Pointer(itf))
return v.GetStatus()
}
func (impl *GattClientNotificationResult) GetProtocolError() (*foundation.IReference, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattClientNotificationResult))
defer itf.Release()
v := (*iGattClientNotificationResult)(unsafe.Pointer(itf))
return v.GetProtocolError()
}
func (impl *GattClientNotificationResult) GetBytesSent() (uint16, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattClientNotificationResult2))
defer itf.Release()
v := (*iGattClientNotificationResult2)(unsafe.Pointer(itf))
return v.GetBytesSent()
}
const GUIDiGattClientNotificationResult string = "506d5599-0112-419a-8e3b-ae21afabd2c2"
const SignatureiGattClientNotificationResult string = "{506d5599-0112-419a-8e3b-ae21afabd2c2}"
type iGattClientNotificationResult struct {
ole.IInspectable
}
type iGattClientNotificationResultVtbl struct {
ole.IInspectableVtbl
GetSubscribedClient uintptr
GetStatus uintptr
GetProtocolError uintptr
}
func (v *iGattClientNotificationResult) VTable() *iGattClientNotificationResultVtbl {
return (*iGattClientNotificationResultVtbl)(unsafe.Pointer(v.RawVTable))
}
func (v *iGattClientNotificationResult) GetSubscribedClient() (*GattSubscribedClient, error) {
var out *GattSubscribedClient
hr, _, _ := syscall.SyscallN(
v.VTable().GetSubscribedClient,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&out)), // out GattSubscribedClient
)
if hr != 0 {
return nil, ole.NewError(hr)
}
return out, nil
}
func (v *iGattClientNotificationResult) GetStatus() (GattCommunicationStatus, error) {
var out GattCommunicationStatus
hr, _, _ := syscall.SyscallN(
v.VTable().GetStatus,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&out)), // out GattCommunicationStatus
)
if hr != 0 {
return GattCommunicationStatusSuccess, ole.NewError(hr)
}
return out, nil
}
func (v *iGattClientNotificationResult) GetProtocolError() (*foundation.IReference, error) {
var out *foundation.IReference
hr, _, _ := syscall.SyscallN(
v.VTable().GetProtocolError,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&out)), // out foundation.IReference
)
if hr != 0 {
return nil, ole.NewError(hr)
}
return out, nil
}
const GUIDiGattClientNotificationResult2 string = "8faec497-45e0-497e-9582-29a1fe281ad5"
const SignatureiGattClientNotificationResult2 string = "{8faec497-45e0-497e-9582-29a1fe281ad5}"
type iGattClientNotificationResult2 struct {
ole.IInspectable
}
type iGattClientNotificationResult2Vtbl struct {
ole.IInspectableVtbl
GetBytesSent uintptr
}
func (v *iGattClientNotificationResult2) VTable() *iGattClientNotificationResult2Vtbl {
return (*iGattClientNotificationResult2Vtbl)(unsafe.Pointer(v.RawVTable))
}
func (v *iGattClientNotificationResult2) GetBytesSent() (uint16, error) {
var out uint16
hr, _, _ := syscall.SyscallN(
v.VTable().GetBytesSent,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&out)), // out uint16
)
if hr != 0 {
return 0, ole.NewError(hr)
}
return out, nil
}