diff --git a/.gitignore b/.gitignore index 8704a428..be924ffc 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ /macos/_examples/pomodoro/pomodoro /macos/_examples/subclass/subclass /macos/_examples/tabview/tabview +/macos/_examples/virtualization/virtualization /macos/_examples/webshot/webshot /macos/_examples/webview/webview /macos/_examples/widgets/widgets diff --git a/generate/declparse/ast_enum.go b/generate/declparse/ast_enum.go index a5dbbd78..ba4b5802 100644 --- a/generate/declparse/ast_enum.go +++ b/generate/declparse/ast_enum.go @@ -85,6 +85,7 @@ const ( TypeAnnotNullUnspecified TypeAnnotStruct TypeAnnotUnavailable + TypeAnnotExtern ) var typeAnnots = map[TypeAnnotation]string{ @@ -103,6 +104,7 @@ var typeAnnots = map[TypeAnnotation]string{ TypeAnnotNonnull: "%s _Nonnull", TypeAnnotNullUnspecified: "%s _Null_unspecified", TypeAnnotStruct: "struct %s", + TypeAnnotExtern: "extern %s", } func (annot TypeAnnotation) Format() string { diff --git a/generate/declparse/keywords/init.go b/generate/declparse/keywords/init.go index 8368606d..4befdad2 100644 --- a/generate/declparse/keywords/init.go +++ b/generate/declparse/keywords/init.go @@ -21,6 +21,7 @@ const ( CONST TYPEDEF STRUCT + EXTERN endKeywords ) @@ -33,6 +34,7 @@ var tokenMap = map[lexer.Token]string{ CONST: "const", TYPEDEF: "typedef", STRUCT: "struct", + EXTERN: "extern", } // IsKeyword returns true if the token is a keyword. diff --git a/generate/modules/enums/macos/virtualization b/generate/modules/enums/macos/virtualization new file mode 100644 index 00000000..91c32d70 --- /dev/null +++ b/generate/modules/enums/macos/virtualization @@ -0,0 +1,41 @@ +VZDiskImageCachingModeAutomatic 0 +VZDiskImageCachingModeCached 2 +VZDiskImageCachingModeUncached 1 +VZDiskImageSynchronizationModeFsync 2 +VZDiskImageSynchronizationModeFull 1 +VZDiskImageSynchronizationModeNone 3 +VZDiskSynchronizationModeFull 0 +VZDiskSynchronizationModeNone 1 +VZEFIVariableStoreInitializationOptionAllowOverwrite 1 +VZErrorInstallationFailed 10007 +VZErrorInstallationRequiresUpdate 10006 +VZErrorInternal 1 +VZErrorInvalidDiskImage 5 +VZErrorInvalidRestoreImage 10005 +VZErrorInvalidRestoreImageCatalog 10002 +VZErrorInvalidVirtualMachineConfiguration 2 +VZErrorInvalidVirtualMachineState 3 +VZErrorInvalidVirtualMachineStateTransition 4 +VZErrorNetworkBlockDeviceDisconnected 20002 +VZErrorNetworkBlockDeviceNegotiationFailed 20001 +VZErrorNetworkError 7 +VZErrorNoSupportedRestoreImagesInCatalog 10003 +VZErrorNotSupported 10 +VZErrorOperationCancelled 9 +VZErrorOutOfDiskSpace 8 +VZErrorRestore 12 +VZErrorRestoreImageCatalogLoadFailed 10001 +VZErrorRestoreImageLoadFailed 10004 +VZErrorSave 11 +VZErrorVirtualMachineLimitExceeded 6 +VZVirtualMachineStateError 3 +VZVirtualMachineStatePaused 2 +VZVirtualMachineStatePausing 5 +VZVirtualMachineStateRestoring 9 +VZVirtualMachineStateResuming 6 +VZVirtualMachineStateRunning 1 +VZVirtualMachineStateSaving 8 +VZVirtualMachineStateStarting 4 +VZVirtualMachineStateStopped 0 +VZVirtualMachineStateStopping 7 +VZErrorDomain VZErrorDomain diff --git a/generate/modules/modules.go b/generate/modules/modules.go index dca51b4a..4f85a9f0 100644 --- a/generate/modules/modules.go +++ b/generate/modules/modules.go @@ -159,4 +159,5 @@ var All = []Module{ {"MetalPerformanceShadersGraph", "Metal Performance Shaders Graph", "mpsgraph", "MetalPerformanceShadersGraph/MetalPerformanceShadersGraph.h", []string{"MPSGraph"}}, {"MetalPerformanceShaders", "Metal Performance Shaders", "mps", "MetalPerformanceShaders/MetalPerformanceShaders.h", []string{"MPS"}}, {"MediaPlayer", "Media Player", "mediaplayer", "MediaPlayer/MediaPlayer.h", []string{"MP"}}, + {"Virtualization", "Virtualization", "virtualization", "Virtualization/Virtualization.h", []string{"VZ"}}, } diff --git a/generate/tools/enumexport.go b/generate/tools/enumexport.go index fd554da3..105910d9 100644 --- a/generate/tools/enumexport.go +++ b/generate/tools/enumexport.go @@ -147,6 +147,10 @@ func exportConstants(db *generate.SymbolCache, framework *modules.Module, platfo "kBluetoothKeyboardISOReturn", "kBluetoothKeyboardANSIReturn", "MTLGPUFamilyApple8", // prob not on my platform + "VZLinuxRosettaAvailabilityInstalled", + "VZLinuxRosettaAvailabilityNotInstalled", + "VZLinuxRosettaAvailabilityNotSupported", + "VZMacAuxiliaryStorageInitializationOptionAllowOverwrite", }, s.Name) { continue } @@ -270,6 +274,9 @@ func exportConstants(db *generate.SymbolCache, framework *modules.Module, platfo if framework.Package == "coremediaio" { extraInclude = "#import " } + if framework.Package == "virtualization" { + extraLoad = "-framework CoreFoundation" + } source := fmt.Sprintf(`package main /* diff --git a/generate/tools/genmod.go b/generate/tools/genmod.go index fc2087c8..5d5e50b6 100644 --- a/generate/tools/genmod.go +++ b/generate/tools/genmod.go @@ -16,7 +16,7 @@ import ( const TargetPlatform = "macos" // TODO: replace with autodetect+env var -const TargetVersion = 12 +const TargetVersion = 14 func main() { cwd, err := os.Getwd() diff --git a/generate/typing/kernel_type.go b/generate/typing/kernel_type.go index 6e7894d4..04bab754 100644 --- a/generate/typing/kernel_type.go +++ b/generate/typing/kernel_type.go @@ -27,6 +27,7 @@ func GetKernelType(typeName string) (Type, bool) { "pid_t", "gid_t", "uid_t", + "ether_addr_t", } { if typeName == name { return &KernelType{ObjcName_: typeName}, true diff --git a/kernel/types.go b/kernel/types.go index b476c609..cd1f1a29 100644 --- a/kernel/types.go +++ b/kernel/types.go @@ -22,6 +22,8 @@ type Matrix_float4x4 unsafe.Pointer type Matrix_float4x3 unsafe.Pointer type Matrix_double4x4 unsafe.Pointer +type Ether_addr unsafe.Pointer // need to be tested + // https://developer.apple.com/documentation/kernel/kernel_data_types?language=objc // https://github.com/apple/darwin-xnu/blob/main/bsd/sys/_types.h type Pid = int32 diff --git a/macos/_examples/virtualization/.gitignore b/macos/_examples/virtualization/.gitignore new file mode 100644 index 00000000..f5d4d9f5 --- /dev/null +++ b/macos/_examples/virtualization/.gitignore @@ -0,0 +1,2 @@ +initrd.img +vmlinuz diff --git a/macos/_examples/virtualization/entitlements b/macos/_examples/virtualization/entitlements new file mode 100644 index 00000000..d7d0d6e8 --- /dev/null +++ b/macos/_examples/virtualization/entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.virtualization + + + diff --git a/macos/_examples/virtualization/main.go b/macos/_examples/virtualization/main.go new file mode 100644 index 00000000..5cf73213 --- /dev/null +++ b/macos/_examples/virtualization/main.go @@ -0,0 +1,95 @@ +package main + +import ( + "fmt" + "os" + "strings" + "syscall" + "unsafe" + + "github.com/pkg/term/termios" + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/macos/virtualization" + "golang.org/x/sys/unix" +) + +func setRawMode(f *os.File) { + var attr unix.Termios + + // Get settings for terminal + termios.Tcgetattr(f.Fd(), &attr) + + // Put stdin into raw mode, disabling local echo, input canonicalization, + // and CR-NL mapping. + attr.Iflag &^= syscall.ICRNL + attr.Lflag &^= syscall.ICANON | syscall.ECHO + + // Set minimum characters when reading = 1 char + attr.Cc[syscall.VMIN] = 1 + + // set timeout when reading as non-canonical mode + attr.Cc[syscall.VTIME] = 0 + + // reflects the changed settings + termios.Tcsetattr(f.Fd(), termios.TCSANOW, &attr) +} + +func serialConsole() virtualization.VirtioConsoleDeviceSerialPortConfiguration { + console := virtualization.NewVirtioConsoleDeviceSerialPortConfiguration() + + stdin := os.Stdin + stdout := os.Stdout + + // // Put stdin into raw mode, disabling local echo, input canonicalization, + // // and CR-NL mapping. + setRawMode(stdin) + + stdioAttachment := virtualization.NewFileHandleSerialPortAttachment() + stdioAttachment.InitWithFileHandleForReadingFileHandleForWriting( + foundation.NewFileHandleWithFileDescriptor(int(stdin.Fd())), + foundation.NewFileHandleWithFileDescriptor(int(stdout.Fd())), + ) + + console.SetAttachment(stdioAttachment) + return console +} + +func bootLoader(kernelURL, initrdURL foundation.URL) virtualization.IBootLoader { + bootLoader := virtualization.NewLinuxBootLoaderWithKernelURL(kernelURL) + bootLoader.SetInitialRamdiskURL(initrdURL) + kernelCommandLineArguments := []string{ + "console=hvc0", + } + + bootLoader.SetCommandLine(strings.Join(kernelCommandLineArguments, " ")) + return bootLoader +} + +func main() { + configuration := virtualization.NewVirtualMachineConfiguration() + configuration.SetCPUCount(1) + configuration.SetMemorySize(2 * 1024 * 1024 * 1024) + configuration.SetSerialPorts([]virtualization.ISerialPortConfiguration{serialConsole()}) + configuration.SetBootLoader(bootLoader( + foundation.NewURLFileURLWithPath("./macos/_examples/virtualmachine/vmlinuz"), + foundation.NewURLFileURLWithPath("./macos/_examples/virtualmachine/initrd.img"), + )) + + var nserr foundation.Error + if !configuration.ValidateWithError(unsafe.Pointer(&nserr)) { + fmt.Printf("Failed to validate the virtual machine configuration. %v\n", foundation.ToGoError(nserr)) + os.Exit(1) + } + + virtualMachine := virtualization.NewVirtualMachineWithConfiguration(configuration) + delegate := new(virtualization.VirtualMachineDelegate) + virtualMachine.SetDelegate(delegate) + + virtualMachine.StartWithCompletionHandler(func(nserr foundation.Error) { + if !nserr.IsNil() { + fmt.Printf("Failed to start the virtual machine. %v", foundation.ToGoError(nserr)) + } + }) + + foundation.RunLoop_MainRunLoop().RunUntilDate(foundation.Date_DistantFuture()) +} diff --git a/macos/virtualization/audio_device_configuration.gen.go b/macos/virtualization/audio_device_configuration.gen.go new file mode 100644 index 00000000..e1175b42 --- /dev/null +++ b/macos/virtualization/audio_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [AudioDeviceConfiguration] class. +var AudioDeviceConfigurationClass = _AudioDeviceConfigurationClass{objc.GetClass("VZAudioDeviceConfiguration")} + +type _AudioDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [AudioDeviceConfiguration] class. +type IAudioDeviceConfiguration interface { + objc.IObject +} + +// The base class for an audio device configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzaudiodeviceconfiguration?language=objc +type AudioDeviceConfiguration struct { + objc.Object +} + +func AudioDeviceConfigurationFrom(ptr unsafe.Pointer) AudioDeviceConfiguration { + return AudioDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (ac _AudioDeviceConfigurationClass) Alloc() AudioDeviceConfiguration { + rv := objc.Call[AudioDeviceConfiguration](ac, objc.Sel("alloc")) + return rv +} + +func (ac _AudioDeviceConfigurationClass) New() AudioDeviceConfiguration { + rv := objc.Call[AudioDeviceConfiguration](ac, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewAudioDeviceConfiguration() AudioDeviceConfiguration { + return AudioDeviceConfigurationClass.New() +} + +func (a_ AudioDeviceConfiguration) Init() AudioDeviceConfiguration { + rv := objc.Call[AudioDeviceConfiguration](a_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/audio_input_stream_source.gen.go b/macos/virtualization/audio_input_stream_source.gen.go new file mode 100644 index 00000000..b74c445c --- /dev/null +++ b/macos/virtualization/audio_input_stream_source.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [AudioInputStreamSource] class. +var AudioInputStreamSourceClass = _AudioInputStreamSourceClass{objc.GetClass("VZAudioInputStreamSource")} + +type _AudioInputStreamSourceClass struct { + objc.Class +} + +// An interface definition for the [AudioInputStreamSource] class. +type IAudioInputStreamSource interface { + objc.IObject +} + +// The base class for an audio input stream source. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzaudioinputstreamsource?language=objc +type AudioInputStreamSource struct { + objc.Object +} + +func AudioInputStreamSourceFrom(ptr unsafe.Pointer) AudioInputStreamSource { + return AudioInputStreamSource{ + Object: objc.ObjectFrom(ptr), + } +} + +func (ac _AudioInputStreamSourceClass) Alloc() AudioInputStreamSource { + rv := objc.Call[AudioInputStreamSource](ac, objc.Sel("alloc")) + return rv +} + +func (ac _AudioInputStreamSourceClass) New() AudioInputStreamSource { + rv := objc.Call[AudioInputStreamSource](ac, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewAudioInputStreamSource() AudioInputStreamSource { + return AudioInputStreamSourceClass.New() +} + +func (a_ AudioInputStreamSource) Init() AudioInputStreamSource { + rv := objc.Call[AudioInputStreamSource](a_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/audio_output_stream_sink.gen.go b/macos/virtualization/audio_output_stream_sink.gen.go new file mode 100644 index 00000000..1cdab090 --- /dev/null +++ b/macos/virtualization/audio_output_stream_sink.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [AudioOutputStreamSink] class. +var AudioOutputStreamSinkClass = _AudioOutputStreamSinkClass{objc.GetClass("VZAudioOutputStreamSink")} + +type _AudioOutputStreamSinkClass struct { + objc.Class +} + +// An interface definition for the [AudioOutputStreamSink] class. +type IAudioOutputStreamSink interface { + objc.IObject +} + +// The base class for an audio output stream sink. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzaudiooutputstreamsink?language=objc +type AudioOutputStreamSink struct { + objc.Object +} + +func AudioOutputStreamSinkFrom(ptr unsafe.Pointer) AudioOutputStreamSink { + return AudioOutputStreamSink{ + Object: objc.ObjectFrom(ptr), + } +} + +func (ac _AudioOutputStreamSinkClass) Alloc() AudioOutputStreamSink { + rv := objc.Call[AudioOutputStreamSink](ac, objc.Sel("alloc")) + return rv +} + +func (ac _AudioOutputStreamSinkClass) New() AudioOutputStreamSink { + rv := objc.Call[AudioOutputStreamSink](ac, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewAudioOutputStreamSink() AudioOutputStreamSink { + return AudioOutputStreamSinkClass.New() +} + +func (a_ AudioOutputStreamSink) Init() AudioOutputStreamSink { + rv := objc.Call[AudioOutputStreamSink](a_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/boot_loader.gen.go b/macos/virtualization/boot_loader.gen.go new file mode 100644 index 00000000..02b7a20f --- /dev/null +++ b/macos/virtualization/boot_loader.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [BootLoader] class. +var BootLoaderClass = _BootLoaderClass{objc.GetClass("VZBootLoader")} + +type _BootLoaderClass struct { + objc.Class +} + +// An interface definition for the [BootLoader] class. +type IBootLoader interface { + objc.IObject +} + +// The base class that defines the management of the initial process of the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbootloader?language=objc +type BootLoader struct { + objc.Object +} + +func BootLoaderFrom(ptr unsafe.Pointer) BootLoader { + return BootLoader{ + Object: objc.ObjectFrom(ptr), + } +} + +func (bc _BootLoaderClass) Alloc() BootLoader { + rv := objc.Call[BootLoader](bc, objc.Sel("alloc")) + return rv +} + +func (bc _BootLoaderClass) New() BootLoader { + rv := objc.Call[BootLoader](bc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewBootLoader() BootLoader { + return BootLoaderClass.New() +} + +func (b_ BootLoader) Init() BootLoader { + rv := objc.Call[BootLoader](b_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/bridged_network_device_attachment.gen.go b/macos/virtualization/bridged_network_device_attachment.gen.go new file mode 100644 index 00000000..21f93349 --- /dev/null +++ b/macos/virtualization/bridged_network_device_attachment.gen.go @@ -0,0 +1,77 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [BridgedNetworkDeviceAttachment] class. +var BridgedNetworkDeviceAttachmentClass = _BridgedNetworkDeviceAttachmentClass{objc.GetClass("VZBridgedNetworkDeviceAttachment")} + +type _BridgedNetworkDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [BridgedNetworkDeviceAttachment] class. +type IBridgedNetworkDeviceAttachment interface { + INetworkDeviceAttachment + Interface() BridgedNetworkInterface +} + +// A network device that interacts directly with a physical network interface on the host computer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkdeviceattachment?language=objc +type BridgedNetworkDeviceAttachment struct { + NetworkDeviceAttachment +} + +func BridgedNetworkDeviceAttachmentFrom(ptr unsafe.Pointer) BridgedNetworkDeviceAttachment { + return BridgedNetworkDeviceAttachment{ + NetworkDeviceAttachment: NetworkDeviceAttachmentFrom(ptr), + } +} + +func (b_ BridgedNetworkDeviceAttachment) InitWithInterface(interface_ IBridgedNetworkInterface) BridgedNetworkDeviceAttachment { + rv := objc.Call[BridgedNetworkDeviceAttachment](b_, objc.Sel("initWithInterface:"), interface_) + return rv +} + +// Creates the attachment from a bridged network interface object. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkdeviceattachment/3656603-initwithinterface?language=objc +func NewBridgedNetworkDeviceAttachmentWithInterface(interface_ IBridgedNetworkInterface) BridgedNetworkDeviceAttachment { + instance := BridgedNetworkDeviceAttachmentClass.Alloc().InitWithInterface(interface_) + instance.Autorelease() + return instance +} + +func (bc _BridgedNetworkDeviceAttachmentClass) Alloc() BridgedNetworkDeviceAttachment { + rv := objc.Call[BridgedNetworkDeviceAttachment](bc, objc.Sel("alloc")) + return rv +} + +func (bc _BridgedNetworkDeviceAttachmentClass) New() BridgedNetworkDeviceAttachment { + rv := objc.Call[BridgedNetworkDeviceAttachment](bc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewBridgedNetworkDeviceAttachment() BridgedNetworkDeviceAttachment { + return BridgedNetworkDeviceAttachmentClass.New() +} + +func (b_ BridgedNetworkDeviceAttachment) Init() BridgedNetworkDeviceAttachment { + rv := objc.Call[BridgedNetworkDeviceAttachment](b_, objc.Sel("init")) + return rv +} + +// The network interface assigned to this attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkdeviceattachment/3656604-interface?language=objc +func (b_ BridgedNetworkDeviceAttachment) Interface() BridgedNetworkInterface { + rv := objc.Call[BridgedNetworkInterface](b_, objc.Sel("interface")) + return rv +} diff --git a/macos/virtualization/bridged_network_interface.gen.go b/macos/virtualization/bridged_network_interface.gen.go new file mode 100644 index 00000000..f353aeca --- /dev/null +++ b/macos/virtualization/bridged_network_interface.gen.go @@ -0,0 +1,87 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [BridgedNetworkInterface] class. +var BridgedNetworkInterfaceClass = _BridgedNetworkInterfaceClass{objc.GetClass("VZBridgedNetworkInterface")} + +type _BridgedNetworkInterfaceClass struct { + objc.Class +} + +// An interface definition for the [BridgedNetworkInterface] class. +type IBridgedNetworkInterface interface { + objc.IObject + LocalizedDisplayName() string + Identifier() string +} + +// An object that identifies the supported network interfaces of the host computer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkinterface?language=objc +type BridgedNetworkInterface struct { + objc.Object +} + +func BridgedNetworkInterfaceFrom(ptr unsafe.Pointer) BridgedNetworkInterface { + return BridgedNetworkInterface{ + Object: objc.ObjectFrom(ptr), + } +} + +func (bc _BridgedNetworkInterfaceClass) Alloc() BridgedNetworkInterface { + rv := objc.Call[BridgedNetworkInterface](bc, objc.Sel("alloc")) + return rv +} + +func (bc _BridgedNetworkInterfaceClass) New() BridgedNetworkInterface { + rv := objc.Call[BridgedNetworkInterface](bc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewBridgedNetworkInterface() BridgedNetworkInterface { + return BridgedNetworkInterfaceClass.New() +} + +func (b_ BridgedNetworkInterface) Init() BridgedNetworkInterface { + rv := objc.Call[BridgedNetworkInterface](b_, objc.Sel("init")) + return rv +} + +// A user-visible name for the network interface. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkinterface/3656607-localizeddisplayname?language=objc +func (b_ BridgedNetworkInterface) LocalizedDisplayName() string { + rv := objc.Call[string](b_, objc.Sel("localizedDisplayName")) + return rv +} + +// The bridged network interfaces that you may use in your virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkinterface/3656608-networkinterfaces?language=objc +func (bc _BridgedNetworkInterfaceClass) NetworkInterfaces() []BridgedNetworkInterface { + rv := objc.Call[[]BridgedNetworkInterface](bc, objc.Sel("networkInterfaces")) + return rv +} + +// The bridged network interfaces that you may use in your virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkinterface/3656608-networkinterfaces?language=objc +func BridgedNetworkInterface_NetworkInterfaces() []BridgedNetworkInterface { + return BridgedNetworkInterfaceClass.NetworkInterfaces() +} + +// The unique BSD name of this network interface. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzbridgednetworkinterface/3656606-identifier?language=objc +func (b_ BridgedNetworkInterface) Identifier() string { + rv := objc.Call[string](b_, objc.Sel("identifier")) + return rv +} diff --git a/macos/virtualization/console_device.gen.go b/macos/virtualization/console_device.gen.go new file mode 100644 index 00000000..420c64c2 --- /dev/null +++ b/macos/virtualization/console_device.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [ConsoleDevice] class. +var ConsoleDeviceClass = _ConsoleDeviceClass{objc.GetClass("VZConsoleDevice")} + +type _ConsoleDeviceClass struct { + objc.Class +} + +// An interface definition for the [ConsoleDevice] class. +type IConsoleDevice interface { + objc.IObject +} + +// A class that represents a console device in a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzconsoledevice?language=objc +type ConsoleDevice struct { + objc.Object +} + +func ConsoleDeviceFrom(ptr unsafe.Pointer) ConsoleDevice { + return ConsoleDevice{ + Object: objc.ObjectFrom(ptr), + } +} + +func (cc _ConsoleDeviceClass) Alloc() ConsoleDevice { + rv := objc.Call[ConsoleDevice](cc, objc.Sel("alloc")) + return rv +} + +func (cc _ConsoleDeviceClass) New() ConsoleDevice { + rv := objc.Call[ConsoleDevice](cc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewConsoleDevice() ConsoleDevice { + return ConsoleDeviceClass.New() +} + +func (c_ ConsoleDevice) Init() ConsoleDevice { + rv := objc.Call[ConsoleDevice](c_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/console_device_configuration.gen.go b/macos/virtualization/console_device_configuration.gen.go new file mode 100644 index 00000000..26a83b72 --- /dev/null +++ b/macos/virtualization/console_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [ConsoleDeviceConfiguration] class. +var ConsoleDeviceConfigurationClass = _ConsoleDeviceConfigurationClass{objc.GetClass("VZConsoleDeviceConfiguration")} + +type _ConsoleDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [ConsoleDeviceConfiguration] class. +type IConsoleDeviceConfiguration interface { + objc.IObject +} + +// The base class for a console device configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzconsoledeviceconfiguration?language=objc +type ConsoleDeviceConfiguration struct { + objc.Object +} + +func ConsoleDeviceConfigurationFrom(ptr unsafe.Pointer) ConsoleDeviceConfiguration { + return ConsoleDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (cc _ConsoleDeviceConfigurationClass) Alloc() ConsoleDeviceConfiguration { + rv := objc.Call[ConsoleDeviceConfiguration](cc, objc.Sel("alloc")) + return rv +} + +func (cc _ConsoleDeviceConfigurationClass) New() ConsoleDeviceConfiguration { + rv := objc.Call[ConsoleDeviceConfiguration](cc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewConsoleDeviceConfiguration() ConsoleDeviceConfiguration { + return ConsoleDeviceConfigurationClass.New() +} + +func (c_ ConsoleDeviceConfiguration) Init() ConsoleDeviceConfiguration { + rv := objc.Call[ConsoleDeviceConfiguration](c_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/console_port_configuration.gen.go b/macos/virtualization/console_port_configuration.gen.go new file mode 100644 index 00000000..2005837b --- /dev/null +++ b/macos/virtualization/console_port_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [ConsolePortConfiguration] class. +var ConsolePortConfigurationClass = _ConsolePortConfigurationClass{objc.GetClass("VZConsolePortConfiguration")} + +type _ConsolePortConfigurationClass struct { + objc.Class +} + +// An interface definition for the [ConsolePortConfiguration] class. +type IConsolePortConfiguration interface { + objc.IObject + Attachment() SerialPortAttachment + SetAttachment(value ISerialPortAttachment) +} + +// The base class for a console port configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzconsoleportconfiguration?language=objc +type ConsolePortConfiguration struct { + objc.Object +} + +func ConsolePortConfigurationFrom(ptr unsafe.Pointer) ConsolePortConfiguration { + return ConsolePortConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (cc _ConsolePortConfigurationClass) Alloc() ConsolePortConfiguration { + rv := objc.Call[ConsolePortConfiguration](cc, objc.Sel("alloc")) + return rv +} + +func (cc _ConsolePortConfigurationClass) New() ConsolePortConfiguration { + rv := objc.Call[ConsolePortConfiguration](cc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewConsolePortConfiguration() ConsolePortConfiguration { + return ConsolePortConfigurationClass.New() +} + +func (c_ ConsolePortConfiguration) Init() ConsolePortConfiguration { + rv := objc.Call[ConsolePortConfiguration](c_, objc.Sel("init")) + return rv +} + +// The serial port attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzconsoleportconfiguration/4024721-attachment?language=objc +func (c_ ConsolePortConfiguration) Attachment() SerialPortAttachment { + rv := objc.Call[SerialPortAttachment](c_, objc.Sel("attachment")) + return rv +} + +// The serial port attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzconsoleportconfiguration/4024721-attachment?language=objc +func (c_ ConsolePortConfiguration) SetAttachment(value ISerialPortAttachment) { + objc.Call[objc.Void](c_, objc.Sel("setAttachment:"), value) +} diff --git a/macos/virtualization/directory_share.gen.go b/macos/virtualization/directory_share.gen.go new file mode 100644 index 00000000..5e3658c4 --- /dev/null +++ b/macos/virtualization/directory_share.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [DirectoryShare] class. +var DirectoryShareClass = _DirectoryShareClass{objc.GetClass("VZDirectoryShare")} + +type _DirectoryShareClass struct { + objc.Class +} + +// An interface definition for the [DirectoryShare] class. +type IDirectoryShare interface { + objc.IObject +} + +// The base class for a directory share. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdirectoryshare?language=objc +type DirectoryShare struct { + objc.Object +} + +func DirectoryShareFrom(ptr unsafe.Pointer) DirectoryShare { + return DirectoryShare{ + Object: objc.ObjectFrom(ptr), + } +} + +func (dc _DirectoryShareClass) Alloc() DirectoryShare { + rv := objc.Call[DirectoryShare](dc, objc.Sel("alloc")) + return rv +} + +func (dc _DirectoryShareClass) New() DirectoryShare { + rv := objc.Call[DirectoryShare](dc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewDirectoryShare() DirectoryShare { + return DirectoryShareClass.New() +} + +func (d_ DirectoryShare) Init() DirectoryShare { + rv := objc.Call[DirectoryShare](d_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/directory_sharing_device.gen.go b/macos/virtualization/directory_sharing_device.gen.go new file mode 100644 index 00000000..f86e1ab9 --- /dev/null +++ b/macos/virtualization/directory_sharing_device.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [DirectorySharingDevice] class. +var DirectorySharingDeviceClass = _DirectorySharingDeviceClass{objc.GetClass("VZDirectorySharingDevice")} + +type _DirectorySharingDeviceClass struct { + objc.Class +} + +// An interface definition for the [DirectorySharingDevice] class. +type IDirectorySharingDevice interface { + objc.IObject +} + +// The base class that represents a directory sharing device in a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdirectorysharingdevice?language=objc +type DirectorySharingDevice struct { + objc.Object +} + +func DirectorySharingDeviceFrom(ptr unsafe.Pointer) DirectorySharingDevice { + return DirectorySharingDevice{ + Object: objc.ObjectFrom(ptr), + } +} + +func (dc _DirectorySharingDeviceClass) Alloc() DirectorySharingDevice { + rv := objc.Call[DirectorySharingDevice](dc, objc.Sel("alloc")) + return rv +} + +func (dc _DirectorySharingDeviceClass) New() DirectorySharingDevice { + rv := objc.Call[DirectorySharingDevice](dc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewDirectorySharingDevice() DirectorySharingDevice { + return DirectorySharingDeviceClass.New() +} + +func (d_ DirectorySharingDevice) Init() DirectorySharingDevice { + rv := objc.Call[DirectorySharingDevice](d_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/directory_sharing_device_configuration.gen.go b/macos/virtualization/directory_sharing_device_configuration.gen.go new file mode 100644 index 00000000..f3262690 --- /dev/null +++ b/macos/virtualization/directory_sharing_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [DirectorySharingDeviceConfiguration] class. +var DirectorySharingDeviceConfigurationClass = _DirectorySharingDeviceConfigurationClass{objc.GetClass("VZDirectorySharingDeviceConfiguration")} + +type _DirectorySharingDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [DirectorySharingDeviceConfiguration] class. +type IDirectorySharingDeviceConfiguration interface { + objc.IObject +} + +// The base class for a directory sharing device configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdirectorysharingdeviceconfiguration?language=objc +type DirectorySharingDeviceConfiguration struct { + objc.Object +} + +func DirectorySharingDeviceConfigurationFrom(ptr unsafe.Pointer) DirectorySharingDeviceConfiguration { + return DirectorySharingDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (dc _DirectorySharingDeviceConfigurationClass) Alloc() DirectorySharingDeviceConfiguration { + rv := objc.Call[DirectorySharingDeviceConfiguration](dc, objc.Sel("alloc")) + return rv +} + +func (dc _DirectorySharingDeviceConfigurationClass) New() DirectorySharingDeviceConfiguration { + rv := objc.Call[DirectorySharingDeviceConfiguration](dc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewDirectorySharingDeviceConfiguration() DirectorySharingDeviceConfiguration { + return DirectorySharingDeviceConfigurationClass.New() +} + +func (d_ DirectorySharingDeviceConfiguration) Init() DirectorySharingDeviceConfiguration { + rv := objc.Call[DirectorySharingDeviceConfiguration](d_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/disk_block_device_storage_device_attachment.gen.go b/macos/virtualization/disk_block_device_storage_device_attachment.gen.go new file mode 100644 index 00000000..b6a22388 --- /dev/null +++ b/macos/virtualization/disk_block_device_storage_device_attachment.gen.go @@ -0,0 +1,96 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [DiskBlockDeviceStorageDeviceAttachment] class. +var DiskBlockDeviceStorageDeviceAttachmentClass = _DiskBlockDeviceStorageDeviceAttachmentClass{objc.GetClass("VZDiskBlockDeviceStorageDeviceAttachment")} + +type _DiskBlockDeviceStorageDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [DiskBlockDeviceStorageDeviceAttachment] class. +type IDiskBlockDeviceStorageDeviceAttachment interface { + IStorageDeviceAttachment + IsReadOnly() bool + FileHandle() foundation.FileHandle + SynchronizationMode() DiskSynchronizationMode +} + +// A storage device attachment that uses a disk to store data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskblockdevicestoragedeviceattachment?language=objc +type DiskBlockDeviceStorageDeviceAttachment struct { + StorageDeviceAttachment +} + +func DiskBlockDeviceStorageDeviceAttachmentFrom(ptr unsafe.Pointer) DiskBlockDeviceStorageDeviceAttachment { + return DiskBlockDeviceStorageDeviceAttachment{ + StorageDeviceAttachment: StorageDeviceAttachmentFrom(ptr), + } +} + +func (d_ DiskBlockDeviceStorageDeviceAttachment) InitWithFileHandleReadOnlySynchronizationModeError(fileHandle foundation.IFileHandle, readOnly bool, synchronizationMode DiskSynchronizationMode, error unsafe.Pointer) DiskBlockDeviceStorageDeviceAttachment { + rv := objc.Call[DiskBlockDeviceStorageDeviceAttachment](d_, objc.Sel("initWithFileHandle:readOnly:synchronizationMode:error:"), fileHandle, readOnly, synchronizationMode, error) + return rv +} + +// Creates a new block storage device attachment from a file handle and with the specified access mode, synchronization mode, and error object that you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskblockdevicestoragedeviceattachment/4161077-initwithfilehandle?language=objc +func NewDiskBlockDeviceStorageDeviceAttachmentWithFileHandleReadOnlySynchronizationModeError(fileHandle foundation.IFileHandle, readOnly bool, synchronizationMode DiskSynchronizationMode, error unsafe.Pointer) DiskBlockDeviceStorageDeviceAttachment { + instance := DiskBlockDeviceStorageDeviceAttachmentClass.Alloc().InitWithFileHandleReadOnlySynchronizationModeError(fileHandle, readOnly, synchronizationMode, error) + instance.Autorelease() + return instance +} + +func (dc _DiskBlockDeviceStorageDeviceAttachmentClass) Alloc() DiskBlockDeviceStorageDeviceAttachment { + rv := objc.Call[DiskBlockDeviceStorageDeviceAttachment](dc, objc.Sel("alloc")) + return rv +} + +func (dc _DiskBlockDeviceStorageDeviceAttachmentClass) New() DiskBlockDeviceStorageDeviceAttachment { + rv := objc.Call[DiskBlockDeviceStorageDeviceAttachment](dc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewDiskBlockDeviceStorageDeviceAttachment() DiskBlockDeviceStorageDeviceAttachment { + return DiskBlockDeviceStorageDeviceAttachmentClass.New() +} + +func (d_ DiskBlockDeviceStorageDeviceAttachment) Init() DiskBlockDeviceStorageDeviceAttachment { + rv := objc.Call[DiskBlockDeviceStorageDeviceAttachment](d_, objc.Sel("init")) + return rv +} + +// A Boolean value that indicates whether this disk attachment is read-only; otherwise, if the file handle allows writes, the device can write data into it. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskblockdevicestoragedeviceattachment/4161078-readonly?language=objc +func (d_ DiskBlockDeviceStorageDeviceAttachment) IsReadOnly() bool { + rv := objc.Call[bool](d_, objc.Sel("isReadOnly")) + return rv +} + +// A file handle to a block device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskblockdevicestoragedeviceattachment/4161076-filehandle?language=objc +func (d_ DiskBlockDeviceStorageDeviceAttachment) FileHandle() foundation.FileHandle { + rv := objc.Call[foundation.FileHandle](d_, objc.Sel("fileHandle")) + return rv +} + +// The value that defines how the disk synchronizes with the underlying storage when the guest operating system flushes data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskblockdevicestoragedeviceattachment/4161079-synchronizationmode?language=objc +func (d_ DiskBlockDeviceStorageDeviceAttachment) SynchronizationMode() DiskSynchronizationMode { + rv := objc.Call[DiskSynchronizationMode](d_, objc.Sel("synchronizationMode")) + return rv +} diff --git a/macos/virtualization/disk_image_storage_device_attachment.gen.go b/macos/virtualization/disk_image_storage_device_attachment.gen.go new file mode 100644 index 00000000..cfc7cbd5 --- /dev/null +++ b/macos/virtualization/disk_image_storage_device_attachment.gen.go @@ -0,0 +1,119 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [DiskImageStorageDeviceAttachment] class. +var DiskImageStorageDeviceAttachmentClass = _DiskImageStorageDeviceAttachmentClass{objc.GetClass("VZDiskImageStorageDeviceAttachment")} + +type _DiskImageStorageDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [DiskImageStorageDeviceAttachment] class. +type IDiskImageStorageDeviceAttachment interface { + IStorageDeviceAttachment + IsReadOnly() bool + URL() foundation.URL + SynchronizationMode() DiskImageSynchronizationMode + CachingMode() DiskImageCachingMode +} + +// A device that stores content in a disk image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment?language=objc +type DiskImageStorageDeviceAttachment struct { + StorageDeviceAttachment +} + +func DiskImageStorageDeviceAttachmentFrom(ptr unsafe.Pointer) DiskImageStorageDeviceAttachment { + return DiskImageStorageDeviceAttachment{ + StorageDeviceAttachment: StorageDeviceAttachmentFrom(ptr), + } +} + +func (d_ DiskImageStorageDeviceAttachment) InitWithURLReadOnlyError(url foundation.IURL, readOnly bool, error unsafe.Pointer) DiskImageStorageDeviceAttachment { + rv := objc.Call[DiskImageStorageDeviceAttachment](d_, objc.Sel("initWithURL:readOnly:error:"), url, readOnly, error) + return rv +} + +// Creates the attachment object from the specified disk image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment/3656611-initwithurl?language=objc +func NewDiskImageStorageDeviceAttachmentWithURLReadOnlyError(url foundation.IURL, readOnly bool, error unsafe.Pointer) DiskImageStorageDeviceAttachment { + instance := DiskImageStorageDeviceAttachmentClass.Alloc().InitWithURLReadOnlyError(url, readOnly, error) + instance.Autorelease() + return instance +} + +func (d_ DiskImageStorageDeviceAttachment) InitWithURLReadOnlyCachingModeSynchronizationModeError(url foundation.IURL, readOnly bool, cachingMode DiskImageCachingMode, synchronizationMode DiskImageSynchronizationMode, error unsafe.Pointer) DiskImageStorageDeviceAttachment { + rv := objc.Call[DiskImageStorageDeviceAttachment](d_, objc.Sel("initWithURL:readOnly:cachingMode:synchronizationMode:error:"), url, readOnly, cachingMode, synchronizationMode, error) + return rv +} + +// Initialize the attachment from a local file URL. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment/3857729-initwithurl?language=objc +func NewDiskImageStorageDeviceAttachmentWithURLReadOnlyCachingModeSynchronizationModeError(url foundation.IURL, readOnly bool, cachingMode DiskImageCachingMode, synchronizationMode DiskImageSynchronizationMode, error unsafe.Pointer) DiskImageStorageDeviceAttachment { + instance := DiskImageStorageDeviceAttachmentClass.Alloc().InitWithURLReadOnlyCachingModeSynchronizationModeError(url, readOnly, cachingMode, synchronizationMode, error) + instance.Autorelease() + return instance +} + +func (dc _DiskImageStorageDeviceAttachmentClass) Alloc() DiskImageStorageDeviceAttachment { + rv := objc.Call[DiskImageStorageDeviceAttachment](dc, objc.Sel("alloc")) + return rv +} + +func (dc _DiskImageStorageDeviceAttachmentClass) New() DiskImageStorageDeviceAttachment { + rv := objc.Call[DiskImageStorageDeviceAttachment](dc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewDiskImageStorageDeviceAttachment() DiskImageStorageDeviceAttachment { + return DiskImageStorageDeviceAttachmentClass.New() +} + +func (d_ DiskImageStorageDeviceAttachment) Init() DiskImageStorageDeviceAttachment { + rv := objc.Call[DiskImageStorageDeviceAttachment](d_, objc.Sel("init")) + return rv +} + +// A Boolean value that indicates whether the underlying disk image is read-only. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment/3666593-readonly?language=objc +func (d_ DiskImageStorageDeviceAttachment) IsReadOnly() bool { + rv := objc.Call[bool](d_, objc.Sel("isReadOnly")) + return rv +} + +// The URL of the underlying disk image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment/3666592-url?language=objc +func (d_ DiskImageStorageDeviceAttachment) URL() foundation.URL { + rv := objc.Call[foundation.URL](d_, objc.Sel("URL")) + return rv +} + +// The mode in which the disk image synchronizes data with the underlying storage device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment/3852630-synchronizationmode?language=objc +func (d_ DiskImageStorageDeviceAttachment) SynchronizationMode() DiskImageSynchronizationMode { + rv := objc.Call[DiskImageSynchronizationMode](d_, objc.Sel("synchronizationMode")) + return rv +} + +// The current cacheing mode for the virtual disk image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagestoragedeviceattachment/3857728-cachingmode?language=objc +func (d_ DiskImageStorageDeviceAttachment) CachingMode() DiskImageCachingMode { + rv := objc.Call[DiskImageCachingMode](d_, objc.Sel("cachingMode")) + return rv +} diff --git a/macos/virtualization/doc.gen.go b/macos/virtualization/doc.gen.go new file mode 100644 index 00000000..20761243 --- /dev/null +++ b/macos/virtualization/doc.gen.go @@ -0,0 +1,8 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +// Create virtual machines and run macOS and Linux-based operating systems. +// +// [Apple Documentation] +// +// [Apple Documentation]: https://developer.apple.com/documentation/virtualization?language=objc +package virtualization diff --git a/macos/virtualization/efi_boot_loader.gen.go b/macos/virtualization/efi_boot_loader.gen.go new file mode 100644 index 00000000..c0e3ec02 --- /dev/null +++ b/macos/virtualization/efi_boot_loader.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [EFIBootLoader] class. +var EFIBootLoaderClass = _EFIBootLoaderClass{objc.GetClass("VZEFIBootLoader")} + +type _EFIBootLoaderClass struct { + objc.Class +} + +// An interface definition for the [EFIBootLoader] class. +type IEFIBootLoader interface { + IBootLoader + VariableStore() EFIVariableStore + SetVariableStore(value IEFIVariableStore) +} + +// The boot loader configuration the system uses to boot guest-operating systems that expect an Extensible Firmware Interface (EFI) ROM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefibootloader?language=objc +type EFIBootLoader struct { + BootLoader +} + +func EFIBootLoaderFrom(ptr unsafe.Pointer) EFIBootLoader { + return EFIBootLoader{ + BootLoader: BootLoaderFrom(ptr), + } +} + +func (e_ EFIBootLoader) Init() EFIBootLoader { + rv := objc.Call[EFIBootLoader](e_, objc.Sel("init")) + return rv +} + +func (ec _EFIBootLoaderClass) Alloc() EFIBootLoader { + rv := objc.Call[EFIBootLoader](ec, objc.Sel("alloc")) + return rv +} + +func (ec _EFIBootLoaderClass) New() EFIBootLoader { + rv := objc.Call[EFIBootLoader](ec, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewEFIBootLoader() EFIBootLoader { + return EFIBootLoaderClass.New() +} + +// The boot loader’s EFI variable store. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefibootloader/3955606-variablestore?language=objc +func (e_ EFIBootLoader) VariableStore() EFIVariableStore { + rv := objc.Call[EFIVariableStore](e_, objc.Sel("variableStore")) + return rv +} + +// The boot loader’s EFI variable store. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefibootloader/3955606-variablestore?language=objc +func (e_ EFIBootLoader) SetVariableStore(value IEFIVariableStore) { + objc.Call[objc.Void](e_, objc.Sel("setVariableStore:"), value) +} diff --git a/macos/virtualization/efi_variable_store.gen.go b/macos/virtualization/efi_variable_store.gen.go new file mode 100644 index 00000000..111f2d39 --- /dev/null +++ b/macos/virtualization/efi_variable_store.gen.go @@ -0,0 +1,92 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [EFIVariableStore] class. +var EFIVariableStoreClass = _EFIVariableStoreClass{objc.GetClass("VZEFIVariableStore")} + +type _EFIVariableStoreClass struct { + objc.Class +} + +// An interface definition for the [EFIVariableStore] class. +type IEFIVariableStore interface { + objc.IObject + URL() foundation.URL +} + +// An object that represents the Extensible Firmware Interface (EFI) variable store that contains NVRAM variables the EFI exposes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefivariablestore?language=objc +type EFIVariableStore struct { + objc.Object +} + +func EFIVariableStoreFrom(ptr unsafe.Pointer) EFIVariableStore { + return EFIVariableStore{ + Object: objc.ObjectFrom(ptr), + } +} + +func (e_ EFIVariableStore) InitWithURL(URL foundation.IURL) EFIVariableStore { + rv := objc.Call[EFIVariableStore](e_, objc.Sel("initWithURL:"), URL) + return rv +} + +// Initialize the variable store from the URL of an existing file. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefivariablestore/3955610-initwithurl?language=objc +func NewEFIVariableStoreWithURL(URL foundation.IURL) EFIVariableStore { + instance := EFIVariableStoreClass.Alloc().InitWithURL(URL) + instance.Autorelease() + return instance +} + +func (e_ EFIVariableStore) InitCreatingVariableStoreAtURLOptionsError(URL foundation.IURL, options EFIVariableStoreInitializationOptions, error unsafe.Pointer) EFIVariableStore { + rv := objc.Call[EFIVariableStore](e_, objc.Sel("initCreatingVariableStoreAtURL:options:error:"), URL, options, error) + return rv +} + +// Creates a new EFI variable store at specified the URL on the filesystem, initialization options, and error-return variable. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefivariablestore/3955609-initcreatingvariablestoreaturl?language=objc +func NewEFIVariableStoreCreatingVariableStoreAtURLOptionsError(URL foundation.IURL, options EFIVariableStoreInitializationOptions, error unsafe.Pointer) EFIVariableStore { + instance := EFIVariableStoreClass.Alloc().InitCreatingVariableStoreAtURLOptionsError(URL, options, error) + instance.Autorelease() + return instance +} + +func (ec _EFIVariableStoreClass) Alloc() EFIVariableStore { + rv := objc.Call[EFIVariableStore](ec, objc.Sel("alloc")) + return rv +} + +func (ec _EFIVariableStoreClass) New() EFIVariableStore { + rv := objc.Call[EFIVariableStore](ec, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewEFIVariableStore() EFIVariableStore { + return EFIVariableStoreClass.New() +} + +func (e_ EFIVariableStore) Init() EFIVariableStore { + rv := objc.Call[EFIVariableStore](e_, objc.Sel("init")) + return rv +} + +// The URL of the variable store on the local file system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefivariablestore/3955608-url?language=objc +func (e_ EFIVariableStore) URL() foundation.URL { + rv := objc.Call[foundation.URL](e_, objc.Sel("URL")) + return rv +} diff --git a/macos/virtualization/entropy_device_configuration.gen.go b/macos/virtualization/entropy_device_configuration.gen.go new file mode 100644 index 00000000..a625cc06 --- /dev/null +++ b/macos/virtualization/entropy_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [EntropyDeviceConfiguration] class. +var EntropyDeviceConfigurationClass = _EntropyDeviceConfigurationClass{objc.GetClass("VZEntropyDeviceConfiguration")} + +type _EntropyDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [EntropyDeviceConfiguration] class. +type IEntropyDeviceConfiguration interface { + objc.IObject +} + +// The common configuration traits for entropy devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzentropydeviceconfiguration?language=objc +type EntropyDeviceConfiguration struct { + objc.Object +} + +func EntropyDeviceConfigurationFrom(ptr unsafe.Pointer) EntropyDeviceConfiguration { + return EntropyDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (ec _EntropyDeviceConfigurationClass) Alloc() EntropyDeviceConfiguration { + rv := objc.Call[EntropyDeviceConfiguration](ec, objc.Sel("alloc")) + return rv +} + +func (ec _EntropyDeviceConfigurationClass) New() EntropyDeviceConfiguration { + rv := objc.Call[EntropyDeviceConfiguration](ec, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewEntropyDeviceConfiguration() EntropyDeviceConfiguration { + return EntropyDeviceConfigurationClass.New() +} + +func (e_ EntropyDeviceConfiguration) Init() EntropyDeviceConfiguration { + rv := objc.Call[EntropyDeviceConfiguration](e_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/enumtypes.gen.go b/macos/virtualization/enumtypes.gen.go new file mode 100644 index 00000000..28ecea81 --- /dev/null +++ b/macos/virtualization/enumtypes.gen.go @@ -0,0 +1,101 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +// An integer that describes the disk image caching mode. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagecachingmode?language=objc +type DiskImageCachingMode int + +const ( + DiskImageCachingModeAutomatic DiskImageCachingMode = 0 + DiskImageCachingModeCached DiskImageCachingMode = 2 + DiskImageCachingModeUncached DiskImageCachingMode = 1 +) + +// An integer that describes the disk image synchronization mode. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdiskimagesynchronizationmode?language=objc +type DiskImageSynchronizationMode int + +const ( + DiskImageSynchronizationModeFsync DiskImageSynchronizationMode = 2 + DiskImageSynchronizationModeFull DiskImageSynchronizationMode = 1 + DiskImageSynchronizationModeNone DiskImageSynchronizationMode = 3 +) + +// Values that describe the synchronization modes available to the guest OS. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzdisksynchronizationmode?language=objc +type DiskSynchronizationMode int + +const ( + DiskSynchronizationModeFull DiskSynchronizationMode = 0 + DiskSynchronizationModeNone DiskSynchronizationMode = 1 +) + +// Constants that describe the options available when creating a new Extensible Firmware Interface (EFI) variable store. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzefivariablestoreinitializationoptions?language=objc +type EFIVariableStoreInitializationOptions uint + +const ( + EFIVariableStoreInitializationOptionAllowOverwrite EFIVariableStoreInitializationOptions = 1 +) + +// Errors you might encounter when configuring or using a virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzerrorcode?language=objc +type ErrorCode int + +const ( + ErrorInstallationFailed ErrorCode = 10007 + ErrorInstallationRequiresUpdate ErrorCode = 10006 + ErrorInternal ErrorCode = 1 + ErrorInvalidDiskImage ErrorCode = 5 + ErrorInvalidRestoreImage ErrorCode = 10005 + ErrorInvalidRestoreImageCatalog ErrorCode = 10002 + ErrorInvalidVirtualMachineConfiguration ErrorCode = 2 + ErrorInvalidVirtualMachineState ErrorCode = 3 + ErrorInvalidVirtualMachineStateTransition ErrorCode = 4 + ErrorNetworkBlockDeviceDisconnected ErrorCode = 20002 + ErrorNetworkBlockDeviceNegotiationFailed ErrorCode = 20001 + ErrorNetworkError ErrorCode = 7 + ErrorNoSupportedRestoreImagesInCatalog ErrorCode = 10003 + ErrorNotSupported ErrorCode = 10 + ErrorOperationCancelled ErrorCode = 9 + ErrorOutOfDiskSpace ErrorCode = 8 + ErrorRestore ErrorCode = 12 + ErrorRestoreImageCatalogLoadFailed ErrorCode = 10001 + ErrorRestoreImageLoadFailed ErrorCode = 10004 + ErrorSave ErrorCode = 11 + ErrorVirtualMachineLimitExceeded ErrorCode = 6 +) + +// Constants that describe the availability and installation status of Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaavailability?language=objc +type LinuxRosettaAvailability int + +// Options you can set when creating new auxiliary storage. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacauxiliarystorageinitializationoptions?language=objc +type MacAuxiliaryStorageInitializationOptions uint + +// The execution states of the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinestate?language=objc +type VirtualMachineState int + +const ( + VirtualMachineStateError VirtualMachineState = 3 + VirtualMachineStatePaused VirtualMachineState = 2 + VirtualMachineStatePausing VirtualMachineState = 5 + VirtualMachineStateRestoring VirtualMachineState = 9 + VirtualMachineStateResuming VirtualMachineState = 6 + VirtualMachineStateRunning VirtualMachineState = 1 + VirtualMachineStateSaving VirtualMachineState = 8 + VirtualMachineStateStarting VirtualMachineState = 4 + VirtualMachineStateStopped VirtualMachineState = 0 + VirtualMachineStateStopping VirtualMachineState = 7 +) diff --git a/macos/virtualization/file_handle_network_device_attachment.gen.go b/macos/virtualization/file_handle_network_device_attachment.gen.go new file mode 100644 index 00000000..9c470bf5 --- /dev/null +++ b/macos/virtualization/file_handle_network_device_attachment.gen.go @@ -0,0 +1,95 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [FileHandleNetworkDeviceAttachment] class. +var FileHandleNetworkDeviceAttachmentClass = _FileHandleNetworkDeviceAttachmentClass{objc.GetClass("VZFileHandleNetworkDeviceAttachment")} + +type _FileHandleNetworkDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [FileHandleNetworkDeviceAttachment] class. +type IFileHandleNetworkDeviceAttachment interface { + INetworkDeviceAttachment + MaximumTransmissionUnit() int + SetMaximumTransmissionUnit(value int) + FileHandle() foundation.FileHandle +} + +// A network device that transmits raw network packets and frames using a datagram socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment?language=objc +type FileHandleNetworkDeviceAttachment struct { + NetworkDeviceAttachment +} + +func FileHandleNetworkDeviceAttachmentFrom(ptr unsafe.Pointer) FileHandleNetworkDeviceAttachment { + return FileHandleNetworkDeviceAttachment{ + NetworkDeviceAttachment: NetworkDeviceAttachmentFrom(ptr), + } +} + +func (f_ FileHandleNetworkDeviceAttachment) InitWithFileHandle(fileHandle foundation.IFileHandle) FileHandleNetworkDeviceAttachment { + rv := objc.Call[FileHandleNetworkDeviceAttachment](f_, objc.Sel("initWithFileHandle:"), fileHandle) + return rv +} + +// Creates the attachment from a file handle that contains a connected datagram socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment/3656622-initwithfilehandle?language=objc +func NewFileHandleNetworkDeviceAttachmentWithFileHandle(fileHandle foundation.IFileHandle) FileHandleNetworkDeviceAttachment { + instance := FileHandleNetworkDeviceAttachmentClass.Alloc().InitWithFileHandle(fileHandle) + instance.Autorelease() + return instance +} + +func (fc _FileHandleNetworkDeviceAttachmentClass) Alloc() FileHandleNetworkDeviceAttachment { + rv := objc.Call[FileHandleNetworkDeviceAttachment](fc, objc.Sel("alloc")) + return rv +} + +func (fc _FileHandleNetworkDeviceAttachmentClass) New() FileHandleNetworkDeviceAttachment { + rv := objc.Call[FileHandleNetworkDeviceAttachment](fc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewFileHandleNetworkDeviceAttachment() FileHandleNetworkDeviceAttachment { + return FileHandleNetworkDeviceAttachmentClass.New() +} + +func (f_ FileHandleNetworkDeviceAttachment) Init() FileHandleNetworkDeviceAttachment { + rv := objc.Call[FileHandleNetworkDeviceAttachment](f_, objc.Sel("init")) + return rv +} + +// An integer value that indicates the maximum transmission unit (MTU) associated with this attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment/3969266-maximumtransmissionunit?language=objc +func (f_ FileHandleNetworkDeviceAttachment) MaximumTransmissionUnit() int { + rv := objc.Call[int](f_, objc.Sel("maximumTransmissionUnit")) + return rv +} + +// An integer value that indicates the maximum transmission unit (MTU) associated with this attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment/3969266-maximumtransmissionunit?language=objc +func (f_ FileHandleNetworkDeviceAttachment) SetMaximumTransmissionUnit(value int) { + objc.Call[objc.Void](f_, objc.Sel("setMaximumTransmissionUnit:"), value) +} + +// The file handle assigned to this attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment/3656621-filehandle?language=objc +func (f_ FileHandleNetworkDeviceAttachment) FileHandle() foundation.FileHandle { + rv := objc.Call[foundation.FileHandle](f_, objc.Sel("fileHandle")) + return rv +} diff --git a/macos/virtualization/file_handle_serial_port_attachment.gen.go b/macos/virtualization/file_handle_serial_port_attachment.gen.go new file mode 100644 index 00000000..16bc6430 --- /dev/null +++ b/macos/virtualization/file_handle_serial_port_attachment.gen.go @@ -0,0 +1,87 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [FileHandleSerialPortAttachment] class. +var FileHandleSerialPortAttachmentClass = _FileHandleSerialPortAttachmentClass{objc.GetClass("VZFileHandleSerialPortAttachment")} + +type _FileHandleSerialPortAttachmentClass struct { + objc.Class +} + +// An interface definition for the [FileHandleSerialPortAttachment] class. +type IFileHandleSerialPortAttachment interface { + ISerialPortAttachment + FileHandleForWriting() foundation.FileHandle + FileHandleForReading() foundation.FileHandle +} + +// An attachment point that allows bidirectional communication using file handles. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandleserialportattachment?language=objc +type FileHandleSerialPortAttachment struct { + SerialPortAttachment +} + +func FileHandleSerialPortAttachmentFrom(ptr unsafe.Pointer) FileHandleSerialPortAttachment { + return FileHandleSerialPortAttachment{ + SerialPortAttachment: SerialPortAttachmentFrom(ptr), + } +} + +func (f_ FileHandleSerialPortAttachment) InitWithFileHandleForReadingFileHandleForWriting(fileHandleForReading foundation.IFileHandle, fileHandleForWriting foundation.IFileHandle) FileHandleSerialPortAttachment { + rv := objc.Call[FileHandleSerialPortAttachment](f_, objc.Sel("initWithFileHandleForReading:fileHandleForWriting:"), fileHandleForReading, fileHandleForWriting) + return rv +} + +// Creates a serial port attachment object from the specified file handles. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandleserialportattachment/3656626-initwithfilehandleforreading?language=objc +func NewFileHandleSerialPortAttachmentWithFileHandleForReadingFileHandleForWriting(fileHandleForReading foundation.IFileHandle, fileHandleForWriting foundation.IFileHandle) FileHandleSerialPortAttachment { + instance := FileHandleSerialPortAttachmentClass.Alloc().InitWithFileHandleForReadingFileHandleForWriting(fileHandleForReading, fileHandleForWriting) + instance.Autorelease() + return instance +} + +func (fc _FileHandleSerialPortAttachmentClass) Alloc() FileHandleSerialPortAttachment { + rv := objc.Call[FileHandleSerialPortAttachment](fc, objc.Sel("alloc")) + return rv +} + +func (fc _FileHandleSerialPortAttachmentClass) New() FileHandleSerialPortAttachment { + rv := objc.Call[FileHandleSerialPortAttachment](fc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewFileHandleSerialPortAttachment() FileHandleSerialPortAttachment { + return FileHandleSerialPortAttachmentClass.New() +} + +func (f_ FileHandleSerialPortAttachment) Init() FileHandleSerialPortAttachment { + rv := objc.Call[FileHandleSerialPortAttachment](f_, objc.Sel("init")) + return rv +} + +// The file handle that the guest operating system uses to write data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandleserialportattachment/3656625-filehandleforwriting?language=objc +func (f_ FileHandleSerialPortAttachment) FileHandleForWriting() foundation.FileHandle { + rv := objc.Call[foundation.FileHandle](f_, objc.Sel("fileHandleForWriting")) + return rv +} + +// The file handle that the guest operating system uses to read data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfilehandleserialportattachment/3656624-filehandleforreading?language=objc +func (f_ FileHandleSerialPortAttachment) FileHandleForReading() foundation.FileHandle { + rv := objc.Call[foundation.FileHandle](f_, objc.Sel("fileHandleForReading")) + return rv +} diff --git a/macos/virtualization/file_serial_port_attachment.gen.go b/macos/virtualization/file_serial_port_attachment.gen.go new file mode 100644 index 00000000..6f803900 --- /dev/null +++ b/macos/virtualization/file_serial_port_attachment.gen.go @@ -0,0 +1,87 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [FileSerialPortAttachment] class. +var FileSerialPortAttachmentClass = _FileSerialPortAttachmentClass{objc.GetClass("VZFileSerialPortAttachment")} + +type _FileSerialPortAttachmentClass struct { + objc.Class +} + +// An interface definition for the [FileSerialPortAttachment] class. +type IFileSerialPortAttachment interface { + ISerialPortAttachment + URL() foundation.URL + Append() bool +} + +// An attachment point that writes data from the guest system to a file. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfileserialportattachment?language=objc +type FileSerialPortAttachment struct { + SerialPortAttachment +} + +func FileSerialPortAttachmentFrom(ptr unsafe.Pointer) FileSerialPortAttachment { + return FileSerialPortAttachment{ + SerialPortAttachment: SerialPortAttachmentFrom(ptr), + } +} + +func (f_ FileSerialPortAttachment) InitWithURLAppendError(url foundation.IURL, shouldAppend bool, error unsafe.Pointer) FileSerialPortAttachment { + rv := objc.Call[FileSerialPortAttachment](f_, objc.Sel("initWithURL:append:error:"), url, shouldAppend, error) + return rv +} + +// Creates a file-based serial port attachment object. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfileserialportattachment/3656630-initwithurl?language=objc +func NewFileSerialPortAttachmentWithURLAppendError(url foundation.IURL, shouldAppend bool, error unsafe.Pointer) FileSerialPortAttachment { + instance := FileSerialPortAttachmentClass.Alloc().InitWithURLAppendError(url, shouldAppend, error) + instance.Autorelease() + return instance +} + +func (fc _FileSerialPortAttachmentClass) Alloc() FileSerialPortAttachment { + rv := objc.Call[FileSerialPortAttachment](fc, objc.Sel("alloc")) + return rv +} + +func (fc _FileSerialPortAttachmentClass) New() FileSerialPortAttachment { + rv := objc.Call[FileSerialPortAttachment](fc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewFileSerialPortAttachment() FileSerialPortAttachment { + return FileSerialPortAttachmentClass.New() +} + +func (f_ FileSerialPortAttachment) Init() FileSerialPortAttachment { + rv := objc.Call[FileSerialPortAttachment](f_, objc.Sel("init")) + return rv +} + +// The URL of a file on the local file system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfileserialportattachment/3656628-url?language=objc +func (f_ FileSerialPortAttachment) URL() foundation.URL { + rv := objc.Call[foundation.URL](f_, objc.Sel("URL")) + return rv +} + +// A Boolean that indicates whether the virtual machine appends data to the file. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzfileserialportattachment/3656629-append?language=objc +func (f_ FileSerialPortAttachment) Append() bool { + rv := objc.Call[bool](f_, objc.Sel("append")) + return rv +} diff --git a/macos/virtualization/generic_machine_identifier.gen.go b/macos/virtualization/generic_machine_identifier.gen.go new file mode 100644 index 00000000..0460d932 --- /dev/null +++ b/macos/virtualization/generic_machine_identifier.gen.go @@ -0,0 +1,77 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [GenericMachineIdentifier] class. +var GenericMachineIdentifierClass = _GenericMachineIdentifierClass{objc.GetClass("VZGenericMachineIdentifier")} + +type _GenericMachineIdentifierClass struct { + objc.Class +} + +// An interface definition for the [GenericMachineIdentifier] class. +type IGenericMachineIdentifier interface { + objc.IObject + DataRepresentation() []byte +} + +// An object that represents a unique identifier for a virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgenericmachineidentifier?language=objc +type GenericMachineIdentifier struct { + objc.Object +} + +func GenericMachineIdentifierFrom(ptr unsafe.Pointer) GenericMachineIdentifier { + return GenericMachineIdentifier{ + Object: objc.ObjectFrom(ptr), + } +} + +func (g_ GenericMachineIdentifier) Init() GenericMachineIdentifier { + rv := objc.Call[GenericMachineIdentifier](g_, objc.Sel("init")) + return rv +} + +func (g_ GenericMachineIdentifier) InitWithDataRepresentation(dataRepresentation []byte) GenericMachineIdentifier { + rv := objc.Call[GenericMachineIdentifier](g_, objc.Sel("initWithDataRepresentation:"), dataRepresentation) + return rv +} + +// Creates a new unique identifier for a VM with the provided data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgenericmachineidentifier/3969270-initwithdatarepresentation?language=objc +func NewGenericMachineIdentifierWithDataRepresentation(dataRepresentation []byte) GenericMachineIdentifier { + instance := GenericMachineIdentifierClass.Alloc().InitWithDataRepresentation(dataRepresentation) + instance.Autorelease() + return instance +} + +func (gc _GenericMachineIdentifierClass) Alloc() GenericMachineIdentifier { + rv := objc.Call[GenericMachineIdentifier](gc, objc.Sel("alloc")) + return rv +} + +func (gc _GenericMachineIdentifierClass) New() GenericMachineIdentifier { + rv := objc.Call[GenericMachineIdentifier](gc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewGenericMachineIdentifier() GenericMachineIdentifier { + return GenericMachineIdentifierClass.New() +} + +// An opaque data representation of the VM’s identifier. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgenericmachineidentifier/3969268-datarepresentation?language=objc +func (g_ GenericMachineIdentifier) DataRepresentation() []byte { + rv := objc.Call[[]byte](g_, objc.Sel("dataRepresentation")) + return rv +} diff --git a/macos/virtualization/generic_platform_configuration.gen.go b/macos/virtualization/generic_platform_configuration.gen.go new file mode 100644 index 00000000..82ba545e --- /dev/null +++ b/macos/virtualization/generic_platform_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [GenericPlatformConfiguration] class. +var GenericPlatformConfigurationClass = _GenericPlatformConfigurationClass{objc.GetClass("VZGenericPlatformConfiguration")} + +type _GenericPlatformConfigurationClass struct { + objc.Class +} + +// An interface definition for the [GenericPlatformConfiguration] class. +type IGenericPlatformConfiguration interface { + IPlatformConfiguration + MachineIdentifier() GenericMachineIdentifier + SetMachineIdentifier(value IGenericMachineIdentifier) +} + +// The platform configuration for a generic Intel or ARM virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgenericplatformconfiguration?language=objc +type GenericPlatformConfiguration struct { + PlatformConfiguration +} + +func GenericPlatformConfigurationFrom(ptr unsafe.Pointer) GenericPlatformConfiguration { + return GenericPlatformConfiguration{ + PlatformConfiguration: PlatformConfigurationFrom(ptr), + } +} + +func (g_ GenericPlatformConfiguration) Init() GenericPlatformConfiguration { + rv := objc.Call[GenericPlatformConfiguration](g_, objc.Sel("init")) + return rv +} + +func (gc _GenericPlatformConfigurationClass) Alloc() GenericPlatformConfiguration { + rv := objc.Call[GenericPlatformConfiguration](gc, objc.Sel("alloc")) + return rv +} + +func (gc _GenericPlatformConfigurationClass) New() GenericPlatformConfiguration { + rv := objc.Call[GenericPlatformConfiguration](gc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewGenericPlatformConfiguration() GenericPlatformConfiguration { + return GenericPlatformConfigurationClass.New() +} + +// A value that represents a unique identifier for the virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgenericplatformconfiguration/3969271-machineidentifier?language=objc +func (g_ GenericPlatformConfiguration) MachineIdentifier() GenericMachineIdentifier { + rv := objc.Call[GenericMachineIdentifier](g_, objc.Sel("machineIdentifier")) + return rv +} + +// A value that represents a unique identifier for the virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgenericplatformconfiguration/3969271-machineidentifier?language=objc +func (g_ GenericPlatformConfiguration) SetMachineIdentifier(value IGenericMachineIdentifier) { + objc.Call[objc.Void](g_, objc.Sel("setMachineIdentifier:"), value) +} diff --git a/macos/virtualization/graphics_device.gen.go b/macos/virtualization/graphics_device.gen.go new file mode 100644 index 00000000..0c85b4b3 --- /dev/null +++ b/macos/virtualization/graphics_device.gen.go @@ -0,0 +1,63 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [GraphicsDevice] class. +var GraphicsDeviceClass = _GraphicsDeviceClass{objc.GetClass("VZGraphicsDevice")} + +type _GraphicsDeviceClass struct { + objc.Class +} + +// An interface definition for the [GraphicsDevice] class. +type IGraphicsDevice interface { + objc.IObject + Displays() []GraphicsDisplay +} + +// A class that represents a graphics device in a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdevice?language=objc +type GraphicsDevice struct { + objc.Object +} + +func GraphicsDeviceFrom(ptr unsafe.Pointer) GraphicsDevice { + return GraphicsDevice{ + Object: objc.ObjectFrom(ptr), + } +} + +func (gc _GraphicsDeviceClass) Alloc() GraphicsDevice { + rv := objc.Call[GraphicsDevice](gc, objc.Sel("alloc")) + return rv +} + +func (gc _GraphicsDeviceClass) New() GraphicsDevice { + rv := objc.Call[GraphicsDevice](gc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewGraphicsDevice() GraphicsDevice { + return GraphicsDeviceClass.New() +} + +func (g_ GraphicsDevice) Init() GraphicsDevice { + rv := objc.Call[GraphicsDevice](g_, objc.Sel("init")) + return rv +} + +// The list of graphics displays configured for this graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdevice/4168486-displays?language=objc +func (g_ GraphicsDevice) Displays() []GraphicsDisplay { + rv := objc.Call[[]GraphicsDisplay](g_, objc.Sel("displays")) + return rv +} diff --git a/macos/virtualization/graphics_device_configuration.gen.go b/macos/virtualization/graphics_device_configuration.gen.go new file mode 100644 index 00000000..f39610b5 --- /dev/null +++ b/macos/virtualization/graphics_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [GraphicsDeviceConfiguration] class. +var GraphicsDeviceConfigurationClass = _GraphicsDeviceConfigurationClass{objc.GetClass("VZGraphicsDeviceConfiguration")} + +type _GraphicsDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [GraphicsDeviceConfiguration] class. +type IGraphicsDeviceConfiguration interface { + objc.IObject +} + +// The base class for a graphics device configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdeviceconfiguration?language=objc +type GraphicsDeviceConfiguration struct { + objc.Object +} + +func GraphicsDeviceConfigurationFrom(ptr unsafe.Pointer) GraphicsDeviceConfiguration { + return GraphicsDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (gc _GraphicsDeviceConfigurationClass) Alloc() GraphicsDeviceConfiguration { + rv := objc.Call[GraphicsDeviceConfiguration](gc, objc.Sel("alloc")) + return rv +} + +func (gc _GraphicsDeviceConfigurationClass) New() GraphicsDeviceConfiguration { + rv := objc.Call[GraphicsDeviceConfiguration](gc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewGraphicsDeviceConfiguration() GraphicsDeviceConfiguration { + return GraphicsDeviceConfigurationClass.New() +} + +func (g_ GraphicsDeviceConfiguration) Init() GraphicsDeviceConfiguration { + rv := objc.Call[GraphicsDeviceConfiguration](g_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/graphics_display.gen.go b/macos/virtualization/graphics_display.gen.go new file mode 100644 index 00000000..ad2155af --- /dev/null +++ b/macos/virtualization/graphics_display.gen.go @@ -0,0 +1,116 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/coregraphics" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [GraphicsDisplay] class. +var GraphicsDisplayClass = _GraphicsDisplayClass{objc.GetClass("VZGraphicsDisplay")} + +type _GraphicsDisplayClass struct { + objc.Class +} + +// An interface definition for the [GraphicsDisplay] class. +type IGraphicsDisplay interface { + objc.IObject + ReconfigureWithSizeInPixelsError(sizeInPixels coregraphics.Size, error unsafe.Pointer) bool + ReconfigureWithConfigurationError(configuration IGraphicsDisplayConfiguration, error unsafe.Pointer) bool + RemoveObserver(observer PGraphicsDisplayObserver) + RemoveObserverObject(observerObject objc.IObject) + AddObserver(observer PGraphicsDisplayObserver) + AddObserverObject(observerObject objc.IObject) + SizeInPixels() coregraphics.Size +} + +// A class that represents a graphics display in a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay?language=objc +type GraphicsDisplay struct { + objc.Object +} + +func GraphicsDisplayFrom(ptr unsafe.Pointer) GraphicsDisplay { + return GraphicsDisplay{ + Object: objc.ObjectFrom(ptr), + } +} + +func (gc _GraphicsDisplayClass) Alloc() GraphicsDisplay { + rv := objc.Call[GraphicsDisplay](gc, objc.Sel("alloc")) + return rv +} + +func (gc _GraphicsDisplayClass) New() GraphicsDisplay { + rv := objc.Call[GraphicsDisplay](gc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewGraphicsDisplay() GraphicsDisplay { + return GraphicsDisplayClass.New() +} + +func (g_ GraphicsDisplay) Init() GraphicsDisplay { + rv := objc.Call[GraphicsDisplay](g_, objc.Sel("init")) + return rv +} + +// Resize this display with the new dimensions you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168490-reconfigurewithsizeinpixels?language=objc +func (g_ GraphicsDisplay) ReconfigureWithSizeInPixelsError(sizeInPixels coregraphics.Size, error unsafe.Pointer) bool { + rv := objc.Call[bool](g_, objc.Sel("reconfigureWithSizeInPixels:error:"), sizeInPixels, error) + return rv +} + +// Reconfigure this display with the new display configuration you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168489-reconfigurewithconfiguration?language=objc +func (g_ GraphicsDisplay) ReconfigureWithConfigurationError(configuration IGraphicsDisplayConfiguration, error unsafe.Pointer) bool { + rv := objc.Call[bool](g_, objc.Sel("reconfigureWithConfiguration:error:"), configuration, error) + return rv +} + +// Removes a display configuration change observer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168491-removeobserver?language=objc +func (g_ GraphicsDisplay) RemoveObserver(observer PGraphicsDisplayObserver) { + po0 := objc.WrapAsProtocol("VZGraphicsDisplayObserver", observer) + objc.Call[objc.Void](g_, objc.Sel("removeObserver:"), po0) +} + +// Removes a display configuration change observer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168491-removeobserver?language=objc +func (g_ GraphicsDisplay) RemoveObserverObject(observerObject objc.IObject) { + objc.Call[objc.Void](g_, objc.Sel("removeObserver:"), observerObject) +} + +// Adds an observer to notify about display configuration changes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168488-addobserver?language=objc +func (g_ GraphicsDisplay) AddObserver(observer PGraphicsDisplayObserver) { + po0 := objc.WrapAsProtocol("VZGraphicsDisplayObserver", observer) + objc.Call[objc.Void](g_, objc.Sel("addObserver:"), po0) +} + +// Adds an observer to notify about display configuration changes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168488-addobserver?language=objc +func (g_ GraphicsDisplay) AddObserverObject(observerObject objc.IObject) { + objc.Call[objc.Void](g_, objc.Sel("addObserver:"), observerObject) +} + +// Returns the size of the display, in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplay/4168492-sizeinpixels?language=objc +func (g_ GraphicsDisplay) SizeInPixels() coregraphics.Size { + rv := objc.Call[coregraphics.Size](g_, objc.Sel("sizeInPixels")) + return rv +} diff --git a/macos/virtualization/graphics_display_configuration.gen.go b/macos/virtualization/graphics_display_configuration.gen.go new file mode 100644 index 00000000..784320cf --- /dev/null +++ b/macos/virtualization/graphics_display_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [GraphicsDisplayConfiguration] class. +var GraphicsDisplayConfigurationClass = _GraphicsDisplayConfigurationClass{objc.GetClass("VZGraphicsDisplayConfiguration")} + +type _GraphicsDisplayConfigurationClass struct { + objc.Class +} + +// An interface definition for the [GraphicsDisplayConfiguration] class. +type IGraphicsDisplayConfiguration interface { + objc.IObject +} + +// The base class for a graphics display configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplayconfiguration?language=objc +type GraphicsDisplayConfiguration struct { + objc.Object +} + +func GraphicsDisplayConfigurationFrom(ptr unsafe.Pointer) GraphicsDisplayConfiguration { + return GraphicsDisplayConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (gc _GraphicsDisplayConfigurationClass) Alloc() GraphicsDisplayConfiguration { + rv := objc.Call[GraphicsDisplayConfiguration](gc, objc.Sel("alloc")) + return rv +} + +func (gc _GraphicsDisplayConfigurationClass) New() GraphicsDisplayConfiguration { + rv := objc.Call[GraphicsDisplayConfiguration](gc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewGraphicsDisplayConfiguration() GraphicsDisplayConfiguration { + return GraphicsDisplayConfigurationClass.New() +} + +func (g_ GraphicsDisplayConfiguration) Init() GraphicsDisplayConfiguration { + rv := objc.Call[GraphicsDisplayConfiguration](g_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/graphics_display_observer_protocol.gen.go b/macos/virtualization/graphics_display_observer_protocol.gen.go new file mode 100644 index 00000000..7e511019 --- /dev/null +++ b/macos/virtualization/graphics_display_observer_protocol.gen.go @@ -0,0 +1,50 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "github.com/progrium/darwinkit/objc" +) + +// A protocol you implement to observe state changes in graphic displays. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplayobserver?language=objc +type PGraphicsDisplayObserver interface { + // optional + DisplayDidBeginReconfiguration(display GraphicsDisplay) + HasDisplayDidBeginReconfiguration() bool + + // optional + DisplayDidEndReconfiguration(display GraphicsDisplay) + HasDisplayDidEndReconfiguration() bool +} + +// ensure impl type implements protocol interface +var _ PGraphicsDisplayObserver = (*GraphicsDisplayObserverObject)(nil) + +// A concrete type for the [PGraphicsDisplayObserver] protocol. +type GraphicsDisplayObserverObject struct { + objc.Object +} + +func (g_ GraphicsDisplayObserverObject) HasDisplayDidBeginReconfiguration() bool { + return g_.RespondsToSelector(objc.Sel("displayDidBeginReconfiguration:")) +} + +// The method the framework calls when the reconfiguration operation has begun. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplayobserver/4168494-displaydidbeginreconfiguration?language=objc +func (g_ GraphicsDisplayObserverObject) DisplayDidBeginReconfiguration(display GraphicsDisplay) { + objc.Call[objc.Void](g_, objc.Sel("displayDidBeginReconfiguration:"), display) +} + +func (g_ GraphicsDisplayObserverObject) HasDisplayDidEndReconfiguration() bool { + return g_.RespondsToSelector(objc.Sel("displayDidEndReconfiguration:")) +} + +// The method the framework calls when the reconfiguration operation ends. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzgraphicsdisplayobserver/4168495-displaydidendreconfiguration?language=objc +func (g_ GraphicsDisplayObserverObject) DisplayDidEndReconfiguration(display GraphicsDisplay) { + objc.Call[objc.Void](g_, objc.Sel("displayDidEndReconfiguration:"), display) +} diff --git a/macos/virtualization/host_audio_input_stream_source.gen.go b/macos/virtualization/host_audio_input_stream_source.gen.go new file mode 100644 index 00000000..a8082612 --- /dev/null +++ b/macos/virtualization/host_audio_input_stream_source.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [HostAudioInputStreamSource] class. +var HostAudioInputStreamSourceClass = _HostAudioInputStreamSourceClass{objc.GetClass("VZHostAudioInputStreamSource")} + +type _HostAudioInputStreamSourceClass struct { + objc.Class +} + +// An interface definition for the [HostAudioInputStreamSource] class. +type IHostAudioInputStreamSource interface { + IAudioInputStreamSource +} + +// The host audio input stream source that provides audio from the host system’s default input device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzhostaudioinputstreamsource?language=objc +type HostAudioInputStreamSource struct { + AudioInputStreamSource +} + +func HostAudioInputStreamSourceFrom(ptr unsafe.Pointer) HostAudioInputStreamSource { + return HostAudioInputStreamSource{ + AudioInputStreamSource: AudioInputStreamSourceFrom(ptr), + } +} + +func (h_ HostAudioInputStreamSource) Init() HostAudioInputStreamSource { + rv := objc.Call[HostAudioInputStreamSource](h_, objc.Sel("init")) + return rv +} + +func (hc _HostAudioInputStreamSourceClass) Alloc() HostAudioInputStreamSource { + rv := objc.Call[HostAudioInputStreamSource](hc, objc.Sel("alloc")) + return rv +} + +func (hc _HostAudioInputStreamSourceClass) New() HostAudioInputStreamSource { + rv := objc.Call[HostAudioInputStreamSource](hc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewHostAudioInputStreamSource() HostAudioInputStreamSource { + return HostAudioInputStreamSourceClass.New() +} diff --git a/macos/virtualization/host_audio_output_stream_sink.gen.go b/macos/virtualization/host_audio_output_stream_sink.gen.go new file mode 100644 index 00000000..70bdf486 --- /dev/null +++ b/macos/virtualization/host_audio_output_stream_sink.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [HostAudioOutputStreamSink] class. +var HostAudioOutputStreamSinkClass = _HostAudioOutputStreamSinkClass{objc.GetClass("VZHostAudioOutputStreamSink")} + +type _HostAudioOutputStreamSinkClass struct { + objc.Class +} + +// An interface definition for the [HostAudioOutputStreamSink] class. +type IHostAudioOutputStreamSink interface { + IAudioOutputStreamSink +} + +// Host audio output stream sink plays audio to the host system’s default output device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzhostaudiooutputstreamsink?language=objc +type HostAudioOutputStreamSink struct { + AudioOutputStreamSink +} + +func HostAudioOutputStreamSinkFrom(ptr unsafe.Pointer) HostAudioOutputStreamSink { + return HostAudioOutputStreamSink{ + AudioOutputStreamSink: AudioOutputStreamSinkFrom(ptr), + } +} + +func (h_ HostAudioOutputStreamSink) Init() HostAudioOutputStreamSink { + rv := objc.Call[HostAudioOutputStreamSink](h_, objc.Sel("init")) + return rv +} + +func (hc _HostAudioOutputStreamSinkClass) Alloc() HostAudioOutputStreamSink { + rv := objc.Call[HostAudioOutputStreamSink](hc, objc.Sel("alloc")) + return rv +} + +func (hc _HostAudioOutputStreamSinkClass) New() HostAudioOutputStreamSink { + rv := objc.Call[HostAudioOutputStreamSink](hc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewHostAudioOutputStreamSink() HostAudioOutputStreamSink { + return HostAudioOutputStreamSinkClass.New() +} diff --git a/macos/virtualization/keyboard_configuration.gen.go b/macos/virtualization/keyboard_configuration.gen.go new file mode 100644 index 00000000..e6038378 --- /dev/null +++ b/macos/virtualization/keyboard_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [KeyboardConfiguration] class. +var KeyboardConfigurationClass = _KeyboardConfigurationClass{objc.GetClass("VZKeyboardConfiguration")} + +type _KeyboardConfigurationClass struct { + objc.Class +} + +// An interface definition for the [KeyboardConfiguration] class. +type IKeyboardConfiguration interface { + objc.IObject +} + +// The base class for a configuring a keyboard. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzkeyboardconfiguration?language=objc +type KeyboardConfiguration struct { + objc.Object +} + +func KeyboardConfigurationFrom(ptr unsafe.Pointer) KeyboardConfiguration { + return KeyboardConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (kc _KeyboardConfigurationClass) Alloc() KeyboardConfiguration { + rv := objc.Call[KeyboardConfiguration](kc, objc.Sel("alloc")) + return rv +} + +func (kc _KeyboardConfigurationClass) New() KeyboardConfiguration { + rv := objc.Call[KeyboardConfiguration](kc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewKeyboardConfiguration() KeyboardConfiguration { + return KeyboardConfigurationClass.New() +} + +func (k_ KeyboardConfiguration) Init() KeyboardConfiguration { + rv := objc.Call[KeyboardConfiguration](k_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/linux_boot_loader.gen.go b/macos/virtualization/linux_boot_loader.gen.go new file mode 100644 index 00000000..b756e2bf --- /dev/null +++ b/macos/virtualization/linux_boot_loader.gen.go @@ -0,0 +1,120 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [LinuxBootLoader] class. +var LinuxBootLoaderClass = _LinuxBootLoaderClass{objc.GetClass("VZLinuxBootLoader")} + +type _LinuxBootLoaderClass struct { + objc.Class +} + +// An interface definition for the [LinuxBootLoader] class. +type ILinuxBootLoader interface { + IBootLoader + InitialRamdiskURL() foundation.URL + SetInitialRamdiskURL(value foundation.IURL) + CommandLine() string + SetCommandLine(value string) + KernelURL() foundation.URL + SetKernelURL(value foundation.IURL) +} + +// An object that loads and configures a Linux kernel as the guest system of your VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader?language=objc +type LinuxBootLoader struct { + BootLoader +} + +func LinuxBootLoaderFrom(ptr unsafe.Pointer) LinuxBootLoader { + return LinuxBootLoader{ + BootLoader: BootLoaderFrom(ptr), + } +} + +func (l_ LinuxBootLoader) InitWithKernelURL(kernelURL foundation.IURL) LinuxBootLoader { + rv := objc.Call[LinuxBootLoader](l_, objc.Sel("initWithKernelURL:"), kernelURL) + return rv +} + +// Creates a boot loader that launches the Linux kernel at the specified URL. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656633-initwithkernelurl?language=objc +func NewLinuxBootLoaderWithKernelURL(kernelURL foundation.IURL) LinuxBootLoader { + instance := LinuxBootLoaderClass.Alloc().InitWithKernelURL(kernelURL) + instance.Autorelease() + return instance +} + +func (lc _LinuxBootLoaderClass) Alloc() LinuxBootLoader { + rv := objc.Call[LinuxBootLoader](lc, objc.Sel("alloc")) + return rv +} + +func (lc _LinuxBootLoaderClass) New() LinuxBootLoader { + rv := objc.Call[LinuxBootLoader](lc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewLinuxBootLoader() LinuxBootLoader { + return LinuxBootLoaderClass.New() +} + +func (l_ LinuxBootLoader) Init() LinuxBootLoader { + rv := objc.Call[LinuxBootLoader](l_, objc.Sel("init")) + return rv +} + +// The location of an optional RAM disk, which the boot loader maps into memory before it boots the Linux kernel. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656634-initialramdiskurl?language=objc +func (l_ LinuxBootLoader) InitialRamdiskURL() foundation.URL { + rv := objc.Call[foundation.URL](l_, objc.Sel("initialRamdiskURL")) + return rv +} + +// The location of an optional RAM disk, which the boot loader maps into memory before it boots the Linux kernel. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656634-initialramdiskurl?language=objc +func (l_ LinuxBootLoader) SetInitialRamdiskURL(value foundation.IURL) { + objc.Call[objc.Void](l_, objc.Sel("setInitialRamdiskURL:"), value) +} + +// The command-line parameters to pass to the Linux kernel at boot time. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656632-commandline?language=objc +func (l_ LinuxBootLoader) CommandLine() string { + rv := objc.Call[string](l_, objc.Sel("commandLine")) + return rv +} + +// The command-line parameters to pass to the Linux kernel at boot time. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656632-commandline?language=objc +func (l_ LinuxBootLoader) SetCommandLine(value string) { + objc.Call[objc.Void](l_, objc.Sel("setCommandLine:"), value) +} + +// The URL of the Linux kernel file. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656635-kernelurl?language=objc +func (l_ LinuxBootLoader) KernelURL() foundation.URL { + rv := objc.Call[foundation.URL](l_, objc.Sel("kernelURL")) + return rv +} + +// The URL of the Linux kernel file. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxbootloader/3656635-kernelurl?language=objc +func (l_ LinuxBootLoader) SetKernelURL(value foundation.IURL) { + objc.Call[objc.Void](l_, objc.Sel("setKernelURL:"), value) +} diff --git a/macos/virtualization/linux_rosetta_abstract_socket_caching_options.gen.go b/macos/virtualization/linux_rosetta_abstract_socket_caching_options.gen.go new file mode 100644 index 00000000..d611c8e3 --- /dev/null +++ b/macos/virtualization/linux_rosetta_abstract_socket_caching_options.gen.go @@ -0,0 +1,92 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [LinuxRosettaAbstractSocketCachingOptions] class. +var LinuxRosettaAbstractSocketCachingOptionsClass = _LinuxRosettaAbstractSocketCachingOptionsClass{objc.GetClass("VZLinuxRosettaAbstractSocketCachingOptions")} + +type _LinuxRosettaAbstractSocketCachingOptionsClass struct { + objc.Class +} + +// An interface definition for the [LinuxRosettaAbstractSocketCachingOptions] class. +type ILinuxRosettaAbstractSocketCachingOptions interface { + ILinuxRosettaCachingOptions + Name() string +} + +// Caching options for an abstract socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaabstractsocketcachingoptions?language=objc +type LinuxRosettaAbstractSocketCachingOptions struct { + LinuxRosettaCachingOptions +} + +func LinuxRosettaAbstractSocketCachingOptionsFrom(ptr unsafe.Pointer) LinuxRosettaAbstractSocketCachingOptions { + return LinuxRosettaAbstractSocketCachingOptions{ + LinuxRosettaCachingOptions: LinuxRosettaCachingOptionsFrom(ptr), + } +} + +func (l_ LinuxRosettaAbstractSocketCachingOptions) InitWithNameError(name string, error unsafe.Pointer) LinuxRosettaAbstractSocketCachingOptions { + rv := objc.Call[LinuxRosettaAbstractSocketCachingOptions](l_, objc.Sel("initWithName:error:"), name, error) + return rv +} + +// Initialize options to set on a Rosetta directory share. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaabstractsocketcachingoptions/4230672-initwithname?language=objc +func NewLinuxRosettaAbstractSocketCachingOptionsWithNameError(name string, error unsafe.Pointer) LinuxRosettaAbstractSocketCachingOptions { + instance := LinuxRosettaAbstractSocketCachingOptionsClass.Alloc().InitWithNameError(name, error) + instance.Autorelease() + return instance +} + +func (lc _LinuxRosettaAbstractSocketCachingOptionsClass) Alloc() LinuxRosettaAbstractSocketCachingOptions { + rv := objc.Call[LinuxRosettaAbstractSocketCachingOptions](lc, objc.Sel("alloc")) + return rv +} + +func (lc _LinuxRosettaAbstractSocketCachingOptionsClass) New() LinuxRosettaAbstractSocketCachingOptions { + rv := objc.Call[LinuxRosettaAbstractSocketCachingOptions](lc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewLinuxRosettaAbstractSocketCachingOptions() LinuxRosettaAbstractSocketCachingOptions { + return LinuxRosettaAbstractSocketCachingOptionsClass.New() +} + +func (l_ LinuxRosettaAbstractSocketCachingOptions) Init() LinuxRosettaAbstractSocketCachingOptions { + rv := objc.Call[LinuxRosettaAbstractSocketCachingOptions](l_, objc.Sel("init")) + return rv +} + +// The name of the abstract socket that Rosetta uses. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaabstractsocketcachingoptions/4230674-name?language=objc +func (l_ LinuxRosettaAbstractSocketCachingOptions) Name() string { + rv := objc.Call[string](l_, objc.Sel("name")) + return rv +} + +// The maximum length of name that the framework allows. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaabstractsocketcachingoptions/4230673-maximumnamelength?language=objc +func (lc _LinuxRosettaAbstractSocketCachingOptionsClass) MaximumNameLength() uint { + rv := objc.Call[uint](lc, objc.Sel("maximumNameLength")) + return rv +} + +// The maximum length of name that the framework allows. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaabstractsocketcachingoptions/4230673-maximumnamelength?language=objc +func LinuxRosettaAbstractSocketCachingOptions_MaximumNameLength() uint { + return LinuxRosettaAbstractSocketCachingOptionsClass.MaximumNameLength() +} diff --git a/macos/virtualization/linux_rosetta_caching_options.gen.go b/macos/virtualization/linux_rosetta_caching_options.gen.go new file mode 100644 index 00000000..517c736e --- /dev/null +++ b/macos/virtualization/linux_rosetta_caching_options.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [LinuxRosettaCachingOptions] class. +var LinuxRosettaCachingOptionsClass = _LinuxRosettaCachingOptionsClass{objc.GetClass("VZLinuxRosettaCachingOptions")} + +type _LinuxRosettaCachingOptionsClass struct { + objc.Class +} + +// An interface definition for the [LinuxRosettaCachingOptions] class. +type ILinuxRosettaCachingOptions interface { + objc.IObject +} + +// An abstract class that defines UNIX socket-based caching options for Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettacachingoptions?language=objc +type LinuxRosettaCachingOptions struct { + objc.Object +} + +func LinuxRosettaCachingOptionsFrom(ptr unsafe.Pointer) LinuxRosettaCachingOptions { + return LinuxRosettaCachingOptions{ + Object: objc.ObjectFrom(ptr), + } +} + +func (lc _LinuxRosettaCachingOptionsClass) Alloc() LinuxRosettaCachingOptions { + rv := objc.Call[LinuxRosettaCachingOptions](lc, objc.Sel("alloc")) + return rv +} + +func (lc _LinuxRosettaCachingOptionsClass) New() LinuxRosettaCachingOptions { + rv := objc.Call[LinuxRosettaCachingOptions](lc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewLinuxRosettaCachingOptions() LinuxRosettaCachingOptions { + return LinuxRosettaCachingOptionsClass.New() +} + +func (l_ LinuxRosettaCachingOptions) Init() LinuxRosettaCachingOptions { + rv := objc.Call[LinuxRosettaCachingOptions](l_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/linux_rosetta_directory_share.gen.go b/macos/virtualization/linux_rosetta_directory_share.gen.go new file mode 100644 index 00000000..6b27be34 --- /dev/null +++ b/macos/virtualization/linux_rosetta_directory_share.gen.go @@ -0,0 +1,115 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [LinuxRosettaDirectoryShare] class. +var LinuxRosettaDirectoryShareClass = _LinuxRosettaDirectoryShareClass{objc.GetClass("VZLinuxRosettaDirectoryShare")} + +type _LinuxRosettaDirectoryShareClass struct { + objc.Class +} + +// An interface definition for the [LinuxRosettaDirectoryShare] class. +type ILinuxRosettaDirectoryShare interface { + IDirectoryShare + Options() LinuxRosettaCachingOptions + SetOptions(value ILinuxRosettaCachingOptions) +} + +// The Linux directory share for Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare?language=objc +type LinuxRosettaDirectoryShare struct { + DirectoryShare +} + +func LinuxRosettaDirectoryShareFrom(ptr unsafe.Pointer) LinuxRosettaDirectoryShare { + return LinuxRosettaDirectoryShare{ + DirectoryShare: DirectoryShareFrom(ptr), + } +} + +func (l_ LinuxRosettaDirectoryShare) InitWithError(error unsafe.Pointer) LinuxRosettaDirectoryShare { + rv := objc.Call[LinuxRosettaDirectoryShare](l_, objc.Sel("initWithError:"), error) + return rv +} + +// Creates a new Rosetta directory share, or returns an error if Rosetta isn’t installed. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/3969278-initwitherror?language=objc +func NewLinuxRosettaDirectoryShareWithError(error unsafe.Pointer) LinuxRosettaDirectoryShare { + instance := LinuxRosettaDirectoryShareClass.Alloc().InitWithError(error) + instance.Autorelease() + return instance +} + +func (lc _LinuxRosettaDirectoryShareClass) Alloc() LinuxRosettaDirectoryShare { + rv := objc.Call[LinuxRosettaDirectoryShare](lc, objc.Sel("alloc")) + return rv +} + +func (lc _LinuxRosettaDirectoryShareClass) New() LinuxRosettaDirectoryShare { + rv := objc.Call[LinuxRosettaDirectoryShare](lc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewLinuxRosettaDirectoryShare() LinuxRosettaDirectoryShare { + return LinuxRosettaDirectoryShareClass.New() +} + +func (l_ LinuxRosettaDirectoryShare) Init() LinuxRosettaDirectoryShare { + rv := objc.Call[LinuxRosettaDirectoryShare](l_, objc.Sel("init")) + return rv +} + +// Starts the installation of Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/3994696-installrosettawithcompletionhand?language=objc +func (lc _LinuxRosettaDirectoryShareClass) InstallRosettaWithCompletionHandler(completionHandler func(arg0 foundation.Error)) { + objc.Call[objc.Void](lc, objc.Sel("installRosettaWithCompletionHandler:"), completionHandler) +} + +// Starts the installation of Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/3994696-installrosettawithcompletionhand?language=objc +func LinuxRosettaDirectoryShare_InstallRosettaWithCompletionHandler(completionHandler func(arg0 foundation.Error)) { + LinuxRosettaDirectoryShareClass.InstallRosettaWithCompletionHandler(completionHandler) +} + +// The value that enables translation caching and configures the socket communication type for Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/4230676-options?language=objc +func (l_ LinuxRosettaDirectoryShare) Options() LinuxRosettaCachingOptions { + rv := objc.Call[LinuxRosettaCachingOptions](l_, objc.Sel("options")) + return rv +} + +// The value that enables translation caching and configures the socket communication type for Rosetta. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/4230676-options?language=objc +func (l_ LinuxRosettaDirectoryShare) SetOptions(value ILinuxRosettaCachingOptions) { + objc.Call[objc.Void](l_, objc.Sel("setOptions:"), value) +} + +// A value that indicates the current state of Rosetta’s availability. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/3969277-availability?language=objc +func (lc _LinuxRosettaDirectoryShareClass) Availability() LinuxRosettaAvailability { + rv := objc.Call[LinuxRosettaAvailability](lc, objc.Sel("availability")) + return rv +} + +// A value that indicates the current state of Rosetta’s availability. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettadirectoryshare/3969277-availability?language=objc +func LinuxRosettaDirectoryShare_Availability() LinuxRosettaAvailability { + return LinuxRosettaDirectoryShareClass.Availability() +} diff --git a/macos/virtualization/linux_rosetta_unix_socket_caching_options.gen.go b/macos/virtualization/linux_rosetta_unix_socket_caching_options.gen.go new file mode 100644 index 00000000..a964afa4 --- /dev/null +++ b/macos/virtualization/linux_rosetta_unix_socket_caching_options.gen.go @@ -0,0 +1,92 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [LinuxRosettaUnixSocketCachingOptions] class. +var LinuxRosettaUnixSocketCachingOptionsClass = _LinuxRosettaUnixSocketCachingOptionsClass{objc.GetClass("VZLinuxRosettaUnixSocketCachingOptions")} + +type _LinuxRosettaUnixSocketCachingOptionsClass struct { + objc.Class +} + +// An interface definition for the [LinuxRosettaUnixSocketCachingOptions] class. +type ILinuxRosettaUnixSocketCachingOptions interface { + ILinuxRosettaCachingOptions + Path() string +} + +// An object that represents caching options for a UNIX domain socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaunixsocketcachingoptions?language=objc +type LinuxRosettaUnixSocketCachingOptions struct { + LinuxRosettaCachingOptions +} + +func LinuxRosettaUnixSocketCachingOptionsFrom(ptr unsafe.Pointer) LinuxRosettaUnixSocketCachingOptions { + return LinuxRosettaUnixSocketCachingOptions{ + LinuxRosettaCachingOptions: LinuxRosettaCachingOptionsFrom(ptr), + } +} + +func (l_ LinuxRosettaUnixSocketCachingOptions) InitWithPathError(path string, error unsafe.Pointer) LinuxRosettaUnixSocketCachingOptions { + rv := objc.Call[LinuxRosettaUnixSocketCachingOptions](l_, objc.Sel("initWithPath:error:"), path, error) + return rv +} + +// Creates a new Rosetta caching options object for a UNIX domain socket with the path you specify. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaunixsocketcachingoptions/4230679-initwithpath?language=objc +func NewLinuxRosettaUnixSocketCachingOptionsWithPathError(path string, error unsafe.Pointer) LinuxRosettaUnixSocketCachingOptions { + instance := LinuxRosettaUnixSocketCachingOptionsClass.Alloc().InitWithPathError(path, error) + instance.Autorelease() + return instance +} + +func (l_ LinuxRosettaUnixSocketCachingOptions) Init() LinuxRosettaUnixSocketCachingOptions { + rv := objc.Call[LinuxRosettaUnixSocketCachingOptions](l_, objc.Sel("init")) + return rv +} + +func (lc _LinuxRosettaUnixSocketCachingOptionsClass) Alloc() LinuxRosettaUnixSocketCachingOptions { + rv := objc.Call[LinuxRosettaUnixSocketCachingOptions](lc, objc.Sel("alloc")) + return rv +} + +func (lc _LinuxRosettaUnixSocketCachingOptionsClass) New() LinuxRosettaUnixSocketCachingOptions { + rv := objc.Call[LinuxRosettaUnixSocketCachingOptions](lc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewLinuxRosettaUnixSocketCachingOptions() LinuxRosettaUnixSocketCachingOptions { + return LinuxRosettaUnixSocketCachingOptionsClass.New() +} + +// The maximum allowed length of the path to the UNIX domain socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaunixsocketcachingoptions/4230680-maximumpathlength?language=objc +func (lc _LinuxRosettaUnixSocketCachingOptionsClass) MaximumPathLength() uint { + rv := objc.Call[uint](lc, objc.Sel("maximumPathLength")) + return rv +} + +// The maximum allowed length of the path to the UNIX domain socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaunixsocketcachingoptions/4230680-maximumpathlength?language=objc +func LinuxRosettaUnixSocketCachingOptions_MaximumPathLength() uint { + return LinuxRosettaUnixSocketCachingOptionsClass.MaximumPathLength() +} + +// The path to the UNIX domain socket that Rosetta uses. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzlinuxrosettaunixsocketcachingoptions/4230681-path?language=objc +func (l_ LinuxRosettaUnixSocketCachingOptions) Path() string { + rv := objc.Call[string](l_, objc.Sel("path")) + return rv +} diff --git a/macos/virtualization/mac_address.gen.go b/macos/virtualization/mac_address.gen.go new file mode 100644 index 00000000..bb9b1408 --- /dev/null +++ b/macos/virtualization/mac_address.gen.go @@ -0,0 +1,158 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/kernel" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MACAddress] class. +var MACAddressClass = _MACAddressClass{objc.GetClass("VZMACAddress")} + +type _MACAddressClass struct { + objc.Class +} + +// An interface definition for the [MACAddress] class. +type IMACAddress interface { + objc.IObject + EthernetAddress() kernel.Ether_addr + IsMulticastAddress() bool + IsLocallyAdministeredAddress() bool + IsUniversallyAdministeredAddress() bool + IsUnicastAddress() bool + String() string + IsBroadcastAddress() bool +} + +// The media access control (MAC) address for a network interface in your virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress?language=objc +type MACAddress struct { + objc.Object +} + +func MACAddressFrom(ptr unsafe.Pointer) MACAddress { + return MACAddress{ + Object: objc.ObjectFrom(ptr), + } +} + +func (mc _MACAddressClass) RandomLocallyAdministeredAddress() MACAddress { + rv := objc.Call[MACAddress](mc, objc.Sel("randomLocallyAdministeredAddress")) + return rv +} + +// Returns a valid, random, locally administered, unicast MAC address. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656645-randomlocallyadministeredaddress?language=objc +func MACAddress_RandomLocallyAdministeredAddress() MACAddress { + return MACAddressClass.RandomLocallyAdministeredAddress() +} + +func (m_ MACAddress) InitWithString(string_ string) MACAddress { + rv := objc.Call[MACAddress](m_, objc.Sel("initWithString:"), string_) + return rv +} + +// Creates a MAC address object from a specially formatted string. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656639-initwithstring?language=objc +func NewMACAddressWithString(string_ string) MACAddress { + instance := MACAddressClass.Alloc().InitWithString(string_) + instance.Autorelease() + return instance +} + +func (m_ MACAddress) InitWithEthernetAddress(ethernetAddress kernel.Ether_addr) MACAddress { + rv := objc.Call[MACAddress](m_, objc.Sel("initWithEthernetAddress:"), ethernetAddress) + return rv +} + +// Creates a MAC address from the specified 48-bit Ethernet address. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656638-initwithethernetaddress?language=objc +func NewMACAddressWithEthernetAddress(ethernetAddress kernel.Ether_addr) MACAddress { + instance := MACAddressClass.Alloc().InitWithEthernetAddress(ethernetAddress) + instance.Autorelease() + return instance +} + +func (mc _MACAddressClass) Alloc() MACAddress { + rv := objc.Call[MACAddress](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MACAddressClass) New() MACAddress { + rv := objc.Call[MACAddress](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMACAddress() MACAddress { + return MACAddressClass.New() +} + +func (m_ MACAddress) Init() MACAddress { + rv := objc.Call[MACAddress](m_, objc.Sel("init")) + return rv +} + +// The MAC address as an Ethernet data structure. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656637-ethernetaddress?language=objc +func (m_ MACAddress) EthernetAddress() kernel.Ether_addr { + rv := objc.Call[kernel.Ether_addr](m_, objc.Sel("ethernetAddress")) + return rv +} + +// A Boolean value that indicates whether the address is a multicast address. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656642-ismulticastaddress?language=objc +func (m_ MACAddress) IsMulticastAddress() bool { + rv := objc.Call[bool](m_, objc.Sel("isMulticastAddress")) + return rv +} + +// A Boolean value that indicates whether the address is a locally administered address (LAA). [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656641-islocallyadministeredaddress?language=objc +func (m_ MACAddress) IsLocallyAdministeredAddress() bool { + rv := objc.Call[bool](m_, objc.Sel("isLocallyAdministeredAddress")) + return rv +} + +// A Boolean value that indicates whether the address is a universally adminstered address (UAA). [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656644-isuniversallyadministeredaddress?language=objc +func (m_ MACAddress) IsUniversallyAdministeredAddress() bool { + rv := objc.Call[bool](m_, objc.Sel("isUniversallyAdministeredAddress")) + return rv +} + +// A Boolean value that indicates whether the address is a unicast address. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656643-isunicastaddress?language=objc +func (m_ MACAddress) IsUnicastAddress() bool { + rv := objc.Call[bool](m_, objc.Sel("isUnicastAddress")) + return rv +} + +// The MAC address as a formatted string. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656646-string?language=objc +func (m_ MACAddress) String() string { + rv := objc.Call[string](m_, objc.Sel("string")) + return rv +} + +// A Boolean value that indicates whether the address is a broadcast address. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacaddress/3656640-isbroadcastaddress?language=objc +func (m_ MACAddress) IsBroadcastAddress() bool { + rv := objc.Call[bool](m_, objc.Sel("isBroadcastAddress")) + return rv +} diff --git a/macos/virtualization/mac_auxiliary_storage.gen.go b/macos/virtualization/mac_auxiliary_storage.gen.go new file mode 100644 index 00000000..2e26a34a --- /dev/null +++ b/macos/virtualization/mac_auxiliary_storage.gen.go @@ -0,0 +1,106 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacAuxiliaryStorage] class. +var MacAuxiliaryStorageClass = _MacAuxiliaryStorageClass{objc.GetClass("VZMacAuxiliaryStorage")} + +type _MacAuxiliaryStorageClass struct { + objc.Class +} + +// An interface definition for the [MacAuxiliaryStorage] class. +type IMacAuxiliaryStorage interface { + objc.IObject + URL() foundation.URL +} + +// An object that contains information the boot loader needs for booting macOS as a guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacauxiliarystorage?language=objc +type MacAuxiliaryStorage struct { + objc.Object +} + +func MacAuxiliaryStorageFrom(ptr unsafe.Pointer) MacAuxiliaryStorage { + return MacAuxiliaryStorage{ + Object: objc.ObjectFrom(ptr), + } +} + +func (m_ MacAuxiliaryStorage) InitWithContentsOfURL(URL foundation.IURL) MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](m_, objc.Sel("initWithContentsOfURL:"), URL) + return rv +} + +// Initializes an auxiliary storage object with data from the location at the URL you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacauxiliarystorage/3816043-initwithcontentsofurl?language=objc +func NewMacAuxiliaryStorageWithContentsOfURL(URL foundation.IURL) MacAuxiliaryStorage { + instance := MacAuxiliaryStorageClass.Alloc().InitWithContentsOfURL(URL) + instance.Autorelease() + return instance +} + +func (m_ MacAuxiliaryStorage) InitWithURL(URL foundation.IURL) MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](m_, objc.Sel("initWithURL:"), URL) + return rv +} + +// Initializes an auxiliary storage object with data from the location at the URL you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacauxiliarystorage/3955613-initwithurl?language=objc +func NewMacAuxiliaryStorageWithURL(URL foundation.IURL) MacAuxiliaryStorage { + instance := MacAuxiliaryStorageClass.Alloc().InitWithURL(URL) + instance.Autorelease() + return instance +} + +func (m_ MacAuxiliaryStorage) InitCreatingStorageAtURLHardwareModelOptionsError(URL foundation.IURL, hardwareModel IMacHardwareModel, options MacAuxiliaryStorageInitializationOptions, error unsafe.Pointer) MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](m_, objc.Sel("initCreatingStorageAtURL:hardwareModel:options:error:"), URL, hardwareModel, options, error) + return rv +} + +// Creates an initialized Mac auxiliary storage instance that describes a specific hardware model at a URL you specify. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacauxiliarystorage/3816042-initcreatingstorageaturl?language=objc +func NewMacAuxiliaryStorageCreatingStorageAtURLHardwareModelOptionsError(URL foundation.IURL, hardwareModel IMacHardwareModel, options MacAuxiliaryStorageInitializationOptions, error unsafe.Pointer) MacAuxiliaryStorage { + instance := MacAuxiliaryStorageClass.Alloc().InitCreatingStorageAtURLHardwareModelOptionsError(URL, hardwareModel, options, error) + instance.Autorelease() + return instance +} + +func (mc _MacAuxiliaryStorageClass) Alloc() MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacAuxiliaryStorageClass) New() MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacAuxiliaryStorage() MacAuxiliaryStorage { + return MacAuxiliaryStorageClass.New() +} + +func (m_ MacAuxiliaryStorage) Init() MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](m_, objc.Sel("init")) + return rv +} + +// The URL of the auxiliary storage on the local file system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacauxiliarystorage/3816041-url?language=objc +func (m_ MacAuxiliaryStorage) URL() foundation.URL { + rv := objc.Call[foundation.URL](m_, objc.Sel("URL")) + return rv +} diff --git a/macos/virtualization/mac_graphics_device.gen.go b/macos/virtualization/mac_graphics_device.gen.go new file mode 100644 index 00000000..8bdcc35b --- /dev/null +++ b/macos/virtualization/mac_graphics_device.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacGraphicsDevice] class. +var MacGraphicsDeviceClass = _MacGraphicsDeviceClass{objc.GetClass("VZMacGraphicsDevice")} + +type _MacGraphicsDeviceClass struct { + objc.Class +} + +// An interface definition for the [MacGraphicsDevice] class. +type IMacGraphicsDevice interface { + IGraphicsDevice +} + +// An object that represents a Mac graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdevice?language=objc +type MacGraphicsDevice struct { + GraphicsDevice +} + +func MacGraphicsDeviceFrom(ptr unsafe.Pointer) MacGraphicsDevice { + return MacGraphicsDevice{ + GraphicsDevice: GraphicsDeviceFrom(ptr), + } +} + +func (mc _MacGraphicsDeviceClass) Alloc() MacGraphicsDevice { + rv := objc.Call[MacGraphicsDevice](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacGraphicsDeviceClass) New() MacGraphicsDevice { + rv := objc.Call[MacGraphicsDevice](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacGraphicsDevice() MacGraphicsDevice { + return MacGraphicsDeviceClass.New() +} + +func (m_ MacGraphicsDevice) Init() MacGraphicsDevice { + rv := objc.Call[MacGraphicsDevice](m_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/mac_graphics_device_configuration.gen.go b/macos/virtualization/mac_graphics_device_configuration.gen.go new file mode 100644 index 00000000..c9086dd6 --- /dev/null +++ b/macos/virtualization/mac_graphics_device_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacGraphicsDeviceConfiguration] class. +var MacGraphicsDeviceConfigurationClass = _MacGraphicsDeviceConfigurationClass{objc.GetClass("VZMacGraphicsDeviceConfiguration")} + +type _MacGraphicsDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [MacGraphicsDeviceConfiguration] class. +type IMacGraphicsDeviceConfiguration interface { + IGraphicsDeviceConfiguration + Displays() []MacGraphicsDisplayConfiguration + SetDisplays(value []IMacGraphicsDisplayConfiguration) +} + +// Configuration for a display attached to a Mac graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdeviceconfiguration?language=objc +type MacGraphicsDeviceConfiguration struct { + GraphicsDeviceConfiguration +} + +func MacGraphicsDeviceConfigurationFrom(ptr unsafe.Pointer) MacGraphicsDeviceConfiguration { + return MacGraphicsDeviceConfiguration{ + GraphicsDeviceConfiguration: GraphicsDeviceConfigurationFrom(ptr), + } +} + +func (m_ MacGraphicsDeviceConfiguration) Init() MacGraphicsDeviceConfiguration { + rv := objc.Call[MacGraphicsDeviceConfiguration](m_, objc.Sel("init")) + return rv +} + +func (mc _MacGraphicsDeviceConfigurationClass) Alloc() MacGraphicsDeviceConfiguration { + rv := objc.Call[MacGraphicsDeviceConfiguration](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacGraphicsDeviceConfigurationClass) New() MacGraphicsDeviceConfiguration { + rv := objc.Call[MacGraphicsDeviceConfiguration](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacGraphicsDeviceConfiguration() MacGraphicsDeviceConfiguration { + return MacGraphicsDeviceConfigurationClass.New() +} + +// The displays associated with this graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdeviceconfiguration/3816047-displays?language=objc +func (m_ MacGraphicsDeviceConfiguration) Displays() []MacGraphicsDisplayConfiguration { + rv := objc.Call[[]MacGraphicsDisplayConfiguration](m_, objc.Sel("displays")) + return rv +} + +// The displays associated with this graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdeviceconfiguration/3816047-displays?language=objc +func (m_ MacGraphicsDeviceConfiguration) SetDisplays(value []IMacGraphicsDisplayConfiguration) { + objc.Call[objc.Void](m_, objc.Sel("setDisplays:"), value) +} diff --git a/macos/virtualization/mac_graphics_display.gen.go b/macos/virtualization/mac_graphics_display.gen.go new file mode 100644 index 00000000..d81c2447 --- /dev/null +++ b/macos/virtualization/mac_graphics_display.gen.go @@ -0,0 +1,63 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacGraphicsDisplay] class. +var MacGraphicsDisplayClass = _MacGraphicsDisplayClass{objc.GetClass("VZMacGraphicsDisplay")} + +type _MacGraphicsDisplayClass struct { + objc.Class +} + +// An interface definition for the [MacGraphicsDisplay] class. +type IMacGraphicsDisplay interface { + IGraphicsDisplay + PixelsPerInch() int +} + +// An object that represents the graphics display on a Mac. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplay?language=objc +type MacGraphicsDisplay struct { + GraphicsDisplay +} + +func MacGraphicsDisplayFrom(ptr unsafe.Pointer) MacGraphicsDisplay { + return MacGraphicsDisplay{ + GraphicsDisplay: GraphicsDisplayFrom(ptr), + } +} + +func (mc _MacGraphicsDisplayClass) Alloc() MacGraphicsDisplay { + rv := objc.Call[MacGraphicsDisplay](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacGraphicsDisplayClass) New() MacGraphicsDisplay { + rv := objc.Call[MacGraphicsDisplay](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacGraphicsDisplay() MacGraphicsDisplay { + return MacGraphicsDisplayClass.New() +} + +func (m_ MacGraphicsDisplay) Init() MacGraphicsDisplay { + rv := objc.Call[MacGraphicsDisplay](m_, objc.Sel("init")) + return rv +} + +// Returns the pixel density of the display in pixels per inch. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplay/4168499-pixelsperinch?language=objc +func (m_ MacGraphicsDisplay) PixelsPerInch() int { + rv := objc.Call[int](m_, objc.Sel("pixelsPerInch")) + return rv +} diff --git a/macos/virtualization/mac_graphics_display_configuration.gen.go b/macos/virtualization/mac_graphics_display_configuration.gen.go new file mode 100644 index 00000000..1986858b --- /dev/null +++ b/macos/virtualization/mac_graphics_display_configuration.gen.go @@ -0,0 +1,135 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/appkit" + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacGraphicsDisplayConfiguration] class. +var MacGraphicsDisplayConfigurationClass = _MacGraphicsDisplayConfigurationClass{objc.GetClass("VZMacGraphicsDisplayConfiguration")} + +type _MacGraphicsDisplayConfigurationClass struct { + objc.Class +} + +// An interface definition for the [MacGraphicsDisplayConfiguration] class. +type IMacGraphicsDisplayConfiguration interface { + IGraphicsDisplayConfiguration + WidthInPixels() int + SetWidthInPixels(value int) + PixelsPerInch() int + SetPixelsPerInch(value int) + HeightInPixels() int + SetHeightInPixels(value int) +} + +// The configuration for a Mac graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration?language=objc +type MacGraphicsDisplayConfiguration struct { + GraphicsDisplayConfiguration +} + +func MacGraphicsDisplayConfigurationFrom(ptr unsafe.Pointer) MacGraphicsDisplayConfiguration { + return MacGraphicsDisplayConfiguration{ + GraphicsDisplayConfiguration: GraphicsDisplayConfigurationFrom(ptr), + } +} + +func (m_ MacGraphicsDisplayConfiguration) InitWithWidthInPixelsHeightInPixelsPixelsPerInch(widthInPixels int, heightInPixels int, pixelsPerInch int) MacGraphicsDisplayConfiguration { + rv := objc.Call[MacGraphicsDisplayConfiguration](m_, objc.Sel("initWithWidthInPixels:heightInPixels:pixelsPerInch:"), widthInPixels, heightInPixels, pixelsPerInch) + return rv +} + +// Create a display configuration with the specified pixel dimensions and pixel density. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816052-initwithwidthinpixels?language=objc +func NewMacGraphicsDisplayConfigurationWithWidthInPixelsHeightInPixelsPixelsPerInch(widthInPixels int, heightInPixels int, pixelsPerInch int) MacGraphicsDisplayConfiguration { + instance := MacGraphicsDisplayConfigurationClass.Alloc().InitWithWidthInPixelsHeightInPixelsPixelsPerInch(widthInPixels, heightInPixels, pixelsPerInch) + instance.Autorelease() + return instance +} + +func (m_ MacGraphicsDisplayConfiguration) InitForScreenSizeInPoints(screen appkit.IScreen, sizeInPoints foundation.Size) MacGraphicsDisplayConfiguration { + rv := objc.Call[MacGraphicsDisplayConfiguration](m_, objc.Sel("initForScreen:sizeInPoints:"), screen, sizeInPoints) + return rv +} + +// Create a display configuration suitable for showing on the specified screen. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3824988-initforscreen?language=objc +func NewMacGraphicsDisplayConfigurationForScreenSizeInPoints(screen appkit.IScreen, sizeInPoints foundation.Size) MacGraphicsDisplayConfiguration { + instance := MacGraphicsDisplayConfigurationClass.Alloc().InitForScreenSizeInPoints(screen, sizeInPoints) + instance.Autorelease() + return instance +} + +func (mc _MacGraphicsDisplayConfigurationClass) Alloc() MacGraphicsDisplayConfiguration { + rv := objc.Call[MacGraphicsDisplayConfiguration](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacGraphicsDisplayConfigurationClass) New() MacGraphicsDisplayConfiguration { + rv := objc.Call[MacGraphicsDisplayConfiguration](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacGraphicsDisplayConfiguration() MacGraphicsDisplayConfiguration { + return MacGraphicsDisplayConfigurationClass.New() +} + +func (m_ MacGraphicsDisplayConfiguration) Init() MacGraphicsDisplayConfiguration { + rv := objc.Call[MacGraphicsDisplayConfiguration](m_, objc.Sel("init")) + return rv +} + +// The width of the display, in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816054-widthinpixels?language=objc +func (m_ MacGraphicsDisplayConfiguration) WidthInPixels() int { + rv := objc.Call[int](m_, objc.Sel("widthInPixels")) + return rv +} + +// The width of the display, in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816054-widthinpixels?language=objc +func (m_ MacGraphicsDisplayConfiguration) SetWidthInPixels(value int) { + objc.Call[objc.Void](m_, objc.Sel("setWidthInPixels:"), value) +} + +// The pixel density in pixels per inch. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816053-pixelsperinch?language=objc +func (m_ MacGraphicsDisplayConfiguration) PixelsPerInch() int { + rv := objc.Call[int](m_, objc.Sel("pixelsPerInch")) + return rv +} + +// The pixel density in pixels per inch. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816053-pixelsperinch?language=objc +func (m_ MacGraphicsDisplayConfiguration) SetPixelsPerInch(value int) { + objc.Call[objc.Void](m_, objc.Sel("setPixelsPerInch:"), value) +} + +// The height of the display, in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816050-heightinpixels?language=objc +func (m_ MacGraphicsDisplayConfiguration) HeightInPixels() int { + rv := objc.Call[int](m_, objc.Sel("heightInPixels")) + return rv +} + +// The height of the display, in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacgraphicsdisplayconfiguration/3816050-heightinpixels?language=objc +func (m_ MacGraphicsDisplayConfiguration) SetHeightInPixels(value int) { + objc.Call[objc.Void](m_, objc.Sel("setHeightInPixels:"), value) +} diff --git a/macos/virtualization/mac_hardware_model.gen.go b/macos/virtualization/mac_hardware_model.gen.go new file mode 100644 index 00000000..bf306e34 --- /dev/null +++ b/macos/virtualization/mac_hardware_model.gen.go @@ -0,0 +1,86 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacHardwareModel] class. +var MacHardwareModelClass = _MacHardwareModelClass{objc.GetClass("VZMacHardwareModel")} + +type _MacHardwareModelClass struct { + objc.Class +} + +// An interface definition for the [MacHardwareModel] class. +type IMacHardwareModel interface { + objc.IObject + IsSupported() bool + DataRepresentation() []byte +} + +// A specification for the hardware elements and configurations present in a particular Mac hardware model. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmachardwaremodel?language=objc +type MacHardwareModel struct { + objc.Object +} + +func MacHardwareModelFrom(ptr unsafe.Pointer) MacHardwareModel { + return MacHardwareModel{ + Object: objc.ObjectFrom(ptr), + } +} + +func (m_ MacHardwareModel) InitWithDataRepresentation(dataRepresentation []byte) MacHardwareModel { + rv := objc.Call[MacHardwareModel](m_, objc.Sel("initWithDataRepresentation:"), dataRepresentation) + return rv +} + +// Creates an instance of the hardware model described by the specified data representation. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmachardwaremodel/3816057-initwithdatarepresentation?language=objc +func NewMacHardwareModelWithDataRepresentation(dataRepresentation []byte) MacHardwareModel { + instance := MacHardwareModelClass.Alloc().InitWithDataRepresentation(dataRepresentation) + instance.Autorelease() + return instance +} + +func (mc _MacHardwareModelClass) Alloc() MacHardwareModel { + rv := objc.Call[MacHardwareModel](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacHardwareModelClass) New() MacHardwareModel { + rv := objc.Call[MacHardwareModel](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacHardwareModel() MacHardwareModel { + return MacHardwareModelClass.New() +} + +func (m_ MacHardwareModel) Init() MacHardwareModel { + rv := objc.Call[MacHardwareModel](m_, objc.Sel("init")) + return rv +} + +// A Boolean value that indicates whether the host supports this hardware model. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmachardwaremodel/3816058-supported?language=objc +func (m_ MacHardwareModel) IsSupported() bool { + rv := objc.Call[bool](m_, objc.Sel("isSupported")) + return rv +} + +// Returns the opaque data representation of the hardware model. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmachardwaremodel/3816056-datarepresentation?language=objc +func (m_ MacHardwareModel) DataRepresentation() []byte { + rv := objc.Call[[]byte](m_, objc.Sel("dataRepresentation")) + return rv +} diff --git a/macos/virtualization/mac_keyboard_configuration.gen.go b/macos/virtualization/mac_keyboard_configuration.gen.go new file mode 100644 index 00000000..03097a0f --- /dev/null +++ b/macos/virtualization/mac_keyboard_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacKeyboardConfiguration] class. +var MacKeyboardConfigurationClass = _MacKeyboardConfigurationClass{objc.GetClass("VZMacKeyboardConfiguration")} + +type _MacKeyboardConfigurationClass struct { + objc.Class +} + +// An interface definition for the [MacKeyboardConfiguration] class. +type IMacKeyboardConfiguration interface { + IKeyboardConfiguration +} + +// A device that defines the configuration for a Mac keyboard. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmackeyboardconfiguration?language=objc +type MacKeyboardConfiguration struct { + KeyboardConfiguration +} + +func MacKeyboardConfigurationFrom(ptr unsafe.Pointer) MacKeyboardConfiguration { + return MacKeyboardConfiguration{ + KeyboardConfiguration: KeyboardConfigurationFrom(ptr), + } +} + +func (m_ MacKeyboardConfiguration) Init() MacKeyboardConfiguration { + rv := objc.Call[MacKeyboardConfiguration](m_, objc.Sel("init")) + return rv +} + +func (mc _MacKeyboardConfigurationClass) Alloc() MacKeyboardConfiguration { + rv := objc.Call[MacKeyboardConfiguration](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacKeyboardConfigurationClass) New() MacKeyboardConfiguration { + rv := objc.Call[MacKeyboardConfiguration](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacKeyboardConfiguration() MacKeyboardConfiguration { + return MacKeyboardConfigurationClass.New() +} diff --git a/macos/virtualization/mac_machine_identifier.gen.go b/macos/virtualization/mac_machine_identifier.gen.go new file mode 100644 index 00000000..c2593ba1 --- /dev/null +++ b/macos/virtualization/mac_machine_identifier.gen.go @@ -0,0 +1,77 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacMachineIdentifier] class. +var MacMachineIdentifierClass = _MacMachineIdentifierClass{objc.GetClass("VZMacMachineIdentifier")} + +type _MacMachineIdentifierClass struct { + objc.Class +} + +// An interface definition for the [MacMachineIdentifier] class. +type IMacMachineIdentifier interface { + objc.IObject + DataRepresentation() []byte +} + +// A unique identifier for a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacmachineidentifier?language=objc +type MacMachineIdentifier struct { + objc.Object +} + +func MacMachineIdentifierFrom(ptr unsafe.Pointer) MacMachineIdentifier { + return MacMachineIdentifier{ + Object: objc.ObjectFrom(ptr), + } +} + +func (m_ MacMachineIdentifier) InitWithDataRepresentation(dataRepresentation []byte) MacMachineIdentifier { + rv := objc.Call[MacMachineIdentifier](m_, objc.Sel("initWithDataRepresentation:"), dataRepresentation) + return rv +} + +// Create a machine identifier described by the specified data representation. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacmachineidentifier/3816062-initwithdatarepresentation?language=objc +func NewMacMachineIdentifierWithDataRepresentation(dataRepresentation []byte) MacMachineIdentifier { + instance := MacMachineIdentifierClass.Alloc().InitWithDataRepresentation(dataRepresentation) + instance.Autorelease() + return instance +} + +func (m_ MacMachineIdentifier) Init() MacMachineIdentifier { + rv := objc.Call[MacMachineIdentifier](m_, objc.Sel("init")) + return rv +} + +func (mc _MacMachineIdentifierClass) Alloc() MacMachineIdentifier { + rv := objc.Call[MacMachineIdentifier](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacMachineIdentifierClass) New() MacMachineIdentifier { + rv := objc.Call[MacMachineIdentifier](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacMachineIdentifier() MacMachineIdentifier { + return MacMachineIdentifierClass.New() +} + +// Returns the opaque data representation of the machine identifier. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacmachineidentifier/3816060-datarepresentation?language=objc +func (m_ MacMachineIdentifier) DataRepresentation() []byte { + rv := objc.Call[[]byte](m_, objc.Sel("dataRepresentation")) + return rv +} diff --git a/macos/virtualization/mac_os_boot_loader.gen.go b/macos/virtualization/mac_os_boot_loader.gen.go new file mode 100644 index 00000000..e484a9f4 --- /dev/null +++ b/macos/virtualization/mac_os_boot_loader.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacOSBootLoader] class. +var MacOSBootLoaderClass = _MacOSBootLoaderClass{objc.GetClass("VZMacOSBootLoader")} + +type _MacOSBootLoaderClass struct { + objc.Class +} + +// An interface definition for the [MacOSBootLoader] class. +type IMacOSBootLoader interface { + IBootLoader +} + +// An object that loads and configures a boot loader for running macOS on Apple silicon as a guest system of your VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosbootloader?language=objc +type MacOSBootLoader struct { + BootLoader +} + +func MacOSBootLoaderFrom(ptr unsafe.Pointer) MacOSBootLoader { + return MacOSBootLoader{ + BootLoader: BootLoaderFrom(ptr), + } +} + +func (m_ MacOSBootLoader) Init() MacOSBootLoader { + rv := objc.Call[MacOSBootLoader](m_, objc.Sel("init")) + return rv +} + +func (mc _MacOSBootLoaderClass) Alloc() MacOSBootLoader { + rv := objc.Call[MacOSBootLoader](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacOSBootLoaderClass) New() MacOSBootLoader { + rv := objc.Call[MacOSBootLoader](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacOSBootLoader() MacOSBootLoader { + return MacOSBootLoaderClass.New() +} diff --git a/macos/virtualization/mac_os_configuration_requirements.gen.go b/macos/virtualization/mac_os_configuration_requirements.gen.go new file mode 100644 index 00000000..c473c16e --- /dev/null +++ b/macos/virtualization/mac_os_configuration_requirements.gen.go @@ -0,0 +1,81 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacOSConfigurationRequirements] class. +var MacOSConfigurationRequirementsClass = _MacOSConfigurationRequirementsClass{objc.GetClass("VZMacOSConfigurationRequirements")} + +type _MacOSConfigurationRequirementsClass struct { + objc.Class +} + +// An interface definition for the [MacOSConfigurationRequirements] class. +type IMacOSConfigurationRequirements interface { + objc.IObject + MinimumSupportedCPUCount() uint + MinimumSupportedMemorySize() uint64 + HardwareModel() MacHardwareModel +} + +// An object that describes the parameter constraints required by a specific configuration of macOS. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosconfigurationrequirements?language=objc +type MacOSConfigurationRequirements struct { + objc.Object +} + +func MacOSConfigurationRequirementsFrom(ptr unsafe.Pointer) MacOSConfigurationRequirements { + return MacOSConfigurationRequirements{ + Object: objc.ObjectFrom(ptr), + } +} + +func (mc _MacOSConfigurationRequirementsClass) Alloc() MacOSConfigurationRequirements { + rv := objc.Call[MacOSConfigurationRequirements](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacOSConfigurationRequirementsClass) New() MacOSConfigurationRequirements { + rv := objc.Call[MacOSConfigurationRequirements](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacOSConfigurationRequirements() MacOSConfigurationRequirements { + return MacOSConfigurationRequirementsClass.New() +} + +func (m_ MacOSConfigurationRequirements) Init() MacOSConfigurationRequirements { + rv := objc.Call[MacOSConfigurationRequirements](m_, objc.Sel("init")) + return rv +} + +// The minimum supported number of CPUs for this configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosconfigurationrequirements/3816067-minimumsupportedcpucount?language=objc +func (m_ MacOSConfigurationRequirements) MinimumSupportedCPUCount() uint { + rv := objc.Call[uint](m_, objc.Sel("minimumSupportedCPUCount")) + return rv +} + +// The minimum supported memory size for this configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosconfigurationrequirements/3816068-minimumsupportedmemorysize?language=objc +func (m_ MacOSConfigurationRequirements) MinimumSupportedMemorySize() uint64 { + rv := objc.Call[uint64](m_, objc.Sel("minimumSupportedMemorySize")) + return rv +} + +// The hardware model for this configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosconfigurationrequirements/3816066-hardwaremodel?language=objc +func (m_ MacOSConfigurationRequirements) HardwareModel() MacHardwareModel { + rv := objc.Call[MacHardwareModel](m_, objc.Sel("hardwareModel")) + return rv +} diff --git a/macos/virtualization/mac_os_installer.gen.go b/macos/virtualization/mac_os_installer.gen.go new file mode 100644 index 00000000..7b6c2260 --- /dev/null +++ b/macos/virtualization/mac_os_installer.gen.go @@ -0,0 +1,104 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacOSInstaller] class. +var MacOSInstallerClass = _MacOSInstallerClass{objc.GetClass("VZMacOSInstaller")} + +type _MacOSInstallerClass struct { + objc.Class +} + +// An interface definition for the [MacOSInstaller] class. +type IMacOSInstaller interface { + objc.IObject + InstallWithCompletionHandler(completionHandler func(arg0 foundation.Error)) + RestoreImageURL() foundation.URL + VirtualMachine() VirtualMachine + Progress() foundation.Progress +} + +// An object you use to install macOS on the specified virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosinstaller?language=objc +type MacOSInstaller struct { + objc.Object +} + +func MacOSInstallerFrom(ptr unsafe.Pointer) MacOSInstaller { + return MacOSInstaller{ + Object: objc.ObjectFrom(ptr), + } +} + +func (m_ MacOSInstaller) InitWithVirtualMachineRestoreImageURL(virtualMachine IVirtualMachine, restoreImageFileURL foundation.IURL) MacOSInstaller { + rv := objc.Call[MacOSInstaller](m_, objc.Sel("initWithVirtualMachine:restoreImageURL:"), virtualMachine, restoreImageFileURL) + return rv +} + +// Creates a macOS installer object. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosinstaller/3857730-initwithvirtualmachine?language=objc +func NewMacOSInstallerWithVirtualMachineRestoreImageURL(virtualMachine IVirtualMachine, restoreImageFileURL foundation.IURL) MacOSInstaller { + instance := MacOSInstallerClass.Alloc().InitWithVirtualMachineRestoreImageURL(virtualMachine, restoreImageFileURL) + instance.Autorelease() + return instance +} + +func (mc _MacOSInstallerClass) Alloc() MacOSInstaller { + rv := objc.Call[MacOSInstaller](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacOSInstallerClass) New() MacOSInstaller { + rv := objc.Call[MacOSInstaller](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacOSInstaller() MacOSInstaller { + return MacOSInstallerClass.New() +} + +func (m_ MacOSInstaller) Init() MacOSInstaller { + rv := objc.Call[MacOSInstaller](m_, objc.Sel("init")) + return rv +} + +// Start installing macOS. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosinstaller/3816071-installwithcompletionhandler?language=objc +func (m_ MacOSInstaller) InstallWithCompletionHandler(completionHandler func(arg0 foundation.Error)) { + objc.Call[objc.Void](m_, objc.Sel("installWithCompletionHandler:"), completionHandler) +} + +// The restore image URL used to initialize this installer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosinstaller/3857731-restoreimageurl?language=objc +func (m_ MacOSInstaller) RestoreImageURL() foundation.URL { + rv := objc.Call[foundation.URL](m_, objc.Sel("restoreImageURL")) + return rv +} + +// The virtual machine used to initialize this installer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosinstaller/3816074-virtualmachine?language=objc +func (m_ MacOSInstaller) VirtualMachine() VirtualMachine { + rv := objc.Call[VirtualMachine](m_, objc.Sel("virtualMachine")) + return rv +} + +// A progress object that you can use to observe or cancel an installation. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosinstaller/3816072-progress?language=objc +func (m_ MacOSInstaller) Progress() foundation.Progress { + rv := objc.Call[foundation.Progress](m_, objc.Sel("progress")) + return rv +} diff --git a/macos/virtualization/mac_os_restore_image.gen.go b/macos/virtualization/mac_os_restore_image.gen.go new file mode 100644 index 00000000..89d0e2de --- /dev/null +++ b/macos/virtualization/mac_os_restore_image.gen.go @@ -0,0 +1,128 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacOSRestoreImage] class. +var MacOSRestoreImageClass = _MacOSRestoreImageClass{objc.GetClass("VZMacOSRestoreImage")} + +type _MacOSRestoreImageClass struct { + objc.Class +} + +// An interface definition for the [MacOSRestoreImage] class. +type IMacOSRestoreImage interface { + objc.IObject + URL() foundation.URL + IsSupported() bool + MostFeaturefulSupportedConfiguration() MacOSConfigurationRequirements + OperatingSystemVersion() foundation.OperatingSystemVersion + BuildVersion() string +} + +// An object that describes a version of macOS to install on to a virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage?language=objc +type MacOSRestoreImage struct { + objc.Object +} + +func MacOSRestoreImageFrom(ptr unsafe.Pointer) MacOSRestoreImage { + return MacOSRestoreImage{ + Object: objc.ObjectFrom(ptr), + } +} + +func (mc _MacOSRestoreImageClass) Alloc() MacOSRestoreImage { + rv := objc.Call[MacOSRestoreImage](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacOSRestoreImageClass) New() MacOSRestoreImage { + rv := objc.Call[MacOSRestoreImage](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacOSRestoreImage() MacOSRestoreImage { + return MacOSRestoreImageClass.New() +} + +func (m_ MacOSRestoreImage) Init() MacOSRestoreImage { + rv := objc.Call[MacOSRestoreImage](m_, objc.Sel("init")) + return rv +} + +// Load a restore image from a file on the local file system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3857733-loadfileurl?language=objc +func (mc _MacOSRestoreImageClass) LoadFileURLCompletionHandler(fileURL foundation.IURL, completionHandler func(arg0 MacOSRestoreImage, arg1 foundation.Error)) { + objc.Call[objc.Void](mc, objc.Sel("loadFileURL:completionHandler:"), fileURL, completionHandler) +} + +// Load a restore image from a file on the local file system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3857733-loadfileurl?language=objc +func MacOSRestoreImage_LoadFileURLCompletionHandler(fileURL foundation.IURL, completionHandler func(arg0 MacOSRestoreImage, arg1 foundation.Error)) { + MacOSRestoreImageClass.LoadFileURLCompletionHandler(fileURL, completionHandler) +} + +// Fetches the latest restore image supported by this host from the network. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3857732-fetchlatestsupportedwithcompleti?language=objc +func (mc _MacOSRestoreImageClass) FetchLatestSupportedWithCompletionHandler(completionHandler func(arg0 MacOSRestoreImage, arg1 foundation.Error)) { + objc.Call[objc.Void](mc, objc.Sel("fetchLatestSupportedWithCompletionHandler:"), completionHandler) +} + +// Fetches the latest restore image supported by this host from the network. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3857732-fetchlatestsupportedwithcompleti?language=objc +func MacOSRestoreImage_FetchLatestSupportedWithCompletionHandler(completionHandler func(arg0 MacOSRestoreImage, arg1 foundation.Error)) { + MacOSRestoreImageClass.FetchLatestSupportedWithCompletionHandler(completionHandler) +} + +// The URL of this restore image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3835971-url?language=objc +func (m_ MacOSRestoreImage) URL() foundation.URL { + rv := objc.Call[foundation.URL](m_, objc.Sel("URL")) + return rv +} + +// A Boolean value that indicates whether the current host supports this restore image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3955615-supported?language=objc +func (m_ MacOSRestoreImage) IsSupported() bool { + rv := objc.Call[bool](m_, objc.Sel("isSupported")) + return rv +} + +// This object represents the most fully featured configuration that’s supported by both the current host and by this restore image. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3835970-mostfeaturefulsupportedconfigura?language=objc +func (m_ MacOSRestoreImage) MostFeaturefulSupportedConfiguration() MacOSConfigurationRequirements { + rv := objc.Call[MacOSConfigurationRequirements](m_, objc.Sel("mostFeaturefulSupportedConfiguration")) + return rv +} + +// The operating system version this restore image contains. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3816078-operatingsystemversion?language=objc +func (m_ MacOSRestoreImage) OperatingSystemVersion() foundation.OperatingSystemVersion { + rv := objc.Call[foundation.OperatingSystemVersion](m_, objc.Sel("operatingSystemVersion")) + return rv +} + +// The build version this restore image contains. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosrestoreimage/3816076-buildversion?language=objc +func (m_ MacOSRestoreImage) BuildVersion() string { + rv := objc.Call[string](m_, objc.Sel("buildVersion")) + return rv +} diff --git a/macos/virtualization/mac_os_virtual_machine_start_options.gen.go b/macos/virtualization/mac_os_virtual_machine_start_options.gen.go new file mode 100644 index 00000000..b128b8e0 --- /dev/null +++ b/macos/virtualization/mac_os_virtual_machine_start_options.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacOSVirtualMachineStartOptions] class. +var MacOSVirtualMachineStartOptionsClass = _MacOSVirtualMachineStartOptionsClass{objc.GetClass("VZMacOSVirtualMachineStartOptions")} + +type _MacOSVirtualMachineStartOptionsClass struct { + objc.Class +} + +// An interface definition for the [MacOSVirtualMachineStartOptions] class. +type IMacOSVirtualMachineStartOptions interface { + IVirtualMachineStartOptions + StartUpFromMacOSRecovery() bool + SetStartUpFromMacOSRecovery(value bool) +} + +// A class that describes start options for macOS VMs. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosvirtualmachinestartoptions?language=objc +type MacOSVirtualMachineStartOptions struct { + VirtualMachineStartOptions +} + +func MacOSVirtualMachineStartOptionsFrom(ptr unsafe.Pointer) MacOSVirtualMachineStartOptions { + return MacOSVirtualMachineStartOptions{ + VirtualMachineStartOptions: VirtualMachineStartOptionsFrom(ptr), + } +} + +func (mc _MacOSVirtualMachineStartOptionsClass) Alloc() MacOSVirtualMachineStartOptions { + rv := objc.Call[MacOSVirtualMachineStartOptions](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacOSVirtualMachineStartOptionsClass) New() MacOSVirtualMachineStartOptions { + rv := objc.Call[MacOSVirtualMachineStartOptions](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacOSVirtualMachineStartOptions() MacOSVirtualMachineStartOptions { + return MacOSVirtualMachineStartOptionsClass.New() +} + +func (m_ MacOSVirtualMachineStartOptions) Init() MacOSVirtualMachineStartOptions { + rv := objc.Call[MacOSVirtualMachineStartOptions](m_, objc.Sel("init")) + return rv +} + +// A Boolean value that indicates whether the macOS guest should start in recovery mode. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosvirtualmachinestartoptions/4013558-startupfrommacosrecovery?language=objc +func (m_ MacOSVirtualMachineStartOptions) StartUpFromMacOSRecovery() bool { + rv := objc.Call[bool](m_, objc.Sel("startUpFromMacOSRecovery")) + return rv +} + +// A Boolean value that indicates whether the macOS guest should start in recovery mode. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacosvirtualmachinestartoptions/4013558-startupfrommacosrecovery?language=objc +func (m_ MacOSVirtualMachineStartOptions) SetStartUpFromMacOSRecovery(value bool) { + objc.Call[objc.Void](m_, objc.Sel("setStartUpFromMacOSRecovery:"), value) +} diff --git a/macos/virtualization/mac_platform_configuration.gen.go b/macos/virtualization/mac_platform_configuration.gen.go new file mode 100644 index 00000000..d6a0617d --- /dev/null +++ b/macos/virtualization/mac_platform_configuration.gen.go @@ -0,0 +1,105 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacPlatformConfiguration] class. +var MacPlatformConfigurationClass = _MacPlatformConfigurationClass{objc.GetClass("VZMacPlatformConfiguration")} + +type _MacPlatformConfigurationClass struct { + objc.Class +} + +// An interface definition for the [MacPlatformConfiguration] class. +type IMacPlatformConfiguration interface { + IPlatformConfiguration + AuxiliaryStorage() MacAuxiliaryStorage + SetAuxiliaryStorage(value IMacAuxiliaryStorage) + HardwareModel() MacHardwareModel + SetHardwareModel(value IMacHardwareModel) + MachineIdentifier() MacMachineIdentifier + SetMachineIdentifier(value IMacMachineIdentifier) +} + +// The platform configuration for booting macOS on Apple silicon. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration?language=objc +type MacPlatformConfiguration struct { + PlatformConfiguration +} + +func MacPlatformConfigurationFrom(ptr unsafe.Pointer) MacPlatformConfiguration { + return MacPlatformConfiguration{ + PlatformConfiguration: PlatformConfigurationFrom(ptr), + } +} + +func (m_ MacPlatformConfiguration) Init() MacPlatformConfiguration { + rv := objc.Call[MacPlatformConfiguration](m_, objc.Sel("init")) + return rv +} + +func (mc _MacPlatformConfigurationClass) Alloc() MacPlatformConfiguration { + rv := objc.Call[MacPlatformConfiguration](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacPlatformConfigurationClass) New() MacPlatformConfiguration { + rv := objc.Call[MacPlatformConfiguration](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacPlatformConfiguration() MacPlatformConfiguration { + return MacPlatformConfigurationClass.New() +} + +// The Mac auxiliary storage. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration/3816081-auxiliarystorage?language=objc +func (m_ MacPlatformConfiguration) AuxiliaryStorage() MacAuxiliaryStorage { + rv := objc.Call[MacAuxiliaryStorage](m_, objc.Sel("auxiliaryStorage")) + return rv +} + +// The Mac auxiliary storage. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration/3816081-auxiliarystorage?language=objc +func (m_ MacPlatformConfiguration) SetAuxiliaryStorage(value IMacAuxiliaryStorage) { + objc.Call[objc.Void](m_, objc.Sel("setAuxiliaryStorage:"), value) +} + +// The Mac hardware model. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration/3816082-hardwaremodel?language=objc +func (m_ MacPlatformConfiguration) HardwareModel() MacHardwareModel { + rv := objc.Call[MacHardwareModel](m_, objc.Sel("hardwareModel")) + return rv +} + +// The Mac hardware model. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration/3816082-hardwaremodel?language=objc +func (m_ MacPlatformConfiguration) SetHardwareModel(value IMacHardwareModel) { + objc.Call[objc.Void](m_, objc.Sel("setHardwareModel:"), value) +} + +// The Mac machine identifier. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration/3816084-machineidentifier?language=objc +func (m_ MacPlatformConfiguration) MachineIdentifier() MacMachineIdentifier { + rv := objc.Call[MacMachineIdentifier](m_, objc.Sel("machineIdentifier")) + return rv +} + +// The Mac machine identifier. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmacplatformconfiguration/3816084-machineidentifier?language=objc +func (m_ MacPlatformConfiguration) SetMachineIdentifier(value IMacMachineIdentifier) { + objc.Call[objc.Void](m_, objc.Sel("setMachineIdentifier:"), value) +} diff --git a/macos/virtualization/mac_trackpad_configuration.gen.go b/macos/virtualization/mac_trackpad_configuration.gen.go new file mode 100644 index 00000000..037540eb --- /dev/null +++ b/macos/virtualization/mac_trackpad_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MacTrackpadConfiguration] class. +var MacTrackpadConfigurationClass = _MacTrackpadConfigurationClass{objc.GetClass("VZMacTrackpadConfiguration")} + +type _MacTrackpadConfigurationClass struct { + objc.Class +} + +// An interface definition for the [MacTrackpadConfiguration] class. +type IMacTrackpadConfiguration interface { + IPointingDeviceConfiguration +} + +// The class that represents the configuration for a Mac trackpad. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmactrackpadconfiguration?language=objc +type MacTrackpadConfiguration struct { + PointingDeviceConfiguration +} + +func MacTrackpadConfigurationFrom(ptr unsafe.Pointer) MacTrackpadConfiguration { + return MacTrackpadConfiguration{ + PointingDeviceConfiguration: PointingDeviceConfigurationFrom(ptr), + } +} + +func (m_ MacTrackpadConfiguration) Init() MacTrackpadConfiguration { + rv := objc.Call[MacTrackpadConfiguration](m_, objc.Sel("init")) + return rv +} + +func (mc _MacTrackpadConfigurationClass) Alloc() MacTrackpadConfiguration { + rv := objc.Call[MacTrackpadConfiguration](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MacTrackpadConfigurationClass) New() MacTrackpadConfiguration { + rv := objc.Call[MacTrackpadConfiguration](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMacTrackpadConfiguration() MacTrackpadConfiguration { + return MacTrackpadConfigurationClass.New() +} diff --git a/macos/virtualization/memory_balloon_device.gen.go b/macos/virtualization/memory_balloon_device.gen.go new file mode 100644 index 00000000..f3d2083c --- /dev/null +++ b/macos/virtualization/memory_balloon_device.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MemoryBalloonDevice] class. +var MemoryBalloonDeviceClass = _MemoryBalloonDeviceClass{objc.GetClass("VZMemoryBalloonDevice")} + +type _MemoryBalloonDeviceClass struct { + objc.Class +} + +// An interface definition for the [MemoryBalloonDevice] class. +type IMemoryBalloonDevice interface { + objc.IObject +} + +// The common behavior for memory devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmemoryballoondevice?language=objc +type MemoryBalloonDevice struct { + objc.Object +} + +func MemoryBalloonDeviceFrom(ptr unsafe.Pointer) MemoryBalloonDevice { + return MemoryBalloonDevice{ + Object: objc.ObjectFrom(ptr), + } +} + +func (mc _MemoryBalloonDeviceClass) Alloc() MemoryBalloonDevice { + rv := objc.Call[MemoryBalloonDevice](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MemoryBalloonDeviceClass) New() MemoryBalloonDevice { + rv := objc.Call[MemoryBalloonDevice](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMemoryBalloonDevice() MemoryBalloonDevice { + return MemoryBalloonDeviceClass.New() +} + +func (m_ MemoryBalloonDevice) Init() MemoryBalloonDevice { + rv := objc.Call[MemoryBalloonDevice](m_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/memory_balloon_device_configuration.gen.go b/macos/virtualization/memory_balloon_device_configuration.gen.go new file mode 100644 index 00000000..30a86552 --- /dev/null +++ b/macos/virtualization/memory_balloon_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MemoryBalloonDeviceConfiguration] class. +var MemoryBalloonDeviceConfigurationClass = _MemoryBalloonDeviceConfigurationClass{objc.GetClass("VZMemoryBalloonDeviceConfiguration")} + +type _MemoryBalloonDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [MemoryBalloonDeviceConfiguration] class. +type IMemoryBalloonDeviceConfiguration interface { + objc.IObject +} + +// The common configuration traits for memory balloon devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmemoryballoondeviceconfiguration?language=objc +type MemoryBalloonDeviceConfiguration struct { + objc.Object +} + +func MemoryBalloonDeviceConfigurationFrom(ptr unsafe.Pointer) MemoryBalloonDeviceConfiguration { + return MemoryBalloonDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (mc _MemoryBalloonDeviceConfigurationClass) Alloc() MemoryBalloonDeviceConfiguration { + rv := objc.Call[MemoryBalloonDeviceConfiguration](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MemoryBalloonDeviceConfigurationClass) New() MemoryBalloonDeviceConfiguration { + rv := objc.Call[MemoryBalloonDeviceConfiguration](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMemoryBalloonDeviceConfiguration() MemoryBalloonDeviceConfiguration { + return MemoryBalloonDeviceConfigurationClass.New() +} + +func (m_ MemoryBalloonDeviceConfiguration) Init() MemoryBalloonDeviceConfiguration { + rv := objc.Call[MemoryBalloonDeviceConfiguration](m_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/multiple_directory_share.gen.go b/macos/virtualization/multiple_directory_share.gen.go new file mode 100644 index 00000000..194c5dab --- /dev/null +++ b/macos/virtualization/multiple_directory_share.gen.go @@ -0,0 +1,107 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [MultipleDirectoryShare] class. +var MultipleDirectoryShareClass = _MultipleDirectoryShareClass{objc.GetClass("VZMultipleDirectoryShare")} + +type _MultipleDirectoryShareClass struct { + objc.Class +} + +// An interface definition for the [MultipleDirectoryShare] class. +type IMultipleDirectoryShare interface { + IDirectoryShare + Directories() map[string]SharedDirectory +} + +// An object that describes a directory share for multiple directories. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare?language=objc +type MultipleDirectoryShare struct { + DirectoryShare +} + +func MultipleDirectoryShareFrom(ptr unsafe.Pointer) MultipleDirectoryShare { + return MultipleDirectoryShare{ + DirectoryShare: DirectoryShareFrom(ptr), + } +} + +func (m_ MultipleDirectoryShare) InitWithDirectories(directories map[string]ISharedDirectory) MultipleDirectoryShare { + rv := objc.Call[MultipleDirectoryShare](m_, objc.Sel("initWithDirectories:"), directories) + return rv +} + +// Creates the directory share with a set of directories on the host. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare/3787628-initwithdirectories?language=objc +func NewMultipleDirectoryShareWithDirectories(directories map[string]ISharedDirectory) MultipleDirectoryShare { + instance := MultipleDirectoryShareClass.Alloc().InitWithDirectories(directories) + instance.Autorelease() + return instance +} + +func (m_ MultipleDirectoryShare) Init() MultipleDirectoryShare { + rv := objc.Call[MultipleDirectoryShare](m_, objc.Sel("init")) + return rv +} + +func (mc _MultipleDirectoryShareClass) Alloc() MultipleDirectoryShare { + rv := objc.Call[MultipleDirectoryShare](mc, objc.Sel("alloc")) + return rv +} + +func (mc _MultipleDirectoryShareClass) New() MultipleDirectoryShare { + rv := objc.Call[MultipleDirectoryShare](mc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewMultipleDirectoryShare() MultipleDirectoryShare { + return MultipleDirectoryShareClass.New() +} + +// Transforms a string to be a valid directory name. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare/3816085-canonicalizednamefromname?language=objc +func (mc _MultipleDirectoryShareClass) CanonicalizedNameFromName(name string) string { + rv := objc.Call[string](mc, objc.Sel("canonicalizedNameFromName:"), name) + return rv +} + +// Transforms a string to be a valid directory name. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare/3816085-canonicalizednamefromname?language=objc +func MultipleDirectoryShare_CanonicalizedNameFromName(name string) string { + return MultipleDirectoryShareClass.CanonicalizedNameFromName(name) +} + +// Check if a name is a valid directory name. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare/3787629-validatename?language=objc +func (mc _MultipleDirectoryShareClass) ValidateNameError(name string, error unsafe.Pointer) bool { + rv := objc.Call[bool](mc, objc.Sel("validateName:error:"), name, error) + return rv +} + +// Check if a name is a valid directory name. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare/3787629-validatename?language=objc +func MultipleDirectoryShare_ValidateNameError(name string, error unsafe.Pointer) bool { + return MultipleDirectoryShareClass.ValidateNameError(name, error) +} + +// The directories on the host to expose to the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzmultipledirectoryshare/3787626-directories?language=objc +func (m_ MultipleDirectoryShare) Directories() map[string]SharedDirectory { + rv := objc.Call[map[string]SharedDirectory](m_, objc.Sel("directories")) + return rv +} diff --git a/macos/virtualization/nat_network_device_attachment.gen.go b/macos/virtualization/nat_network_device_attachment.gen.go new file mode 100644 index 00000000..65c3c2bb --- /dev/null +++ b/macos/virtualization/nat_network_device_attachment.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [NATNetworkDeviceAttachment] class. +var NATNetworkDeviceAttachmentClass = _NATNetworkDeviceAttachmentClass{objc.GetClass("VZNATNetworkDeviceAttachment")} + +type _NATNetworkDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [NATNetworkDeviceAttachment] class. +type INATNetworkDeviceAttachment interface { + INetworkDeviceAttachment +} + +// A device that routes network requests through the host computer and performs network address translation on the resulting packets. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznatnetworkdeviceattachment?language=objc +type NATNetworkDeviceAttachment struct { + NetworkDeviceAttachment +} + +func NATNetworkDeviceAttachmentFrom(ptr unsafe.Pointer) NATNetworkDeviceAttachment { + return NATNetworkDeviceAttachment{ + NetworkDeviceAttachment: NetworkDeviceAttachmentFrom(ptr), + } +} + +func (n_ NATNetworkDeviceAttachment) Init() NATNetworkDeviceAttachment { + rv := objc.Call[NATNetworkDeviceAttachment](n_, objc.Sel("init")) + return rv +} + +func (nc _NATNetworkDeviceAttachmentClass) Alloc() NATNetworkDeviceAttachment { + rv := objc.Call[NATNetworkDeviceAttachment](nc, objc.Sel("alloc")) + return rv +} + +func (nc _NATNetworkDeviceAttachmentClass) New() NATNetworkDeviceAttachment { + rv := objc.Call[NATNetworkDeviceAttachment](nc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewNATNetworkDeviceAttachment() NATNetworkDeviceAttachment { + return NATNetworkDeviceAttachmentClass.New() +} diff --git a/macos/virtualization/network_block_device_storage_device_attachment.gen.go b/macos/virtualization/network_block_device_storage_device_attachment.gen.go new file mode 100644 index 00000000..4a293554 --- /dev/null +++ b/macos/virtualization/network_block_device_storage_device_attachment.gen.go @@ -0,0 +1,161 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [NetworkBlockDeviceStorageDeviceAttachment] class. +var NetworkBlockDeviceStorageDeviceAttachmentClass = _NetworkBlockDeviceStorageDeviceAttachmentClass{objc.GetClass("VZNetworkBlockDeviceStorageDeviceAttachment")} + +type _NetworkBlockDeviceStorageDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [NetworkBlockDeviceStorageDeviceAttachment] class. +type INetworkBlockDeviceStorageDeviceAttachment interface { + IStorageDeviceAttachment + SynchronizationMode() DiskSynchronizationMode + Delegate() NetworkBlockDeviceStorageDeviceAttachmentDelegateObject + SetDelegate(value PNetworkBlockDeviceStorageDeviceAttachmentDelegate) + SetDelegateObject(valueObject objc.IObject) + IsForcedReadOnly() bool + URL() foundation.URL + Timeout() foundation.TimeInterval +} + +// A storage device attachment backed by a Network Block Device (NBD) client. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment?language=objc +type NetworkBlockDeviceStorageDeviceAttachment struct { + StorageDeviceAttachment +} + +func NetworkBlockDeviceStorageDeviceAttachmentFrom(ptr unsafe.Pointer) NetworkBlockDeviceStorageDeviceAttachment { + return NetworkBlockDeviceStorageDeviceAttachment{ + StorageDeviceAttachment: StorageDeviceAttachmentFrom(ptr), + } +} + +func (n_ NetworkBlockDeviceStorageDeviceAttachment) InitWithURLTimeoutForcedReadOnlySynchronizationModeError(URL foundation.IURL, timeout foundation.TimeInterval, forcedReadOnly bool, synchronizationMode DiskSynchronizationMode, error unsafe.Pointer) NetworkBlockDeviceStorageDeviceAttachment { + rv := objc.Call[NetworkBlockDeviceStorageDeviceAttachment](n_, objc.Sel("initWithURL:timeout:forcedReadOnly:synchronizationMode:error:"), URL, timeout, forcedReadOnly, synchronizationMode, error) + return rv +} + +// Creates a new network block device storage attachment from an NBD Uniform Resource Indicator (URI) represented as a URL, timeout value, and read-only and synchronization modes that you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168505-initwithurl?language=objc +func NewNetworkBlockDeviceStorageDeviceAttachmentWithURLTimeoutForcedReadOnlySynchronizationModeError(URL foundation.IURL, timeout foundation.TimeInterval, forcedReadOnly bool, synchronizationMode DiskSynchronizationMode, error unsafe.Pointer) NetworkBlockDeviceStorageDeviceAttachment { + instance := NetworkBlockDeviceStorageDeviceAttachmentClass.Alloc().InitWithURLTimeoutForcedReadOnlySynchronizationModeError(URL, timeout, forcedReadOnly, synchronizationMode, error) + instance.Autorelease() + return instance +} + +func (n_ NetworkBlockDeviceStorageDeviceAttachment) InitWithURLError(URL foundation.IURL, error unsafe.Pointer) NetworkBlockDeviceStorageDeviceAttachment { + rv := objc.Call[NetworkBlockDeviceStorageDeviceAttachment](n_, objc.Sel("initWithURL:error:"), URL, error) + return rv +} + +// Creates a new network block device (NBD) storage attachment from an NDB Uniform Resource Indicator (URI) represented as a URL that you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168504-initwithurl?language=objc +func NewNetworkBlockDeviceStorageDeviceAttachmentWithURLError(URL foundation.IURL, error unsafe.Pointer) NetworkBlockDeviceStorageDeviceAttachment { + instance := NetworkBlockDeviceStorageDeviceAttachmentClass.Alloc().InitWithURLError(URL, error) + instance.Autorelease() + return instance +} + +func (nc _NetworkBlockDeviceStorageDeviceAttachmentClass) Alloc() NetworkBlockDeviceStorageDeviceAttachment { + rv := objc.Call[NetworkBlockDeviceStorageDeviceAttachment](nc, objc.Sel("alloc")) + return rv +} + +func (nc _NetworkBlockDeviceStorageDeviceAttachmentClass) New() NetworkBlockDeviceStorageDeviceAttachment { + rv := objc.Call[NetworkBlockDeviceStorageDeviceAttachment](nc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewNetworkBlockDeviceStorageDeviceAttachment() NetworkBlockDeviceStorageDeviceAttachment { + return NetworkBlockDeviceStorageDeviceAttachmentClass.New() +} + +func (n_ NetworkBlockDeviceStorageDeviceAttachment) Init() NetworkBlockDeviceStorageDeviceAttachment { + rv := objc.Call[NetworkBlockDeviceStorageDeviceAttachment](n_, objc.Sel("init")) + return rv +} + +// Checks if the URL is a valid network block device URL. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168508-validateurl?language=objc +func (nc _NetworkBlockDeviceStorageDeviceAttachmentClass) ValidateURLError(URL foundation.IURL, error unsafe.Pointer) bool { + rv := objc.Call[bool](nc, objc.Sel("validateURL:error:"), URL, error) + return rv +} + +// Checks if the URL is a valid network block device URL. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168508-validateurl?language=objc +func NetworkBlockDeviceStorageDeviceAttachment_ValidateURLError(URL foundation.IURL, error unsafe.Pointer) bool { + return NetworkBlockDeviceStorageDeviceAttachmentClass.ValidateURLError(URL, error) +} + +// The mode in which the NBD client synchronizes data with the NBD server. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168506-synchronizationmode?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) SynchronizationMode() DiskSynchronizationMode { + rv := objc.Call[DiskSynchronizationMode](n_, objc.Sel("synchronizationMode")) + return rv +} + +// The object that receives messages about changes to the network block device attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168502-delegate?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) Delegate() NetworkBlockDeviceStorageDeviceAttachmentDelegateObject { + rv := objc.Call[NetworkBlockDeviceStorageDeviceAttachmentDelegateObject](n_, objc.Sel("delegate")) + return rv +} + +// The object that receives messages about changes to the network block device attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168502-delegate?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) SetDelegate(value PNetworkBlockDeviceStorageDeviceAttachmentDelegate) { + po0 := objc.WrapAsProtocol("VZNetworkBlockDeviceStorageDeviceAttachmentDelegate", value) + objc.SetAssociatedObject(n_, objc.AssociationKey("setDelegate"), po0, objc.ASSOCIATION_RETAIN) + objc.Call[objc.Void](n_, objc.Sel("setDelegate:"), po0) +} + +// The object that receives messages about changes to the network block device attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168502-delegate?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) SetDelegateObject(valueObject objc.IObject) { + objc.Call[objc.Void](n_, objc.Sel("setDelegate:"), valueObject) +} + +// Returns a Boolean value that indicates whether the underlying disk attachment network is in a read-only state. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168503-forcedreadonly?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) IsForcedReadOnly() bool { + rv := objc.Call[bool](n_, objc.Sel("isForcedReadOnly")) + return rv +} + +// The URL that refers to the NBD server to which the NBD client will connect. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168501-url?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) URL() foundation.URL { + rv := objc.Call[foundation.URL](n_, objc.Sel("URL")) + return rv +} + +// The timeout value in seconds for the connection between the client and server. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachment/4168507-timeout?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachment) Timeout() foundation.TimeInterval { + rv := objc.Call[foundation.TimeInterval](n_, objc.Sel("timeout")) + return rv +} diff --git a/macos/virtualization/network_block_device_storage_device_attachment_delegate.gen.go b/macos/virtualization/network_block_device_storage_device_attachment_delegate.gen.go new file mode 100644 index 00000000..9fcc29fc --- /dev/null +++ b/macos/virtualization/network_block_device_storage_device_attachment_delegate.gen.go @@ -0,0 +1,92 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// Methods you implement to respond to changes to a network block device attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate?language=objc +type PNetworkBlockDeviceStorageDeviceAttachmentDelegate interface { + // optional + AttachmentDidEncounterError(attachment NetworkBlockDeviceStorageDeviceAttachment, error foundation.Error) + HasAttachmentDidEncounterError() bool + + // optional + AttachmentWasConnected(attachment NetworkBlockDeviceStorageDeviceAttachment) + HasAttachmentWasConnected() bool +} + +// A delegate implementation builder for the [PNetworkBlockDeviceStorageDeviceAttachmentDelegate] protocol. +type NetworkBlockDeviceStorageDeviceAttachmentDelegate struct { + _AttachmentDidEncounterError func(attachment NetworkBlockDeviceStorageDeviceAttachment, error foundation.Error) + _AttachmentWasConnected func(attachment NetworkBlockDeviceStorageDeviceAttachment) +} + +func (di *NetworkBlockDeviceStorageDeviceAttachmentDelegate) HasAttachmentDidEncounterError() bool { + return di._AttachmentDidEncounterError != nil +} + +// The method the attachment object calls when the NBD client encounters a nonrecoverable error. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate/4168510-attachment?language=objc +func (di *NetworkBlockDeviceStorageDeviceAttachmentDelegate) SetAttachmentDidEncounterError(f func(attachment NetworkBlockDeviceStorageDeviceAttachment, error foundation.Error)) { + di._AttachmentDidEncounterError = f +} + +// The method the attachment object calls when the NBD client encounters a nonrecoverable error. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate/4168510-attachment?language=objc +func (di *NetworkBlockDeviceStorageDeviceAttachmentDelegate) AttachmentDidEncounterError(attachment NetworkBlockDeviceStorageDeviceAttachment, error foundation.Error) { + di._AttachmentDidEncounterError(attachment, error) +} +func (di *NetworkBlockDeviceStorageDeviceAttachmentDelegate) HasAttachmentWasConnected() bool { + return di._AttachmentWasConnected != nil +} + +// The method the attachment object calls when the NBD client successfully connects or reconnects with the server. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate/4168511-attachmentwasconnected?language=objc +func (di *NetworkBlockDeviceStorageDeviceAttachmentDelegate) SetAttachmentWasConnected(f func(attachment NetworkBlockDeviceStorageDeviceAttachment)) { + di._AttachmentWasConnected = f +} + +// The method the attachment object calls when the NBD client successfully connects or reconnects with the server. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate/4168511-attachmentwasconnected?language=objc +func (di *NetworkBlockDeviceStorageDeviceAttachmentDelegate) AttachmentWasConnected(attachment NetworkBlockDeviceStorageDeviceAttachment) { + di._AttachmentWasConnected(attachment) +} + +// ensure impl type implements protocol interface +var _ PNetworkBlockDeviceStorageDeviceAttachmentDelegate = (*NetworkBlockDeviceStorageDeviceAttachmentDelegateObject)(nil) + +// A concrete type for the [PNetworkBlockDeviceStorageDeviceAttachmentDelegate] protocol. +type NetworkBlockDeviceStorageDeviceAttachmentDelegateObject struct { + objc.Object +} + +func (n_ NetworkBlockDeviceStorageDeviceAttachmentDelegateObject) HasAttachmentDidEncounterError() bool { + return n_.RespondsToSelector(objc.Sel("attachment:didEncounterError:")) +} + +// The method the attachment object calls when the NBD client encounters a nonrecoverable error. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate/4168510-attachment?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachmentDelegateObject) AttachmentDidEncounterError(attachment NetworkBlockDeviceStorageDeviceAttachment, error foundation.Error) { + objc.Call[objc.Void](n_, objc.Sel("attachment:didEncounterError:"), attachment, error) +} + +func (n_ NetworkBlockDeviceStorageDeviceAttachmentDelegateObject) HasAttachmentWasConnected() bool { + return n_.RespondsToSelector(objc.Sel("attachmentWasConnected:")) +} + +// The method the attachment object calls when the NBD client successfully connects or reconnects with the server. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkblockdevicestoragedeviceattachmentdelegate/4168511-attachmentwasconnected?language=objc +func (n_ NetworkBlockDeviceStorageDeviceAttachmentDelegateObject) AttachmentWasConnected(attachment NetworkBlockDeviceStorageDeviceAttachment) { + objc.Call[objc.Void](n_, objc.Sel("attachmentWasConnected:"), attachment) +} diff --git a/macos/virtualization/network_device.gen.go b/macos/virtualization/network_device.gen.go new file mode 100644 index 00000000..14e771cb --- /dev/null +++ b/macos/virtualization/network_device.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [NetworkDevice] class. +var NetworkDeviceClass = _NetworkDeviceClass{objc.GetClass("VZNetworkDevice")} + +type _NetworkDeviceClass struct { + objc.Class +} + +// An interface definition for the [NetworkDevice] class. +type INetworkDevice interface { + objc.IObject + Attachment() NetworkDeviceAttachment + SetAttachment(value INetworkDeviceAttachment) +} + +// A base class that represents a network device in a virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdevice?language=objc +type NetworkDevice struct { + objc.Object +} + +func NetworkDeviceFrom(ptr unsafe.Pointer) NetworkDevice { + return NetworkDevice{ + Object: objc.ObjectFrom(ptr), + } +} + +func (nc _NetworkDeviceClass) Alloc() NetworkDevice { + rv := objc.Call[NetworkDevice](nc, objc.Sel("alloc")) + return rv +} + +func (nc _NetworkDeviceClass) New() NetworkDevice { + rv := objc.Call[NetworkDevice](nc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewNetworkDevice() NetworkDevice { + return NetworkDeviceClass.New() +} + +func (n_ NetworkDevice) Init() NetworkDevice { + rv := objc.Call[NetworkDevice](n_, objc.Sel("init")) + return rv +} + +// The network attachment that’s connected to this network device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdevice/3869833-attachment?language=objc +func (n_ NetworkDevice) Attachment() NetworkDeviceAttachment { + rv := objc.Call[NetworkDeviceAttachment](n_, objc.Sel("attachment")) + return rv +} + +// The network attachment that’s connected to this network device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdevice/3869833-attachment?language=objc +func (n_ NetworkDevice) SetAttachment(value INetworkDeviceAttachment) { + objc.Call[objc.Void](n_, objc.Sel("setAttachment:"), value) +} diff --git a/macos/virtualization/network_device_attachment.gen.go b/macos/virtualization/network_device_attachment.gen.go new file mode 100644 index 00000000..cab94b4f --- /dev/null +++ b/macos/virtualization/network_device_attachment.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [NetworkDeviceAttachment] class. +var NetworkDeviceAttachmentClass = _NetworkDeviceAttachmentClass{objc.GetClass("VZNetworkDeviceAttachment")} + +type _NetworkDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [NetworkDeviceAttachment] class. +type INetworkDeviceAttachment interface { + objc.IObject +} + +// The common behaviors for the network attachment points of your virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdeviceattachment?language=objc +type NetworkDeviceAttachment struct { + objc.Object +} + +func NetworkDeviceAttachmentFrom(ptr unsafe.Pointer) NetworkDeviceAttachment { + return NetworkDeviceAttachment{ + Object: objc.ObjectFrom(ptr), + } +} + +func (nc _NetworkDeviceAttachmentClass) Alloc() NetworkDeviceAttachment { + rv := objc.Call[NetworkDeviceAttachment](nc, objc.Sel("alloc")) + return rv +} + +func (nc _NetworkDeviceAttachmentClass) New() NetworkDeviceAttachment { + rv := objc.Call[NetworkDeviceAttachment](nc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewNetworkDeviceAttachment() NetworkDeviceAttachment { + return NetworkDeviceAttachmentClass.New() +} + +func (n_ NetworkDeviceAttachment) Init() NetworkDeviceAttachment { + rv := objc.Call[NetworkDeviceAttachment](n_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/network_device_configuration.gen.go b/macos/virtualization/network_device_configuration.gen.go new file mode 100644 index 00000000..90ad4c3e --- /dev/null +++ b/macos/virtualization/network_device_configuration.gen.go @@ -0,0 +1,88 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [NetworkDeviceConfiguration] class. +var NetworkDeviceConfigurationClass = _NetworkDeviceConfigurationClass{objc.GetClass("VZNetworkDeviceConfiguration")} + +type _NetworkDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [NetworkDeviceConfiguration] class. +type INetworkDeviceConfiguration interface { + objc.IObject + MACAddress() MACAddress + SetMACAddress(value IMACAddress) + Attachment() NetworkDeviceAttachment + SetAttachment(value INetworkDeviceAttachment) +} + +// The common configuration traits for network devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdeviceconfiguration?language=objc +type NetworkDeviceConfiguration struct { + objc.Object +} + +func NetworkDeviceConfigurationFrom(ptr unsafe.Pointer) NetworkDeviceConfiguration { + return NetworkDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (nc _NetworkDeviceConfigurationClass) Alloc() NetworkDeviceConfiguration { + rv := objc.Call[NetworkDeviceConfiguration](nc, objc.Sel("alloc")) + return rv +} + +func (nc _NetworkDeviceConfigurationClass) New() NetworkDeviceConfiguration { + rv := objc.Call[NetworkDeviceConfiguration](nc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewNetworkDeviceConfiguration() NetworkDeviceConfiguration { + return NetworkDeviceConfigurationClass.New() +} + +func (n_ NetworkDeviceConfiguration) Init() NetworkDeviceConfiguration { + rv := objc.Call[NetworkDeviceConfiguration](n_, objc.Sel("init")) + return rv +} + +// The media access control (MAC) address to assign to the network device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdeviceconfiguration/3656653-macaddress?language=objc +func (n_ NetworkDeviceConfiguration) MACAddress() MACAddress { + rv := objc.Call[MACAddress](n_, objc.Sel("MACAddress")) + return rv +} + +// The media access control (MAC) address to assign to the network device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdeviceconfiguration/3656653-macaddress?language=objc +func (n_ NetworkDeviceConfiguration) SetMACAddress(value IMACAddress) { + objc.Call[objc.Void](n_, objc.Sel("setMACAddress:"), value) +} + +// The object that defines how the virtual network device communicates with the host system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdeviceconfiguration/3656654-attachment?language=objc +func (n_ NetworkDeviceConfiguration) Attachment() NetworkDeviceAttachment { + rv := objc.Call[NetworkDeviceAttachment](n_, objc.Sel("attachment")) + return rv +} + +// The object that defines how the virtual network device communicates with the host system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznetworkdeviceconfiguration/3656654-attachment?language=objc +func (n_ NetworkDeviceConfiguration) SetAttachment(value INetworkDeviceAttachment) { + objc.Call[objc.Void](n_, objc.Sel("setAttachment:"), value) +} diff --git a/macos/virtualization/nvm_express_controller_device_configuration.gen.go b/macos/virtualization/nvm_express_controller_device_configuration.gen.go new file mode 100644 index 00000000..b8be3d26 --- /dev/null +++ b/macos/virtualization/nvm_express_controller_device_configuration.gen.go @@ -0,0 +1,68 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [NVMExpressControllerDeviceConfiguration] class. +var NVMExpressControllerDeviceConfigurationClass = _NVMExpressControllerDeviceConfigurationClass{objc.GetClass("VZNVMExpressControllerDeviceConfiguration")} + +type _NVMExpressControllerDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [NVMExpressControllerDeviceConfiguration] class. +type INVMExpressControllerDeviceConfiguration interface { + IStorageDeviceConfiguration +} + +// The configuration object that represents an NVM Express Controller storage device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznvmexpresscontrollerdeviceconfiguration?language=objc +type NVMExpressControllerDeviceConfiguration struct { + StorageDeviceConfiguration +} + +func NVMExpressControllerDeviceConfigurationFrom(ptr unsafe.Pointer) NVMExpressControllerDeviceConfiguration { + return NVMExpressControllerDeviceConfiguration{ + StorageDeviceConfiguration: StorageDeviceConfigurationFrom(ptr), + } +} + +func (n_ NVMExpressControllerDeviceConfiguration) InitWithAttachment(attachment IStorageDeviceAttachment) NVMExpressControllerDeviceConfiguration { + rv := objc.Call[NVMExpressControllerDeviceConfiguration](n_, objc.Sel("initWithAttachment:"), attachment) + return rv +} + +// Creates a new NVM Express controller configuration with the storage device attachment you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vznvmexpresscontrollerdeviceconfiguration/4161084-initwithattachment?language=objc +func NewNVMExpressControllerDeviceConfigurationWithAttachment(attachment IStorageDeviceAttachment) NVMExpressControllerDeviceConfiguration { + instance := NVMExpressControllerDeviceConfigurationClass.Alloc().InitWithAttachment(attachment) + instance.Autorelease() + return instance +} + +func (nc _NVMExpressControllerDeviceConfigurationClass) Alloc() NVMExpressControllerDeviceConfiguration { + rv := objc.Call[NVMExpressControllerDeviceConfiguration](nc, objc.Sel("alloc")) + return rv +} + +func (nc _NVMExpressControllerDeviceConfigurationClass) New() NVMExpressControllerDeviceConfiguration { + rv := objc.Call[NVMExpressControllerDeviceConfiguration](nc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewNVMExpressControllerDeviceConfiguration() NVMExpressControllerDeviceConfiguration { + return NVMExpressControllerDeviceConfigurationClass.New() +} + +func (n_ NVMExpressControllerDeviceConfiguration) Init() NVMExpressControllerDeviceConfiguration { + rv := objc.Call[NVMExpressControllerDeviceConfiguration](n_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/platform_configuration.gen.go b/macos/virtualization/platform_configuration.gen.go new file mode 100644 index 00000000..75668489 --- /dev/null +++ b/macos/virtualization/platform_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [PlatformConfiguration] class. +var PlatformConfigurationClass = _PlatformConfigurationClass{objc.GetClass("VZPlatformConfiguration")} + +type _PlatformConfigurationClass struct { + objc.Class +} + +// An interface definition for the [PlatformConfiguration] class. +type IPlatformConfiguration interface { + objc.IObject +} + +// The base class for a platform configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzplatformconfiguration?language=objc +type PlatformConfiguration struct { + objc.Object +} + +func PlatformConfigurationFrom(ptr unsafe.Pointer) PlatformConfiguration { + return PlatformConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (pc _PlatformConfigurationClass) Alloc() PlatformConfiguration { + rv := objc.Call[PlatformConfiguration](pc, objc.Sel("alloc")) + return rv +} + +func (pc _PlatformConfigurationClass) New() PlatformConfiguration { + rv := objc.Call[PlatformConfiguration](pc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewPlatformConfiguration() PlatformConfiguration { + return PlatformConfigurationClass.New() +} + +func (p_ PlatformConfiguration) Init() PlatformConfiguration { + rv := objc.Call[PlatformConfiguration](p_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/pointing_device_configuration.gen.go b/macos/virtualization/pointing_device_configuration.gen.go new file mode 100644 index 00000000..b1e5de33 --- /dev/null +++ b/macos/virtualization/pointing_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [PointingDeviceConfiguration] class. +var PointingDeviceConfigurationClass = _PointingDeviceConfigurationClass{objc.GetClass("VZPointingDeviceConfiguration")} + +type _PointingDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [PointingDeviceConfiguration] class. +type IPointingDeviceConfiguration interface { + objc.IObject +} + +// The base class for a pointing device configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzpointingdeviceconfiguration?language=objc +type PointingDeviceConfiguration struct { + objc.Object +} + +func PointingDeviceConfigurationFrom(ptr unsafe.Pointer) PointingDeviceConfiguration { + return PointingDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (pc _PointingDeviceConfigurationClass) Alloc() PointingDeviceConfiguration { + rv := objc.Call[PointingDeviceConfiguration](pc, objc.Sel("alloc")) + return rv +} + +func (pc _PointingDeviceConfigurationClass) New() PointingDeviceConfiguration { + rv := objc.Call[PointingDeviceConfiguration](pc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewPointingDeviceConfiguration() PointingDeviceConfiguration { + return PointingDeviceConfigurationClass.New() +} + +func (p_ PointingDeviceConfiguration) Init() PointingDeviceConfiguration { + rv := objc.Call[PointingDeviceConfiguration](p_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/protocols.gen.m b/macos/virtualization/protocols.gen.m new file mode 100644 index 00000000..679c6800 --- /dev/null +++ b/macos/virtualization/protocols.gen.m @@ -0,0 +1,12 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +#import "Virtualization/Virtualization.h" + +void importVirtualizationProtocols() { + id o; + o = @protocol(VZGraphicsDisplayObserver); + o = @protocol(VZNetworkBlockDeviceStorageDeviceAttachmentDelegate); + o = @protocol(VZVirtioConsoleDeviceDelegate); + o = @protocol(VZVirtioSocketListenerDelegate); + o = @protocol(VZVirtualMachineDelegate); +} diff --git a/macos/virtualization/serial_port_attachment.gen.go b/macos/virtualization/serial_port_attachment.gen.go new file mode 100644 index 00000000..945d8842 --- /dev/null +++ b/macos/virtualization/serial_port_attachment.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SerialPortAttachment] class. +var SerialPortAttachmentClass = _SerialPortAttachmentClass{objc.GetClass("VZSerialPortAttachment")} + +type _SerialPortAttachmentClass struct { + objc.Class +} + +// An interface definition for the [SerialPortAttachment] class. +type ISerialPortAttachment interface { + objc.IObject +} + +// The common behaviors for the serial attachment points of your virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzserialportattachment?language=objc +type SerialPortAttachment struct { + objc.Object +} + +func SerialPortAttachmentFrom(ptr unsafe.Pointer) SerialPortAttachment { + return SerialPortAttachment{ + Object: objc.ObjectFrom(ptr), + } +} + +func (sc _SerialPortAttachmentClass) Alloc() SerialPortAttachment { + rv := objc.Call[SerialPortAttachment](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SerialPortAttachmentClass) New() SerialPortAttachment { + rv := objc.Call[SerialPortAttachment](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSerialPortAttachment() SerialPortAttachment { + return SerialPortAttachmentClass.New() +} + +func (s_ SerialPortAttachment) Init() SerialPortAttachment { + rv := objc.Call[SerialPortAttachment](s_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/serial_port_configuration.gen.go b/macos/virtualization/serial_port_configuration.gen.go new file mode 100644 index 00000000..c6cb10fb --- /dev/null +++ b/macos/virtualization/serial_port_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SerialPortConfiguration] class. +var SerialPortConfigurationClass = _SerialPortConfigurationClass{objc.GetClass("VZSerialPortConfiguration")} + +type _SerialPortConfigurationClass struct { + objc.Class +} + +// An interface definition for the [SerialPortConfiguration] class. +type ISerialPortConfiguration interface { + objc.IObject + Attachment() SerialPortAttachment + SetAttachment(value ISerialPortAttachment) +} + +// The common configuration traits for serial port requests. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzserialportconfiguration?language=objc +type SerialPortConfiguration struct { + objc.Object +} + +func SerialPortConfigurationFrom(ptr unsafe.Pointer) SerialPortConfiguration { + return SerialPortConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (sc _SerialPortConfigurationClass) Alloc() SerialPortConfiguration { + rv := objc.Call[SerialPortConfiguration](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SerialPortConfigurationClass) New() SerialPortConfiguration { + rv := objc.Call[SerialPortConfiguration](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSerialPortConfiguration() SerialPortConfiguration { + return SerialPortConfigurationClass.New() +} + +func (s_ SerialPortConfiguration) Init() SerialPortConfiguration { + rv := objc.Call[SerialPortConfiguration](s_, objc.Sel("init")) + return rv +} + +// The object that defines how the configuration of the virtual machine’s serial port interfaces. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzserialportconfiguration/3656657-attachment?language=objc +func (s_ SerialPortConfiguration) Attachment() SerialPortAttachment { + rv := objc.Call[SerialPortAttachment](s_, objc.Sel("attachment")) + return rv +} + +// The object that defines how the configuration of the virtual machine’s serial port interfaces. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzserialportconfiguration/3656657-attachment?language=objc +func (s_ SerialPortConfiguration) SetAttachment(value ISerialPortAttachment) { + objc.Call[objc.Void](s_, objc.Sel("setAttachment:"), value) +} diff --git a/macos/virtualization/shared_directory.gen.go b/macos/virtualization/shared_directory.gen.go new file mode 100644 index 00000000..af013a9d --- /dev/null +++ b/macos/virtualization/shared_directory.gen.go @@ -0,0 +1,87 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SharedDirectory] class. +var SharedDirectoryClass = _SharedDirectoryClass{objc.GetClass("VZSharedDirectory")} + +type _SharedDirectoryClass struct { + objc.Class +} + +// An interface definition for the [SharedDirectory] class. +type ISharedDirectory interface { + objc.IObject + IsReadOnly() bool + URL() foundation.URL +} + +// A directory on the host that you can expose to a guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzshareddirectory?language=objc +type SharedDirectory struct { + objc.Object +} + +func SharedDirectoryFrom(ptr unsafe.Pointer) SharedDirectory { + return SharedDirectory{ + Object: objc.ObjectFrom(ptr), + } +} + +func (s_ SharedDirectory) InitWithURLReadOnly(url foundation.IURL, readOnly bool) SharedDirectory { + rv := objc.Call[SharedDirectory](s_, objc.Sel("initWithURL:readOnly:"), url, readOnly) + return rv +} + +// Initialize with a host directory. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzshareddirectory/3787632-initwithurl?language=objc +func NewSharedDirectoryWithURLReadOnly(url foundation.IURL, readOnly bool) SharedDirectory { + instance := SharedDirectoryClass.Alloc().InitWithURLReadOnly(url, readOnly) + instance.Autorelease() + return instance +} + +func (sc _SharedDirectoryClass) Alloc() SharedDirectory { + rv := objc.Call[SharedDirectory](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SharedDirectoryClass) New() SharedDirectory { + rv := objc.Call[SharedDirectory](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSharedDirectory() SharedDirectory { + return SharedDirectoryClass.New() +} + +func (s_ SharedDirectory) Init() SharedDirectory { + rv := objc.Call[SharedDirectory](s_, objc.Sel("init")) + return rv +} + +// A Boolean value that indicates whether the directory is read-only to the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzshareddirectory/3787633-readonly?language=objc +func (s_ SharedDirectory) IsReadOnly() bool { + rv := objc.Call[bool](s_, objc.Sel("isReadOnly")) + return rv +} + +// A file URL to a directory on the host system to expose to the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzshareddirectory/3787631-url?language=objc +func (s_ SharedDirectory) URL() foundation.URL { + rv := objc.Call[foundation.URL](s_, objc.Sel("URL")) + return rv +} diff --git a/macos/virtualization/single_directory_share.gen.go b/macos/virtualization/single_directory_share.gen.go new file mode 100644 index 00000000..fd17dcd7 --- /dev/null +++ b/macos/virtualization/single_directory_share.gen.go @@ -0,0 +1,77 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SingleDirectoryShare] class. +var SingleDirectoryShareClass = _SingleDirectoryShareClass{objc.GetClass("VZSingleDirectoryShare")} + +type _SingleDirectoryShareClass struct { + objc.Class +} + +// An interface definition for the [SingleDirectoryShare] class. +type ISingleDirectoryShare interface { + IDirectoryShare + Directory() SharedDirectory +} + +// An object that defines the directory share for a single directory. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzsingledirectoryshare?language=objc +type SingleDirectoryShare struct { + DirectoryShare +} + +func SingleDirectoryShareFrom(ptr unsafe.Pointer) SingleDirectoryShare { + return SingleDirectoryShare{ + DirectoryShare: DirectoryShareFrom(ptr), + } +} + +func (s_ SingleDirectoryShare) InitWithDirectory(directory ISharedDirectory) SingleDirectoryShare { + rv := objc.Call[SingleDirectoryShare](s_, objc.Sel("initWithDirectory:"), directory) + return rv +} + +// Creates a directory share with a directory that you specify on the host. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzsingledirectoryshare/3787636-initwithdirectory?language=objc +func NewSingleDirectoryShareWithDirectory(directory ISharedDirectory) SingleDirectoryShare { + instance := SingleDirectoryShareClass.Alloc().InitWithDirectory(directory) + instance.Autorelease() + return instance +} + +func (sc _SingleDirectoryShareClass) Alloc() SingleDirectoryShare { + rv := objc.Call[SingleDirectoryShare](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SingleDirectoryShareClass) New() SingleDirectoryShare { + rv := objc.Call[SingleDirectoryShare](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSingleDirectoryShare() SingleDirectoryShare { + return SingleDirectoryShareClass.New() +} + +func (s_ SingleDirectoryShare) Init() SingleDirectoryShare { + rv := objc.Call[SingleDirectoryShare](s_, objc.Sel("init")) + return rv +} + +// The directory on the host to share with the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzsingledirectoryshare/3787635-directory?language=objc +func (s_ SingleDirectoryShare) Directory() SharedDirectory { + rv := objc.Call[SharedDirectory](s_, objc.Sel("directory")) + return rv +} diff --git a/macos/virtualization/socket_device.gen.go b/macos/virtualization/socket_device.gen.go new file mode 100644 index 00000000..5ca79f0f --- /dev/null +++ b/macos/virtualization/socket_device.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SocketDevice] class. +var SocketDeviceClass = _SocketDeviceClass{objc.GetClass("VZSocketDevice")} + +type _SocketDeviceClass struct { + objc.Class +} + +// An interface definition for the [SocketDevice] class. +type ISocketDevice interface { + objc.IObject +} + +// The common behavior of socket devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzsocketdevice?language=objc +type SocketDevice struct { + objc.Object +} + +func SocketDeviceFrom(ptr unsafe.Pointer) SocketDevice { + return SocketDevice{ + Object: objc.ObjectFrom(ptr), + } +} + +func (sc _SocketDeviceClass) Alloc() SocketDevice { + rv := objc.Call[SocketDevice](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SocketDeviceClass) New() SocketDevice { + rv := objc.Call[SocketDevice](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSocketDevice() SocketDevice { + return SocketDeviceClass.New() +} + +func (s_ SocketDevice) Init() SocketDevice { + rv := objc.Call[SocketDevice](s_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/socket_device_configuration.gen.go b/macos/virtualization/socket_device_configuration.gen.go new file mode 100644 index 00000000..f47f6b43 --- /dev/null +++ b/macos/virtualization/socket_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SocketDeviceConfiguration] class. +var SocketDeviceConfigurationClass = _SocketDeviceConfigurationClass{objc.GetClass("VZSocketDeviceConfiguration")} + +type _SocketDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [SocketDeviceConfiguration] class. +type ISocketDeviceConfiguration interface { + objc.IObject +} + +// The common configuration traits for socket device requests. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzsocketdeviceconfiguration?language=objc +type SocketDeviceConfiguration struct { + objc.Object +} + +func SocketDeviceConfigurationFrom(ptr unsafe.Pointer) SocketDeviceConfiguration { + return SocketDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (sc _SocketDeviceConfigurationClass) Alloc() SocketDeviceConfiguration { + rv := objc.Call[SocketDeviceConfiguration](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SocketDeviceConfigurationClass) New() SocketDeviceConfiguration { + rv := objc.Call[SocketDeviceConfiguration](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSocketDeviceConfiguration() SocketDeviceConfiguration { + return SocketDeviceConfigurationClass.New() +} + +func (s_ SocketDeviceConfiguration) Init() SocketDeviceConfiguration { + rv := objc.Call[SocketDeviceConfiguration](s_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/spice_agent_port_attachment.gen.go b/macos/virtualization/spice_agent_port_attachment.gen.go new file mode 100644 index 00000000..bc11a131 --- /dev/null +++ b/macos/virtualization/spice_agent_port_attachment.gen.go @@ -0,0 +1,86 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [SpiceAgentPortAttachment] class. +var SpiceAgentPortAttachmentClass = _SpiceAgentPortAttachmentClass{objc.GetClass("VZSpiceAgentPortAttachment")} + +type _SpiceAgentPortAttachmentClass struct { + objc.Class +} + +// An interface definition for the [SpiceAgentPortAttachment] class. +type ISpiceAgentPortAttachment interface { + ISerialPortAttachment + SharesClipboard() bool + SetSharesClipboard(value bool) +} + +// An attachment point that enables the Spice clipboard sharing capability. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzspiceagentportattachment?language=objc +type SpiceAgentPortAttachment struct { + SerialPortAttachment +} + +func SpiceAgentPortAttachmentFrom(ptr unsafe.Pointer) SpiceAgentPortAttachment { + return SpiceAgentPortAttachment{ + SerialPortAttachment: SerialPortAttachmentFrom(ptr), + } +} + +func (s_ SpiceAgentPortAttachment) Init() SpiceAgentPortAttachment { + rv := objc.Call[SpiceAgentPortAttachment](s_, objc.Sel("init")) + return rv +} + +func (sc _SpiceAgentPortAttachmentClass) Alloc() SpiceAgentPortAttachment { + rv := objc.Call[SpiceAgentPortAttachment](sc, objc.Sel("alloc")) + return rv +} + +func (sc _SpiceAgentPortAttachmentClass) New() SpiceAgentPortAttachment { + rv := objc.Call[SpiceAgentPortAttachment](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewSpiceAgentPortAttachment() SpiceAgentPortAttachment { + return SpiceAgentPortAttachmentClass.New() +} + +// The name of the Virtio console port for the Spice guest agent. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzspiceagentportattachment/4024725-spiceagentportname?language=objc +func (sc _SpiceAgentPortAttachmentClass) SpiceAgentPortName() string { + rv := objc.Call[string](sc, objc.Sel("spiceAgentPortName")) + return rv +} + +// The name of the Virtio console port for the Spice guest agent. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzspiceagentportattachment/4024725-spiceagentportname?language=objc +func SpiceAgentPortAttachment_SpiceAgentPortName() string { + return SpiceAgentPortAttachmentClass.SpiceAgentPortName() +} + +// A Boolean value that indicates whether the framework needs to share the clipboard between the host and the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzspiceagentportattachment/4024724-sharesclipboard?language=objc +func (s_ SpiceAgentPortAttachment) SharesClipboard() bool { + rv := objc.Call[bool](s_, objc.Sel("sharesClipboard")) + return rv +} + +// A Boolean value that indicates whether the framework needs to share the clipboard between the host and the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzspiceagentportattachment/4024724-sharesclipboard?language=objc +func (s_ SpiceAgentPortAttachment) SetSharesClipboard(value bool) { + objc.Call[objc.Void](s_, objc.Sel("setSharesClipboard:"), value) +} diff --git a/macos/virtualization/storage_device_attachment.gen.go b/macos/virtualization/storage_device_attachment.gen.go new file mode 100644 index 00000000..3c44a555 --- /dev/null +++ b/macos/virtualization/storage_device_attachment.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [StorageDeviceAttachment] class. +var StorageDeviceAttachmentClass = _StorageDeviceAttachmentClass{objc.GetClass("VZStorageDeviceAttachment")} + +type _StorageDeviceAttachmentClass struct { + objc.Class +} + +// An interface definition for the [StorageDeviceAttachment] class. +type IStorageDeviceAttachment interface { + objc.IObject +} + +// The common behaviors for storage devices in the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzstoragedeviceattachment?language=objc +type StorageDeviceAttachment struct { + objc.Object +} + +func StorageDeviceAttachmentFrom(ptr unsafe.Pointer) StorageDeviceAttachment { + return StorageDeviceAttachment{ + Object: objc.ObjectFrom(ptr), + } +} + +func (sc _StorageDeviceAttachmentClass) Alloc() StorageDeviceAttachment { + rv := objc.Call[StorageDeviceAttachment](sc, objc.Sel("alloc")) + return rv +} + +func (sc _StorageDeviceAttachmentClass) New() StorageDeviceAttachment { + rv := objc.Call[StorageDeviceAttachment](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewStorageDeviceAttachment() StorageDeviceAttachment { + return StorageDeviceAttachmentClass.New() +} + +func (s_ StorageDeviceAttachment) Init() StorageDeviceAttachment { + rv := objc.Call[StorageDeviceAttachment](s_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/storage_device_configuration.gen.go b/macos/virtualization/storage_device_configuration.gen.go new file mode 100644 index 00000000..b3acf39b --- /dev/null +++ b/macos/virtualization/storage_device_configuration.gen.go @@ -0,0 +1,63 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [StorageDeviceConfiguration] class. +var StorageDeviceConfigurationClass = _StorageDeviceConfigurationClass{objc.GetClass("VZStorageDeviceConfiguration")} + +type _StorageDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [StorageDeviceConfiguration] class. +type IStorageDeviceConfiguration interface { + objc.IObject + Attachment() StorageDeviceAttachment +} + +// The common configuration traits for storage device requests. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzstoragedeviceconfiguration?language=objc +type StorageDeviceConfiguration struct { + objc.Object +} + +func StorageDeviceConfigurationFrom(ptr unsafe.Pointer) StorageDeviceConfiguration { + return StorageDeviceConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (sc _StorageDeviceConfigurationClass) Alloc() StorageDeviceConfiguration { + rv := objc.Call[StorageDeviceConfiguration](sc, objc.Sel("alloc")) + return rv +} + +func (sc _StorageDeviceConfigurationClass) New() StorageDeviceConfiguration { + rv := objc.Call[StorageDeviceConfiguration](sc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewStorageDeviceConfiguration() StorageDeviceConfiguration { + return StorageDeviceConfigurationClass.New() +} + +func (s_ StorageDeviceConfiguration) Init() StorageDeviceConfiguration { + rv := objc.Call[StorageDeviceConfiguration](s_, objc.Sel("init")) + return rv +} + +// The attachment object that provides the underlying storage for the device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzstoragedeviceconfiguration/3656662-attachment?language=objc +func (s_ StorageDeviceConfiguration) Attachment() StorageDeviceAttachment { + rv := objc.Call[StorageDeviceAttachment](s_, objc.Sel("attachment")) + return rv +} diff --git a/macos/virtualization/usb_keyboard_configuration.gen.go b/macos/virtualization/usb_keyboard_configuration.gen.go new file mode 100644 index 00000000..0d86adad --- /dev/null +++ b/macos/virtualization/usb_keyboard_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [USBKeyboardConfiguration] class. +var USBKeyboardConfigurationClass = _USBKeyboardConfigurationClass{objc.GetClass("VZUSBKeyboardConfiguration")} + +type _USBKeyboardConfigurationClass struct { + objc.Class +} + +// An interface definition for the [USBKeyboardConfiguration] class. +type IUSBKeyboardConfiguration interface { + IKeyboardConfiguration +} + +// A device that defines the configuration for a USB keyboard. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzusbkeyboardconfiguration?language=objc +type USBKeyboardConfiguration struct { + KeyboardConfiguration +} + +func USBKeyboardConfigurationFrom(ptr unsafe.Pointer) USBKeyboardConfiguration { + return USBKeyboardConfiguration{ + KeyboardConfiguration: KeyboardConfigurationFrom(ptr), + } +} + +func (u_ USBKeyboardConfiguration) Init() USBKeyboardConfiguration { + rv := objc.Call[USBKeyboardConfiguration](u_, objc.Sel("init")) + return rv +} + +func (uc _USBKeyboardConfigurationClass) Alloc() USBKeyboardConfiguration { + rv := objc.Call[USBKeyboardConfiguration](uc, objc.Sel("alloc")) + return rv +} + +func (uc _USBKeyboardConfigurationClass) New() USBKeyboardConfiguration { + rv := objc.Call[USBKeyboardConfiguration](uc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewUSBKeyboardConfiguration() USBKeyboardConfiguration { + return USBKeyboardConfigurationClass.New() +} diff --git a/macos/virtualization/usb_mass_storage_device_configuration.gen.go b/macos/virtualization/usb_mass_storage_device_configuration.gen.go new file mode 100644 index 00000000..94011ae2 --- /dev/null +++ b/macos/virtualization/usb_mass_storage_device_configuration.gen.go @@ -0,0 +1,68 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [USBMassStorageDeviceConfiguration] class. +var USBMassStorageDeviceConfigurationClass = _USBMassStorageDeviceConfigurationClass{objc.GetClass("VZUSBMassStorageDeviceConfiguration")} + +type _USBMassStorageDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [USBMassStorageDeviceConfiguration] class. +type IUSBMassStorageDeviceConfiguration interface { + IStorageDeviceConfiguration +} + +// The configuration object that represents a USB Mass storage device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzusbmassstoragedeviceconfiguration?language=objc +type USBMassStorageDeviceConfiguration struct { + StorageDeviceConfiguration +} + +func USBMassStorageDeviceConfigurationFrom(ptr unsafe.Pointer) USBMassStorageDeviceConfiguration { + return USBMassStorageDeviceConfiguration{ + StorageDeviceConfiguration: StorageDeviceConfigurationFrom(ptr), + } +} + +func (u_ USBMassStorageDeviceConfiguration) InitWithAttachment(attachment IStorageDeviceAttachment) USBMassStorageDeviceConfiguration { + rv := objc.Call[USBMassStorageDeviceConfiguration](u_, objc.Sel("initWithAttachment:"), attachment) + return rv +} + +// Creates a new storage device configuration with the specified attachment. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzusbmassstoragedeviceconfiguration/3945424-initwithattachment?language=objc +func NewUSBMassStorageDeviceConfigurationWithAttachment(attachment IStorageDeviceAttachment) USBMassStorageDeviceConfiguration { + instance := USBMassStorageDeviceConfigurationClass.Alloc().InitWithAttachment(attachment) + instance.Autorelease() + return instance +} + +func (uc _USBMassStorageDeviceConfigurationClass) Alloc() USBMassStorageDeviceConfiguration { + rv := objc.Call[USBMassStorageDeviceConfiguration](uc, objc.Sel("alloc")) + return rv +} + +func (uc _USBMassStorageDeviceConfigurationClass) New() USBMassStorageDeviceConfiguration { + rv := objc.Call[USBMassStorageDeviceConfiguration](uc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewUSBMassStorageDeviceConfiguration() USBMassStorageDeviceConfiguration { + return USBMassStorageDeviceConfigurationClass.New() +} + +func (u_ USBMassStorageDeviceConfiguration) Init() USBMassStorageDeviceConfiguration { + rv := objc.Call[USBMassStorageDeviceConfiguration](u_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/usb_screen_coordinate_pointing_device_configuration.gen.go b/macos/virtualization/usb_screen_coordinate_pointing_device_configuration.gen.go new file mode 100644 index 00000000..a2fc6d33 --- /dev/null +++ b/macos/virtualization/usb_screen_coordinate_pointing_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [USBScreenCoordinatePointingDeviceConfiguration] class. +var USBScreenCoordinatePointingDeviceConfigurationClass = _USBScreenCoordinatePointingDeviceConfigurationClass{objc.GetClass("VZUSBScreenCoordinatePointingDeviceConfiguration")} + +type _USBScreenCoordinatePointingDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [USBScreenCoordinatePointingDeviceConfiguration] class. +type IUSBScreenCoordinatePointingDeviceConfiguration interface { + IPointingDeviceConfiguration +} + +// An object that defines the configuration for a USB pointing device that reports absolute coordinates. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzusbscreencoordinatepointingdeviceconfiguration?language=objc +type USBScreenCoordinatePointingDeviceConfiguration struct { + PointingDeviceConfiguration +} + +func USBScreenCoordinatePointingDeviceConfigurationFrom(ptr unsafe.Pointer) USBScreenCoordinatePointingDeviceConfiguration { + return USBScreenCoordinatePointingDeviceConfiguration{ + PointingDeviceConfiguration: PointingDeviceConfigurationFrom(ptr), + } +} + +func (u_ USBScreenCoordinatePointingDeviceConfiguration) Init() USBScreenCoordinatePointingDeviceConfiguration { + rv := objc.Call[USBScreenCoordinatePointingDeviceConfiguration](u_, objc.Sel("init")) + return rv +} + +func (uc _USBScreenCoordinatePointingDeviceConfigurationClass) Alloc() USBScreenCoordinatePointingDeviceConfiguration { + rv := objc.Call[USBScreenCoordinatePointingDeviceConfiguration](uc, objc.Sel("alloc")) + return rv +} + +func (uc _USBScreenCoordinatePointingDeviceConfigurationClass) New() USBScreenCoordinatePointingDeviceConfiguration { + rv := objc.Call[USBScreenCoordinatePointingDeviceConfiguration](uc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewUSBScreenCoordinatePointingDeviceConfiguration() USBScreenCoordinatePointingDeviceConfiguration { + return USBScreenCoordinatePointingDeviceConfigurationClass.New() +} diff --git a/macos/virtualization/virtio_block_device_configuration.gen.go b/macos/virtualization/virtio_block_device_configuration.gen.go new file mode 100644 index 00000000..15f10a17 --- /dev/null +++ b/macos/virtualization/virtio_block_device_configuration.gen.go @@ -0,0 +1,100 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioBlockDeviceConfiguration] class. +var VirtioBlockDeviceConfigurationClass = _VirtioBlockDeviceConfigurationClass{objc.GetClass("VZVirtioBlockDeviceConfiguration")} + +type _VirtioBlockDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioBlockDeviceConfiguration] class. +type IVirtioBlockDeviceConfiguration interface { + IStorageDeviceConfiguration + BlockDeviceIdentifier() string + SetBlockDeviceIdentifier(value string) +} + +// The configuration object that requests the creation of a virtual storage device in the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioblockdeviceconfiguration?language=objc +type VirtioBlockDeviceConfiguration struct { + StorageDeviceConfiguration +} + +func VirtioBlockDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioBlockDeviceConfiguration { + return VirtioBlockDeviceConfiguration{ + StorageDeviceConfiguration: StorageDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioBlockDeviceConfiguration) InitWithAttachment(attachment IStorageDeviceAttachment) VirtioBlockDeviceConfiguration { + rv := objc.Call[VirtioBlockDeviceConfiguration](v_, objc.Sel("initWithAttachment:"), attachment) + return rv +} + +// Creates a block device configuration object that uses the specified storage medium. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioblockdeviceconfiguration/3656664-initwithattachment?language=objc +func NewVirtioBlockDeviceConfigurationWithAttachment(attachment IStorageDeviceAttachment) VirtioBlockDeviceConfiguration { + instance := VirtioBlockDeviceConfigurationClass.Alloc().InitWithAttachment(attachment) + instance.Autorelease() + return instance +} + +func (vc _VirtioBlockDeviceConfigurationClass) Alloc() VirtioBlockDeviceConfiguration { + rv := objc.Call[VirtioBlockDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioBlockDeviceConfigurationClass) New() VirtioBlockDeviceConfiguration { + rv := objc.Call[VirtioBlockDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioBlockDeviceConfiguration() VirtioBlockDeviceConfiguration { + return VirtioBlockDeviceConfigurationClass.New() +} + +func (v_ VirtioBlockDeviceConfiguration) Init() VirtioBlockDeviceConfiguration { + rv := objc.Call[VirtioBlockDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +// Checks the validity of a block device identifier. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioblockdeviceconfiguration/3917718-validateblockdeviceidentifier?language=objc +func (vc _VirtioBlockDeviceConfigurationClass) ValidateBlockDeviceIdentifierError(blockDeviceIdentifier string, error unsafe.Pointer) bool { + rv := objc.Call[bool](vc, objc.Sel("validateBlockDeviceIdentifier:error:"), blockDeviceIdentifier, error) + return rv +} + +// Checks the validity of a block device identifier. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioblockdeviceconfiguration/3917718-validateblockdeviceidentifier?language=objc +func VirtioBlockDeviceConfiguration_ValidateBlockDeviceIdentifierError(blockDeviceIdentifier string, error unsafe.Pointer) bool { + return VirtioBlockDeviceConfigurationClass.ValidateBlockDeviceIdentifierError(blockDeviceIdentifier, error) +} + +// The string that identifies the VIRTIO block device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioblockdeviceconfiguration/3917717-blockdeviceidentifier?language=objc +func (v_ VirtioBlockDeviceConfiguration) BlockDeviceIdentifier() string { + rv := objc.Call[string](v_, objc.Sel("blockDeviceIdentifier")) + return rv +} + +// The string that identifies the VIRTIO block device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioblockdeviceconfiguration/3917717-blockdeviceidentifier?language=objc +func (v_ VirtioBlockDeviceConfiguration) SetBlockDeviceIdentifier(value string) { + objc.Call[objc.Void](v_, objc.Sel("setBlockDeviceIdentifier:"), value) +} diff --git a/macos/virtualization/virtio_console_device.gen.go b/macos/virtualization/virtio_console_device.gen.go new file mode 100644 index 00000000..0be7657b --- /dev/null +++ b/macos/virtualization/virtio_console_device.gen.go @@ -0,0 +1,90 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsoleDevice] class. +var VirtioConsoleDeviceClass = _VirtioConsoleDeviceClass{objc.GetClass("VZVirtioConsoleDevice")} + +type _VirtioConsoleDeviceClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsoleDevice] class. +type IVirtioConsoleDevice interface { + IConsoleDevice + Delegate() VirtioConsoleDeviceDelegateObject + SetDelegate(value PVirtioConsoleDeviceDelegate) + SetDelegateObject(valueObject objc.IObject) + Ports() VirtioConsolePortArray +} + +// A class that represents a Virtio console device in a virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevice?language=objc +type VirtioConsoleDevice struct { + ConsoleDevice +} + +func VirtioConsoleDeviceFrom(ptr unsafe.Pointer) VirtioConsoleDevice { + return VirtioConsoleDevice{ + ConsoleDevice: ConsoleDeviceFrom(ptr), + } +} + +func (vc _VirtioConsoleDeviceClass) Alloc() VirtioConsoleDevice { + rv := objc.Call[VirtioConsoleDevice](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsoleDeviceClass) New() VirtioConsoleDevice { + rv := objc.Call[VirtioConsoleDevice](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsoleDevice() VirtioConsoleDevice { + return VirtioConsoleDeviceClass.New() +} + +func (v_ VirtioConsoleDevice) Init() VirtioConsoleDevice { + rv := objc.Call[VirtioConsoleDevice](v_, objc.Sel("init")) + return rv +} + +// The delegate object for the console device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevice/4024727-delegate?language=objc +func (v_ VirtioConsoleDevice) Delegate() VirtioConsoleDeviceDelegateObject { + rv := objc.Call[VirtioConsoleDeviceDelegateObject](v_, objc.Sel("delegate")) + return rv +} + +// The delegate object for the console device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevice/4024727-delegate?language=objc +func (v_ VirtioConsoleDevice) SetDelegate(value PVirtioConsoleDeviceDelegate) { + po0 := objc.WrapAsProtocol("VZVirtioConsoleDeviceDelegate", value) + objc.SetAssociatedObject(v_, objc.AssociationKey("setDelegate"), po0, objc.ASSOCIATION_RETAIN) + objc.Call[objc.Void](v_, objc.Sel("setDelegate:"), po0) +} + +// The delegate object for the console device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevice/4024727-delegate?language=objc +func (v_ VirtioConsoleDevice) SetDelegateObject(valueObject objc.IObject) { + objc.Call[objc.Void](v_, objc.Sel("setDelegate:"), valueObject) +} + +// The array of console ports that a specific device uses. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevice/4024728-ports?language=objc +func (v_ VirtioConsoleDevice) Ports() VirtioConsolePortArray { + rv := objc.Call[VirtioConsolePortArray](v_, objc.Sel("ports")) + return rv +} diff --git a/macos/virtualization/virtio_console_device_configuration.gen.go b/macos/virtualization/virtio_console_device_configuration.gen.go new file mode 100644 index 00000000..b52fd565 --- /dev/null +++ b/macos/virtualization/virtio_console_device_configuration.gen.go @@ -0,0 +1,63 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsoleDeviceConfiguration] class. +var VirtioConsoleDeviceConfigurationClass = _VirtioConsoleDeviceConfigurationClass{objc.GetClass("VZVirtioConsoleDeviceConfiguration")} + +type _VirtioConsoleDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsoleDeviceConfiguration] class. +type IVirtioConsoleDeviceConfiguration interface { + IConsoleDeviceConfiguration + Ports() VirtioConsolePortConfigurationArray +} + +// A console device that enables communication between the host and the guest using console ports through a Virtio interface. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledeviceconfiguration?language=objc +type VirtioConsoleDeviceConfiguration struct { + ConsoleDeviceConfiguration +} + +func VirtioConsoleDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioConsoleDeviceConfiguration { + return VirtioConsoleDeviceConfiguration{ + ConsoleDeviceConfiguration: ConsoleDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioConsoleDeviceConfiguration) Init() VirtioConsoleDeviceConfiguration { + rv := objc.Call[VirtioConsoleDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioConsoleDeviceConfigurationClass) Alloc() VirtioConsoleDeviceConfiguration { + rv := objc.Call[VirtioConsoleDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsoleDeviceConfigurationClass) New() VirtioConsoleDeviceConfiguration { + rv := objc.Call[VirtioConsoleDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsoleDeviceConfiguration() VirtioConsoleDeviceConfiguration { + return VirtioConsoleDeviceConfigurationClass.New() +} + +// The list of Virtio port configurations. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledeviceconfiguration/4024732-ports?language=objc +func (v_ VirtioConsoleDeviceConfiguration) Ports() VirtioConsolePortConfigurationArray { + rv := objc.Call[VirtioConsolePortConfigurationArray](v_, objc.Sel("ports")) + return rv +} diff --git a/macos/virtualization/virtio_console_device_delegate.gen.go b/macos/virtualization/virtio_console_device_delegate.gen.go new file mode 100644 index 00000000..45af0e60 --- /dev/null +++ b/macos/virtualization/virtio_console_device_delegate.gen.go @@ -0,0 +1,91 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "github.com/progrium/darwinkit/objc" +) + +// Optional methods that you use to respond when a console port opens or closes in the virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate?language=objc +type PVirtioConsoleDeviceDelegate interface { + // optional + ConsoleDeviceDidOpenPort(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) + HasConsoleDeviceDidOpenPort() bool + + // optional + ConsoleDeviceDidClosePort(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) + HasConsoleDeviceDidClosePort() bool +} + +// A delegate implementation builder for the [PVirtioConsoleDeviceDelegate] protocol. +type VirtioConsoleDeviceDelegate struct { + _ConsoleDeviceDidOpenPort func(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) + _ConsoleDeviceDidClosePort func(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) +} + +func (di *VirtioConsoleDeviceDelegate) HasConsoleDeviceDidOpenPort() bool { + return di._ConsoleDeviceDidOpenPort != nil +} + +// Tells the delegate that the framework opened a console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate/4024731-consoledevice?language=objc +func (di *VirtioConsoleDeviceDelegate) SetConsoleDeviceDidOpenPort(f func(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort)) { + di._ConsoleDeviceDidOpenPort = f +} + +// Tells the delegate that the framework opened a console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate/4024731-consoledevice?language=objc +func (di *VirtioConsoleDeviceDelegate) ConsoleDeviceDidOpenPort(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) { + di._ConsoleDeviceDidOpenPort(consoleDevice, consolePort) +} +func (di *VirtioConsoleDeviceDelegate) HasConsoleDeviceDidClosePort() bool { + return di._ConsoleDeviceDidClosePort != nil +} + +// Tells the delegate that the framework closed a console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate/4024730-consoledevice?language=objc +func (di *VirtioConsoleDeviceDelegate) SetConsoleDeviceDidClosePort(f func(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort)) { + di._ConsoleDeviceDidClosePort = f +} + +// Tells the delegate that the framework closed a console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate/4024730-consoledevice?language=objc +func (di *VirtioConsoleDeviceDelegate) ConsoleDeviceDidClosePort(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) { + di._ConsoleDeviceDidClosePort(consoleDevice, consolePort) +} + +// ensure impl type implements protocol interface +var _ PVirtioConsoleDeviceDelegate = (*VirtioConsoleDeviceDelegateObject)(nil) + +// A concrete type for the [PVirtioConsoleDeviceDelegate] protocol. +type VirtioConsoleDeviceDelegateObject struct { + objc.Object +} + +func (v_ VirtioConsoleDeviceDelegateObject) HasConsoleDeviceDidOpenPort() bool { + return v_.RespondsToSelector(objc.Sel("consoleDevice:didOpenPort:")) +} + +// Tells the delegate that the framework opened a console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate/4024731-consoledevice?language=objc +func (v_ VirtioConsoleDeviceDelegateObject) ConsoleDeviceDidOpenPort(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) { + objc.Call[objc.Void](v_, objc.Sel("consoleDevice:didOpenPort:"), consoleDevice, consolePort) +} + +func (v_ VirtioConsoleDeviceDelegateObject) HasConsoleDeviceDidClosePort() bool { + return v_.RespondsToSelector(objc.Sel("consoleDevice:didClosePort:")) +} + +// Tells the delegate that the framework closed a console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledevicedelegate/4024730-consoledevice?language=objc +func (v_ VirtioConsoleDeviceDelegateObject) ConsoleDeviceDidClosePort(consoleDevice VirtioConsoleDevice, consolePort VirtioConsolePort) { + objc.Call[objc.Void](v_, objc.Sel("consoleDevice:didClosePort:"), consoleDevice, consolePort) +} diff --git a/macos/virtualization/virtio_console_device_serial_port_configuration.gen.go b/macos/virtualization/virtio_console_device_serial_port_configuration.gen.go new file mode 100644 index 00000000..78b29216 --- /dev/null +++ b/macos/virtualization/virtio_console_device_serial_port_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsoleDeviceSerialPortConfiguration] class. +var VirtioConsoleDeviceSerialPortConfigurationClass = _VirtioConsoleDeviceSerialPortConfigurationClass{objc.GetClass("VZVirtioConsoleDeviceSerialPortConfiguration")} + +type _VirtioConsoleDeviceSerialPortConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsoleDeviceSerialPortConfiguration] class. +type IVirtioConsoleDeviceSerialPortConfiguration interface { + ISerialPortConfiguration +} + +// A configuration object that requests the creation of a console device to communicate with the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoledeviceserialportconfiguration?language=objc +type VirtioConsoleDeviceSerialPortConfiguration struct { + SerialPortConfiguration +} + +func VirtioConsoleDeviceSerialPortConfigurationFrom(ptr unsafe.Pointer) VirtioConsoleDeviceSerialPortConfiguration { + return VirtioConsoleDeviceSerialPortConfiguration{ + SerialPortConfiguration: SerialPortConfigurationFrom(ptr), + } +} + +func (v_ VirtioConsoleDeviceSerialPortConfiguration) Init() VirtioConsoleDeviceSerialPortConfiguration { + rv := objc.Call[VirtioConsoleDeviceSerialPortConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioConsoleDeviceSerialPortConfigurationClass) Alloc() VirtioConsoleDeviceSerialPortConfiguration { + rv := objc.Call[VirtioConsoleDeviceSerialPortConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsoleDeviceSerialPortConfigurationClass) New() VirtioConsoleDeviceSerialPortConfiguration { + rv := objc.Call[VirtioConsoleDeviceSerialPortConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsoleDeviceSerialPortConfiguration() VirtioConsoleDeviceSerialPortConfiguration { + return VirtioConsoleDeviceSerialPortConfigurationClass.New() +} diff --git a/macos/virtualization/virtio_console_port.gen.go b/macos/virtualization/virtio_console_port.gen.go new file mode 100644 index 00000000..5f16865e --- /dev/null +++ b/macos/virtualization/virtio_console_port.gen.go @@ -0,0 +1,80 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsolePort] class. +var VirtioConsolePortClass = _VirtioConsolePortClass{objc.GetClass("VZVirtioConsolePort")} + +type _VirtioConsolePortClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsolePort] class. +type IVirtioConsolePort interface { + objc.IObject + Attachment() SerialPortAttachment + SetAttachment(value ISerialPortAttachment) + Name() string +} + +// A class that represents a Virtio console port in a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleport?language=objc +type VirtioConsolePort struct { + objc.Object +} + +func VirtioConsolePortFrom(ptr unsafe.Pointer) VirtioConsolePort { + return VirtioConsolePort{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtioConsolePortClass) Alloc() VirtioConsolePort { + rv := objc.Call[VirtioConsolePort](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsolePortClass) New() VirtioConsolePort { + rv := objc.Call[VirtioConsolePort](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsolePort() VirtioConsolePort { + return VirtioConsolePortClass.New() +} + +func (v_ VirtioConsolePort) Init() VirtioConsolePort { + rv := objc.Call[VirtioConsolePort](v_, objc.Sel("init")) + return rv +} + +// An array of serial port attachments. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleport/4024734-attachment?language=objc +func (v_ VirtioConsolePort) Attachment() SerialPortAttachment { + rv := objc.Call[SerialPortAttachment](v_, objc.Sel("attachment")) + return rv +} + +// An array of serial port attachments. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleport/4024734-attachment?language=objc +func (v_ VirtioConsolePort) SetAttachment(value ISerialPortAttachment) { + objc.Call[objc.Void](v_, objc.Sel("setAttachment:"), value) +} + +// The name of the port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleport/4024735-name?language=objc +func (v_ VirtioConsolePort) Name() string { + rv := objc.Call[string](v_, objc.Sel("name")) + return rv +} diff --git a/macos/virtualization/virtio_console_port_array.gen.go b/macos/virtualization/virtio_console_port_array.gen.go new file mode 100644 index 00000000..8965301d --- /dev/null +++ b/macos/virtualization/virtio_console_port_array.gen.go @@ -0,0 +1,72 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsolePortArray] class. +var VirtioConsolePortArrayClass = _VirtioConsolePortArrayClass{objc.GetClass("VZVirtioConsolePortArray")} + +type _VirtioConsolePortArrayClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsolePortArray] class. +type IVirtioConsolePortArray interface { + objc.IObject + ObjectAtIndexedSubscript(portIndex uint) VirtioConsolePort + MaximumPortCount() uint32 +} + +// A class that represents a collection of Virtio console ports. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportarray?language=objc +type VirtioConsolePortArray struct { + objc.Object +} + +func VirtioConsolePortArrayFrom(ptr unsafe.Pointer) VirtioConsolePortArray { + return VirtioConsolePortArray{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtioConsolePortArrayClass) Alloc() VirtioConsolePortArray { + rv := objc.Call[VirtioConsolePortArray](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsolePortArrayClass) New() VirtioConsolePortArray { + rv := objc.Call[VirtioConsolePortArray](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsolePortArray() VirtioConsolePortArray { + return VirtioConsolePortArrayClass.New() +} + +func (v_ VirtioConsolePortArray) Init() VirtioConsolePortArray { + rv := objc.Call[VirtioConsolePortArray](v_, objc.Sel("init")) + return rv +} + +// Returns the Virtio console port at the specified index. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportarray/4024738-objectatindexedsubscript?language=objc +func (v_ VirtioConsolePortArray) ObjectAtIndexedSubscript(portIndex uint) VirtioConsolePort { + rv := objc.Call[VirtioConsolePort](v_, objc.Sel("objectAtIndexedSubscript:"), portIndex) + return rv +} + +// An unsigned integer that represents the maximum number of ports allocated by this device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportarray/4024737-maximumportcount?language=objc +func (v_ VirtioConsolePortArray) MaximumPortCount() uint32 { + rv := objc.Call[uint32](v_, objc.Sel("maximumPortCount")) + return rv +} diff --git a/macos/virtualization/virtio_console_port_configuration.gen.go b/macos/virtualization/virtio_console_port_configuration.gen.go new file mode 100644 index 00000000..76a3c4f4 --- /dev/null +++ b/macos/virtualization/virtio_console_port_configuration.gen.go @@ -0,0 +1,88 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsolePortConfiguration] class. +var VirtioConsolePortConfigurationClass = _VirtioConsolePortConfigurationClass{objc.GetClass("VZVirtioConsolePortConfiguration")} + +type _VirtioConsolePortConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsolePortConfiguration] class. +type IVirtioConsolePortConfiguration interface { + IConsolePortConfiguration + Name() string + SetName(value string) + IsConsole() bool + SetIsConsole(value bool) +} + +// A class that represents the configuration options you can set on a Virtio console port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfiguration?language=objc +type VirtioConsolePortConfiguration struct { + ConsolePortConfiguration +} + +func VirtioConsolePortConfigurationFrom(ptr unsafe.Pointer) VirtioConsolePortConfiguration { + return VirtioConsolePortConfiguration{ + ConsolePortConfiguration: ConsolePortConfigurationFrom(ptr), + } +} + +func (v_ VirtioConsolePortConfiguration) Init() VirtioConsolePortConfiguration { + rv := objc.Call[VirtioConsolePortConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioConsolePortConfigurationClass) Alloc() VirtioConsolePortConfiguration { + rv := objc.Call[VirtioConsolePortConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsolePortConfigurationClass) New() VirtioConsolePortConfiguration { + rv := objc.Call[VirtioConsolePortConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsolePortConfiguration() VirtioConsolePortConfiguration { + return VirtioConsolePortConfigurationClass.New() +} + +// The name of the port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfiguration/4024742-name?language=objc +func (v_ VirtioConsolePortConfiguration) Name() string { + rv := objc.Call[string](v_, objc.Sel("name")) + return rv +} + +// The name of the port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfiguration/4024742-name?language=objc +func (v_ VirtioConsolePortConfiguration) SetName(value string) { + objc.Call[objc.Void](v_, objc.Sel("setName:"), value) +} + +// A Boolean value that indicates whether this port is a console. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfiguration/4024741-isconsole?language=objc +func (v_ VirtioConsolePortConfiguration) IsConsole() bool { + rv := objc.Call[bool](v_, objc.Sel("isConsole")) + return rv +} + +// A Boolean value that indicates whether this port is a console. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfiguration/4024741-isconsole?language=objc +func (v_ VirtioConsolePortConfiguration) SetIsConsole(value bool) { + objc.Call[objc.Void](v_, objc.Sel("setIsConsole:"), value) +} diff --git a/macos/virtualization/virtio_console_port_configuration_array.gen.go b/macos/virtualization/virtio_console_port_configuration_array.gen.go new file mode 100644 index 00000000..78d50197 --- /dev/null +++ b/macos/virtualization/virtio_console_port_configuration_array.gen.go @@ -0,0 +1,88 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioConsolePortConfigurationArray] class. +var VirtioConsolePortConfigurationArrayClass = _VirtioConsolePortConfigurationArrayClass{objc.GetClass("VZVirtioConsolePortConfigurationArray")} + +type _VirtioConsolePortConfigurationArrayClass struct { + objc.Class +} + +// An interface definition for the [VirtioConsolePortConfigurationArray] class. +type IVirtioConsolePortConfigurationArray interface { + objc.IObject + SetObjectAtIndexedSubscript(configuration IVirtioConsolePortConfiguration, portIndex uint) + ObjectAtIndexedSubscript(portIndex uint) VirtioConsolePortConfiguration + MaximumPortCount() uint32 + SetMaximumPortCount(value uint32) +} + +// A class that represents a collection of Virtio console port configurations. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfigurationarray?language=objc +type VirtioConsolePortConfigurationArray struct { + objc.Object +} + +func VirtioConsolePortConfigurationArrayFrom(ptr unsafe.Pointer) VirtioConsolePortConfigurationArray { + return VirtioConsolePortConfigurationArray{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtioConsolePortConfigurationArrayClass) Alloc() VirtioConsolePortConfigurationArray { + rv := objc.Call[VirtioConsolePortConfigurationArray](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioConsolePortConfigurationArrayClass) New() VirtioConsolePortConfigurationArray { + rv := objc.Call[VirtioConsolePortConfigurationArray](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioConsolePortConfigurationArray() VirtioConsolePortConfigurationArray { + return VirtioConsolePortConfigurationArrayClass.New() +} + +func (v_ VirtioConsolePortConfigurationArray) Init() VirtioConsolePortConfigurationArray { + rv := objc.Call[VirtioConsolePortConfigurationArray](v_, objc.Sel("init")) + return rv +} + +// [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfigurationarray/4024746-setobject?language=objc +func (v_ VirtioConsolePortConfigurationArray) SetObjectAtIndexedSubscript(configuration IVirtioConsolePortConfiguration, portIndex uint) { + objc.Call[objc.Void](v_, objc.Sel("setObject:atIndexedSubscript:"), configuration, portIndex) +} + +// Returns the Virtio console port configuration as the specified index. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfigurationarray/4024745-objectatindexedsubscript?language=objc +func (v_ VirtioConsolePortConfigurationArray) ObjectAtIndexedSubscript(portIndex uint) VirtioConsolePortConfiguration { + rv := objc.Call[VirtioConsolePortConfiguration](v_, objc.Sel("objectAtIndexedSubscript:"), portIndex) + return rv +} + +// An unsigned integer that represents the maximum number of ports allocated by this device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfigurationarray/4024744-maximumportcount?language=objc +func (v_ VirtioConsolePortConfigurationArray) MaximumPortCount() uint32 { + rv := objc.Call[uint32](v_, objc.Sel("maximumPortCount")) + return rv +} + +// An unsigned integer that represents the maximum number of ports allocated by this device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioconsoleportconfigurationarray/4024744-maximumportcount?language=objc +func (v_ VirtioConsolePortConfigurationArray) SetMaximumPortCount(value uint32) { + objc.Call[objc.Void](v_, objc.Sel("setMaximumPortCount:"), value) +} diff --git a/macos/virtualization/virtio_entropy_device_configuration.gen.go b/macos/virtualization/virtio_entropy_device_configuration.gen.go new file mode 100644 index 00000000..1239fcc9 --- /dev/null +++ b/macos/virtualization/virtio_entropy_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioEntropyDeviceConfiguration] class. +var VirtioEntropyDeviceConfigurationClass = _VirtioEntropyDeviceConfigurationClass{objc.GetClass("VZVirtioEntropyDeviceConfiguration")} + +type _VirtioEntropyDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioEntropyDeviceConfiguration] class. +type IVirtioEntropyDeviceConfiguration interface { + IEntropyDeviceConfiguration +} + +// A source of entropy for the guest’s random number generator. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtioentropydeviceconfiguration?language=objc +type VirtioEntropyDeviceConfiguration struct { + EntropyDeviceConfiguration +} + +func VirtioEntropyDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioEntropyDeviceConfiguration { + return VirtioEntropyDeviceConfiguration{ + EntropyDeviceConfiguration: EntropyDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioEntropyDeviceConfiguration) Init() VirtioEntropyDeviceConfiguration { + rv := objc.Call[VirtioEntropyDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioEntropyDeviceConfigurationClass) Alloc() VirtioEntropyDeviceConfiguration { + rv := objc.Call[VirtioEntropyDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioEntropyDeviceConfigurationClass) New() VirtioEntropyDeviceConfiguration { + rv := objc.Call[VirtioEntropyDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioEntropyDeviceConfiguration() VirtioEntropyDeviceConfiguration { + return VirtioEntropyDeviceConfigurationClass.New() +} diff --git a/macos/virtualization/virtio_file_system_device.gen.go b/macos/virtualization/virtio_file_system_device.gen.go new file mode 100644 index 00000000..35e8e276 --- /dev/null +++ b/macos/virtualization/virtio_file_system_device.gen.go @@ -0,0 +1,80 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioFileSystemDevice] class. +var VirtioFileSystemDeviceClass = _VirtioFileSystemDeviceClass{objc.GetClass("VZVirtioFileSystemDevice")} + +type _VirtioFileSystemDeviceClass struct { + objc.Class +} + +// An interface definition for the [VirtioFileSystemDevice] class. +type IVirtioFileSystemDevice interface { + IDirectorySharingDevice + Share() DirectoryShare + SetShare(value IDirectoryShare) + Tag() string +} + +// An object the defines a VIRTIO file system device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdevice?language=objc +type VirtioFileSystemDevice struct { + DirectorySharingDevice +} + +func VirtioFileSystemDeviceFrom(ptr unsafe.Pointer) VirtioFileSystemDevice { + return VirtioFileSystemDevice{ + DirectorySharingDevice: DirectorySharingDeviceFrom(ptr), + } +} + +func (vc _VirtioFileSystemDeviceClass) Alloc() VirtioFileSystemDevice { + rv := objc.Call[VirtioFileSystemDevice](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioFileSystemDeviceClass) New() VirtioFileSystemDevice { + rv := objc.Call[VirtioFileSystemDevice](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioFileSystemDevice() VirtioFileSystemDevice { + return VirtioFileSystemDeviceClass.New() +} + +func (v_ VirtioFileSystemDevice) Init() VirtioFileSystemDevice { + rv := objc.Call[VirtioFileSystemDevice](v_, objc.Sel("init")) + return rv +} + +// A value that defines the directory share the host exposes to the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdevice/3787638-share?language=objc +func (v_ VirtioFileSystemDevice) Share() DirectoryShare { + rv := objc.Call[DirectoryShare](v_, objc.Sel("share")) + return rv +} + +// A value that defines the directory share the host exposes to the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdevice/3787638-share?language=objc +func (v_ VirtioFileSystemDevice) SetShare(value IDirectoryShare) { + objc.Call[objc.Void](v_, objc.Sel("setShare:"), value) +} + +// A string that identifies the device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdevice/3787639-tag?language=objc +func (v_ VirtioFileSystemDevice) Tag() string { + rv := objc.Call[string](v_, objc.Sel("tag")) + return rv +} diff --git a/macos/virtualization/virtio_file_system_device_configuration.gen.go b/macos/virtualization/virtio_file_system_device_configuration.gen.go new file mode 100644 index 00000000..861623be --- /dev/null +++ b/macos/virtualization/virtio_file_system_device_configuration.gen.go @@ -0,0 +1,132 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioFileSystemDeviceConfiguration] class. +var VirtioFileSystemDeviceConfigurationClass = _VirtioFileSystemDeviceConfigurationClass{objc.GetClass("VZVirtioFileSystemDeviceConfiguration")} + +type _VirtioFileSystemDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioFileSystemDeviceConfiguration] class. +type IVirtioFileSystemDeviceConfiguration interface { + IDirectorySharingDeviceConfiguration + Tag() string + SetTag(value string) + Share() DirectoryShare + SetShare(value IDirectoryShare) +} + +// An object that represents the configuration of a Virtio file system device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration?language=objc +type VirtioFileSystemDeviceConfiguration struct { + DirectorySharingDeviceConfiguration +} + +func VirtioFileSystemDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioFileSystemDeviceConfiguration { + return VirtioFileSystemDeviceConfiguration{ + DirectorySharingDeviceConfiguration: DirectorySharingDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioFileSystemDeviceConfiguration) InitWithTag(tag string) VirtioFileSystemDeviceConfiguration { + rv := objc.Call[VirtioFileSystemDeviceConfiguration](v_, objc.Sel("initWithTag:"), tag) + return rv +} + +// Creates a configuration for a VIRTIO file system device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3787641-initwithtag?language=objc +func NewVirtioFileSystemDeviceConfigurationWithTag(tag string) VirtioFileSystemDeviceConfiguration { + instance := VirtioFileSystemDeviceConfigurationClass.Alloc().InitWithTag(tag) + instance.Autorelease() + return instance +} + +func (vc _VirtioFileSystemDeviceConfigurationClass) Alloc() VirtioFileSystemDeviceConfiguration { + rv := objc.Call[VirtioFileSystemDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioFileSystemDeviceConfigurationClass) New() VirtioFileSystemDeviceConfiguration { + rv := objc.Call[VirtioFileSystemDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioFileSystemDeviceConfiguration() VirtioFileSystemDeviceConfiguration { + return VirtioFileSystemDeviceConfigurationClass.New() +} + +func (v_ VirtioFileSystemDeviceConfiguration) Init() VirtioFileSystemDeviceConfiguration { + rv := objc.Call[VirtioFileSystemDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +// Checks to see whether a Virtio tag is valid. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3816092-validatetag?language=objc +func (vc _VirtioFileSystemDeviceConfigurationClass) ValidateTagError(tag string, error unsafe.Pointer) bool { + rv := objc.Call[bool](vc, objc.Sel("validateTag:error:"), tag, error) + return rv +} + +// Checks to see whether a Virtio tag is valid. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3816092-validatetag?language=objc +func VirtioFileSystemDeviceConfiguration_ValidateTagError(tag string, error unsafe.Pointer) bool { + return VirtioFileSystemDeviceConfigurationClass.ValidateTagError(tag, error) +} + +// A value that indicates that the guest needs to automount this file system device in the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3969279-macosguestautomounttag?language=objc +func (vc _VirtioFileSystemDeviceConfigurationClass) MacOSGuestAutomountTag() string { + rv := objc.Call[string](vc, objc.Sel("macOSGuestAutomountTag")) + return rv +} + +// A value that indicates that the guest needs to automount this file system device in the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3969279-macosguestautomounttag?language=objc +func VirtioFileSystemDeviceConfiguration_MacOSGuestAutomountTag() string { + return VirtioFileSystemDeviceConfigurationClass.MacOSGuestAutomountTag() +} + +// A label that identifies this device in the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3787643-tag?language=objc +func (v_ VirtioFileSystemDeviceConfiguration) Tag() string { + rv := objc.Call[string](v_, objc.Sel("tag")) + return rv +} + +// A label that identifies this device in the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3787643-tag?language=objc +func (v_ VirtioFileSystemDeviceConfiguration) SetTag(value string) { + objc.Call[objc.Void](v_, objc.Sel("setTag:"), value) +} + +// A value that defines how the host exposes resources to the guest virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3787642-share?language=objc +func (v_ VirtioFileSystemDeviceConfiguration) Share() DirectoryShare { + rv := objc.Call[DirectoryShare](v_, objc.Sel("share")) + return rv +} + +// A value that defines how the host exposes resources to the guest virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiofilesystemdeviceconfiguration/3787642-share?language=objc +func (v_ VirtioFileSystemDeviceConfiguration) SetShare(value IDirectoryShare) { + objc.Call[objc.Void](v_, objc.Sel("setShare:"), value) +} diff --git a/macos/virtualization/virtio_graphics_device.gen.go b/macos/virtualization/virtio_graphics_device.gen.go new file mode 100644 index 00000000..098ddf36 --- /dev/null +++ b/macos/virtualization/virtio_graphics_device.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioGraphicsDevice] class. +var VirtioGraphicsDeviceClass = _VirtioGraphicsDeviceClass{objc.GetClass("VZVirtioGraphicsDevice")} + +type _VirtioGraphicsDeviceClass struct { + objc.Class +} + +// An interface definition for the [VirtioGraphicsDevice] class. +type IVirtioGraphicsDevice interface { + IGraphicsDevice +} + +// A Virtio graphics device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsdevice?language=objc +type VirtioGraphicsDevice struct { + GraphicsDevice +} + +func VirtioGraphicsDeviceFrom(ptr unsafe.Pointer) VirtioGraphicsDevice { + return VirtioGraphicsDevice{ + GraphicsDevice: GraphicsDeviceFrom(ptr), + } +} + +func (vc _VirtioGraphicsDeviceClass) Alloc() VirtioGraphicsDevice { + rv := objc.Call[VirtioGraphicsDevice](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioGraphicsDeviceClass) New() VirtioGraphicsDevice { + rv := objc.Call[VirtioGraphicsDevice](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioGraphicsDevice() VirtioGraphicsDevice { + return VirtioGraphicsDeviceClass.New() +} + +func (v_ VirtioGraphicsDevice) Init() VirtioGraphicsDevice { + rv := objc.Call[VirtioGraphicsDevice](v_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/virtio_graphics_device_configuration.gen.go b/macos/virtualization/virtio_graphics_device_configuration.gen.go new file mode 100644 index 00000000..923764a1 --- /dev/null +++ b/macos/virtualization/virtio_graphics_device_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioGraphicsDeviceConfiguration] class. +var VirtioGraphicsDeviceConfigurationClass = _VirtioGraphicsDeviceConfigurationClass{objc.GetClass("VZVirtioGraphicsDeviceConfiguration")} + +type _VirtioGraphicsDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioGraphicsDeviceConfiguration] class. +type IVirtioGraphicsDeviceConfiguration interface { + IGraphicsDeviceConfiguration + Scanouts() []VirtioGraphicsScanoutConfiguration + SetScanouts(value []IVirtioGraphicsScanoutConfiguration) +} + +// Configuration that represents the configuration of a Virtio graphics device for a Linux VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsdeviceconfiguration?language=objc +type VirtioGraphicsDeviceConfiguration struct { + GraphicsDeviceConfiguration +} + +func VirtioGraphicsDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioGraphicsDeviceConfiguration { + return VirtioGraphicsDeviceConfiguration{ + GraphicsDeviceConfiguration: GraphicsDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioGraphicsDeviceConfiguration) Init() VirtioGraphicsDeviceConfiguration { + rv := objc.Call[VirtioGraphicsDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioGraphicsDeviceConfigurationClass) Alloc() VirtioGraphicsDeviceConfiguration { + rv := objc.Call[VirtioGraphicsDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioGraphicsDeviceConfigurationClass) New() VirtioGraphicsDeviceConfiguration { + rv := objc.Call[VirtioGraphicsDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioGraphicsDeviceConfiguration() VirtioGraphicsDeviceConfiguration { + return VirtioGraphicsDeviceConfigurationClass.New() +} + +// The array of output devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsdeviceconfiguration/3945427-scanouts?language=objc +func (v_ VirtioGraphicsDeviceConfiguration) Scanouts() []VirtioGraphicsScanoutConfiguration { + rv := objc.Call[[]VirtioGraphicsScanoutConfiguration](v_, objc.Sel("scanouts")) + return rv +} + +// The array of output devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsdeviceconfiguration/3945427-scanouts?language=objc +func (v_ VirtioGraphicsDeviceConfiguration) SetScanouts(value []IVirtioGraphicsScanoutConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setScanouts:"), value) +} diff --git a/macos/virtualization/virtio_graphics_scanout.gen.go b/macos/virtualization/virtio_graphics_scanout.gen.go new file mode 100644 index 00000000..2832e999 --- /dev/null +++ b/macos/virtualization/virtio_graphics_scanout.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioGraphicsScanout] class. +var VirtioGraphicsScanoutClass = _VirtioGraphicsScanoutClass{objc.GetClass("VZVirtioGraphicsScanout")} + +type _VirtioGraphicsScanoutClass struct { + objc.Class +} + +// An interface definition for the [VirtioGraphicsScanout] class. +type IVirtioGraphicsScanout interface { + IGraphicsDisplay +} + +// A Virtio graphics scanout that corresponds to a Virtio graphics scanout configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanout?language=objc +type VirtioGraphicsScanout struct { + GraphicsDisplay +} + +func VirtioGraphicsScanoutFrom(ptr unsafe.Pointer) VirtioGraphicsScanout { + return VirtioGraphicsScanout{ + GraphicsDisplay: GraphicsDisplayFrom(ptr), + } +} + +func (vc _VirtioGraphicsScanoutClass) Alloc() VirtioGraphicsScanout { + rv := objc.Call[VirtioGraphicsScanout](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioGraphicsScanoutClass) New() VirtioGraphicsScanout { + rv := objc.Call[VirtioGraphicsScanout](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioGraphicsScanout() VirtioGraphicsScanout { + return VirtioGraphicsScanoutClass.New() +} + +func (v_ VirtioGraphicsScanout) Init() VirtioGraphicsScanout { + rv := objc.Call[VirtioGraphicsScanout](v_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/virtio_graphics_scanout_configuration.gen.go b/macos/virtualization/virtio_graphics_scanout_configuration.gen.go new file mode 100644 index 00000000..b3995f67 --- /dev/null +++ b/macos/virtualization/virtio_graphics_scanout_configuration.gen.go @@ -0,0 +1,102 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioGraphicsScanoutConfiguration] class. +var VirtioGraphicsScanoutConfigurationClass = _VirtioGraphicsScanoutConfigurationClass{objc.GetClass("VZVirtioGraphicsScanoutConfiguration")} + +type _VirtioGraphicsScanoutConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioGraphicsScanoutConfiguration] class. +type IVirtioGraphicsScanoutConfiguration interface { + IGraphicsDisplayConfiguration + WidthInPixels() int + SetWidthInPixels(value int) + HeightInPixels() int + SetHeightInPixels(value int) +} + +// The configuration for a Virtio graphics device that configures the dimensions of the graphics device for a Linux VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanoutconfiguration?language=objc +type VirtioGraphicsScanoutConfiguration struct { + GraphicsDisplayConfiguration +} + +func VirtioGraphicsScanoutConfigurationFrom(ptr unsafe.Pointer) VirtioGraphicsScanoutConfiguration { + return VirtioGraphicsScanoutConfiguration{ + GraphicsDisplayConfiguration: GraphicsDisplayConfigurationFrom(ptr), + } +} + +func (v_ VirtioGraphicsScanoutConfiguration) InitWithWidthInPixelsHeightInPixels(widthInPixels int, heightInPixels int) VirtioGraphicsScanoutConfiguration { + rv := objc.Call[VirtioGraphicsScanoutConfiguration](v_, objc.Sel("initWithWidthInPixels:heightInPixels:"), widthInPixels, heightInPixels) + return rv +} + +// Creates a Virtio graphics device with the specified dimensions. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanoutconfiguration/3945430-initwithwidthinpixels?language=objc +func NewVirtioGraphicsScanoutConfigurationWithWidthInPixelsHeightInPixels(widthInPixels int, heightInPixels int) VirtioGraphicsScanoutConfiguration { + instance := VirtioGraphicsScanoutConfigurationClass.Alloc().InitWithWidthInPixelsHeightInPixels(widthInPixels, heightInPixels) + instance.Autorelease() + return instance +} + +func (vc _VirtioGraphicsScanoutConfigurationClass) Alloc() VirtioGraphicsScanoutConfiguration { + rv := objc.Call[VirtioGraphicsScanoutConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioGraphicsScanoutConfigurationClass) New() VirtioGraphicsScanoutConfiguration { + rv := objc.Call[VirtioGraphicsScanoutConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioGraphicsScanoutConfiguration() VirtioGraphicsScanoutConfiguration { + return VirtioGraphicsScanoutConfigurationClass.New() +} + +func (v_ VirtioGraphicsScanoutConfiguration) Init() VirtioGraphicsScanoutConfiguration { + rv := objc.Call[VirtioGraphicsScanoutConfiguration](v_, objc.Sel("init")) + return rv +} + +// An integer value that describes the width of the graphics device in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanoutconfiguration/3945431-widthinpixels?language=objc +func (v_ VirtioGraphicsScanoutConfiguration) WidthInPixels() int { + rv := objc.Call[int](v_, objc.Sel("widthInPixels")) + return rv +} + +// An integer value that describes the width of the graphics device in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanoutconfiguration/3945431-widthinpixels?language=objc +func (v_ VirtioGraphicsScanoutConfiguration) SetWidthInPixels(value int) { + objc.Call[objc.Void](v_, objc.Sel("setWidthInPixels:"), value) +} + +// An integer value that describes the height of the graphics device in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanoutconfiguration/3945429-heightinpixels?language=objc +func (v_ VirtioGraphicsScanoutConfiguration) HeightInPixels() int { + rv := objc.Call[int](v_, objc.Sel("heightInPixels")) + return rv +} + +// An integer value that describes the height of the graphics device in pixels. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiographicsscanoutconfiguration/3945429-heightinpixels?language=objc +func (v_ VirtioGraphicsScanoutConfiguration) SetHeightInPixels(value int) { + objc.Call[objc.Void](v_, objc.Sel("setHeightInPixels:"), value) +} diff --git a/macos/virtualization/virtio_network_device_configuration.gen.go b/macos/virtualization/virtio_network_device_configuration.gen.go new file mode 100644 index 00000000..fec0bc98 --- /dev/null +++ b/macos/virtualization/virtio_network_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioNetworkDeviceConfiguration] class. +var VirtioNetworkDeviceConfigurationClass = _VirtioNetworkDeviceConfigurationClass{objc.GetClass("VZVirtioNetworkDeviceConfiguration")} + +type _VirtioNetworkDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioNetworkDeviceConfiguration] class. +type IVirtioNetworkDeviceConfiguration interface { + INetworkDeviceConfiguration +} + +// A configuration object that requests the creation of a network device for the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtionetworkdeviceconfiguration?language=objc +type VirtioNetworkDeviceConfiguration struct { + NetworkDeviceConfiguration +} + +func VirtioNetworkDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioNetworkDeviceConfiguration { + return VirtioNetworkDeviceConfiguration{ + NetworkDeviceConfiguration: NetworkDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioNetworkDeviceConfiguration) Init() VirtioNetworkDeviceConfiguration { + rv := objc.Call[VirtioNetworkDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioNetworkDeviceConfigurationClass) Alloc() VirtioNetworkDeviceConfiguration { + rv := objc.Call[VirtioNetworkDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioNetworkDeviceConfigurationClass) New() VirtioNetworkDeviceConfiguration { + rv := objc.Call[VirtioNetworkDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioNetworkDeviceConfiguration() VirtioNetworkDeviceConfiguration { + return VirtioNetworkDeviceConfigurationClass.New() +} diff --git a/macos/virtualization/virtio_socket_connection.gen.go b/macos/virtualization/virtio_socket_connection.gen.go new file mode 100644 index 00000000..1bbf514c --- /dev/null +++ b/macos/virtualization/virtio_socket_connection.gen.go @@ -0,0 +1,89 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSocketConnection] class. +var VirtioSocketConnectionClass = _VirtioSocketConnectionClass{objc.GetClass("VZVirtioSocketConnection")} + +type _VirtioSocketConnectionClass struct { + objc.Class +} + +// An interface definition for the [VirtioSocketConnection] class. +type IVirtioSocketConnection interface { + objc.IObject + Close() + SourcePort() uint32 + FileDescriptor() int + DestinationPort() uint32 +} + +// A port-based connection between the guest operating system and the host computer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketconnection?language=objc +type VirtioSocketConnection struct { + objc.Object +} + +func VirtioSocketConnectionFrom(ptr unsafe.Pointer) VirtioSocketConnection { + return VirtioSocketConnection{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtioSocketConnectionClass) Alloc() VirtioSocketConnection { + rv := objc.Call[VirtioSocketConnection](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSocketConnectionClass) New() VirtioSocketConnection { + rv := objc.Call[VirtioSocketConnection](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSocketConnection() VirtioSocketConnection { + return VirtioSocketConnectionClass.New() +} + +func (v_ VirtioSocketConnection) Init() VirtioSocketConnection { + rv := objc.Call[VirtioSocketConnection](v_, objc.Sel("init")) + return rv +} + +// Close the file descriptor associated with the socket. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketconnection/3656672-close?language=objc +func (v_ VirtioSocketConnection) Close() { + objc.Call[objc.Void](v_, objc.Sel("close")) +} + +// The port number of the system that opened the connection. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketconnection/3656675-sourceport?language=objc +func (v_ VirtioSocketConnection) SourcePort() uint32 { + rv := objc.Call[uint32](v_, objc.Sel("sourcePort")) + return rv +} + +// The file descriptor to use when sending data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketconnection/3656674-filedescriptor?language=objc +func (v_ VirtioSocketConnection) FileDescriptor() int { + rv := objc.Call[int](v_, objc.Sel("fileDescriptor")) + return rv +} + +// The destination port number of the connection. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketconnection/3656673-destinationport?language=objc +func (v_ VirtioSocketConnection) DestinationPort() uint32 { + rv := objc.Call[uint32](v_, objc.Sel("destinationPort")) + return rv +} diff --git a/macos/virtualization/virtio_socket_device.gen.go b/macos/virtualization/virtio_socket_device.gen.go new file mode 100644 index 00000000..e5c212a4 --- /dev/null +++ b/macos/virtualization/virtio_socket_device.gen.go @@ -0,0 +1,79 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSocketDevice] class. +var VirtioSocketDeviceClass = _VirtioSocketDeviceClass{objc.GetClass("VZVirtioSocketDevice")} + +type _VirtioSocketDeviceClass struct { + objc.Class +} + +// An interface definition for the [VirtioSocketDevice] class. +type IVirtioSocketDevice interface { + ISocketDevice + SetSocketListenerForPort(listener IVirtioSocketListener, port uint32) + RemoveSocketListenerForPort(port uint32) + ConnectToPortCompletionHandler(port uint32, completionHandler func(connection VirtioSocketConnection, error foundation.Error)) +} + +// A device that manages port-based connections between the guest system and the host computer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketdevice?language=objc +type VirtioSocketDevice struct { + SocketDevice +} + +func VirtioSocketDeviceFrom(ptr unsafe.Pointer) VirtioSocketDevice { + return VirtioSocketDevice{ + SocketDevice: SocketDeviceFrom(ptr), + } +} + +func (vc _VirtioSocketDeviceClass) Alloc() VirtioSocketDevice { + rv := objc.Call[VirtioSocketDevice](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSocketDeviceClass) New() VirtioSocketDevice { + rv := objc.Call[VirtioSocketDevice](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSocketDevice() VirtioSocketDevice { + return VirtioSocketDeviceClass.New() +} + +func (v_ VirtioSocketDevice) Init() VirtioSocketDevice { + rv := objc.Call[VirtioSocketDevice](v_, objc.Sel("init")) + return rv +} + +// Configures an object to monitor the specified port for new connections. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketdevice/3656679-setsocketlistener?language=objc +func (v_ VirtioSocketDevice) SetSocketListenerForPort(listener IVirtioSocketListener, port uint32) { + objc.Call[objc.Void](v_, objc.Sel("setSocketListener:forPort:"), listener, port) +} + +// Removes the listener object from the specfied port. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketdevice/3656678-removesocketlistenerforport?language=objc +func (v_ VirtioSocketDevice) RemoveSocketListenerForPort(port uint32) { + objc.Call[objc.Void](v_, objc.Sel("removeSocketListenerForPort:"), port) +} + +// Initiates a connection to the specified port of the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketdevice/3656677-connecttoport?language=objc +func (v_ VirtioSocketDevice) ConnectToPortCompletionHandler(port uint32, completionHandler func(connection VirtioSocketConnection, error foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("connectToPort:completionHandler:"), port, completionHandler) +} diff --git a/macos/virtualization/virtio_socket_device_configuration.gen.go b/macos/virtualization/virtio_socket_device_configuration.gen.go new file mode 100644 index 00000000..0d2d1ccf --- /dev/null +++ b/macos/virtualization/virtio_socket_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSocketDeviceConfiguration] class. +var VirtioSocketDeviceConfigurationClass = _VirtioSocketDeviceConfigurationClass{objc.GetClass("VZVirtioSocketDeviceConfiguration")} + +type _VirtioSocketDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioSocketDeviceConfiguration] class. +type IVirtioSocketDeviceConfiguration interface { + ISocketDeviceConfiguration +} + +// A configuration object that requests the creation of a socket device to communicate with the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketdeviceconfiguration?language=objc +type VirtioSocketDeviceConfiguration struct { + SocketDeviceConfiguration +} + +func VirtioSocketDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioSocketDeviceConfiguration { + return VirtioSocketDeviceConfiguration{ + SocketDeviceConfiguration: SocketDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioSocketDeviceConfiguration) Init() VirtioSocketDeviceConfiguration { + rv := objc.Call[VirtioSocketDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioSocketDeviceConfigurationClass) Alloc() VirtioSocketDeviceConfiguration { + rv := objc.Call[VirtioSocketDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSocketDeviceConfigurationClass) New() VirtioSocketDeviceConfiguration { + rv := objc.Call[VirtioSocketDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSocketDeviceConfiguration() VirtioSocketDeviceConfiguration { + return VirtioSocketDeviceConfigurationClass.New() +} diff --git a/macos/virtualization/virtio_socket_listener.gen.go b/macos/virtualization/virtio_socket_listener.gen.go new file mode 100644 index 00000000..ac9ec9a7 --- /dev/null +++ b/macos/virtualization/virtio_socket_listener.gen.go @@ -0,0 +1,81 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSocketListener] class. +var VirtioSocketListenerClass = _VirtioSocketListenerClass{objc.GetClass("VZVirtioSocketListener")} + +type _VirtioSocketListenerClass struct { + objc.Class +} + +// An interface definition for the [VirtioSocketListener] class. +type IVirtioSocketListener interface { + objc.IObject + Delegate() VirtioSocketListenerDelegateObject + SetDelegate(value PVirtioSocketListenerDelegate) + SetDelegateObject(valueObject objc.IObject) +} + +// An object that listens for port-based connection requests from the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistener?language=objc +type VirtioSocketListener struct { + objc.Object +} + +func VirtioSocketListenerFrom(ptr unsafe.Pointer) VirtioSocketListener { + return VirtioSocketListener{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtioSocketListenerClass) Alloc() VirtioSocketListener { + rv := objc.Call[VirtioSocketListener](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSocketListenerClass) New() VirtioSocketListener { + rv := objc.Call[VirtioSocketListener](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSocketListener() VirtioSocketListener { + return VirtioSocketListenerClass.New() +} + +func (v_ VirtioSocketListener) Init() VirtioSocketListener { + rv := objc.Call[VirtioSocketListener](v_, objc.Sel("init")) + return rv +} + +// The custom object you use to respond to port-based connection attempts. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistener/3656683-delegate?language=objc +func (v_ VirtioSocketListener) Delegate() VirtioSocketListenerDelegateObject { + rv := objc.Call[VirtioSocketListenerDelegateObject](v_, objc.Sel("delegate")) + return rv +} + +// The custom object you use to respond to port-based connection attempts. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistener/3656683-delegate?language=objc +func (v_ VirtioSocketListener) SetDelegate(value PVirtioSocketListenerDelegate) { + po0 := objc.WrapAsProtocol("VZVirtioSocketListenerDelegate", value) + objc.SetAssociatedObject(v_, objc.AssociationKey("setDelegate"), po0, objc.ASSOCIATION_RETAIN) + objc.Call[objc.Void](v_, objc.Sel("setDelegate:"), po0) +} + +// The custom object you use to respond to port-based connection attempts. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistener/3656683-delegate?language=objc +func (v_ VirtioSocketListener) SetDelegateObject(valueObject objc.IObject) { + objc.Call[objc.Void](v_, objc.Sel("setDelegate:"), valueObject) +} diff --git a/macos/virtualization/virtio_socket_listener_delegate.gen.go b/macos/virtualization/virtio_socket_listener_delegate.gen.go new file mode 100644 index 00000000..f9da83f6 --- /dev/null +++ b/macos/virtualization/virtio_socket_listener_delegate.gen.go @@ -0,0 +1,59 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "github.com/progrium/darwinkit/objc" +) + +// An interface you use to manage connections between the guest operating system and host computer. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistenerdelegate?language=objc +type PVirtioSocketListenerDelegate interface { + // optional + ListenerShouldAcceptNewConnectionFromSocketDevice(listener VirtioSocketListener, connection VirtioSocketConnection, socketDevice VirtioSocketDevice) bool + HasListenerShouldAcceptNewConnectionFromSocketDevice() bool +} + +// A delegate implementation builder for the [PVirtioSocketListenerDelegate] protocol. +type VirtioSocketListenerDelegate struct { + _ListenerShouldAcceptNewConnectionFromSocketDevice func(listener VirtioSocketListener, connection VirtioSocketConnection, socketDevice VirtioSocketDevice) bool +} + +func (di *VirtioSocketListenerDelegate) HasListenerShouldAcceptNewConnectionFromSocketDevice() bool { + return di._ListenerShouldAcceptNewConnectionFromSocketDevice != nil +} + +// Returns a Boolean value that indicates whether to accept a new connection from the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistenerdelegate/3656685-listener?language=objc +func (di *VirtioSocketListenerDelegate) SetListenerShouldAcceptNewConnectionFromSocketDevice(f func(listener VirtioSocketListener, connection VirtioSocketConnection, socketDevice VirtioSocketDevice) bool) { + di._ListenerShouldAcceptNewConnectionFromSocketDevice = f +} + +// Returns a Boolean value that indicates whether to accept a new connection from the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistenerdelegate/3656685-listener?language=objc +func (di *VirtioSocketListenerDelegate) ListenerShouldAcceptNewConnectionFromSocketDevice(listener VirtioSocketListener, connection VirtioSocketConnection, socketDevice VirtioSocketDevice) bool { + return di._ListenerShouldAcceptNewConnectionFromSocketDevice(listener, connection, socketDevice) +} + +// ensure impl type implements protocol interface +var _ PVirtioSocketListenerDelegate = (*VirtioSocketListenerDelegateObject)(nil) + +// A concrete type for the [PVirtioSocketListenerDelegate] protocol. +type VirtioSocketListenerDelegateObject struct { + objc.Object +} + +func (v_ VirtioSocketListenerDelegateObject) HasListenerShouldAcceptNewConnectionFromSocketDevice() bool { + return v_.RespondsToSelector(objc.Sel("listener:shouldAcceptNewConnection:fromSocketDevice:")) +} + +// Returns a Boolean value that indicates whether to accept a new connection from the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosocketlistenerdelegate/3656685-listener?language=objc +func (v_ VirtioSocketListenerDelegateObject) ListenerShouldAcceptNewConnectionFromSocketDevice(listener VirtioSocketListener, connection VirtioSocketConnection, socketDevice VirtioSocketDevice) bool { + rv := objc.Call[bool](v_, objc.Sel("listener:shouldAcceptNewConnection:fromSocketDevice:"), listener, connection, socketDevice) + return rv +} diff --git a/macos/virtualization/virtio_sound_device_configuration.gen.go b/macos/virtualization/virtio_sound_device_configuration.gen.go new file mode 100644 index 00000000..eac9e5f1 --- /dev/null +++ b/macos/virtualization/virtio_sound_device_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSoundDeviceConfiguration] class. +var VirtioSoundDeviceConfigurationClass = _VirtioSoundDeviceConfigurationClass{objc.GetClass("VZVirtioSoundDeviceConfiguration")} + +type _VirtioSoundDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioSoundDeviceConfiguration] class. +type IVirtioSoundDeviceConfiguration interface { + IAudioDeviceConfiguration + Streams() []VirtioSoundDeviceStreamConfiguration + SetStreams(value []IVirtioSoundDeviceStreamConfiguration) +} + +// An object that defines a Virtio sound device configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceconfiguration?language=objc +type VirtioSoundDeviceConfiguration struct { + AudioDeviceConfiguration +} + +func VirtioSoundDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioSoundDeviceConfiguration { + return VirtioSoundDeviceConfiguration{ + AudioDeviceConfiguration: AudioDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioSoundDeviceConfiguration) Init() VirtioSoundDeviceConfiguration { + rv := objc.Call[VirtioSoundDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioSoundDeviceConfigurationClass) Alloc() VirtioSoundDeviceConfiguration { + rv := objc.Call[VirtioSoundDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSoundDeviceConfigurationClass) New() VirtioSoundDeviceConfiguration { + rv := objc.Call[VirtioSoundDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSoundDeviceConfiguration() VirtioSoundDeviceConfiguration { + return VirtioSoundDeviceConfigurationClass.New() +} + +// List of audio streams exposed by this device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceconfiguration/3786133-streams?language=objc +func (v_ VirtioSoundDeviceConfiguration) Streams() []VirtioSoundDeviceStreamConfiguration { + rv := objc.Call[[]VirtioSoundDeviceStreamConfiguration](v_, objc.Sel("streams")) + return rv +} + +// List of audio streams exposed by this device. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceconfiguration/3786133-streams?language=objc +func (v_ VirtioSoundDeviceConfiguration) SetStreams(value []IVirtioSoundDeviceStreamConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setStreams:"), value) +} diff --git a/macos/virtualization/virtio_sound_device_input_stream_configuration.gen.go b/macos/virtualization/virtio_sound_device_input_stream_configuration.gen.go new file mode 100644 index 00000000..e0eb7cef --- /dev/null +++ b/macos/virtualization/virtio_sound_device_input_stream_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSoundDeviceInputStreamConfiguration] class. +var VirtioSoundDeviceInputStreamConfigurationClass = _VirtioSoundDeviceInputStreamConfigurationClass{objc.GetClass("VZVirtioSoundDeviceInputStreamConfiguration")} + +type _VirtioSoundDeviceInputStreamConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioSoundDeviceInputStreamConfiguration] class. +type IVirtioSoundDeviceInputStreamConfiguration interface { + IVirtioSoundDeviceStreamConfiguration + Source() AudioInputStreamSource + SetSource(value IAudioInputStreamSource) +} + +// A PCM stream of input audio data, such as from a microphone. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceinputstreamconfiguration?language=objc +type VirtioSoundDeviceInputStreamConfiguration struct { + VirtioSoundDeviceStreamConfiguration +} + +func VirtioSoundDeviceInputStreamConfigurationFrom(ptr unsafe.Pointer) VirtioSoundDeviceInputStreamConfiguration { + return VirtioSoundDeviceInputStreamConfiguration{ + VirtioSoundDeviceStreamConfiguration: VirtioSoundDeviceStreamConfigurationFrom(ptr), + } +} + +func (v_ VirtioSoundDeviceInputStreamConfiguration) Init() VirtioSoundDeviceInputStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceInputStreamConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioSoundDeviceInputStreamConfigurationClass) Alloc() VirtioSoundDeviceInputStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceInputStreamConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSoundDeviceInputStreamConfigurationClass) New() VirtioSoundDeviceInputStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceInputStreamConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSoundDeviceInputStreamConfiguration() VirtioSoundDeviceInputStreamConfiguration { + return VirtioSoundDeviceInputStreamConfigurationClass.New() +} + +// An audio stream source that defines how the host supplies audio data for the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceinputstreamconfiguration/3786136-source?language=objc +func (v_ VirtioSoundDeviceInputStreamConfiguration) Source() AudioInputStreamSource { + rv := objc.Call[AudioInputStreamSource](v_, objc.Sel("source")) + return rv +} + +// An audio stream source that defines how the host supplies audio data for the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceinputstreamconfiguration/3786136-source?language=objc +func (v_ VirtioSoundDeviceInputStreamConfiguration) SetSource(value IAudioInputStreamSource) { + objc.Call[objc.Void](v_, objc.Sel("setSource:"), value) +} diff --git a/macos/virtualization/virtio_sound_device_output_stream_configuration.gen.go b/macos/virtualization/virtio_sound_device_output_stream_configuration.gen.go new file mode 100644 index 00000000..d84bff78 --- /dev/null +++ b/macos/virtualization/virtio_sound_device_output_stream_configuration.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSoundDeviceOutputStreamConfiguration] class. +var VirtioSoundDeviceOutputStreamConfigurationClass = _VirtioSoundDeviceOutputStreamConfigurationClass{objc.GetClass("VZVirtioSoundDeviceOutputStreamConfiguration")} + +type _VirtioSoundDeviceOutputStreamConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioSoundDeviceOutputStreamConfiguration] class. +type IVirtioSoundDeviceOutputStreamConfiguration interface { + IVirtioSoundDeviceStreamConfiguration + Sink() AudioOutputStreamSink + SetSink(value IAudioOutputStreamSink) +} + +// An object that defines a Virtio sound device output stream configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceoutputstreamconfiguration?language=objc +type VirtioSoundDeviceOutputStreamConfiguration struct { + VirtioSoundDeviceStreamConfiguration +} + +func VirtioSoundDeviceOutputStreamConfigurationFrom(ptr unsafe.Pointer) VirtioSoundDeviceOutputStreamConfiguration { + return VirtioSoundDeviceOutputStreamConfiguration{ + VirtioSoundDeviceStreamConfiguration: VirtioSoundDeviceStreamConfigurationFrom(ptr), + } +} + +func (v_ VirtioSoundDeviceOutputStreamConfiguration) Init() VirtioSoundDeviceOutputStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceOutputStreamConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioSoundDeviceOutputStreamConfigurationClass) Alloc() VirtioSoundDeviceOutputStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceOutputStreamConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSoundDeviceOutputStreamConfigurationClass) New() VirtioSoundDeviceOutputStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceOutputStreamConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSoundDeviceOutputStreamConfiguration() VirtioSoundDeviceOutputStreamConfiguration { + return VirtioSoundDeviceOutputStreamConfigurationClass.New() +} + +// An audio stream sink that defines how the host handles audio data produced by the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceoutputstreamconfiguration/3786139-sink?language=objc +func (v_ VirtioSoundDeviceOutputStreamConfiguration) Sink() AudioOutputStreamSink { + rv := objc.Call[AudioOutputStreamSink](v_, objc.Sel("sink")) + return rv +} + +// An audio stream sink that defines how the host handles audio data produced by the guest. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddeviceoutputstreamconfiguration/3786139-sink?language=objc +func (v_ VirtioSoundDeviceOutputStreamConfiguration) SetSink(value IAudioOutputStreamSink) { + objc.Call[objc.Void](v_, objc.Sel("setSink:"), value) +} diff --git a/macos/virtualization/virtio_sound_device_stream_configuration.gen.go b/macos/virtualization/virtio_sound_device_stream_configuration.gen.go new file mode 100644 index 00000000..3a218697 --- /dev/null +++ b/macos/virtualization/virtio_sound_device_stream_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioSoundDeviceStreamConfiguration] class. +var VirtioSoundDeviceStreamConfigurationClass = _VirtioSoundDeviceStreamConfigurationClass{objc.GetClass("VZVirtioSoundDeviceStreamConfiguration")} + +type _VirtioSoundDeviceStreamConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioSoundDeviceStreamConfiguration] class. +type IVirtioSoundDeviceStreamConfiguration interface { + objc.IObject +} + +// An object that defines a Virtio sound device stream configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiosounddevicestreamconfiguration?language=objc +type VirtioSoundDeviceStreamConfiguration struct { + objc.Object +} + +func VirtioSoundDeviceStreamConfigurationFrom(ptr unsafe.Pointer) VirtioSoundDeviceStreamConfiguration { + return VirtioSoundDeviceStreamConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtioSoundDeviceStreamConfigurationClass) Alloc() VirtioSoundDeviceStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceStreamConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioSoundDeviceStreamConfigurationClass) New() VirtioSoundDeviceStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceStreamConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioSoundDeviceStreamConfiguration() VirtioSoundDeviceStreamConfiguration { + return VirtioSoundDeviceStreamConfigurationClass.New() +} + +func (v_ VirtioSoundDeviceStreamConfiguration) Init() VirtioSoundDeviceStreamConfiguration { + rv := objc.Call[VirtioSoundDeviceStreamConfiguration](v_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/virtio_traditional_memory_balloon_device.gen.go b/macos/virtualization/virtio_traditional_memory_balloon_device.gen.go new file mode 100644 index 00000000..124cb319 --- /dev/null +++ b/macos/virtualization/virtio_traditional_memory_balloon_device.gen.go @@ -0,0 +1,71 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioTraditionalMemoryBalloonDevice] class. +var VirtioTraditionalMemoryBalloonDeviceClass = _VirtioTraditionalMemoryBalloonDeviceClass{objc.GetClass("VZVirtioTraditionalMemoryBalloonDevice")} + +type _VirtioTraditionalMemoryBalloonDeviceClass struct { + objc.Class +} + +// An interface definition for the [VirtioTraditionalMemoryBalloonDevice] class. +type IVirtioTraditionalMemoryBalloonDevice interface { + IMemoryBalloonDevice + TargetVirtualMachineMemorySize() uint64 + SetTargetVirtualMachineMemorySize(value uint64) +} + +// The object you use to change the amount of memory allocated to the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiotraditionalmemoryballoondevice?language=objc +type VirtioTraditionalMemoryBalloonDevice struct { + MemoryBalloonDevice +} + +func VirtioTraditionalMemoryBalloonDeviceFrom(ptr unsafe.Pointer) VirtioTraditionalMemoryBalloonDevice { + return VirtioTraditionalMemoryBalloonDevice{ + MemoryBalloonDevice: MemoryBalloonDeviceFrom(ptr), + } +} + +func (vc _VirtioTraditionalMemoryBalloonDeviceClass) Alloc() VirtioTraditionalMemoryBalloonDevice { + rv := objc.Call[VirtioTraditionalMemoryBalloonDevice](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioTraditionalMemoryBalloonDeviceClass) New() VirtioTraditionalMemoryBalloonDevice { + rv := objc.Call[VirtioTraditionalMemoryBalloonDevice](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioTraditionalMemoryBalloonDevice() VirtioTraditionalMemoryBalloonDevice { + return VirtioTraditionalMemoryBalloonDeviceClass.New() +} + +func (v_ VirtioTraditionalMemoryBalloonDevice) Init() VirtioTraditionalMemoryBalloonDevice { + rv := objc.Call[VirtioTraditionalMemoryBalloonDevice](v_, objc.Sel("init")) + return rv +} + +// The target amount of memory, in bytes, to make available to the virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiotraditionalmemoryballoondevice/3656687-targetvirtualmachinememorysize?language=objc +func (v_ VirtioTraditionalMemoryBalloonDevice) TargetVirtualMachineMemorySize() uint64 { + rv := objc.Call[uint64](v_, objc.Sel("targetVirtualMachineMemorySize")) + return rv +} + +// The target amount of memory, in bytes, to make available to the virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiotraditionalmemoryballoondevice/3656687-targetvirtualmachinememorysize?language=objc +func (v_ VirtioTraditionalMemoryBalloonDevice) SetTargetVirtualMachineMemorySize(value uint64) { + objc.Call[objc.Void](v_, objc.Sel("setTargetVirtualMachineMemorySize:"), value) +} diff --git a/macos/virtualization/virtio_traditional_memory_balloon_device_configuration.gen.go b/macos/virtualization/virtio_traditional_memory_balloon_device_configuration.gen.go new file mode 100644 index 00000000..32842993 --- /dev/null +++ b/macos/virtualization/virtio_traditional_memory_balloon_device_configuration.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtioTraditionalMemoryBalloonDeviceConfiguration] class. +var VirtioTraditionalMemoryBalloonDeviceConfigurationClass = _VirtioTraditionalMemoryBalloonDeviceConfigurationClass{objc.GetClass("VZVirtioTraditionalMemoryBalloonDeviceConfiguration")} + +type _VirtioTraditionalMemoryBalloonDeviceConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtioTraditionalMemoryBalloonDeviceConfiguration] class. +type IVirtioTraditionalMemoryBalloonDeviceConfiguration interface { + IMemoryBalloonDeviceConfiguration +} + +// A configuration object that provides a way to reclaim memory from the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtiotraditionalmemoryballoondeviceconfiguration?language=objc +type VirtioTraditionalMemoryBalloonDeviceConfiguration struct { + MemoryBalloonDeviceConfiguration +} + +func VirtioTraditionalMemoryBalloonDeviceConfigurationFrom(ptr unsafe.Pointer) VirtioTraditionalMemoryBalloonDeviceConfiguration { + return VirtioTraditionalMemoryBalloonDeviceConfiguration{ + MemoryBalloonDeviceConfiguration: MemoryBalloonDeviceConfigurationFrom(ptr), + } +} + +func (v_ VirtioTraditionalMemoryBalloonDeviceConfiguration) Init() VirtioTraditionalMemoryBalloonDeviceConfiguration { + rv := objc.Call[VirtioTraditionalMemoryBalloonDeviceConfiguration](v_, objc.Sel("init")) + return rv +} + +func (vc _VirtioTraditionalMemoryBalloonDeviceConfigurationClass) Alloc() VirtioTraditionalMemoryBalloonDeviceConfiguration { + rv := objc.Call[VirtioTraditionalMemoryBalloonDeviceConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtioTraditionalMemoryBalloonDeviceConfigurationClass) New() VirtioTraditionalMemoryBalloonDeviceConfiguration { + rv := objc.Call[VirtioTraditionalMemoryBalloonDeviceConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtioTraditionalMemoryBalloonDeviceConfiguration() VirtioTraditionalMemoryBalloonDeviceConfiguration { + return VirtioTraditionalMemoryBalloonDeviceConfigurationClass.New() +} diff --git a/macos/virtualization/virtual_machine.gen.go b/macos/virtualization/virtual_machine.gen.go new file mode 100644 index 00000000..3ef38d1c --- /dev/null +++ b/macos/virtualization/virtual_machine.gen.go @@ -0,0 +1,299 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/dispatch" + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtualMachine] class. +var VirtualMachineClass = _VirtualMachineClass{objc.GetClass("VZVirtualMachine")} + +type _VirtualMachineClass struct { + objc.Class +} + +// An interface definition for the [VirtualMachine] class. +type IVirtualMachine interface { + objc.IObject + SaveMachineStateToURLCompletionHandler(saveFileURL foundation.IURL, completionHandler func(errorOrNil foundation.Error)) + StartWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) + RequestStopWithError(error unsafe.Pointer) bool + ResumeWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) + StartWithOptionsCompletionHandler(options IVirtualMachineStartOptions, completionHandler func(errorOrNil foundation.Error)) + RestoreMachineStateFromURLCompletionHandler(saveFileURL foundation.IURL, completionHandler func(errorOrNil foundation.Error)) + PauseWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) + StopWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) + DirectorySharingDevices() []DirectorySharingDevice + CanResume() bool + ConsoleDevices() []ConsoleDevice + MemoryBalloonDevices() []MemoryBalloonDevice + NetworkDevices() []NetworkDevice + Delegate() VirtualMachineDelegateObject + SetDelegate(value PVirtualMachineDelegate) + SetDelegateObject(valueObject objc.IObject) + CanPause() bool + State() VirtualMachineState + CanRequestStop() bool + GraphicsDevices() []GraphicsDevice + SocketDevices() []SocketDevice + CanStop() bool + CanStart() bool +} + +// An object that manages the overall state and configuration of your VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine?language=objc +type VirtualMachine struct { + objc.Object +} + +func VirtualMachineFrom(ptr unsafe.Pointer) VirtualMachine { + return VirtualMachine{ + Object: objc.ObjectFrom(ptr), + } +} + +func (v_ VirtualMachine) InitWithConfiguration(configuration IVirtualMachineConfiguration) VirtualMachine { + rv := objc.Call[VirtualMachine](v_, objc.Sel("initWithConfiguration:"), configuration) + return rv +} + +// Creates the VM and configures it with the specified data. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656696-initwithconfiguration?language=objc +func NewVirtualMachineWithConfiguration(configuration IVirtualMachineConfiguration) VirtualMachine { + instance := VirtualMachineClass.Alloc().InitWithConfiguration(configuration) + instance.Autorelease() + return instance +} + +func (v_ VirtualMachine) InitWithConfigurationQueue(configuration IVirtualMachineConfiguration, queue dispatch.Queue) VirtualMachine { + rv := objc.Call[VirtualMachine](v_, objc.Sel("initWithConfiguration:queue:"), configuration, queue) + return rv +} + +// Creates and configures the VM with the specified data and dispatch queue. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656697-initwithconfiguration?language=objc +func NewVirtualMachineWithConfigurationQueue(configuration IVirtualMachineConfiguration, queue dispatch.Queue) VirtualMachine { + instance := VirtualMachineClass.Alloc().InitWithConfigurationQueue(configuration, queue) + instance.Autorelease() + return instance +} + +func (vc _VirtualMachineClass) Alloc() VirtualMachine { + rv := objc.Call[VirtualMachine](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtualMachineClass) New() VirtualMachine { + rv := objc.Call[VirtualMachine](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtualMachine() VirtualMachine { + return VirtualMachineClass.New() +} + +func (v_ VirtualMachine) Init() VirtualMachine { + rv := objc.Call[VirtualMachine](v_, objc.Sel("init")) + return rv +} + +// Saves the state of a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/4168516-savemachinestatetourl?language=objc +func (v_ VirtualMachine) SaveMachineStateToURLCompletionHandler(saveFileURL foundation.IURL, completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("saveMachineStateToURL:completionHandler:"), saveFileURL, completionHandler) +} + +// Starts the VM and notifies the specified completion handler if startup was successful. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656703-startwithcompletionhandler?language=objc +func (v_ VirtualMachine) StartWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("startWithCompletionHandler:"), completionHandler) +} + +// Asks the guest operating system to stop running. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656700-requeststopwitherror?language=objc +func (v_ VirtualMachine) RequestStopWithError(error unsafe.Pointer) bool { + rv := objc.Call[bool](v_, objc.Sel("requestStopWithError:"), error) + return rv +} + +// Resumes a paused VM and notifies the specified completion handler of the results. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656701-resumewithcompletionhandler?language=objc +func (v_ VirtualMachine) ResumeWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("resumeWithCompletionHandler:"), completionHandler) +} + +// Starts the VM with the options and a completion handler you provide. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/4013559-startwithoptions?language=objc +func (v_ VirtualMachine) StartWithOptionsCompletionHandler(options IVirtualMachineStartOptions, completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("startWithOptions:completionHandler:"), options, completionHandler) +} + +// Restores a VM from a previously saved state. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/4168515-restoremachinestatefromurl?language=objc +func (v_ VirtualMachine) RestoreMachineStateFromURLCompletionHandler(saveFileURL foundation.IURL, completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("restoreMachineStateFromURL:completionHandler:"), saveFileURL, completionHandler) +} + +// Pauses a running VM and notifies the specified completion handler of the results. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656699-pausewithcompletionhandler?language=objc +func (v_ VirtualMachine) PauseWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("pauseWithCompletionHandler:"), completionHandler) +} + +// Stops a VM that’s in either a running or paused state. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3763076-stopwithcompletionhandler?language=objc +func (v_ VirtualMachine) StopWithCompletionHandler(completionHandler func(errorOrNil foundation.Error)) { + objc.Call[objc.Void](v_, objc.Sel("stopWithCompletionHandler:"), completionHandler) +} + +// The list of configured directory-sharing devices on the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3787645-directorysharingdevices?language=objc +func (v_ VirtualMachine) DirectorySharingDevices() []DirectorySharingDevice { + rv := objc.Call[[]DirectorySharingDevice](v_, objc.Sel("directorySharingDevices")) + return rv +} + +// A Boolean value that indicates whether you can resume the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656693-canresume?language=objc +func (v_ VirtualMachine) CanResume() bool { + rv := objc.Call[bool](v_, objc.Sel("canResume")) + return rv +} + +// The list of configured console devices on the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/4024747-consoledevices?language=objc +func (v_ VirtualMachine) ConsoleDevices() []ConsoleDevice { + rv := objc.Call[[]ConsoleDevice](v_, objc.Sel("consoleDevices")) + return rv +} + +// The array of devices that you use to adjust the amount of memory available to the guest system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656698-memoryballoondevices?language=objc +func (v_ VirtualMachine) MemoryBalloonDevices() []MemoryBalloonDevice { + rv := objc.Call[[]MemoryBalloonDevice](v_, objc.Sel("memoryBalloonDevices")) + return rv +} + +// The list of configured network devices on the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3869834-networkdevices?language=objc +func (v_ VirtualMachine) NetworkDevices() []NetworkDevice { + rv := objc.Call[[]NetworkDevice](v_, objc.Sel("networkDevices")) + return rv +} + +// A custom object you use to determine when the VM stops. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656695-delegate?language=objc +func (v_ VirtualMachine) Delegate() VirtualMachineDelegateObject { + rv := objc.Call[VirtualMachineDelegateObject](v_, objc.Sel("delegate")) + return rv +} + +// A custom object you use to determine when the VM stops. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656695-delegate?language=objc +func (v_ VirtualMachine) SetDelegate(value PVirtualMachineDelegate) { + po0 := objc.WrapAsProtocol("VZVirtualMachineDelegate", value) + objc.SetAssociatedObject(v_, objc.AssociationKey("setDelegate"), po0, objc.ASSOCIATION_RETAIN) + objc.Call[objc.Void](v_, objc.Sel("setDelegate:"), po0) +} + +// A custom object you use to determine when the VM stops. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656695-delegate?language=objc +func (v_ VirtualMachine) SetDelegateObject(valueObject objc.IObject) { + objc.Call[objc.Void](v_, objc.Sel("setDelegate:"), valueObject) +} + +// A Boolean value that indicates whether you can pause the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656691-canpause?language=objc +func (v_ VirtualMachine) CanPause() bool { + rv := objc.Call[bool](v_, objc.Sel("canPause")) + return rv +} + +// The current execution state of the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656704-state?language=objc +func (v_ VirtualMachine) State() VirtualMachineState { + rv := objc.Call[VirtualMachineState](v_, objc.Sel("state")) + return rv +} + +// A Boolean value that indicates whether you can ask the guest operating system to stop running. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656692-canrequeststop?language=objc +func (v_ VirtualMachine) CanRequestStop() bool { + rv := objc.Call[bool](v_, objc.Sel("canRequestStop")) + return rv +} + +// The list of configured graphics devices on the virtual machine. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/4168514-graphicsdevices?language=objc +func (v_ VirtualMachine) GraphicsDevices() []GraphicsDevice { + rv := objc.Call[[]GraphicsDevice](v_, objc.Sel("graphicsDevices")) + return rv +} + +// A Boolean value that indicates whether the system supports virtualization. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656705-supported?language=objc +func (vc _VirtualMachineClass) IsSupported() bool { + rv := objc.Call[bool](vc, objc.Sel("isSupported")) + return rv +} + +// A Boolean value that indicates whether the system supports virtualization. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656705-supported?language=objc +func VirtualMachine_IsSupported() bool { + return VirtualMachineClass.IsSupported() +} + +// The array of socket devices that the VM configures for use ports in the guest VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656702-socketdevices?language=objc +func (v_ VirtualMachine) SocketDevices() []SocketDevice { + rv := objc.Call[[]SocketDevice](v_, objc.Sel("socketDevices")) + return rv +} + +// A Boolean value that indicates whether you can stop the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3763075-canstop?language=objc +func (v_ VirtualMachine) CanStop() bool { + rv := objc.Call[bool](v_, objc.Sel("canStop")) + return rv +} + +// A Boolean value that indicates whether you can start the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachine/3656694-canstart?language=objc +func (v_ VirtualMachine) CanStart() bool { + rv := objc.Call[bool](v_, objc.Sel("canStart")) + return rv +} diff --git a/macos/virtualization/virtual_machine_configuration.gen.go b/macos/virtualization/virtual_machine_configuration.gen.go new file mode 100644 index 00000000..b653b661 --- /dev/null +++ b/macos/virtualization/virtual_machine_configuration.gen.go @@ -0,0 +1,404 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtualMachineConfiguration] class. +var VirtualMachineConfigurationClass = _VirtualMachineConfigurationClass{objc.GetClass("VZVirtualMachineConfiguration")} + +type _VirtualMachineConfigurationClass struct { + objc.Class +} + +// An interface definition for the [VirtualMachineConfiguration] class. +type IVirtualMachineConfiguration interface { + objc.IObject + ValidateSaveRestoreSupportWithError(error unsafe.Pointer) bool + ValidateWithError(error unsafe.Pointer) bool + SerialPorts() []SerialPortConfiguration + SetSerialPorts(value []ISerialPortConfiguration) + NetworkDevices() []NetworkDeviceConfiguration + SetNetworkDevices(value []INetworkDeviceConfiguration) + SocketDevices() []SocketDeviceConfiguration + SetSocketDevices(value []ISocketDeviceConfiguration) + Platform() PlatformConfiguration + SetPlatform(value IPlatformConfiguration) + Keyboards() []KeyboardConfiguration + SetKeyboards(value []IKeyboardConfiguration) + DirectorySharingDevices() []DirectorySharingDeviceConfiguration + SetDirectorySharingDevices(value []IDirectorySharingDeviceConfiguration) + MemoryBalloonDevices() []MemoryBalloonDeviceConfiguration + SetMemoryBalloonDevices(value []IMemoryBalloonDeviceConfiguration) + AudioDevices() []AudioDeviceConfiguration + SetAudioDevices(value []IAudioDeviceConfiguration) + EntropyDevices() []EntropyDeviceConfiguration + SetEntropyDevices(value []IEntropyDeviceConfiguration) + ConsoleDevices() []ConsoleDeviceConfiguration + SetConsoleDevices(value []IConsoleDeviceConfiguration) + MemorySize() uint64 + SetMemorySize(value uint64) + GraphicsDevices() []GraphicsDeviceConfiguration + SetGraphicsDevices(value []IGraphicsDeviceConfiguration) + PointingDevices() []PointingDeviceConfiguration + SetPointingDevices(value []IPointingDeviceConfiguration) + BootLoader() BootLoader + SetBootLoader(value IBootLoader) + CPUCount() uint + SetCPUCount(value uint) + StorageDevices() []StorageDeviceConfiguration + SetStorageDevices(value []IStorageDeviceConfiguration) +} + +// The environment attributes and list of devices to use during the configuration of macOS or Linux VMs. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration?language=objc +type VirtualMachineConfiguration struct { + objc.Object +} + +func VirtualMachineConfigurationFrom(ptr unsafe.Pointer) VirtualMachineConfiguration { + return VirtualMachineConfiguration{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtualMachineConfigurationClass) Alloc() VirtualMachineConfiguration { + rv := objc.Call[VirtualMachineConfiguration](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtualMachineConfigurationClass) New() VirtualMachineConfiguration { + rv := objc.Call[VirtualMachineConfiguration](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtualMachineConfiguration() VirtualMachineConfiguration { + return VirtualMachineConfigurationClass.New() +} + +func (v_ VirtualMachineConfiguration) Init() VirtualMachineConfiguration { + rv := objc.Call[VirtualMachineConfiguration](v_, objc.Sel("init")) + return rv +} + +// Determines whether the framework can save or restore the VM’s current configuration. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/4168519-validatesaverestoresupportwither?language=objc +func (v_ VirtualMachineConfiguration) ValidateSaveRestoreSupportWithError(error unsafe.Pointer) bool { + rv := objc.Call[bool](v_, objc.Sel("validateSaveRestoreSupportWithError:"), error) + return rv +} + +// Validates the current configuration settings and reports any issues that might prevent the successful initialization of the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656728-validatewitherror?language=objc +func (v_ VirtualMachineConfiguration) ValidateWithError(error unsafe.Pointer) bool { + rv := objc.Call[bool](v_, objc.Sel("validateWithError:"), error) + return rv +} + +// The array of serial ports that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656725-serialports?language=objc +func (v_ VirtualMachineConfiguration) SerialPorts() []SerialPortConfiguration { + rv := objc.Call[[]SerialPortConfiguration](v_, objc.Sel("serialPorts")) + return rv +} + +// The array of serial ports that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656725-serialports?language=objc +func (v_ VirtualMachineConfiguration) SetSerialPorts(value []ISerialPortConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setSerialPorts:"), value) +} + +// The array of network devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656724-networkdevices?language=objc +func (v_ VirtualMachineConfiguration) NetworkDevices() []NetworkDeviceConfiguration { + rv := objc.Call[[]NetworkDeviceConfiguration](v_, objc.Sel("networkDevices")) + return rv +} + +// The array of network devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656724-networkdevices?language=objc +func (v_ VirtualMachineConfiguration) SetNetworkDevices(value []INetworkDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setNetworkDevices:"), value) +} + +// The maximum amount of memory that you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656719-maximumallowedmemorysize?language=objc +func (vc _VirtualMachineConfigurationClass) MaximumAllowedMemorySize() uint64 { + rv := objc.Call[uint64](vc, objc.Sel("maximumAllowedMemorySize")) + return rv +} + +// The maximum amount of memory that you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656719-maximumallowedmemorysize?language=objc +func VirtualMachineConfiguration_MaximumAllowedMemorySize() uint64 { + return VirtualMachineConfigurationClass.MaximumAllowedMemorySize() +} + +// The socket device that you use to implement port-based communication with the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656726-socketdevices?language=objc +func (v_ VirtualMachineConfiguration) SocketDevices() []SocketDeviceConfiguration { + rv := objc.Call[[]SocketDeviceConfiguration](v_, objc.Sel("socketDevices")) + return rv +} + +// The socket device that you use to implement port-based communication with the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656726-socketdevices?language=objc +func (v_ VirtualMachineConfiguration) SetSocketDevices(value []ISocketDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setSocketDevices:"), value) +} + +// The maximum number of CPUs you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656718-maximumallowedcpucount?language=objc +func (vc _VirtualMachineConfigurationClass) MaximumAllowedCPUCount() uint { + rv := objc.Call[uint](vc, objc.Sel("maximumAllowedCPUCount")) + return rv +} + +// The maximum number of CPUs you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656718-maximumallowedcpucount?language=objc +func VirtualMachineConfiguration_MaximumAllowedCPUCount() uint { + return VirtualMachineConfigurationClass.MaximumAllowedCPUCount() +} + +// The hardware platform to use. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816095-platform?language=objc +func (v_ VirtualMachineConfiguration) Platform() PlatformConfiguration { + rv := objc.Call[PlatformConfiguration](v_, objc.Sel("platform")) + return rv +} + +// The hardware platform to use. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816095-platform?language=objc +func (v_ VirtualMachineConfiguration) SetPlatform(value IPlatformConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setPlatform:"), value) +} + +// The list of keyboards. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816094-keyboards?language=objc +func (v_ VirtualMachineConfiguration) Keyboards() []KeyboardConfiguration { + rv := objc.Call[[]KeyboardConfiguration](v_, objc.Sel("keyboards")) + return rv +} + +// The list of keyboards. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816094-keyboards?language=objc +func (v_ VirtualMachineConfiguration) SetKeyboards(value []IKeyboardConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setKeyboards:"), value) +} + +// The list of directory sharing devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3787646-directorysharingdevices?language=objc +func (v_ VirtualMachineConfiguration) DirectorySharingDevices() []DirectorySharingDeviceConfiguration { + rv := objc.Call[[]DirectorySharingDeviceConfiguration](v_, objc.Sel("directorySharingDevices")) + return rv +} + +// The list of directory sharing devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3787646-directorysharingdevices?language=objc +func (v_ VirtualMachineConfiguration) SetDirectorySharingDevices(value []IDirectorySharingDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setDirectorySharingDevices:"), value) +} + +// An array that you configure with a memory balloon device, used to update the memory in the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656720-memoryballoondevices?language=objc +func (v_ VirtualMachineConfiguration) MemoryBalloonDevices() []MemoryBalloonDeviceConfiguration { + rv := objc.Call[[]MemoryBalloonDeviceConfiguration](v_, objc.Sel("memoryBalloonDevices")) + return rv +} + +// An array that you configure with a memory balloon device, used to update the memory in the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656720-memoryballoondevices?language=objc +func (v_ VirtualMachineConfiguration) SetMemoryBalloonDevices(value []IMemoryBalloonDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setMemoryBalloonDevices:"), value) +} + +// The list of audio devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3786141-audiodevices?language=objc +func (v_ VirtualMachineConfiguration) AudioDevices() []AudioDeviceConfiguration { + rv := objc.Call[[]AudioDeviceConfiguration](v_, objc.Sel("audioDevices")) + return rv +} + +// The list of audio devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3786141-audiodevices?language=objc +func (v_ VirtualMachineConfiguration) SetAudioDevices(value []IAudioDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setAudioDevices:"), value) +} + +// The array of randomization devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656717-entropydevices?language=objc +func (v_ VirtualMachineConfiguration) EntropyDevices() []EntropyDeviceConfiguration { + rv := objc.Call[[]EntropyDeviceConfiguration](v_, objc.Sel("entropyDevices")) + return rv +} + +// The array of randomization devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656717-entropydevices?language=objc +func (v_ VirtualMachineConfiguration) SetEntropyDevices(value []IEntropyDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setEntropyDevices:"), value) +} + +// The minimum number of CPUs you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656722-minimumallowedcpucount?language=objc +func (vc _VirtualMachineConfigurationClass) MinimumAllowedCPUCount() uint { + rv := objc.Call[uint](vc, objc.Sel("minimumAllowedCPUCount")) + return rv +} + +// The minimum number of CPUs you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656722-minimumallowedcpucount?language=objc +func VirtualMachineConfiguration_MinimumAllowedCPUCount() uint { + return VirtualMachineConfigurationClass.MinimumAllowedCPUCount() +} + +// The array of console devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/4024748-consoledevices?language=objc +func (v_ VirtualMachineConfiguration) ConsoleDevices() []ConsoleDeviceConfiguration { + rv := objc.Call[[]ConsoleDeviceConfiguration](v_, objc.Sel("consoleDevices")) + return rv +} + +// The array of console devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/4024748-consoledevices?language=objc +func (v_ VirtualMachineConfiguration) SetConsoleDevices(value []IConsoleDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setConsoleDevices:"), value) +} + +// The amount of physical memory the guest operating system recognizes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656721-memorysize?language=objc +func (v_ VirtualMachineConfiguration) MemorySize() uint64 { + rv := objc.Call[uint64](v_, objc.Sel("memorySize")) + return rv +} + +// The amount of physical memory the guest operating system recognizes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656721-memorysize?language=objc +func (v_ VirtualMachineConfiguration) SetMemorySize(value uint64) { + objc.Call[objc.Void](v_, objc.Sel("setMemorySize:"), value) +} + +// The minimum amount of memory that you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656723-minimumallowedmemorysize?language=objc +func (vc _VirtualMachineConfigurationClass) MinimumAllowedMemorySize() uint64 { + rv := objc.Call[uint64](vc, objc.Sel("minimumAllowedMemorySize")) + return rv +} + +// The minimum amount of memory that you may configure for the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656723-minimumallowedmemorysize?language=objc +func VirtualMachineConfiguration_MinimumAllowedMemorySize() uint64 { + return VirtualMachineConfigurationClass.MinimumAllowedMemorySize() +} + +// The list of graphics devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816093-graphicsdevices?language=objc +func (v_ VirtualMachineConfiguration) GraphicsDevices() []GraphicsDeviceConfiguration { + rv := objc.Call[[]GraphicsDeviceConfiguration](v_, objc.Sel("graphicsDevices")) + return rv +} + +// The list of graphics devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816093-graphicsdevices?language=objc +func (v_ VirtualMachineConfiguration) SetGraphicsDevices(value []IGraphicsDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setGraphicsDevices:"), value) +} + +// The list of pointing devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816096-pointingdevices?language=objc +func (v_ VirtualMachineConfiguration) PointingDevices() []PointingDeviceConfiguration { + rv := objc.Call[[]PointingDeviceConfiguration](v_, objc.Sel("pointingDevices")) + return rv +} + +// The list of pointing devices. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3816096-pointingdevices?language=objc +func (v_ VirtualMachineConfiguration) SetPointingDevices(value []IPointingDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setPointingDevices:"), value) +} + +// The guest system to boot when the VM starts. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656716-bootloader?language=objc +func (v_ VirtualMachineConfiguration) BootLoader() BootLoader { + rv := objc.Call[BootLoader](v_, objc.Sel("bootLoader")) + return rv +} + +// The guest system to boot when the VM starts. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656716-bootloader?language=objc +func (v_ VirtualMachineConfiguration) SetBootLoader(value IBootLoader) { + objc.Call[objc.Void](v_, objc.Sel("setBootLoader:"), value) +} + +// The number of CPUs you make available to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656715-cpucount?language=objc +func (v_ VirtualMachineConfiguration) CPUCount() uint { + rv := objc.Call[uint](v_, objc.Sel("CPUCount")) + return rv +} + +// The number of CPUs you make available to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656715-cpucount?language=objc +func (v_ VirtualMachineConfiguration) SetCPUCount(value uint) { + objc.Call[objc.Void](v_, objc.Sel("setCPUCount:"), value) +} + +// The array of storage devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656727-storagedevices?language=objc +func (v_ VirtualMachineConfiguration) StorageDevices() []StorageDeviceConfiguration { + rv := objc.Call[[]StorageDeviceConfiguration](v_, objc.Sel("storageDevices")) + return rv +} + +// The array of storage devices that you expose to the guest operating system. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineconfiguration/3656727-storagedevices?language=objc +func (v_ VirtualMachineConfiguration) SetStorageDevices(value []IStorageDeviceConfiguration) { + objc.Call[objc.Void](v_, objc.Sel("setStorageDevices:"), value) +} diff --git a/macos/virtualization/virtual_machine_delegate.gen.go b/macos/virtualization/virtual_machine_delegate.gen.go new file mode 100644 index 00000000..93310c6d --- /dev/null +++ b/macos/virtualization/virtual_machine_delegate.gen.go @@ -0,0 +1,125 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The methods you use to respond to changes in the state of the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate?language=objc +type PVirtualMachineDelegate interface { + // optional + GuestDidStopVirtualMachine(virtualMachine VirtualMachine) + HasGuestDidStopVirtualMachine() bool + + // optional + VirtualMachineDidStopWithError(virtualMachine VirtualMachine, error foundation.Error) + HasVirtualMachineDidStopWithError() bool + + // optional + VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError(virtualMachine VirtualMachine, networkDevice NetworkDevice, error foundation.Error) + HasVirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError() bool +} + +// A delegate implementation builder for the [PVirtualMachineDelegate] protocol. +type VirtualMachineDelegate struct { + _GuestDidStopVirtualMachine func(virtualMachine VirtualMachine) + _VirtualMachineDidStopWithError func(virtualMachine VirtualMachine, error foundation.Error) + _VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError func(virtualMachine VirtualMachine, networkDevice NetworkDevice, error foundation.Error) +} + +func (di *VirtualMachineDelegate) HasGuestDidStopVirtualMachine() bool { + return di._GuestDidStopVirtualMachine != nil +} + +// Tells the delegate that the guest operating system stopped the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3656730-guestdidstopvirtualmachine?language=objc +func (di *VirtualMachineDelegate) SetGuestDidStopVirtualMachine(f func(virtualMachine VirtualMachine)) { + di._GuestDidStopVirtualMachine = f +} + +// Tells the delegate that the guest operating system stopped the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3656730-guestdidstopvirtualmachine?language=objc +func (di *VirtualMachineDelegate) GuestDidStopVirtualMachine(virtualMachine VirtualMachine) { + di._GuestDidStopVirtualMachine(virtualMachine) +} +func (di *VirtualMachineDelegate) HasVirtualMachineDidStopWithError() bool { + return di._VirtualMachineDidStopWithError != nil +} + +// Tells the delegate that the VM stopped because of an error. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3656731-virtualmachine?language=objc +func (di *VirtualMachineDelegate) SetVirtualMachineDidStopWithError(f func(virtualMachine VirtualMachine, error foundation.Error)) { + di._VirtualMachineDidStopWithError = f +} + +// Tells the delegate that the VM stopped because of an error. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3656731-virtualmachine?language=objc +func (di *VirtualMachineDelegate) VirtualMachineDidStopWithError(virtualMachine VirtualMachine, error foundation.Error) { + di._VirtualMachineDidStopWithError(virtualMachine, error) +} +func (di *VirtualMachineDelegate) HasVirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError() bool { + return di._VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError != nil +} + +// The method the framework calls when an error causes a VM’s network attachment to disconnect. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3869835-virtualmachine?language=objc +func (di *VirtualMachineDelegate) SetVirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError(f func(virtualMachine VirtualMachine, networkDevice NetworkDevice, error foundation.Error)) { + di._VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError = f +} + +// The method the framework calls when an error causes a VM’s network attachment to disconnect. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3869835-virtualmachine?language=objc +func (di *VirtualMachineDelegate) VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError(virtualMachine VirtualMachine, networkDevice NetworkDevice, error foundation.Error) { + di._VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError(virtualMachine, networkDevice, error) +} + +// ensure impl type implements protocol interface +var _ PVirtualMachineDelegate = (*VirtualMachineDelegateObject)(nil) + +// A concrete type for the [PVirtualMachineDelegate] protocol. +type VirtualMachineDelegateObject struct { + objc.Object +} + +func (v_ VirtualMachineDelegateObject) HasGuestDidStopVirtualMachine() bool { + return v_.RespondsToSelector(objc.Sel("guestDidStopVirtualMachine:")) +} + +// Tells the delegate that the guest operating system stopped the VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3656730-guestdidstopvirtualmachine?language=objc +func (v_ VirtualMachineDelegateObject) GuestDidStopVirtualMachine(virtualMachine VirtualMachine) { + objc.Call[objc.Void](v_, objc.Sel("guestDidStopVirtualMachine:"), virtualMachine) +} + +func (v_ VirtualMachineDelegateObject) HasVirtualMachineDidStopWithError() bool { + return v_.RespondsToSelector(objc.Sel("virtualMachine:didStopWithError:")) +} + +// Tells the delegate that the VM stopped because of an error. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3656731-virtualmachine?language=objc +func (v_ VirtualMachineDelegateObject) VirtualMachineDidStopWithError(virtualMachine VirtualMachine, error foundation.Error) { + objc.Call[objc.Void](v_, objc.Sel("virtualMachine:didStopWithError:"), virtualMachine, error) +} + +func (v_ VirtualMachineDelegateObject) HasVirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError() bool { + return v_.RespondsToSelector(objc.Sel("virtualMachine:networkDevice:attachmentWasDisconnectedWithError:")) +} + +// The method the framework calls when an error causes a VM’s network attachment to disconnect. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinedelegate/3869835-virtualmachine?language=objc +func (v_ VirtualMachineDelegateObject) VirtualMachineNetworkDeviceAttachmentWasDisconnectedWithError(virtualMachine VirtualMachine, networkDevice NetworkDevice, error foundation.Error) { + objc.Call[objc.Void](v_, objc.Sel("virtualMachine:networkDevice:attachmentWasDisconnectedWithError:"), virtualMachine, networkDevice, error) +} diff --git a/macos/virtualization/virtual_machine_start_options.gen.go b/macos/virtualization/virtual_machine_start_options.gen.go new file mode 100644 index 00000000..cf27ad32 --- /dev/null +++ b/macos/virtualization/virtual_machine_start_options.gen.go @@ -0,0 +1,54 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtualMachineStartOptions] class. +var VirtualMachineStartOptionsClass = _VirtualMachineStartOptionsClass{objc.GetClass("VZVirtualMachineStartOptions")} + +type _VirtualMachineStartOptionsClass struct { + objc.Class +} + +// An interface definition for the [VirtualMachineStartOptions] class. +type IVirtualMachineStartOptions interface { + objc.IObject +} + +// The abstract class for VM start options. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachinestartoptions?language=objc +type VirtualMachineStartOptions struct { + objc.Object +} + +func VirtualMachineStartOptionsFrom(ptr unsafe.Pointer) VirtualMachineStartOptions { + return VirtualMachineStartOptions{ + Object: objc.ObjectFrom(ptr), + } +} + +func (vc _VirtualMachineStartOptionsClass) Alloc() VirtualMachineStartOptions { + rv := objc.Call[VirtualMachineStartOptions](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtualMachineStartOptionsClass) New() VirtualMachineStartOptions { + rv := objc.Call[VirtualMachineStartOptions](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtualMachineStartOptions() VirtualMachineStartOptions { + return VirtualMachineStartOptionsClass.New() +} + +func (v_ VirtualMachineStartOptions) Init() VirtualMachineStartOptions { + rv := objc.Call[VirtualMachineStartOptions](v_, objc.Sel("init")) + return rv +} diff --git a/macos/virtualization/virtual_machine_view.gen.go b/macos/virtualization/virtual_machine_view.gen.go new file mode 100644 index 00000000..ea09f400 --- /dev/null +++ b/macos/virtualization/virtual_machine_view.gen.go @@ -0,0 +1,121 @@ +// Code generated by DarwinKit. DO NOT EDIT. + +package virtualization + +import ( + "unsafe" + + "github.com/progrium/darwinkit/macos/appkit" + "github.com/progrium/darwinkit/macos/foundation" + "github.com/progrium/darwinkit/objc" +) + +// The class instance for the [VirtualMachineView] class. +var VirtualMachineViewClass = _VirtualMachineViewClass{objc.GetClass("VZVirtualMachineView")} + +type _VirtualMachineViewClass struct { + objc.Class +} + +// An interface definition for the [VirtualMachineView] class. +type IVirtualMachineView interface { + appkit.IView + AutomaticallyReconfiguresDisplay() bool + SetAutomaticallyReconfiguresDisplay(value bool) + VirtualMachine() VirtualMachine + SetVirtualMachine(value IVirtualMachine) + CapturesSystemKeys() bool + SetCapturesSystemKeys(value bool) +} + +// A view that allows user interaction with a VM. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview?language=objc +type VirtualMachineView struct { + appkit.View +} + +func VirtualMachineViewFrom(ptr unsafe.Pointer) VirtualMachineView { + return VirtualMachineView{ + View: appkit.ViewFrom(ptr), + } +} + +func (vc _VirtualMachineViewClass) Alloc() VirtualMachineView { + rv := objc.Call[VirtualMachineView](vc, objc.Sel("alloc")) + return rv +} + +func (vc _VirtualMachineViewClass) New() VirtualMachineView { + rv := objc.Call[VirtualMachineView](vc, objc.Sel("new")) + rv.Autorelease() + return rv +} + +func NewVirtualMachineView() VirtualMachineView { + return VirtualMachineViewClass.New() +} + +func (v_ VirtualMachineView) Init() VirtualMachineView { + rv := objc.Call[VirtualMachineView](v_, objc.Sel("init")) + return rv +} + +func (v_ VirtualMachineView) InitWithFrame(frameRect foundation.Rect) VirtualMachineView { + rv := objc.Call[VirtualMachineView](v_, objc.Sel("initWithFrame:"), frameRect) + return rv +} + +// Initializes and returns a newly allocated NSView object with a specified frame rectangle. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/appkit/nsview/1483458-initwithframe?language=objc +func NewVirtualMachineViewWithFrame(frameRect foundation.Rect) VirtualMachineView { + instance := VirtualMachineViewClass.Alloc().InitWithFrame(frameRect) + instance.Autorelease() + return instance +} + +// A Boolean value that indicates whether the graphics display associated with this view automatically reconfigures with respect to view changes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview/4168520-automaticallyreconfiguresdisplay?language=objc +func (v_ VirtualMachineView) AutomaticallyReconfiguresDisplay() bool { + rv := objc.Call[bool](v_, objc.Sel("automaticallyReconfiguresDisplay")) + return rv +} + +// A Boolean value that indicates whether the graphics display associated with this view automatically reconfigures with respect to view changes. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview/4168520-automaticallyreconfiguresdisplay?language=objc +func (v_ VirtualMachineView) SetAutomaticallyReconfiguresDisplay(value bool) { + objc.Call[objc.Void](v_, objc.Sel("setAutomaticallyReconfiguresDisplay:"), value) +} + +// The VM to display in the view. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview/3824991-virtualmachine?language=objc +func (v_ VirtualMachineView) VirtualMachine() VirtualMachine { + rv := objc.Call[VirtualMachine](v_, objc.Sel("virtualMachine")) + return rv +} + +// The VM to display in the view. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview/3824991-virtualmachine?language=objc +func (v_ VirtualMachineView) SetVirtualMachine(value IVirtualMachine) { + objc.Call[objc.Void](v_, objc.Sel("setVirtualMachine:"), value) +} + +// A Boolean value that determines whether the system should send certain system keyboard shortcuts to the guest instead of the host. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview/3824990-capturessystemkeys?language=objc +func (v_ VirtualMachineView) CapturesSystemKeys() bool { + rv := objc.Call[bool](v_, objc.Sel("capturesSystemKeys")) + return rv +} + +// A Boolean value that determines whether the system should send certain system keyboard shortcuts to the guest instead of the host. [Full Topic] +// +// [Full Topic]: https://developer.apple.com/documentation/virtualization/vzvirtualmachineview/3824990-capturessystemkeys?language=objc +func (v_ VirtualMachineView) SetCapturesSystemKeys(value bool) { + objc.Call[objc.Void](v_, objc.Sel("setCapturesSystemKeys:"), value) +} diff --git a/macos/virtualization/virtualization.go b/macos/virtualization/virtualization.go new file mode 100644 index 00000000..a6d89117 --- /dev/null +++ b/macos/virtualization/virtualization.go @@ -0,0 +1,6 @@ +//go:generate go run ../../generate/tools/genmod.go +package virtualization + +// #cgo CFLAGS: -x objective-c +// #cgo LDFLAGS: -framework Virtualization +import "C" diff --git a/macos/virtualization/virtualization_custom.go b/macos/virtualization/virtualization_custom.go new file mode 100644 index 00000000..75cb5ba1 --- /dev/null +++ b/macos/virtualization/virtualization_custom.go @@ -0,0 +1 @@ +package virtualization diff --git a/macos/virtualization/virtualization_test.go b/macos/virtualization/virtualization_test.go new file mode 100644 index 00000000..f39fa472 --- /dev/null +++ b/macos/virtualization/virtualization_test.go @@ -0,0 +1,5 @@ +package virtualization + +import "testing" + +func TestVirtualizationValid(t *testing.T) {}