# VirtualBox.idl File Reference

Go to the source code of this file.

## Classes
interface | IVirtualBoxErrorInfo
| The IVirtualBoxErrorInfo interface represents extended error information. More...
interface | IVirtualBoxCallback
interface | IVirtualBox
| The IVirtualBox interface represents the main interface exposed by the product that provides virtual machine management. More...
interface | IMachineEnumerator
interface | IMachineCollection
interface | IInternalMachineControl
interface | IBIOSSettings
| The IBIOSSettings interface represents BIOS settings of the virtual machine. More...
interface | IMachine
| The IMachine interface represents a virtual machine, or guest, created in VirtualBox. More...
interface | IConsoleCallback
interface | IRemoteDisplayInfo
| Contains information about the remote display (VRDP) capabilities and status. More...
interface | IConsole
| The IConsole interface represents an interface to control virtual machine execution. More...
interface | IHostDVDDrive
| The IHostDVDDrive interface represents the physical CD/DVD drive hardware on the host. More...
interface | IHostDVDDriveEnumerator
interface | IHostDVDDriveCollection
interface | IHostFloppyDrive
| The IHostFloppyDrive interface represents the physical floppy drive hardware on the host. More...
interface | IHostFloppyDriveEnumerator
interface | IHostFloppyDriveCollection
interface | IHostNetworkInterface
interface | IHostNetworkInterfaceEnumerator
interface | IHostNetworkInterfaceCollection
interface | IHost
| The IHost interface represents the physical machine that this VirtualBox installation runs on. More...
interface | ISystemProperties
| The ISystemProperties interface represents global properties of the given VirtualBox installation. More...
interface | IGuestOSType
interface | IGuestOSTypeEnumerator
interface | IGuestOSTypeCollection
interface | IGuest
| The IGuest interface represents information about the operating system running inside the virtual machine. More...
interface | IProgressEnumerator
interface | IProgressCollection
interface | IProgress
| The IProgress interface represents a task progress object that allows to wait for the completion of some asynchronous task. More...
interface | ISnapshotEnumerator
interface | ISnapshotCollection
interface | ISnapshot
| The ISnapshot interface represents a snapshot of the virtual machine. More...
interface | IHardDiskAttachment
interface | IHardDiskAttachmentEnumerator
interface | IHardDiskAttachmentCollection
interface | IHardDiskEnumerator
interface | IHardDiskCollection
interface | IHardDisk
| The IHardDisk interface represents a virtual hard disk drive used by virtual machines. More...
interface | IVirtualDiskImage
| The IVirtualDiskImage interface represent a specific type of IHardDisk that uses VDI image files. More...
interface | IISCSIHardDisk
| THe IISCSIHardDisk interface represents a specific type of IHardDisk that uses iSCSI. More...
interface | IVMDKImage
| The IVMDKImage interface represents a specific type of IHardDisk that uses VMDK image files. More...
interface | ICustomHardDisk
| The ICustomHardDisk interface represents a specific type of IHardDisk that is supported through a third-party plugin. More...
interface | IVHDImage
| The IVHDImage interface represents virtual hard disks that use Virtual PC Virtual Machine Disk image files to store hard disk data. More...
interface | IDVDImageEnumerator
interface | IDVDImageCollection
interface | IDVDImage
| The IDVDImage interface represents a file containing the image of the DVD or CD disk. More...
interface | IDVDDrive
| The IDVDDrive interface represents the virtual CD/DVD drive of the virtual machine. More...
interface | IFloppyImageEnumerator
interface | IFloppyImageCollection
interface | IFloppyImage
| The IFloppyImage interface represents a file containing the image of a floppy disk. More...
interface | IFloppyDrive
| The IFloppyDrive interface represents the virtual floppy drive of the virtual machine. More...
interface | IKeyboard
| The IKeyboard interface represents the virtual machine's keyboard. More...
interface | IMouse
| The IMouse interface represents the virtual machine's mouse. More...
interface | IFramebuffer
interface | IFramebufferOverlay
| The IFramebufferOverlay interface represents an alpha blended overlay for displaying status icons above an IFramebuffer. More...
interface | IDisplay
| The IDisplay interface represents the virtual machine's display. More...
interface | INetworkAdapter
interface | ISerialPort
| The ISerialPort interface represents the virtual serial port device. More...
interface | IParallelPort
| The IParallelPort interface represents the virtual parallel port device. More...
interface | IMachineDebugger
interface | IUSBController
interface | IUSBDeviceEnumerator
interface | IUSBDeviceCollection
interface | IUSBDevice
| The IUSBDevice interface represents a virtual USB device attached to the virtual machine. More...
interface | IUSBDeviceFilterEnumerator
interface | IUSBDeviceFilterCollection
interface | IUSBDeviceFilter
| The IUSBDeviceFilter interface represents an USB device filter used to perform actions on a group of USB devices. More...
interface | IHostUSBDeviceEnumerator
interface | IHostUSBDeviceCollection
interface | IHostUSBDevice
| The IHostUSBDevice interface represents a physical USB device attached to the host computer. More...
interface | IHostUSBDeviceFilterEnumerator
interface | IHostUSBDeviceFilterCollection
interface | IHostUSBDeviceFilter
| The IHostUSBDeviceFilter interface represents a global filter for a physical USB device used by the host computer. More...
interface | IAudioAdapter
| The IAudioAdapter interface represents the virtual audio adapter of the virtual machine. More...
interface | IVRDPServer
interface | ISharedFolderEnumerator
interface | ISharedFolderCollection
interface | ISharedFolder
| The ISharedFolder interface represents a folder in the host computer's file system accessible from the guest OS running inside a virtual machine using an associated logical name. More...
interface | IInternalSessionControl
interface | ISession
| The ISession interface represents a serialization primitive for virtual machines. More...
interface | ISATAController
interface | IManagedObjectRef
| Managed object reference. More...
interface | IWebsessionManager
| Websession manager. More...
interface | IPerformanceMetric
| The IPerformanceMetric interface represents parameters of the given performance metric. More...
interface | IPerformanceCollector
| The IPerformanceCollector interface represents a service that collects and stores performance metrics data. More...
## Enumerations
enum | TSBool { False = 0, True = 1, Default = 2 }
| Boolean variable having a third state, default. More...
enum | MachineState { Null = 0, PoweredOff = 1, Saved = 2, Aborted = 3, Running = 4, Paused = 5, Stuck = 6, Starting = 7, Stopping = 8, Saving = 9, Restoring = 10, Discarding = 11 }
| Virtual machine execution state. More...
enum | SessionState { Null = 0, Closed = 1, Open = 2, Spawning = 3, Closing = 4 }
| Session state. More...
enum | SessionType { Null = 0, Direct = 1, Remote = 2, Existing = 3 }
| Session type. More...
enum | DeviceType { Null = 0, Floppy = 1, DVD = 2, HardDisk = 3, Network = 4, USB = 5, SharedFolder = 6 }
| Device type. More...
enum | DeviceActivity { Null = 0, Idle = 1, Reading = 2, Writing = 3 }
| Device activity for IConsole::getDeviceActivity. More...
enum | ResourceUsage { Null = 0, Permanent = 1, Temporary = 2, All = 3 }
| Usage type constants for IVirtualBox::getDVDImageUsage and IVirtualBox::getFloppyImageUsage. More...
enum | StorageBus { Null = 0, IDE = 1, SATA = 2 }
| Interface bus type for storage devices. More...
enum | ClipboardMode { Disabled = 0, HostToGuest = 1, GuestToHost = 2, Bidirectional = 3 }
| Host-Guest clipboard interchange mode. More...
enum | Scope { Global = 0, Machine = 1, Session = 2 }
| Scope of the operation. More...
enum | GuestStatisticType { CPULoad_Idle = 0, CPULoad_Kernel = 1, CPULoad_User = 2, Threads = 3, Processes = 4, Handles = 5, MemoryLoad = 6, PhysMemTotal = 7, PhysMemAvailable = 8, PhysMemBalloon = 9, MemCommitTotal = 10, MemKernelTotal = 11, MemKernelPaged = 12, MemKernelNonpaged = 13, MemSystemCache = 14, PageFileSize = 15, SampleNumber = 16, MaxVal = 17 }
| Statistics type for IGuest::getStatistic. More...
enum | BIOSBootMenuMode { Disabled = 0, MenuOnly = 1, MessageAndMenu = 2 }
| BIOS boot menu mode. More...
enum | IDEControllerType { Null = 0, PIIX3 = 1, PIIX4 = 2 }
| IDE controller type. More...
enum | DriveState { Null = 0, NotMounted = 1, ImageMounted = 2, HostDriveCaptured = 3 }
enum | HardDiskStorageType { VirtualDiskImage = 0, ISCSIHardDisk = 1, VMDKImage = 2, CustomHardDisk = 3, VHDImage = 4 }
| Virtual hard disk storage type. More...
enum | HardDiskType { Normal = 0, Immutable = 1, Writethrough = 2 }
| Virtual hard disk type. More...
enum | MouseButtonState { LeftButton = 0x01, RightButton = 0x02, MiddleButton = 0x04, WheelUp = 0x08, WheelDown = 0x10, MouseStateMask = 0x1F }
| Mouse button state. More...
enum | FramebufferAccelerationOperation { SolidFillAcceleration = 1, ScreenCopyAcceleration = 2 }
| Framebuffer acceleration operation. More...
enum | FramebufferPixelFormat { Opaque = 0xFFFFFFFF, FOURCC_RGB = 0x32424752 }
| Format of the video memory buffer. More...
enum | NetworkAttachmentType { Null = 0, NAT = 1, HostInterface = 2, Internal = 3 }
| Network attachment type. More...
enum | NetworkAdapterType { Null = 0, Am79C970A = 1, Am79C973 = 2, I82540EM = 3, I82543GC = 4 }
| Network adapter type. More...
enum | PortMode { Disconnected = 0, HostPipe = 1, HostDevice = 2 }
| The PortMode enumeration represents possible communicaton modes for the virtual serial port device. More...
enum | USBDeviceState { NotSupported = 0, Unavailable = 1, Busy = 2, Available = 3, Held = 4, Captured = 5 }
| USB device state. More...
enum | USBDeviceFilterAction { Null = 0, Ignore = 1, Hold = 2 }
| Actions for host USB device filters. More...
enum | AudioDriverType { Null = 0, WinMM = 1, OSS = 2, ALSA = 3, DirectSound = 4, CoreAudio = 5, MMPM = 6, Pulse = 7, SolAudio = 8 }
| Host audio driver type. More...
enum | AudioControllerType { AC97 = 0, SB16 = 1 }
| Virtual audio controller type. More...
enum | VRDPAuthType { Null = 0, External = 1, Guest = 2 }
| VRDP authentication type. More...

## Enumeration Type Documentation

enum TSBool

Boolean variable having a third state, default.

Interface ID:
  `{523FF64D-842A-4B1A-80E7-C311B028CB3A}`

Enumerator:

  False |
  True |
  Default |

enum MachineState

Virtual machine execution state.

This enumeration represents possible values of the IMachine::state attribute.

Interface ID:
  `{73BF04D0-7C4F-4684-9ABF-D65A9AD74343}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  PoweredOff | The machine is not running.
  Saved | The machine is not currently running, but the execution state of the machine has been saved to an external file when it was running. Note: No any machine settings can be altered when the machine is in this state.
  Aborted | A process that run the machine has abnormally terminated. Other than that, this value is equivalent to PoweredOff.
  Running | The machine is currently being executed. Note: This value can be used in comparison expressions: all state values below it describe a virtual machine that is not currently being executed (i.e., it is completely out of action). For whoever decides to touch this enum: In order to keep the aforementioned comparisons valid, this state must immediately preceed the Paused state.
  Paused | The execution of the machine has been paused. Note: This value can be used in comparison expressions: all state values above it represent unstable states of the running virtual machine. Unless explicitly stated otherwise, no machine settings can be altered when it is in one of the unstable states. For whoever decides to touch this enum: In order to keep the aforementioned comparisons valid, this state must immediately follow the Running state.
  Stuck | The execution of the machine has reached the "Guru Meditation" condition. This condition indicates an internal VMM failure which may happen as a result of either an unhandled low-level virtual hardware exception or one of the recompiler exceptions (such as the too-many-traps condition).
  Starting | The machine is being started after powering it on from a zero execution state.
  Stopping | The machine is being normally stopped (after explicitly powering it off, or after the guest OS has initiated a shutdown sequence).
  Saving | The machine is saving its execution state to a file as a result of calling IConsole::saveState or an online snapshot of the machine is being taken using IConsole::takeSnapshot.
  Restoring | The execution state of the machine is being restored from a file after powering it on from a saved execution state.
  Discarding | A snapshot of the machine is being discarded after calling IConsole::discardSnapshot or its current state is being discarded after IConsole::discardCurrentState.

enum SessionState

Session state.

This enumeration represents possible values of IMachine::sessionState and ISession::state attributes. Idividual value descriptions contain the appropriate meaning for every case.

Interface ID:
  `{CF2700C0-EA4B-47AE-9725-7810114B94D8}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Closed | The machine has no open sessions (IMachine::sessionState); the session is closed (ISession::state).
  Open | The machine has an open direct session (IMachine::sessionState); the session is open (ISession::state).
  Spawning | A new (direct) session is being opened for the machine as a result of IVirtualBox::openRemoteSession() call (IMachine::sessionState); the session is currently being opened as a result of IVirtualBox::openRemoteSession() call (ISession::state).
  Closing | The direct session is being closed (IMachine::sessionState); the session is being closed (ISession::state).

enum SessionType

Session type.

This enumeration represents possible values of the ISession::type attribute.

Interface ID:
  `{A13C02CB-0C2C-421E-8317-AC0E8AAA153A}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Direct | Direct session (opened by IVirtualBox::openSession()).
  Remote | Remote session (opened by IVirtualBox::openRemoteSession()).
  Existing | Existing session (opened by IVirtualBox::openExistingSession()).

enum DeviceType

Device type.

Interface ID:
  `{6D9420F7-0B56-4636-99F9-7346F1B01E57}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Floppy | Floppy device.
  DVD | CD/DVD-ROM device.
  HardDisk | Hard disk device.
  Network | Network device.
  USB | USB device.
  SharedFolder | Shared folder device.

enum DeviceActivity

Device activity for IConsole::getDeviceActivity.

Interface ID:
  `{6FC8AEAA-130A-4EB5-8954-3F921422D707}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Idle |
  Reading |
  Writing |

enum ResourceUsage

Usage type constants for IVirtualBox::getDVDImageUsage and IVirtualBox::getFloppyImageUsage.

Interface ID:
  `{FC56E4B6-B195-48E2-A5E1-A667B0D9F809}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Permanent | Scopes the VMs that use the resource permanently (the information about this usage is stored in the VM settings file).
  Temporary | Scopes the VMs that are temporarily using the resource (the information about the usage is not yet saved in the VM settings file). Temporary usage can take place only in the context of an open session.
  All | Combines Permanent and Temporary.

enum StorageBus

Interface bus type for storage devices.

Interface ID:
  `{715984A5-093C-43BB-AA42-A16ED16828DD}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  IDE |
  SATA |

enum ClipboardMode

Host-Guest clipboard interchange mode.

Interface ID:
  `{33364716-4008-4701-8F14-BE0FA3D62950}`

Enumerator:

  Disabled |
  HostToGuest |
  GuestToHost |
  Bidirectional |

enum Scope

Scope of the operation.

A generic enumeration used in various methods to define the action or argument scope.

Interface ID:
  `{7C91096E-499E-4ECA-9F9B-9001438D7855}`

Enumerator:

  Global |
  Machine |
  Session |

enum GuestStatisticType

Statistics type for IGuest::getStatistic.

Interface ID:
  `{AA7C1D71-AAFE-47A8-9608-27D2D337CF55}`

Enumerator:

  CPULoad_Idle | Idle CPU load (0-100%) for last interval.
  CPULoad_Kernel | Kernel CPU load (0-100%) for last interval.
  CPULoad_User | User CPU load (0-100%) for last interval.
  Threads | Total number of threads in the system.
  Processes | Total number of processes in the system.
  Handles | Total number of handles in the system.
  MemoryLoad | Memory load (0-100%).
  PhysMemTotal | Total physical memory in megabytes.
  PhysMemAvailable | Free physical memory in megabytes.
  PhysMemBalloon | Ballooned physical memory in megabytes.
  MemCommitTotal | Total amount of memory in the committed state in megabytes.
  MemKernelTotal | Total amount of memory used by the guest OS's kernel in megabytes.
  MemKernelPaged | Total amount of paged memory used by the guest OS's kernel in megabytes.
  MemKernelNonpaged | Total amount of nonpaged memory used by the guest OS's kernel in megabytes.
  MemSystemCache | Total amount of memory used by the guest OS's system cache in megabytes.
  PageFileSize | Pagefile size in megabytes.
  SampleNumber | Statistics sample number.
  MaxVal |

enum BIOSBootMenuMode

BIOS boot menu mode.

Interface ID:
  `{AE4FB9F7-29D2-45B4-B2C7-D579603135D5}`

Enumerator:

  Disabled |
  MenuOnly |
  MessageAndMenu |

enum IDEControllerType

IDE controller type.

Interface ID:
  `{445330E3-202A-4DAB-854F-CE22E6CB9715}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  PIIX3 |
  PIIX4 |

enum DriveState

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  NotMounted |
  ImageMounted |
  HostDriveCaptured |

enum HardDiskStorageType

Virtual hard disk storage type.

See also:
  IHardDisk

Interface ID:
  `{48138584-AD99-479D-A36F-EB82A7663685}`

Enumerator:

  VirtualDiskImage | Virtual Disk Image, VDI (a regular file in the file system of the host OS, see IVirtualDiskImage).
  ISCSIHardDisk | iSCSI Remote Disk (a disk accessed via the Internet SCSI protocol over a TCP/IP network, see IISCSIHardDisk)
  VMDKImage | VMware Virtual Machine Disk image (a regular file in the file system of the host OS, see IVMDKImage).
  CustomHardDisk | Disk formats supported through plugins (see ICustomHardDisk).
  VHDImage | Virtual PC Virtual Machine Disk image (a regular file in the file system of the host OS, see IVHDImage).

enum HardDiskType

Virtual hard disk type.

See also:
  IHardDisk

Interface ID:
  `{A348FAFD-A64E-4643-BA65-EB3896BD7E0A}`

Enumerator:

  Normal | Normal hard disk (attached directly or indirectly, preserved when taking snapshots).
  Immutable | Immutable hard disk (attached indirectly, changes are wiped out after powering off the virtual machine).
  Writethrough | Write through hard disk (attached directly, ignored when taking snapshots).

enum MouseButtonState

Mouse button state.

Interface ID:
  `{03131722-2EC5-4173-9794-0DACA46673EF}`

Enumerator:

  LeftButton |
  RightButton |
  MiddleButton |
  WheelUp |
  WheelDown |
  MouseStateMask |

enum FramebufferAccelerationOperation

Framebuffer acceleration operation.

Interface ID:
  `{F0E5EBBE-DC8E-4E2D-916E-53BAA3844DF8}`

Enumerator:

  SolidFillAcceleration |
  ScreenCopyAcceleration |

enum FramebufferPixelFormat

Format of the video memory buffer.

Constants represented by this enum can be used to test for particular values of IFramebuffer::pixelFormat. See also IFramebuffer::requestResize().

See also www.fourcc.org for more informantion about FOURCC pixel formats.

Interface ID:
  `{6B27D1FC-4F2C-4E9C-A166-01D06540305D}`

Enumerator:

  Opaque | Unknown buffer format. The user may not assume any particular format of the buffer.
  FOURCC_RGB | Basic RGB format. IFramebuffer::bitsPerPixel determines the bit layout.

enum NetworkAttachmentType

Network attachment type.

Interface ID:
  `{8730D899-D036-4925-BC63-E58F3486F4BF}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  NAT |
  HostInterface |
  Internal |

enum NetworkAdapterType

Network adapter type.

Interface ID:
  `{156B17B9-5D61-4D54-BE90-62E37DDA848D}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Am79C970A |
  Am79C973 |
  I82540EM |
  I82543GC |

enum PortMode

The PortMode enumeration represents possible communicaton modes for the virtual serial port device.

Interface ID:
  `{B266F43C-2E93-46B3-812B-C20E600E867B}`

Enumerator:

  Disconnected | Virtual device is not attached to any real host device.
  HostPipe | Virtual device is attached to a host pipe.
  HostDevice | Virtual device is attached to a host device.

enum USBDeviceState

USB device state.

This enumeration represents all possible states of the USB device physically attached to the host computer regarding its state on the host computer and availability to guest computers (all currently running virtual machines).

Once a supported USB device is attached to the host, global USB filters (IHost::USBDeviceFilters) are activated. They can either ignore the device, or put ot to Held state, or do nothing. Unless the device is ignored by global filters, filters of all currently running guests (IUSBController::deviceFilters) are activated that can put it to Captured state.

If the device was ignored by global filters, or didn't match any filters at all (including guest ones), it is handled by the host in a normal way. In this case, the device state is determined by the host and can be one of Unavailable, Busy or Available, depending on the current device usage.

Besides auto-capturing based on filters, the device can be manually captured by guests (IConsole::attachUSBDevice()) if its state is Busy, Available or Held.

Note:
  Due to differences in USB stack implementations in Linux and Win32, states Busy and Available are applicable only to the Linux version of the product. This also means that (IConsole::attachUSBDevice()) can only succeed on Win32 if the device state is Held.

See also:
  IHostUSBDevice, IHostUSBDeviceFilter

Interface ID:
  `{B99A2E65-67FB-4882-82FD-F3E5E8193AB4}`

Enumerator:

  NotSupported | Not supported by the VirtualBox server, not available to guests.
  Unavailable | Being used by the host computer exclusively, not available to guests.
  Busy | Being used by the host computer, potentially available to guests.
  Available | Not used by the host computer, available to guests. The host computer can also start using the device at any time.
  Held | Held by the VirtualBox server (ignored by the host computer), available to guests.
  Captured | Captured by one of the guest computers, not available to anybody else.

enum USBDeviceFilterAction

Actions for host USB device filters.

See also:
  IHostUSBDeviceFilter, USBDeviceState

Interface ID:
  `{CBC30A49-2F4E-43B5-9DA6-121320475933}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  Ignore | Ignore the matched USB device.
  Hold | Hold the matched USB device.

enum AudioDriverType

Host audio driver type.

Interface ID:
  `{4BCC3D73-C2FE-40DB-B72F-0C2CA9D68496}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  WinMM |
  OSS |
  ALSA |
  DirectSound |
  CoreAudio |
  MMPM |
  Pulse |
  SolAudio |

enum AudioControllerType

Virtual audio controller type.

Interface ID:
  `{7AFD395C-42C3-444E-8788-3CE80292F36C}`

Enumerator:

  AC97 |
  SB16 |

enum VRDPAuthType

VRDP authentication type.

Interface ID:
  `{3D91887A-B67F-4B33-85BF-2DA7AB1EA83A}`

Enumerator:

  Null | `null` value. `null` value which may also mean "no device". Never used by the API. Note: This value is not allowed for IConsole::getDeviceActivity Also means "not attached". Also means "dummy audio driver". Also means "no authentication".
  External |
  Guest |