go-wca/pkg/wca/IAudioSessionControl2.go
2020-05-24 10:03:04 +09:00

47 lines
1.1 KiB
Go

package wca
import (
"unsafe"
)
type IAudioSessionControl2 struct {
IAudioSessionControl
}
type IAudioSessionControl2Vtbl struct {
IAudioSessionControlVtbl
GetSessionIdentifier uintptr
GetSessionInstanceIdentifier uintptr
GetProcessId uintptr
IsSystemSoundsSession uintptr
SetDuckingPreference uintptr
}
func (v *IAudioSessionControl2) VTable() *IAudioSessionControl2Vtbl {
return (*IAudioSessionControl2Vtbl)(unsafe.Pointer(v.RawVTable))
}
func (v *IAudioSessionControl2) GetSessionIdentifier(retVal *string) (err error) {
err = asc2GetSessionIdentifier(v, retVal)
return
}
func (v *IAudioSessionControl2) GetSessionInstanceIdentifier(retVal *string) (err error) {
err = asc2GetSessionInstanceIdentifier(v, retVal)
return
}
func (v *IAudioSessionControl2) GetProcessId(retVal *uint32) (err error) {
err = asc2GetProcessId(v, retVal)
return
}
func (v *IAudioSessionControl2) IsSystemSoundsSession() (err error) {
err = asc2IsSystemSoundsSession(v)
return
}
func (v *IAudioSessionControl2) SetDuckingPreference(optOut bool) (err error) {
err = asc2SetDuckingPreference(v, optOut)
return
}