84 lines
2.3 KiB
Go
84 lines
2.3 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/collections"
|
|
)
|
|
|
|
const SignatureGattCharacteristicsResult string = "rc(Windows.Devices.Bluetooth.GenericAttributeProfile.GattCharacteristicsResult;{1194945c-b257-4f3e-9db7-f68bc9a9aef2})"
|
|
|
|
type GattCharacteristicsResult struct {
|
|
ole.IUnknown
|
|
}
|
|
|
|
func (impl *GattCharacteristicsResult) GetStatus() (GattCommunicationStatus, error) {
|
|
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattCharacteristicsResult))
|
|
defer itf.Release()
|
|
v := (*iGattCharacteristicsResult)(unsafe.Pointer(itf))
|
|
return v.GetStatus()
|
|
}
|
|
|
|
func (impl *GattCharacteristicsResult) GetCharacteristics() (*collections.IVectorView, error) {
|
|
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattCharacteristicsResult))
|
|
defer itf.Release()
|
|
v := (*iGattCharacteristicsResult)(unsafe.Pointer(itf))
|
|
return v.GetCharacteristics()
|
|
}
|
|
|
|
const GUIDiGattCharacteristicsResult string = "1194945c-b257-4f3e-9db7-f68bc9a9aef2"
|
|
const SignatureiGattCharacteristicsResult string = "{1194945c-b257-4f3e-9db7-f68bc9a9aef2}"
|
|
|
|
type iGattCharacteristicsResult struct {
|
|
ole.IInspectable
|
|
}
|
|
|
|
type iGattCharacteristicsResultVtbl struct {
|
|
ole.IInspectableVtbl
|
|
|
|
GetStatus uintptr
|
|
GetProtocolError uintptr
|
|
GetCharacteristics uintptr
|
|
}
|
|
|
|
func (v *iGattCharacteristicsResult) VTable() *iGattCharacteristicsResultVtbl {
|
|
return (*iGattCharacteristicsResultVtbl)(unsafe.Pointer(v.RawVTable))
|
|
}
|
|
|
|
func (v *iGattCharacteristicsResult) 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 *iGattCharacteristicsResult) GetCharacteristics() (*collections.IVectorView, error) {
|
|
var out *collections.IVectorView
|
|
hr, _, _ := syscall.SyscallN(
|
|
v.VTable().GetCharacteristics,
|
|
uintptr(unsafe.Pointer(v)), // this
|
|
uintptr(unsafe.Pointer(&out)), // out collections.IVectorView
|
|
)
|
|
|
|
if hr != 0 {
|
|
return nil, ole.NewError(hr)
|
|
}
|
|
|
|
return out, nil
|
|
}
|