first commit

This commit is contained in:
2025-08-22 17:42:23 -04:00
commit a6c09a5890
120 changed files with 11443 additions and 0 deletions

View File

@ -0,0 +1,231 @@
// 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 SignatureGattServiceProvider string = "rc(Windows.Devices.Bluetooth.GenericAttributeProfile.GattServiceProvider;{7822b3cd-2889-4f86-a051-3f0aed1c2760})"
type GattServiceProvider struct {
ole.IUnknown
}
func (impl *GattServiceProvider) GetService() (*GattLocalService, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.GetService()
}
func (impl *GattServiceProvider) GetAdvertisementStatus() (GattServiceProviderAdvertisementStatus, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.GetAdvertisementStatus()
}
func (impl *GattServiceProvider) AddAdvertisementStatusChanged(handler *foundation.TypedEventHandler) (foundation.EventRegistrationToken, error) {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.AddAdvertisementStatusChanged(handler)
}
func (impl *GattServiceProvider) RemoveAdvertisementStatusChanged(token foundation.EventRegistrationToken) error {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.RemoveAdvertisementStatusChanged(token)
}
func (impl *GattServiceProvider) StartAdvertising() error {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.StartAdvertising()
}
func (impl *GattServiceProvider) StartAdvertisingWithParameters(parameters *GattServiceProviderAdvertisingParameters) error {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.StartAdvertisingWithParameters(parameters)
}
func (impl *GattServiceProvider) StopAdvertising() error {
itf := impl.MustQueryInterface(ole.NewGUID(GUIDiGattServiceProvider))
defer itf.Release()
v := (*iGattServiceProvider)(unsafe.Pointer(itf))
return v.StopAdvertising()
}
const GUIDiGattServiceProvider string = "7822b3cd-2889-4f86-a051-3f0aed1c2760"
const SignatureiGattServiceProvider string = "{7822b3cd-2889-4f86-a051-3f0aed1c2760}"
type iGattServiceProvider struct {
ole.IInspectable
}
type iGattServiceProviderVtbl struct {
ole.IInspectableVtbl
GetService uintptr
GetAdvertisementStatus uintptr
AddAdvertisementStatusChanged uintptr
RemoveAdvertisementStatusChanged uintptr
StartAdvertising uintptr
StartAdvertisingWithParameters uintptr
StopAdvertising uintptr
}
func (v *iGattServiceProvider) VTable() *iGattServiceProviderVtbl {
return (*iGattServiceProviderVtbl)(unsafe.Pointer(v.RawVTable))
}
func (v *iGattServiceProvider) GetService() (*GattLocalService, error) {
var out *GattLocalService
hr, _, _ := syscall.SyscallN(
v.VTable().GetService,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&out)), // out GattLocalService
)
if hr != 0 {
return nil, ole.NewError(hr)
}
return out, nil
}
func (v *iGattServiceProvider) GetAdvertisementStatus() (GattServiceProviderAdvertisementStatus, error) {
var out GattServiceProviderAdvertisementStatus
hr, _, _ := syscall.SyscallN(
v.VTable().GetAdvertisementStatus,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&out)), // out GattServiceProviderAdvertisementStatus
)
if hr != 0 {
return GattServiceProviderAdvertisementStatusCreated, ole.NewError(hr)
}
return out, nil
}
func (v *iGattServiceProvider) AddAdvertisementStatusChanged(handler *foundation.TypedEventHandler) (foundation.EventRegistrationToken, error) {
var out foundation.EventRegistrationToken
hr, _, _ := syscall.SyscallN(
v.VTable().AddAdvertisementStatusChanged,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(handler)), // in foundation.TypedEventHandler
uintptr(unsafe.Pointer(&out)), // out foundation.EventRegistrationToken
)
if hr != 0 {
return foundation.EventRegistrationToken{}, ole.NewError(hr)
}
return out, nil
}
func (v *iGattServiceProvider) RemoveAdvertisementStatusChanged(token foundation.EventRegistrationToken) error {
hr, _, _ := syscall.SyscallN(
v.VTable().RemoveAdvertisementStatusChanged,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&token)), // in foundation.EventRegistrationToken
)
if hr != 0 {
return ole.NewError(hr)
}
return nil
}
func (v *iGattServiceProvider) StartAdvertising() error {
hr, _, _ := syscall.SyscallN(
v.VTable().StartAdvertising,
uintptr(unsafe.Pointer(v)), // this
)
if hr != 0 {
return ole.NewError(hr)
}
return nil
}
func (v *iGattServiceProvider) StartAdvertisingWithParameters(parameters *GattServiceProviderAdvertisingParameters) error {
hr, _, _ := syscall.SyscallN(
v.VTable().StartAdvertisingWithParameters,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(parameters)), // in GattServiceProviderAdvertisingParameters
)
if hr != 0 {
return ole.NewError(hr)
}
return nil
}
func (v *iGattServiceProvider) StopAdvertising() error {
hr, _, _ := syscall.SyscallN(
v.VTable().StopAdvertising,
uintptr(unsafe.Pointer(v)), // this
)
if hr != 0 {
return ole.NewError(hr)
}
return nil
}
const GUIDiGattServiceProviderStatics string = "31794063-5256-4054-a4f4-7bbe7755a57e"
const SignatureiGattServiceProviderStatics string = "{31794063-5256-4054-a4f4-7bbe7755a57e}"
type iGattServiceProviderStatics struct {
ole.IInspectable
}
type iGattServiceProviderStaticsVtbl struct {
ole.IInspectableVtbl
GattServiceProviderCreateAsync uintptr
}
func (v *iGattServiceProviderStatics) VTable() *iGattServiceProviderStaticsVtbl {
return (*iGattServiceProviderStaticsVtbl)(unsafe.Pointer(v.RawVTable))
}
func GattServiceProviderCreateAsync(serviceUuid syscall.GUID) (*foundation.IAsyncOperation, error) {
inspectable, err := ole.RoGetActivationFactory("Windows.Devices.Bluetooth.GenericAttributeProfile.GattServiceProvider", ole.NewGUID(GUIDiGattServiceProviderStatics))
if err != nil {
return nil, err
}
v := (*iGattServiceProviderStatics)(unsafe.Pointer(inspectable))
var out *foundation.IAsyncOperation
hr, _, _ := syscall.SyscallN(
v.VTable().GattServiceProviderCreateAsync,
uintptr(unsafe.Pointer(v)), // this
uintptr(unsafe.Pointer(&serviceUuid)), // in syscall.GUID
uintptr(unsafe.Pointer(&out)), // out foundation.IAsyncOperation
)
if hr != 0 {
return nil, ole.NewError(hr)
}
return out, nil
}