objc2_virtualization/generated/VZUSBDeviceConfiguration.rs
1//! This file has been automatically generated by `objc2`'s `header-translator`.
2//! DO NOT EDIT
3use core::ffi::*;
4use core::ptr::NonNull;
5use objc2::__framework_prelude::*;
6use objc2_foundation::*;
7
8use crate::*;
9
10extern_protocol!(
11 /// Protocol for USB Device configuration.
12 ///
13 /// Classes that conform to this protocol represent hot-pluggable USB device configurations.
14 /// VZUSBDeviceConfiguration protocol should not be used with objects outside of Virtualization framework.
15 /// This protocol only describes capabilities of Virtualization framework objects.
16 ///
17 /// See: VZUSBMassStorageDeviceConfiguration
18 ///
19 /// See also [Apple's documentation](https://developer.apple.com/documentation/virtualization/vzusbdeviceconfiguration?language=objc)
20 pub unsafe trait VZUSBDeviceConfiguration: NSObjectProtocol {
21 /// Device UUID.
22 ///
23 /// Device UUID is auto-generated.
24 /// Before restoring the virtual machine, it should be replaced with the uuid of a previously attached device when the virtual machine was saved.
25 #[unsafe(method(uuid))]
26 #[unsafe(method_family = none)]
27 unsafe fn uuid(&self) -> Retained<NSUUID>;
28
29 /// Setter for [`uuid`][Self::uuid].
30 #[unsafe(method(setUuid:))]
31 #[unsafe(method_family = none)]
32 unsafe fn setUuid(&self, uuid: &NSUUID);
33 }
34);