

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0361 */
/* at Thu Dec 17 14:43:39 2009
 */
/* Compiler settings for Z:\home\vbox\tinderbox\3.1-sdk\out\linux.amd64\release\bin\sdk\bindings\mscom\idl\VirtualBox.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__


#ifndef __VirtualBox_h__
#define __VirtualBox_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IVirtualBoxErrorInfo_FWD_DEFINED__
#define __IVirtualBoxErrorInfo_FWD_DEFINED__
typedef interface IVirtualBoxErrorInfo IVirtualBoxErrorInfo;
#endif 	/* __IVirtualBoxErrorInfo_FWD_DEFINED__ */


#ifndef __ILocalOwner_FWD_DEFINED__
#define __ILocalOwner_FWD_DEFINED__
typedef interface ILocalOwner ILocalOwner;
#endif 	/* __ILocalOwner_FWD_DEFINED__ */


#ifndef __IVirtualBoxCallback_FWD_DEFINED__
#define __IVirtualBoxCallback_FWD_DEFINED__
typedef interface IVirtualBoxCallback IVirtualBoxCallback;
#endif 	/* __IVirtualBoxCallback_FWD_DEFINED__ */


#ifndef __IDHCPServer_FWD_DEFINED__
#define __IDHCPServer_FWD_DEFINED__
typedef interface IDHCPServer IDHCPServer;
#endif 	/* __IDHCPServer_FWD_DEFINED__ */


#ifndef __IVirtualBox_FWD_DEFINED__
#define __IVirtualBox_FWD_DEFINED__
typedef interface IVirtualBox IVirtualBox;
#endif 	/* __IVirtualBox_FWD_DEFINED__ */


#ifndef __IVFSExplorer_FWD_DEFINED__
#define __IVFSExplorer_FWD_DEFINED__
typedef interface IVFSExplorer IVFSExplorer;
#endif 	/* __IVFSExplorer_FWD_DEFINED__ */


#ifndef __IAppliance_FWD_DEFINED__
#define __IAppliance_FWD_DEFINED__
typedef interface IAppliance IAppliance;
#endif 	/* __IAppliance_FWD_DEFINED__ */


#ifndef __IVirtualSystemDescription_FWD_DEFINED__
#define __IVirtualSystemDescription_FWD_DEFINED__
typedef interface IVirtualSystemDescription IVirtualSystemDescription;
#endif 	/* __IVirtualSystemDescription_FWD_DEFINED__ */


#ifndef __IInternalMachineControl_FWD_DEFINED__
#define __IInternalMachineControl_FWD_DEFINED__
typedef interface IInternalMachineControl IInternalMachineControl;
#endif 	/* __IInternalMachineControl_FWD_DEFINED__ */


#ifndef __IBIOSSettings_FWD_DEFINED__
#define __IBIOSSettings_FWD_DEFINED__
typedef interface IBIOSSettings IBIOSSettings;
#endif 	/* __IBIOSSettings_FWD_DEFINED__ */


#ifndef __IMachine_FWD_DEFINED__
#define __IMachine_FWD_DEFINED__
typedef interface IMachine IMachine;
#endif 	/* __IMachine_FWD_DEFINED__ */


#ifndef __IConsoleCallback_FWD_DEFINED__
#define __IConsoleCallback_FWD_DEFINED__
typedef interface IConsoleCallback IConsoleCallback;
#endif 	/* __IConsoleCallback_FWD_DEFINED__ */


#ifndef __IRemoteDisplayInfo_FWD_DEFINED__
#define __IRemoteDisplayInfo_FWD_DEFINED__
typedef interface IRemoteDisplayInfo IRemoteDisplayInfo;
#endif 	/* __IRemoteDisplayInfo_FWD_DEFINED__ */


#ifndef __IConsole_FWD_DEFINED__
#define __IConsole_FWD_DEFINED__
typedef interface IConsole IConsole;
#endif 	/* __IConsole_FWD_DEFINED__ */


#ifndef __IHostNetworkInterface_FWD_DEFINED__
#define __IHostNetworkInterface_FWD_DEFINED__
typedef interface IHostNetworkInterface IHostNetworkInterface;
#endif 	/* __IHostNetworkInterface_FWD_DEFINED__ */


#ifndef __IHost_FWD_DEFINED__
#define __IHost_FWD_DEFINED__
typedef interface IHost IHost;
#endif 	/* __IHost_FWD_DEFINED__ */


#ifndef __ISystemProperties_FWD_DEFINED__
#define __ISystemProperties_FWD_DEFINED__
typedef interface ISystemProperties ISystemProperties;
#endif 	/* __ISystemProperties_FWD_DEFINED__ */


#ifndef __IGuestOSType_FWD_DEFINED__
#define __IGuestOSType_FWD_DEFINED__
typedef interface IGuestOSType IGuestOSType;
#endif 	/* __IGuestOSType_FWD_DEFINED__ */


#ifndef __IGuest_FWD_DEFINED__
#define __IGuest_FWD_DEFINED__
typedef interface IGuest IGuest;
#endif 	/* __IGuest_FWD_DEFINED__ */


#ifndef __IProgress_FWD_DEFINED__
#define __IProgress_FWD_DEFINED__
typedef interface IProgress IProgress;
#endif 	/* __IProgress_FWD_DEFINED__ */


#ifndef __ISnapshot_FWD_DEFINED__
#define __ISnapshot_FWD_DEFINED__
typedef interface ISnapshot ISnapshot;
#endif 	/* __ISnapshot_FWD_DEFINED__ */


#ifndef __IMediumAttachment_FWD_DEFINED__
#define __IMediumAttachment_FWD_DEFINED__
typedef interface IMediumAttachment IMediumAttachment;
#endif 	/* __IMediumAttachment_FWD_DEFINED__ */


#ifndef __IMedium_FWD_DEFINED__
#define __IMedium_FWD_DEFINED__
typedef interface IMedium IMedium;
#endif 	/* __IMedium_FWD_DEFINED__ */


#ifndef __IMediumFormat_FWD_DEFINED__
#define __IMediumFormat_FWD_DEFINED__
typedef interface IMediumFormat IMediumFormat;
#endif 	/* __IMediumFormat_FWD_DEFINED__ */


#ifndef __IKeyboard_FWD_DEFINED__
#define __IKeyboard_FWD_DEFINED__
typedef interface IKeyboard IKeyboard;
#endif 	/* __IKeyboard_FWD_DEFINED__ */


#ifndef __IMouse_FWD_DEFINED__
#define __IMouse_FWD_DEFINED__
typedef interface IMouse IMouse;
#endif 	/* __IMouse_FWD_DEFINED__ */


#ifndef __IFramebuffer_FWD_DEFINED__
#define __IFramebuffer_FWD_DEFINED__
typedef interface IFramebuffer IFramebuffer;
#endif 	/* __IFramebuffer_FWD_DEFINED__ */


#ifndef __IFramebufferOverlay_FWD_DEFINED__
#define __IFramebufferOverlay_FWD_DEFINED__
typedef interface IFramebufferOverlay IFramebufferOverlay;
#endif 	/* __IFramebufferOverlay_FWD_DEFINED__ */


#ifndef __IDisplay_FWD_DEFINED__
#define __IDisplay_FWD_DEFINED__
typedef interface IDisplay IDisplay;
#endif 	/* __IDisplay_FWD_DEFINED__ */


#ifndef __INetworkAdapter_FWD_DEFINED__
#define __INetworkAdapter_FWD_DEFINED__
typedef interface INetworkAdapter INetworkAdapter;
#endif 	/* __INetworkAdapter_FWD_DEFINED__ */


#ifndef __ISerialPort_FWD_DEFINED__
#define __ISerialPort_FWD_DEFINED__
typedef interface ISerialPort ISerialPort;
#endif 	/* __ISerialPort_FWD_DEFINED__ */


#ifndef __IParallelPort_FWD_DEFINED__
#define __IParallelPort_FWD_DEFINED__
typedef interface IParallelPort IParallelPort;
#endif 	/* __IParallelPort_FWD_DEFINED__ */


#ifndef __IMachineDebugger_FWD_DEFINED__
#define __IMachineDebugger_FWD_DEFINED__
typedef interface IMachineDebugger IMachineDebugger;
#endif 	/* __IMachineDebugger_FWD_DEFINED__ */


#ifndef __IUSBController_FWD_DEFINED__
#define __IUSBController_FWD_DEFINED__
typedef interface IUSBController IUSBController;
#endif 	/* __IUSBController_FWD_DEFINED__ */


#ifndef __IUSBDevice_FWD_DEFINED__
#define __IUSBDevice_FWD_DEFINED__
typedef interface IUSBDevice IUSBDevice;
#endif 	/* __IUSBDevice_FWD_DEFINED__ */


#ifndef __IUSBDeviceFilter_FWD_DEFINED__
#define __IUSBDeviceFilter_FWD_DEFINED__
typedef interface IUSBDeviceFilter IUSBDeviceFilter;
#endif 	/* __IUSBDeviceFilter_FWD_DEFINED__ */


#ifndef __IHostUSBDevice_FWD_DEFINED__
#define __IHostUSBDevice_FWD_DEFINED__
typedef interface IHostUSBDevice IHostUSBDevice;
#endif 	/* __IHostUSBDevice_FWD_DEFINED__ */


#ifndef __IHostUSBDeviceFilter_FWD_DEFINED__
#define __IHostUSBDeviceFilter_FWD_DEFINED__
typedef interface IHostUSBDeviceFilter IHostUSBDeviceFilter;
#endif 	/* __IHostUSBDeviceFilter_FWD_DEFINED__ */


#ifndef __IAudioAdapter_FWD_DEFINED__
#define __IAudioAdapter_FWD_DEFINED__
typedef interface IAudioAdapter IAudioAdapter;
#endif 	/* __IAudioAdapter_FWD_DEFINED__ */


#ifndef __IVRDPServer_FWD_DEFINED__
#define __IVRDPServer_FWD_DEFINED__
typedef interface IVRDPServer IVRDPServer;
#endif 	/* __IVRDPServer_FWD_DEFINED__ */


#ifndef __ISharedFolder_FWD_DEFINED__
#define __ISharedFolder_FWD_DEFINED__
typedef interface ISharedFolder ISharedFolder;
#endif 	/* __ISharedFolder_FWD_DEFINED__ */


#ifndef __IInternalSessionControl_FWD_DEFINED__
#define __IInternalSessionControl_FWD_DEFINED__
typedef interface IInternalSessionControl IInternalSessionControl;
#endif 	/* __IInternalSessionControl_FWD_DEFINED__ */


#ifndef __ISession_FWD_DEFINED__
#define __ISession_FWD_DEFINED__
typedef interface ISession ISession;
#endif 	/* __ISession_FWD_DEFINED__ */


#ifndef __IStorageController_FWD_DEFINED__
#define __IStorageController_FWD_DEFINED__
typedef interface IStorageController IStorageController;
#endif 	/* __IStorageController_FWD_DEFINED__ */


#ifndef __IPerformanceMetric_FWD_DEFINED__
#define __IPerformanceMetric_FWD_DEFINED__
typedef interface IPerformanceMetric IPerformanceMetric;
#endif 	/* __IPerformanceMetric_FWD_DEFINED__ */


#ifndef __IPerformanceCollector_FWD_DEFINED__
#define __IPerformanceCollector_FWD_DEFINED__
typedef interface IPerformanceCollector IPerformanceCollector;
#endif 	/* __IPerformanceCollector_FWD_DEFINED__ */


#ifndef __VirtualBox_FWD_DEFINED__
#define __VirtualBox_FWD_DEFINED__

#ifdef __cplusplus
typedef class VirtualBox VirtualBox;
#else
typedef struct VirtualBox VirtualBox;
#endif /* __cplusplus */

#endif 	/* __VirtualBox_FWD_DEFINED__ */


#ifndef __Session_FWD_DEFINED__
#define __Session_FWD_DEFINED__

#ifdef __cplusplus
typedef class Session Session;
#else
typedef struct Session Session;
#endif /* __cplusplus */

#endif 	/* __Session_FWD_DEFINED__ */


#ifndef __CallbackWrapper_FWD_DEFINED__
#define __CallbackWrapper_FWD_DEFINED__

#ifdef __cplusplus
typedef class CallbackWrapper CallbackWrapper;
#else
typedef struct CallbackWrapper CallbackWrapper;
#endif /* __cplusplus */

#endif 	/* __CallbackWrapper_FWD_DEFINED__ */


/* header files for imported files */
#include "unknwn.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

/* interface __MIDL_itf_VirtualBox_0000 */
/* [local] */ 

enum {
    kTypeLibraryMajorVersion = 1,
    kTypeLibraryMinorVersion = 0
};


extern RPC_IF_HANDLE __MIDL_itf_VirtualBox_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_VirtualBox_0000_v0_0_s_ifspec;


#ifndef __VirtualBox_LIBRARY_DEFINED__
#define __VirtualBox_LIBRARY_DEFINED__

/* library VirtualBox */
/* [helpstring][version][uuid] */ 

#define VBOX_E_OBJECT_NOT_FOUND 0x80BB0001
#define VBOX_E_INVALID_VM_STATE 0x80BB0002
#define VBOX_E_VM_ERROR 0x80BB0003
#define VBOX_E_FILE_ERROR 0x80BB0004
#define VBOX_E_IPRT_ERROR 0x80BB0005
#define VBOX_E_PDM_ERROR 0x80BB0006
#define VBOX_E_INVALID_OBJECT_STATE 0x80BB0007
#define VBOX_E_HOST_ERROR 0x80BB0008
#define VBOX_E_NOT_SUPPORTED 0x80BB0009
#define VBOX_E_XML_ERROR 0x80BB000A
#define VBOX_E_INVALID_SESSION_STATE 0x80BB000B
#define VBOX_E_OBJECT_IN_USE 0x80BB000C














































typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("52bd6f5f-1adb-4493-975d-581a9c4b803f") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0001
    {	SettingsVersion_Null	= 0,
	SettingsVersion_v1_0	= 1,
	SettingsVersion_v1_1	= 2,
	SettingsVersion_v1_2	= 3,
	SettingsVersion_v1_3pre	= 4,
	SettingsVersion_v1_3	= 5,
	SettingsVersion_v1_4	= 6,
	SettingsVersion_v1_5	= 7,
	SettingsVersion_v1_6	= 8,
	SettingsVersion_v1_7	= 9,
	SettingsVersion_v1_8	= 10,
	SettingsVersion_v1_9	= 11,
	SettingsVersion_Future	= 12
    } 	SettingsVersion;

#define SettingsVersion_T SettingsVersion
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("1da0007c-ddf7-4be8-bcac-d84a1558785f") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0002
    {	AccessMode_ReadOnly	= 1,
	AccessMode_ReadWrite	= 2
    } 	AccessMode;

#define AccessMode_T AccessMode
typedef /* [public][public][public][public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("36518cf6-cdf0-4d0d-ad2a-5ee9c60c7494") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0003
    {	MachineState_Null	= 0,
	MachineState_PoweredOff	= 1,
	MachineState_Saved	= 2,
	MachineState_Teleported	= 3,
	MachineState_Aborted	= 4,
	MachineState_Running	= 5,
	MachineState_Paused	= 6,
	MachineState_Stuck	= 7,
	MachineState_Teleporting	= 8,
	MachineState_LiveSnapshotting	= 9,
	MachineState_Starting	= 10,
	MachineState_Stopping	= 11,
	MachineState_Saving	= 12,
	MachineState_Restoring	= 13,
	MachineState_TeleportingPausedVM	= 14,
	MachineState_TeleportingIn	= 15,
	MachineState_RestoringSnapshot	= 16,
	MachineState_DeletingSnapshot	= 17,
	MachineState_SettingUp	= 18,
	MachineState_FirstOnline	= 5,
	MachineState_LastOnline	= 13,
	MachineState_FirstTransient	= 8,
	MachineState_LastTransient	= 18
    } 	MachineState;

#define MachineState_T MachineState
typedef /* [public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("cf2700c0-ea4b-47ae-9725-7810114b94d8") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0004
    {	SessionState_Null	= 0,
	SessionState_Closed	= 1,
	SessionState_Open	= 2,
	SessionState_Spawning	= 3,
	SessionState_Closing	= 4
    } 	SessionState;

#define SessionState_T SessionState
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("af7bb668-eeb1-4404-b77f-a114b30c92d6") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0005
    {	CpuPropertyType_Null	= 0,
	CpuPropertyType_PAE	= 1,
	CpuPropertyType_Synthetic	= 2
    } 	CpuPropertyType;

#define CpuPropertyType_T CpuPropertyType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("ce81dfdd-d2b8-4a90-bbea-40ee8b7ffcee") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0006
    {	HWVirtExPropertyType_Null	= 0,
	HWVirtExPropertyType_Enabled	= 1,
	HWVirtExPropertyType_Exclusive	= 2,
	HWVirtExPropertyType_VPID	= 3,
	HWVirtExPropertyType_NestedPaging	= 4
    } 	HWVirtExPropertyType;

#define HWVirtExPropertyType_T HWVirtExPropertyType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("A13C02CB-0C2C-421E-8317-AC0E8AAA153A") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0007
    {	SessionType_Null	= 0,
	SessionType_Direct	= 1,
	SessionType_Remote	= 2,
	SessionType_Existing	= 3
    } 	SessionType;

#define SessionType_T SessionType
typedef /* [public][public][public][public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("6d9420f7-0b56-4636-99f9-7346f1b01e57") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0008
    {	DeviceType_Null	= 0,
	DeviceType_Floppy	= 1,
	DeviceType_DVD	= 2,
	DeviceType_HardDisk	= 3,
	DeviceType_Network	= 4,
	DeviceType_USB	= 5,
	DeviceType_SharedFolder	= 6
    } 	DeviceType;

#define DeviceType_T DeviceType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("6FC8AEAA-130A-4eb5-8954-3F921422D707") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0009
    {	DeviceActivity_Null	= 0,
	DeviceActivity_Idle	= 1,
	DeviceActivity_Reading	= 2,
	DeviceActivity_Writing	= 3
    } 	DeviceActivity;

#define DeviceActivity_T DeviceActivity
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("33364716-4008-4701-8f14-be0fa3d62950") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0010
    {	ClipboardMode_Disabled	= 0,
	ClipboardMode_HostToGuest	= 1,
	ClipboardMode_GuestToHost	= 2,
	ClipboardMode_Bidirectional	= 3
    } 	ClipboardMode;

#define ClipboardMode_T ClipboardMode
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("7c91096e-499e-4eca-9f9b-9001438d7855") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0011
    {	Scope_Global	= 0,
	Scope_Machine	= 1,
	Scope_Session	= 2
    } 	Scope;

#define Scope_T Scope
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("aa7c1d71-aafe-47a8-9608-27d2d337cf55") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0012
    {	GuestStatisticType_CPULoad_Idle	= 0,
	GuestStatisticType_CPULoad_Kernel	= 1,
	GuestStatisticType_CPULoad_User	= 2,
	GuestStatisticType_Threads	= 3,
	GuestStatisticType_Processes	= 4,
	GuestStatisticType_Handles	= 5,
	GuestStatisticType_MemoryLoad	= 6,
	GuestStatisticType_PhysMemTotal	= 7,
	GuestStatisticType_PhysMemAvailable	= 8,
	GuestStatisticType_PhysMemBalloon	= 9,
	GuestStatisticType_MemCommitTotal	= 10,
	GuestStatisticType_MemKernelTotal	= 11,
	GuestStatisticType_MemKernelPaged	= 12,
	GuestStatisticType_MemKernelNonpaged	= 13,
	GuestStatisticType_MemSystemCache	= 14,
	GuestStatisticType_PageFileSize	= 15,
	GuestStatisticType_SampleNumber	= 16,
	GuestStatisticType_MaxVal	= 17
    } 	GuestStatisticType;

#define GuestStatisticType_T GuestStatisticType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("ae4fb9f7-29d2-45b4-b2c7-d579603135d5") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0013
    {	BIOSBootMenuMode_Disabled	= 0,
	BIOSBootMenuMode_MenuOnly	= 1,
	BIOSBootMenuMode_MessageAndMenu	= 2
    } 	BIOSBootMenuMode;

#define BIOSBootMenuMode_T BIOSBootMenuMode
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("64c38e6b-8bcf-45ad-ac03-9b406287c5bf") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0014
    {	ProcessorFeature_HWVirtEx	= 0,
	ProcessorFeature_PAE	= 1,
	ProcessorFeature_LongMode	= 2,
	ProcessorFeature_NestedPaging	= 3
    } 	ProcessorFeature;

#define ProcessorFeature_T ProcessorFeature
typedef /* [public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("b903f264-c230-483e-ac74-2b37ce60d371") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0015
    {	FirmwareType_BIOS	= 1,
	FirmwareType_EFI	= 2,
	FirmwareType_EFI32	= 3,
	FirmwareType_EFI64	= 4,
	FirmwareType_EFIDUAL	= 5
    } 	FirmwareType;

#define FirmwareType_T FirmwareType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("813999ba-b949-48a8-9230-aadc6285e2f2") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0016
    {	VFSType_File	= 1,
	VFSType_Cloud	= 2,
	VFSType_S3	= 3,
	VFSType_WebDav	= 4
    } 	VFSType;

#define VFSType_T VFSType
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("714333cd-44e2-415f-a245-d378fa9b1242") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0017
    {	VFSFileType_Unknown	= 1,
	VFSFileType_Fifo	= 2,
	VFSFileType_DevChar	= 3,
	VFSFileType_Directory	= 4,
	VFSFileType_DevBlock	= 5,
	VFSFileType_File	= 6,
	VFSFileType_SymLink	= 7,
	VFSFileType_Socket	= 8,
	VFSFileType_WhiteOut	= 9
    } 	VFSFileType;

#define VFSFileType_T VFSFileType
typedef /* [public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("aacc58de-5b45-4f82-ae2e-dd9a824fc3b5") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0018
    {	VirtualSystemDescriptionType_Ignore	= 1,
	VirtualSystemDescriptionType_OS	= 2,
	VirtualSystemDescriptionType_Name	= 3,
	VirtualSystemDescriptionType_Product	= 4,
	VirtualSystemDescriptionType_Vendor	= 5,
	VirtualSystemDescriptionType_Version	= 6,
	VirtualSystemDescriptionType_ProductUrl	= 7,
	VirtualSystemDescriptionType_VendorUrl	= 8,
	VirtualSystemDescriptionType_Description	= 9,
	VirtualSystemDescriptionType_License	= 10,
	VirtualSystemDescriptionType_Miscellaneous	= 11,
	VirtualSystemDescriptionType_CPU	= 12,
	VirtualSystemDescriptionType_Memory	= 13,
	VirtualSystemDescriptionType_HardDiskControllerIDE	= 14,
	VirtualSystemDescriptionType_HardDiskControllerSATA	= 15,
	VirtualSystemDescriptionType_HardDiskControllerSCSI	= 16,
	VirtualSystemDescriptionType_HardDiskImage	= 17,
	VirtualSystemDescriptionType_Floppy	= 18,
	VirtualSystemDescriptionType_CDROM	= 19,
	VirtualSystemDescriptionType_NetworkAdapter	= 20,
	VirtualSystemDescriptionType_USBController	= 21,
	VirtualSystemDescriptionType_SoundCard	= 22
    } 	VirtualSystemDescriptionType;

#define VirtualSystemDescriptionType_T VirtualSystemDescriptionType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("56d9403f-3425-4118-9919-36f2a9b8c77c") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0019
    {	VirtualSystemDescriptionValueType_Reference	= 1,
	VirtualSystemDescriptionValueType_Original	= 2,
	VirtualSystemDescriptionValueType_Auto	= 3,
	VirtualSystemDescriptionValueType_ExtraConfig	= 4
    } 	VirtualSystemDescriptionValueType;

#define VirtualSystemDescriptionValueType_T VirtualSystemDescriptionValueType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("1aa54aaf-2497-45a2-bfb1-8eb225e93d5b") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0020
    {	HostNetworkInterfaceMediumType_Unknown	= 0,
	HostNetworkInterfaceMediumType_Ethernet	= 1,
	HostNetworkInterfaceMediumType_PPP	= 2,
	HostNetworkInterfaceMediumType_SLIP	= 3
    } 	HostNetworkInterfaceMediumType;

#define HostNetworkInterfaceMediumType_T HostNetworkInterfaceMediumType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("CC474A69-2710-434B-8D99-C38E5D5A6F41") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0021
    {	HostNetworkInterfaceStatus_Unknown	= 0,
	HostNetworkInterfaceStatus_Up	= 1,
	HostNetworkInterfaceStatus_Down	= 2
    } 	HostNetworkInterfaceStatus;

#define HostNetworkInterfaceStatus_T HostNetworkInterfaceStatus
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("67431b00-9946-48a2-bc02-b25c5919f4f3") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0022
    {	HostNetworkInterfaceType_Bridged	= 1,
	HostNetworkInterfaceType_HostOnly	= 2
    } 	HostNetworkInterfaceType;

#define HostNetworkInterfaceType_T HostNetworkInterfaceType
typedef /* [public][public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("ef41e980-e012-43cd-9dea-479d4ef14d13") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0023
    {	MediumState_NotCreated	= 0,
	MediumState_Created	= 1,
	MediumState_LockedRead	= 2,
	MediumState_LockedWrite	= 3,
	MediumState_Inaccessible	= 4,
	MediumState_Creating	= 5,
	MediumState_Deleting	= 6
    } 	MediumState;

#define MediumState_T MediumState
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("11f6f7a5-0327-409a-9d42-7db6a0cec578") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0024
    {	MediumType_Normal	= 0,
	MediumType_Immutable	= 1,
	MediumType_Writethrough	= 2
    } 	MediumType;

#define MediumType_T MediumType
typedef /* [public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("584ea502-143b-4ab0-ad14-d1028fdf0316") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0025
    {	MediumVariant_Standard	= 0,
	MediumVariant_VmdkSplit2G	= 0x1,
	MediumVariant_VmdkStreamOptimized	= 0x4,
	MediumVariant_VmdkESX	= 0x8,
	MediumVariant_Fixed	= 0x10000,
	MediumVariant_Diff	= 0x20000
    } 	MediumVariant;

#define MediumVariant_T MediumVariant
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("d90ea51e-a3f1-4a01-beb1-c1723c0d3ba7") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0026
    {	DataType_Int32	= 0,
	DataType_Int8	= 1,
	DataType_String	= 2
    } 	DataType;

#define DataType_T DataType
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("86884dcf-1d6b-4f1b-b4bf-f5aa44959d60") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0027
    {	DataFlags_None	= 0,
	DataFlags_Mandatory	= 0x1,
	DataFlags_Expert	= 0x2,
	DataFlags_Array	= 0x4,
	DataFlags_FlagMask	= 0x7
    } 	DataFlags;

#define DataFlags_T DataFlags
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("70fcf810-99e8-4edc-aee4-7f51d489e657") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0028
    {	MediumFormatCapabilities_Uuid	= 0x1,
	MediumFormatCapabilities_CreateFixed	= 0x2,
	MediumFormatCapabilities_CreateDynamic	= 0x4,
	MediumFormatCapabilities_CreateSplit2G	= 0x8,
	MediumFormatCapabilities_Differencing	= 0x10,
	MediumFormatCapabilities_Asynchronous	= 0x20,
	MediumFormatCapabilities_File	= 0x40,
	MediumFormatCapabilities_Properties	= 0x80,
	MediumFormatCapabilities_CapabilityMask	= 0xff
    } 	MediumFormatCapabilities;

#define MediumFormatCapabilities_T MediumFormatCapabilities
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("9ee094b8-b28a-4d56-a166-973cb588d7f8") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0029
    {	MouseButtonState_LeftButton	= 0x1,
	MouseButtonState_RightButton	= 0x2,
	MouseButtonState_MiddleButton	= 0x4,
	MouseButtonState_WheelUp	= 0x8,
	MouseButtonState_WheelDown	= 0x10,
	MouseButtonState_XButton1	= 0x20,
	MouseButtonState_XButton2	= 0x40,
	MouseButtonState_MouseStateMask	= 0x7f
    } 	MouseButtonState;

#define MouseButtonState_T MouseButtonState
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("7acfd5ed-29e3-45e3-8136-73c9224f3d2d") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0030
    {	FramebufferPixelFormat_Opaque	= 0,
	FramebufferPixelFormat_FOURCC_RGB	= 0x32424752
    } 	FramebufferPixelFormat;

#define FramebufferPixelFormat_T FramebufferPixelFormat
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("44bce1ee-99f7-4e8e-89fc-80597fd9eeaf") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0031
    {	NetworkAttachmentType_Null	= 0,
	NetworkAttachmentType_NAT	= 1,
	NetworkAttachmentType_Bridged	= 2,
	NetworkAttachmentType_Internal	= 3,
	NetworkAttachmentType_HostOnly	= 4
    } 	NetworkAttachmentType;

#define NetworkAttachmentType_T NetworkAttachmentType
typedef /* [public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("3c2281e4-d952-4e87-8c7d-24379cb6a81c") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0032
    {	NetworkAdapterType_Null	= 0,
	NetworkAdapterType_Am79C970A	= 1,
	NetworkAdapterType_Am79C973	= 2,
	NetworkAdapterType_I82540EM	= 3,
	NetworkAdapterType_I82543GC	= 4,
	NetworkAdapterType_I82545EM	= 5,
	NetworkAdapterType_Virtio	= 6
    } 	NetworkAdapterType;

#define NetworkAdapterType_T NetworkAdapterType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("533b5fe3-0185-4197-86a7-17e37dd39d76") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0033
    {	PortMode_Disconnected	= 0,
	PortMode_HostPipe	= 1,
	PortMode_HostDevice	= 2,
	PortMode_RawFile	= 3
    } 	PortMode;

#define PortMode_T PortMode
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("b99a2e65-67fb-4882-82fd-f3e5e8193ab4") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0034
    {	USBDeviceState_NotSupported	= 0,
	USBDeviceState_Unavailable	= 1,
	USBDeviceState_Busy	= 2,
	USBDeviceState_Available	= 3,
	USBDeviceState_Held	= 4,
	USBDeviceState_Captured	= 5
    } 	USBDeviceState;

#define USBDeviceState_T USBDeviceState
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("cbc30a49-2f4e-43b5-9da6-121320475933") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0035
    {	USBDeviceFilterAction_Null	= 0,
	USBDeviceFilterAction_Ignore	= 1,
	USBDeviceFilterAction_Hold	= 2
    } 	USBDeviceFilterAction;

#define USBDeviceFilterAction_T USBDeviceFilterAction
typedef /* [public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("4bcc3d73-c2fe-40db-b72f-0c2ca9d68496") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0036
    {	AudioDriverType_Null	= 0,
	AudioDriverType_WinMM	= 1,
	AudioDriverType_OSS	= 2,
	AudioDriverType_ALSA	= 3,
	AudioDriverType_DirectSound	= 4,
	AudioDriverType_CoreAudio	= 5,
	AudioDriverType_MMPM	= 6,
	AudioDriverType_Pulse	= 7,
	AudioDriverType_SolAudio	= 8
    } 	AudioDriverType;

#define AudioDriverType_T AudioDriverType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("7afd395c-42c3-444e-8788-3ce80292f36c") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0037
    {	AudioControllerType_AC97	= 0,
	AudioControllerType_SB16	= 1
    } 	AudioControllerType;

#define AudioControllerType_T AudioControllerType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("3d91887a-b67f-4b33-85bf-2da7ab1ea83a") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0038
    {	VRDPAuthType_Null	= 0,
	VRDPAuthType_External	= 1,
	VRDPAuthType_Guest	= 2
    } 	VRDPAuthType;

#define VRDPAuthType_T VRDPAuthType
typedef /* [public][public][public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("eee67ab3-668d-4ef5-91e0-7025fe4a0d7a") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0039
    {	StorageBus_Null	= 0,
	StorageBus_IDE	= 1,
	StorageBus_SATA	= 2,
	StorageBus_SCSI	= 3,
	StorageBus_Floppy	= 4
    } 	StorageBus;

#define StorageBus_T StorageBus
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("8a412b8a-f43e-4456-bd37-b474f0879a58") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0040
    {	StorageControllerType_Null	= 0,
	StorageControllerType_LsiLogic	= 1,
	StorageControllerType_BusLogic	= 2,
	StorageControllerType_IntelAhci	= 3,
	StorageControllerType_PIIX3	= 4,
	StorageControllerType_PIIX4	= 5,
	StorageControllerType_ICH6	= 6,
	StorageControllerType_I82078	= 7
    } 	StorageControllerType;

#define StorageControllerType_T StorageControllerType
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_ResultCode_TO(smth) HRESULT STDMETHODCALLTYPE get_ResultCode (LONG * aResultCode) { return smth get_ResultCode (aResultCode); }
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_ResultCode_TO_OBJ(obj) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_ResultCode_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_ResultCode_TO_BASE(base) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_ResultCode_TO (base::)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_InterfaceID_TO(smth) HRESULT STDMETHODCALLTYPE get_InterfaceID (BSTR * aInterfaceID) { return smth get_InterfaceID (aInterfaceID); }
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_InterfaceID_TO_OBJ(obj) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_InterfaceID_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_InterfaceID_TO_BASE(base) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_InterfaceID_TO (base::)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Component_TO(smth) HRESULT STDMETHODCALLTYPE get_Component (BSTR * aComponent) { return smth get_Component (aComponent); }
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Component_TO_OBJ(obj) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Component_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Component_TO_BASE(base) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Component_TO (base::)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Text_TO(smth) HRESULT STDMETHODCALLTYPE get_Text (BSTR * aText) { return smth get_Text (aText); }
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Text_TO_OBJ(obj) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Text_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Text_TO_BASE(base) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Text_TO (base::)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Next_TO(smth) HRESULT STDMETHODCALLTYPE get_Next (IVirtualBoxErrorInfo * * aNext) { return smth get_Next (aNext); }
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Next_TO_OBJ(obj) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Next_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Next_TO_BASE(base) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Next_TO (base::)
#define COM_FORWARD_IVirtualBoxErrorInfo_TO(smth) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_ResultCode_TO (smth) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_InterfaceID_TO (smth) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Component_TO (smth) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Text_TO (smth) COM_FORWARD_IVirtualBoxErrorInfo_GETTER_Next_TO (smth) 
#define COM_FORWARD_IVirtualBoxErrorInfo_TO_OBJ(obj) COM_FORWARD_IVirtualBoxErrorInfo_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxErrorInfo_TO_BASE(base) COM_FORWARD_IVirtualBoxErrorInfo_TO (base::)
#define COM_FORWARD_ILocalOwner_SetLocalObject_TO(smth) HRESULT STDMETHODCALLTYPE SetLocalObject (IUnknown * aObject) { return smth SetLocalObject (aObject); }
#define COM_FORWARD_ILocalOwner_SetLocalObject_TO_OBJ(obj) COM_FORWARD_ILocalOwner_SetLocalObject_TO ((obj)->)
#define COM_FORWARD_ILocalOwner_SetLocalObject_TO_BASE(base) COM_FORWARD_ILocalOwner_SetLocalObject_TO (base::)
#define COM_FORWARD_ILocalOwner_TO(smth) COM_FORWARD_ILocalOwner_SetLocalObject_TO (smth) 
#define COM_FORWARD_ILocalOwner_TO_OBJ(obj) COM_FORWARD_ILocalOwner_TO ((obj)->)
#define COM_FORWARD_ILocalOwner_TO_BASE(base) COM_FORWARD_ILocalOwner_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnMachineStateChange_TO(smth) HRESULT STDMETHODCALLTYPE OnMachineStateChange (BSTR aMachineId, MachineState aState) { return smth OnMachineStateChange (aMachineId, aState); }
#define COM_FORWARD_IVirtualBoxCallback_OnMachineStateChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnMachineStateChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnMachineStateChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnMachineStateChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnMachineDataChange_TO(smth) HRESULT STDMETHODCALLTYPE OnMachineDataChange (BSTR aMachineId) { return smth OnMachineDataChange (aMachineId); }
#define COM_FORWARD_IVirtualBoxCallback_OnMachineDataChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnMachineDataChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnMachineDataChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnMachineDataChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnExtraDataCanChange_TO(smth) HRESULT STDMETHODCALLTYPE OnExtraDataCanChange (BSTR aMachineId, BSTR aKey, BSTR aValue, BSTR * aError, BOOL * aAllowChange) { return smth OnExtraDataCanChange (aMachineId, aKey, aValue, aError, aAllowChange); }
#define COM_FORWARD_IVirtualBoxCallback_OnExtraDataCanChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnExtraDataCanChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnExtraDataCanChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnExtraDataCanChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnExtraDataChange_TO(smth) HRESULT STDMETHODCALLTYPE OnExtraDataChange (BSTR aMachineId, BSTR aKey, BSTR aValue) { return smth OnExtraDataChange (aMachineId, aKey, aValue); }
#define COM_FORWARD_IVirtualBoxCallback_OnExtraDataChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnExtraDataChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnExtraDataChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnExtraDataChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnMediumRegistered_TO(smth) HRESULT STDMETHODCALLTYPE OnMediumRegistered (BSTR aMediumId, DeviceType aMediumType, BOOL aRegistered) { return smth OnMediumRegistered (aMediumId, aMediumType, aRegistered); }
#define COM_FORWARD_IVirtualBoxCallback_OnMediumRegistered_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnMediumRegistered_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnMediumRegistered_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnMediumRegistered_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnMachineRegistered_TO(smth) HRESULT STDMETHODCALLTYPE OnMachineRegistered (BSTR aMachineId, BOOL aRegistered) { return smth OnMachineRegistered (aMachineId, aRegistered); }
#define COM_FORWARD_IVirtualBoxCallback_OnMachineRegistered_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnMachineRegistered_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnMachineRegistered_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnMachineRegistered_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnSessionStateChange_TO(smth) HRESULT STDMETHODCALLTYPE OnSessionStateChange (BSTR aMachineId, SessionState aState) { return smth OnSessionStateChange (aMachineId, aState); }
#define COM_FORWARD_IVirtualBoxCallback_OnSessionStateChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnSessionStateChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnSessionStateChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnSessionStateChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotTaken_TO(smth) HRESULT STDMETHODCALLTYPE OnSnapshotTaken (BSTR aMachineId, BSTR aSnapshotId) { return smth OnSnapshotTaken (aMachineId, aSnapshotId); }
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotTaken_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnSnapshotTaken_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotTaken_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnSnapshotTaken_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotDiscarded_TO(smth) HRESULT STDMETHODCALLTYPE OnSnapshotDiscarded (BSTR aMachineId, BSTR aSnapshotId) { return smth OnSnapshotDiscarded (aMachineId, aSnapshotId); }
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotDiscarded_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnSnapshotDiscarded_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotDiscarded_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnSnapshotDiscarded_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotChange_TO(smth) HRESULT STDMETHODCALLTYPE OnSnapshotChange (BSTR aMachineId, BSTR aSnapshotId) { return smth OnSnapshotChange (aMachineId, aSnapshotId); }
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnSnapshotChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnSnapshotChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnSnapshotChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_OnGuestPropertyChange_TO(smth) HRESULT STDMETHODCALLTYPE OnGuestPropertyChange (BSTR aMachineId, BSTR aName, BSTR aValue, BSTR aFlags) { return smth OnGuestPropertyChange (aMachineId, aName, aValue, aFlags); }
#define COM_FORWARD_IVirtualBoxCallback_OnGuestPropertyChange_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_OnGuestPropertyChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_OnGuestPropertyChange_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_OnGuestPropertyChange_TO (base::)
#define COM_FORWARD_IVirtualBoxCallback_TO(smth) COM_FORWARD_IVirtualBoxCallback_OnMachineStateChange_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnMachineDataChange_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnExtraDataCanChange_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnExtraDataChange_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnMediumRegistered_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnMachineRegistered_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnSessionStateChange_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnSnapshotTaken_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnSnapshotDiscarded_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnSnapshotChange_TO (smth) COM_FORWARD_IVirtualBoxCallback_OnGuestPropertyChange_TO (smth) 
#define COM_FORWARD_IVirtualBoxCallback_TO_OBJ(obj) COM_FORWARD_IVirtualBoxCallback_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxCallback_TO_BASE(base) COM_FORWARD_IVirtualBoxCallback_TO (base::)
#define COM_FORWARD_IDHCPServer_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_IDHCPServer_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IDHCPServer_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_GETTER_Enabled_TO_BASE(base) COM_FORWARD_IDHCPServer_GETTER_Enabled_TO (base::)
#define COM_FORWARD_IDHCPServer_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_IDHCPServer_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IDHCPServer_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_SETTER_Enabled_TO_BASE(base) COM_FORWARD_IDHCPServer_SETTER_Enabled_TO (base::)
#define COM_FORWARD_IDHCPServer_GETTER_IPAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_IPAddress (BSTR * aIPAddress) { return smth get_IPAddress (aIPAddress); }
#define COM_FORWARD_IDHCPServer_GETTER_IPAddress_TO_OBJ(obj) COM_FORWARD_IDHCPServer_GETTER_IPAddress_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_GETTER_IPAddress_TO_BASE(base) COM_FORWARD_IDHCPServer_GETTER_IPAddress_TO (base::)
#define COM_FORWARD_IDHCPServer_GETTER_NetworkMask_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkMask (BSTR * aNetworkMask) { return smth get_NetworkMask (aNetworkMask); }
#define COM_FORWARD_IDHCPServer_GETTER_NetworkMask_TO_OBJ(obj) COM_FORWARD_IDHCPServer_GETTER_NetworkMask_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_GETTER_NetworkMask_TO_BASE(base) COM_FORWARD_IDHCPServer_GETTER_NetworkMask_TO (base::)
#define COM_FORWARD_IDHCPServer_GETTER_NetworkName_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkName (BSTR * aNetworkName) { return smth get_NetworkName (aNetworkName); }
#define COM_FORWARD_IDHCPServer_GETTER_NetworkName_TO_OBJ(obj) COM_FORWARD_IDHCPServer_GETTER_NetworkName_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_GETTER_NetworkName_TO_BASE(base) COM_FORWARD_IDHCPServer_GETTER_NetworkName_TO (base::)
#define COM_FORWARD_IDHCPServer_GETTER_LowerIP_TO(smth) HRESULT STDMETHODCALLTYPE get_LowerIP (BSTR * aLowerIP) { return smth get_LowerIP (aLowerIP); }
#define COM_FORWARD_IDHCPServer_GETTER_LowerIP_TO_OBJ(obj) COM_FORWARD_IDHCPServer_GETTER_LowerIP_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_GETTER_LowerIP_TO_BASE(base) COM_FORWARD_IDHCPServer_GETTER_LowerIP_TO (base::)
#define COM_FORWARD_IDHCPServer_GETTER_UpperIP_TO(smth) HRESULT STDMETHODCALLTYPE get_UpperIP (BSTR * aUpperIP) { return smth get_UpperIP (aUpperIP); }
#define COM_FORWARD_IDHCPServer_GETTER_UpperIP_TO_OBJ(obj) COM_FORWARD_IDHCPServer_GETTER_UpperIP_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_GETTER_UpperIP_TO_BASE(base) COM_FORWARD_IDHCPServer_GETTER_UpperIP_TO (base::)
#define COM_FORWARD_IDHCPServer_SetConfiguration_TO(smth) HRESULT STDMETHODCALLTYPE SetConfiguration (BSTR aIPAddress, BSTR aNetworkMask, BSTR aFromIPAddress, BSTR aToIPAddress) { return smth SetConfiguration (aIPAddress, aNetworkMask, aFromIPAddress, aToIPAddress); }
#define COM_FORWARD_IDHCPServer_SetConfiguration_TO_OBJ(obj) COM_FORWARD_IDHCPServer_SetConfiguration_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_SetConfiguration_TO_BASE(base) COM_FORWARD_IDHCPServer_SetConfiguration_TO (base::)
#define COM_FORWARD_IDHCPServer_Start_TO(smth) HRESULT STDMETHODCALLTYPE Start (BSTR aNetworkName, BSTR aTrunkName, BSTR aTrunkType) { return smth Start (aNetworkName, aTrunkName, aTrunkType); }
#define COM_FORWARD_IDHCPServer_Start_TO_OBJ(obj) COM_FORWARD_IDHCPServer_Start_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_Start_TO_BASE(base) COM_FORWARD_IDHCPServer_Start_TO (base::)
#define COM_FORWARD_IDHCPServer_Stop_TO(smth) HRESULT STDMETHODCALLTYPE Stop() { return smth Stop(); }
#define COM_FORWARD_IDHCPServer_Stop_TO_OBJ(obj) COM_FORWARD_IDHCPServer_Stop_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_Stop_TO_BASE(base) COM_FORWARD_IDHCPServer_Stop_TO (base::)
#define COM_FORWARD_IDHCPServer_TO(smth) COM_FORWARD_IDHCPServer_GETTER_Enabled_TO (smth) COM_FORWARD_IDHCPServer_SETTER_Enabled_TO (smth) COM_FORWARD_IDHCPServer_GETTER_IPAddress_TO (smth) COM_FORWARD_IDHCPServer_GETTER_NetworkMask_TO (smth) COM_FORWARD_IDHCPServer_GETTER_NetworkName_TO (smth) COM_FORWARD_IDHCPServer_GETTER_LowerIP_TO (smth) COM_FORWARD_IDHCPServer_GETTER_UpperIP_TO (smth) COM_FORWARD_IDHCPServer_SetConfiguration_TO (smth) COM_FORWARD_IDHCPServer_Start_TO (smth) COM_FORWARD_IDHCPServer_Stop_TO (smth) 
#define COM_FORWARD_IDHCPServer_TO_OBJ(obj) COM_FORWARD_IDHCPServer_TO ((obj)->)
#define COM_FORWARD_IDHCPServer_TO_BASE(base) COM_FORWARD_IDHCPServer_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_Version_TO(smth) HRESULT STDMETHODCALLTYPE get_Version (BSTR * aVersion) { return smth get_Version (aVersion); }
#define COM_FORWARD_IVirtualBox_GETTER_Version_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_Version_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_Version_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_Version_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_Revision_TO(smth) HRESULT STDMETHODCALLTYPE get_Revision (ULONG * aRevision) { return smth get_Revision (aRevision); }
#define COM_FORWARD_IVirtualBox_GETTER_Revision_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_Revision_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_Revision_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_Revision_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_PackageType_TO(smth) HRESULT STDMETHODCALLTYPE get_PackageType (BSTR * aPackageType) { return smth get_PackageType (aPackageType); }
#define COM_FORWARD_IVirtualBox_GETTER_PackageType_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_PackageType_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_PackageType_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_PackageType_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_HomeFolder_TO(smth) HRESULT STDMETHODCALLTYPE get_HomeFolder (BSTR * aHomeFolder) { return smth get_HomeFolder (aHomeFolder); }
#define COM_FORWARD_IVirtualBox_GETTER_HomeFolder_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_HomeFolder_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_HomeFolder_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_HomeFolder_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_SettingsFilePath_TO(smth) HRESULT STDMETHODCALLTYPE get_SettingsFilePath (BSTR * aSettingsFilePath) { return smth get_SettingsFilePath (aSettingsFilePath); }
#define COM_FORWARD_IVirtualBox_GETTER_SettingsFilePath_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_SettingsFilePath_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_SettingsFilePath_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_SettingsFilePath_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_Host_TO(smth) HRESULT STDMETHODCALLTYPE get_Host (IHost * * aHost) { return smth get_Host (aHost); }
#define COM_FORWARD_IVirtualBox_GETTER_Host_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_Host_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_Host_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_Host_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_SystemProperties_TO(smth) HRESULT STDMETHODCALLTYPE get_SystemProperties (ISystemProperties * * aSystemProperties) { return smth get_SystemProperties (aSystemProperties); }
#define COM_FORWARD_IVirtualBox_GETTER_SystemProperties_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_SystemProperties_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_SystemProperties_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_SystemProperties_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_Machines_TO(smth) HRESULT STDMETHODCALLTYPE get_Machines (SAFEARRAY * * aMachines) { return smth get_Machines (aMachines); }
#define COM_FORWARD_IVirtualBox_GETTER_Machines_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_Machines_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_Machines_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_Machines_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_HardDisks_TO(smth) HRESULT STDMETHODCALLTYPE get_HardDisks (SAFEARRAY * * aHardDisks) { return smth get_HardDisks (aHardDisks); }
#define COM_FORWARD_IVirtualBox_GETTER_HardDisks_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_HardDisks_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_HardDisks_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_HardDisks_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_DVDImages_TO(smth) HRESULT STDMETHODCALLTYPE get_DVDImages (SAFEARRAY * * aDVDImages) { return smth get_DVDImages (aDVDImages); }
#define COM_FORWARD_IVirtualBox_GETTER_DVDImages_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_DVDImages_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_DVDImages_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_DVDImages_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_FloppyImages_TO(smth) HRESULT STDMETHODCALLTYPE get_FloppyImages (SAFEARRAY * * aFloppyImages) { return smth get_FloppyImages (aFloppyImages); }
#define COM_FORWARD_IVirtualBox_GETTER_FloppyImages_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_FloppyImages_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_FloppyImages_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_FloppyImages_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_ProgressOperations_TO(smth) HRESULT STDMETHODCALLTYPE get_ProgressOperations (SAFEARRAY * * aProgressOperations) { return smth get_ProgressOperations (aProgressOperations); }
#define COM_FORWARD_IVirtualBox_GETTER_ProgressOperations_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_ProgressOperations_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_ProgressOperations_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_ProgressOperations_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_GuestOSTypes_TO(smth) HRESULT STDMETHODCALLTYPE get_GuestOSTypes (SAFEARRAY * * aGuestOSTypes) { return smth get_GuestOSTypes (aGuestOSTypes); }
#define COM_FORWARD_IVirtualBox_GETTER_GuestOSTypes_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_GuestOSTypes_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_GuestOSTypes_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_GuestOSTypes_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_SharedFolders_TO(smth) HRESULT STDMETHODCALLTYPE get_SharedFolders (SAFEARRAY * * aSharedFolders) { return smth get_SharedFolders (aSharedFolders); }
#define COM_FORWARD_IVirtualBox_GETTER_SharedFolders_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_SharedFolders_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_SharedFolders_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_SharedFolders_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_PerformanceCollector_TO(smth) HRESULT STDMETHODCALLTYPE get_PerformanceCollector (IPerformanceCollector * * aPerformanceCollector) { return smth get_PerformanceCollector (aPerformanceCollector); }
#define COM_FORWARD_IVirtualBox_GETTER_PerformanceCollector_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_PerformanceCollector_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_PerformanceCollector_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_PerformanceCollector_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_DHCPServers_TO(smth) HRESULT STDMETHODCALLTYPE get_DHCPServers (SAFEARRAY * * aDHCPServers) { return smth get_DHCPServers (aDHCPServers); }
#define COM_FORWARD_IVirtualBox_GETTER_DHCPServers_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_DHCPServers_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_DHCPServers_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_DHCPServers_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateMachine_TO(smth) HRESULT STDMETHODCALLTYPE CreateMachine (BSTR aName, BSTR aOsTypeId, BSTR aBaseFolder, BSTR aId, IMachine * * aMachine) { return smth CreateMachine (aName, aOsTypeId, aBaseFolder, aId, aMachine); }
#define COM_FORWARD_IVirtualBox_CreateMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CreateMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CreateMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_CreateMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateLegacyMachine_TO(smth) HRESULT STDMETHODCALLTYPE CreateLegacyMachine (BSTR aName, BSTR aOsTypeId, BSTR aSettingsFile, BSTR aId, IMachine * * aMachine) { return smth CreateLegacyMachine (aName, aOsTypeId, aSettingsFile, aId, aMachine); }
#define COM_FORWARD_IVirtualBox_CreateLegacyMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CreateLegacyMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CreateLegacyMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_CreateLegacyMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenMachine_TO(smth) HRESULT STDMETHODCALLTYPE OpenMachine (BSTR aSettingsFile, IMachine * * aMachine) { return smth OpenMachine (aSettingsFile, aMachine); }
#define COM_FORWARD_IVirtualBox_OpenMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_RegisterMachine_TO(smth) HRESULT STDMETHODCALLTYPE RegisterMachine (IMachine * aMachine) { return smth RegisterMachine (aMachine); }
#define COM_FORWARD_IVirtualBox_RegisterMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_RegisterMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_RegisterMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_RegisterMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_GetMachine_TO(smth) HRESULT STDMETHODCALLTYPE GetMachine (BSTR aId, IMachine * * aMachine) { return smth GetMachine (aId, aMachine); }
#define COM_FORWARD_IVirtualBox_GetMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_GetMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_FindMachine_TO(smth) HRESULT STDMETHODCALLTYPE FindMachine (BSTR aName, IMachine * * aMachine) { return smth FindMachine (aName, aMachine); }
#define COM_FORWARD_IVirtualBox_FindMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_FindMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_FindMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_FindMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_UnregisterMachine_TO(smth) HRESULT STDMETHODCALLTYPE UnregisterMachine (BSTR aId, IMachine * * aMachine) { return smth UnregisterMachine (aId, aMachine); }
#define COM_FORWARD_IVirtualBox_UnregisterMachine_TO_OBJ(obj) COM_FORWARD_IVirtualBox_UnregisterMachine_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_UnregisterMachine_TO_BASE(base) COM_FORWARD_IVirtualBox_UnregisterMachine_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateAppliance_TO(smth) HRESULT STDMETHODCALLTYPE CreateAppliance (IAppliance * * aAppliance) { return smth CreateAppliance (aAppliance); }
#define COM_FORWARD_IVirtualBox_CreateAppliance_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CreateAppliance_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CreateAppliance_TO_BASE(base) COM_FORWARD_IVirtualBox_CreateAppliance_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateHardDisk_TO(smth) HRESULT STDMETHODCALLTYPE CreateHardDisk (BSTR aFormat, BSTR aLocation, IMedium * * aMedium) { return smth CreateHardDisk (aFormat, aLocation, aMedium); }
#define COM_FORWARD_IVirtualBox_CreateHardDisk_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CreateHardDisk_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CreateHardDisk_TO_BASE(base) COM_FORWARD_IVirtualBox_CreateHardDisk_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenHardDisk_TO(smth) HRESULT STDMETHODCALLTYPE OpenHardDisk (BSTR aLocation, AccessMode aAccessMode, BOOL aSetImageId, BSTR aImageId, BOOL aSetParentId, BSTR aParentId, IMedium * * aMedium) { return smth OpenHardDisk (aLocation, aAccessMode, aSetImageId, aImageId, aSetParentId, aParentId, aMedium); }
#define COM_FORWARD_IVirtualBox_OpenHardDisk_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenHardDisk_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenHardDisk_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenHardDisk_TO (base::)
#define COM_FORWARD_IVirtualBox_GetHardDisk_TO(smth) HRESULT STDMETHODCALLTYPE GetHardDisk (BSTR aId, IMedium * * aMedium) { return smth GetHardDisk (aId, aMedium); }
#define COM_FORWARD_IVirtualBox_GetHardDisk_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetHardDisk_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetHardDisk_TO_BASE(base) COM_FORWARD_IVirtualBox_GetHardDisk_TO (base::)
#define COM_FORWARD_IVirtualBox_FindHardDisk_TO(smth) HRESULT STDMETHODCALLTYPE FindHardDisk (BSTR aLocation, IMedium * * aMedium) { return smth FindHardDisk (aLocation, aMedium); }
#define COM_FORWARD_IVirtualBox_FindHardDisk_TO_OBJ(obj) COM_FORWARD_IVirtualBox_FindHardDisk_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_FindHardDisk_TO_BASE(base) COM_FORWARD_IVirtualBox_FindHardDisk_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenDVDImage_TO(smth) HRESULT STDMETHODCALLTYPE OpenDVDImage (BSTR aLocation, BSTR aId, IMedium * * aImage) { return smth OpenDVDImage (aLocation, aId, aImage); }
#define COM_FORWARD_IVirtualBox_OpenDVDImage_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenDVDImage_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenDVDImage_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenDVDImage_TO (base::)
#define COM_FORWARD_IVirtualBox_GetDVDImage_TO(smth) HRESULT STDMETHODCALLTYPE GetDVDImage (BSTR aId, IMedium * * aImage) { return smth GetDVDImage (aId, aImage); }
#define COM_FORWARD_IVirtualBox_GetDVDImage_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetDVDImage_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetDVDImage_TO_BASE(base) COM_FORWARD_IVirtualBox_GetDVDImage_TO (base::)
#define COM_FORWARD_IVirtualBox_FindDVDImage_TO(smth) HRESULT STDMETHODCALLTYPE FindDVDImage (BSTR aLocation, IMedium * * aImage) { return smth FindDVDImage (aLocation, aImage); }
#define COM_FORWARD_IVirtualBox_FindDVDImage_TO_OBJ(obj) COM_FORWARD_IVirtualBox_FindDVDImage_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_FindDVDImage_TO_BASE(base) COM_FORWARD_IVirtualBox_FindDVDImage_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenFloppyImage_TO(smth) HRESULT STDMETHODCALLTYPE OpenFloppyImage (BSTR aLocation, BSTR aId, IMedium * * aImage) { return smth OpenFloppyImage (aLocation, aId, aImage); }
#define COM_FORWARD_IVirtualBox_OpenFloppyImage_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenFloppyImage_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenFloppyImage_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenFloppyImage_TO (base::)
#define COM_FORWARD_IVirtualBox_GetFloppyImage_TO(smth) HRESULT STDMETHODCALLTYPE GetFloppyImage (BSTR aId, IMedium * * aImage) { return smth GetFloppyImage (aId, aImage); }
#define COM_FORWARD_IVirtualBox_GetFloppyImage_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetFloppyImage_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetFloppyImage_TO_BASE(base) COM_FORWARD_IVirtualBox_GetFloppyImage_TO (base::)
#define COM_FORWARD_IVirtualBox_FindFloppyImage_TO(smth) HRESULT STDMETHODCALLTYPE FindFloppyImage (BSTR aLocation, IMedium * * aImage) { return smth FindFloppyImage (aLocation, aImage); }
#define COM_FORWARD_IVirtualBox_FindFloppyImage_TO_OBJ(obj) COM_FORWARD_IVirtualBox_FindFloppyImage_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_FindFloppyImage_TO_BASE(base) COM_FORWARD_IVirtualBox_FindFloppyImage_TO (base::)
#define COM_FORWARD_IVirtualBox_GetGuestOSType_TO(smth) HRESULT STDMETHODCALLTYPE GetGuestOSType (BSTR aId, IGuestOSType * * aType) { return smth GetGuestOSType (aId, aType); }
#define COM_FORWARD_IVirtualBox_GetGuestOSType_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetGuestOSType_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetGuestOSType_TO_BASE(base) COM_FORWARD_IVirtualBox_GetGuestOSType_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE CreateSharedFolder (BSTR aName, BSTR aHostPath, BOOL aWritable) { return smth CreateSharedFolder (aName, aHostPath, aWritable); }
#define COM_FORWARD_IVirtualBox_CreateSharedFolder_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CreateSharedFolder_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CreateSharedFolder_TO_BASE(base) COM_FORWARD_IVirtualBox_CreateSharedFolder_TO (base::)
#define COM_FORWARD_IVirtualBox_RemoveSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE RemoveSharedFolder (BSTR aName) { return smth RemoveSharedFolder (aName); }
#define COM_FORWARD_IVirtualBox_RemoveSharedFolder_TO_OBJ(obj) COM_FORWARD_IVirtualBox_RemoveSharedFolder_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_RemoveSharedFolder_TO_BASE(base) COM_FORWARD_IVirtualBox_RemoveSharedFolder_TO (base::)
#define COM_FORWARD_IVirtualBox_GetExtraDataKeys_TO(smth) HRESULT STDMETHODCALLTYPE GetExtraDataKeys (SAFEARRAY * * aValue) { return smth GetExtraDataKeys (aValue); }
#define COM_FORWARD_IVirtualBox_GetExtraDataKeys_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetExtraDataKeys_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetExtraDataKeys_TO_BASE(base) COM_FORWARD_IVirtualBox_GetExtraDataKeys_TO (base::)
#define COM_FORWARD_IVirtualBox_GetExtraData_TO(smth) HRESULT STDMETHODCALLTYPE GetExtraData (BSTR aKey, BSTR * aValue) { return smth GetExtraData (aKey, aValue); }
#define COM_FORWARD_IVirtualBox_GetExtraData_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GetExtraData_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GetExtraData_TO_BASE(base) COM_FORWARD_IVirtualBox_GetExtraData_TO (base::)
#define COM_FORWARD_IVirtualBox_SetExtraData_TO(smth) HRESULT STDMETHODCALLTYPE SetExtraData (BSTR aKey, BSTR aValue) { return smth SetExtraData (aKey, aValue); }
#define COM_FORWARD_IVirtualBox_SetExtraData_TO_OBJ(obj) COM_FORWARD_IVirtualBox_SetExtraData_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_SetExtraData_TO_BASE(base) COM_FORWARD_IVirtualBox_SetExtraData_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenSession_TO(smth) HRESULT STDMETHODCALLTYPE OpenSession (ISession * aSession, BSTR aMachineId) { return smth OpenSession (aSession, aMachineId); }
#define COM_FORWARD_IVirtualBox_OpenSession_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenSession_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenSession_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenSession_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenRemoteSession_TO(smth) HRESULT STDMETHODCALLTYPE OpenRemoteSession (ISession * aSession, BSTR aMachineId, BSTR aType, BSTR aEnvironment, IProgress * * aProgress) { return smth OpenRemoteSession (aSession, aMachineId, aType, aEnvironment, aProgress); }
#define COM_FORWARD_IVirtualBox_OpenRemoteSession_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenRemoteSession_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenRemoteSession_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenRemoteSession_TO (base::)
#define COM_FORWARD_IVirtualBox_OpenExistingSession_TO(smth) HRESULT STDMETHODCALLTYPE OpenExistingSession (ISession * aSession, BSTR aMachineId) { return smth OpenExistingSession (aSession, aMachineId); }
#define COM_FORWARD_IVirtualBox_OpenExistingSession_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenExistingSession_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenExistingSession_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenExistingSession_TO (base::)
#define COM_FORWARD_IVirtualBox_RegisterCallback_TO(smth) HRESULT STDMETHODCALLTYPE RegisterCallback (IVirtualBoxCallback * aCallback) { return smth RegisterCallback (aCallback); }
#define COM_FORWARD_IVirtualBox_RegisterCallback_TO_OBJ(obj) COM_FORWARD_IVirtualBox_RegisterCallback_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_RegisterCallback_TO_BASE(base) COM_FORWARD_IVirtualBox_RegisterCallback_TO (base::)
#define COM_FORWARD_IVirtualBox_UnregisterCallback_TO(smth) HRESULT STDMETHODCALLTYPE UnregisterCallback (IVirtualBoxCallback * aCallback) { return smth UnregisterCallback (aCallback); }
#define COM_FORWARD_IVirtualBox_UnregisterCallback_TO_OBJ(obj) COM_FORWARD_IVirtualBox_UnregisterCallback_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_UnregisterCallback_TO_BASE(base) COM_FORWARD_IVirtualBox_UnregisterCallback_TO (base::)
#define COM_FORWARD_IVirtualBox_WaitForPropertyChange_TO(smth) HRESULT STDMETHODCALLTYPE WaitForPropertyChange (BSTR aWhat, ULONG aTimeout, BSTR * aChanged, BSTR * aValues) { return smth WaitForPropertyChange (aWhat, aTimeout, aChanged, aValues); }
#define COM_FORWARD_IVirtualBox_WaitForPropertyChange_TO_OBJ(obj) COM_FORWARD_IVirtualBox_WaitForPropertyChange_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_WaitForPropertyChange_TO_BASE(base) COM_FORWARD_IVirtualBox_WaitForPropertyChange_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateDHCPServer_TO(smth) HRESULT STDMETHODCALLTYPE CreateDHCPServer (BSTR aName, IDHCPServer * * aServer) { return smth CreateDHCPServer (aName, aServer); }
#define COM_FORWARD_IVirtualBox_CreateDHCPServer_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CreateDHCPServer_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CreateDHCPServer_TO_BASE(base) COM_FORWARD_IVirtualBox_CreateDHCPServer_TO (base::)
#define COM_FORWARD_IVirtualBox_FindDHCPServerByNetworkName_TO(smth) HRESULT STDMETHODCALLTYPE FindDHCPServerByNetworkName (BSTR aName, IDHCPServer * * aServer) { return smth FindDHCPServerByNetworkName (aName, aServer); }
#define COM_FORWARD_IVirtualBox_FindDHCPServerByNetworkName_TO_OBJ(obj) COM_FORWARD_IVirtualBox_FindDHCPServerByNetworkName_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_FindDHCPServerByNetworkName_TO_BASE(base) COM_FORWARD_IVirtualBox_FindDHCPServerByNetworkName_TO (base::)
#define COM_FORWARD_IVirtualBox_RemoveDHCPServer_TO(smth) HRESULT STDMETHODCALLTYPE RemoveDHCPServer (IDHCPServer * aServer) { return smth RemoveDHCPServer (aServer); }
#define COM_FORWARD_IVirtualBox_RemoveDHCPServer_TO_OBJ(obj) COM_FORWARD_IVirtualBox_RemoveDHCPServer_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_RemoveDHCPServer_TO_BASE(base) COM_FORWARD_IVirtualBox_RemoveDHCPServer_TO (base::)
#define COM_FORWARD_IVirtualBox_CheckFirmwarePresent_TO(smth) HRESULT STDMETHODCALLTYPE CheckFirmwarePresent (FirmwareType aFirmwareType, BSTR aVersion, BSTR * aUrl, BSTR * aFile, BOOL * aResult) { return smth CheckFirmwarePresent (aFirmwareType, aVersion, aUrl, aFile, aResult); }
#define COM_FORWARD_IVirtualBox_CheckFirmwarePresent_TO_OBJ(obj) COM_FORWARD_IVirtualBox_CheckFirmwarePresent_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_CheckFirmwarePresent_TO_BASE(base) COM_FORWARD_IVirtualBox_CheckFirmwarePresent_TO (base::)
#define COM_FORWARD_IVirtualBox_TO(smth) COM_FORWARD_IVirtualBox_GETTER_Version_TO (smth) COM_FORWARD_IVirtualBox_GETTER_Revision_TO (smth) COM_FORWARD_IVirtualBox_GETTER_PackageType_TO (smth) COM_FORWARD_IVirtualBox_GETTER_HomeFolder_TO (smth) COM_FORWARD_IVirtualBox_GETTER_SettingsFilePath_TO (smth) COM_FORWARD_IVirtualBox_GETTER_Host_TO (smth) COM_FORWARD_IVirtualBox_GETTER_SystemProperties_TO (smth) COM_FORWARD_IVirtualBox_GETTER_Machines_TO (smth) COM_FORWARD_IVirtualBox_GETTER_HardDisks_TO (smth) COM_FORWARD_IVirtualBox_GETTER_DVDImages_TO (smth) COM_FORWARD_IVirtualBox_GETTER_FloppyImages_TO (smth) COM_FORWARD_IVirtualBox_GETTER_ProgressOperations_TO (smth) COM_FORWARD_IVirtualBox_GETTER_GuestOSTypes_TO (smth) COM_FORWARD_IVirtualBox_GETTER_SharedFolders_TO (smth) COM_FORWARD_IVirtualBox_GETTER_PerformanceCollector_TO (smth) COM_FORWARD_IVirtualBox_GETTER_DHCPServers_TO (smth) COM_FORWARD_IVirtualBox_CreateMachine_TO (smth) COM_FORWARD_IVirtualBox_CreateLegacyMachine_TO (smth) COM_FORWARD_IVirtualBox_OpenMachine_TO (smth) COM_FORWARD_IVirtualBox_RegisterMachine_TO (smth) COM_FORWARD_IVirtualBox_GetMachine_TO (smth) COM_FORWARD_IVirtualBox_FindMachine_TO (smth) COM_FORWARD_IVirtualBox_UnregisterMachine_TO (smth) COM_FORWARD_IVirtualBox_CreateAppliance_TO (smth) COM_FORWARD_IVirtualBox_CreateHardDisk_TO (smth) COM_FORWARD_IVirtualBox_OpenHardDisk_TO (smth) COM_FORWARD_IVirtualBox_GetHardDisk_TO (smth) COM_FORWARD_IVirtualBox_FindHardDisk_TO (smth) COM_FORWARD_IVirtualBox_OpenDVDImage_TO (smth) COM_FORWARD_IVirtualBox_GetDVDImage_TO (smth) COM_FORWARD_IVirtualBox_FindDVDImage_TO (smth) COM_FORWARD_IVirtualBox_OpenFloppyImage_TO (smth) COM_FORWARD_IVirtualBox_GetFloppyImage_TO (smth) COM_FORWARD_IVirtualBox_FindFloppyImage_TO (smth) COM_FORWARD_IVirtualBox_GetGuestOSType_TO (smth) COM_FORWARD_IVirtualBox_CreateSharedFolder_TO (smth) COM_FORWARD_IVirtualBox_RemoveSharedFolder_TO (smth) COM_FORWARD_IVirtualBox_GetExtraDataKeys_TO (smth) COM_FORWARD_IVirtualBox_GetExtraData_TO (smth) COM_FORWARD_IVirtualBox_SetExtraData_TO (smth) COM_FORWARD_IVirtualBox_OpenSession_TO (smth) COM_FORWARD_IVirtualBox_OpenRemoteSession_TO (smth) COM_FORWARD_IVirtualBox_OpenExistingSession_TO (smth) COM_FORWARD_IVirtualBox_RegisterCallback_TO (smth) COM_FORWARD_IVirtualBox_UnregisterCallback_TO (smth) COM_FORWARD_IVirtualBox_WaitForPropertyChange_TO (smth) COM_FORWARD_IVirtualBox_CreateDHCPServer_TO (smth) COM_FORWARD_IVirtualBox_FindDHCPServerByNetworkName_TO (smth) COM_FORWARD_IVirtualBox_RemoveDHCPServer_TO (smth) COM_FORWARD_IVirtualBox_CheckFirmwarePresent_TO (smth) 
#define COM_FORWARD_IVirtualBox_TO_OBJ(obj) COM_FORWARD_IVirtualBox_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_TO_BASE(base) COM_FORWARD_IVirtualBox_TO (base::)
#define COM_FORWARD_IVFSExplorer_GETTER_Path_TO(smth) HRESULT STDMETHODCALLTYPE get_Path (BSTR * aPath) { return smth get_Path (aPath); }
#define COM_FORWARD_IVFSExplorer_GETTER_Path_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_GETTER_Path_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_GETTER_Path_TO_BASE(base) COM_FORWARD_IVFSExplorer_GETTER_Path_TO (base::)
#define COM_FORWARD_IVFSExplorer_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (VFSType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IVFSExplorer_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_GETTER_Type_TO_BASE(base) COM_FORWARD_IVFSExplorer_GETTER_Type_TO (base::)
#define COM_FORWARD_IVFSExplorer_Update_TO(smth) HRESULT STDMETHODCALLTYPE Update (IProgress * * aAProgress) { return smth Update (aAProgress); }
#define COM_FORWARD_IVFSExplorer_Update_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_Update_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_Update_TO_BASE(base) COM_FORWARD_IVFSExplorer_Update_TO (base::)
#define COM_FORWARD_IVFSExplorer_Cd_TO(smth) HRESULT STDMETHODCALLTYPE Cd (BSTR aADir, IProgress * * aAProgress) { return smth Cd (aADir, aAProgress); }
#define COM_FORWARD_IVFSExplorer_Cd_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_Cd_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_Cd_TO_BASE(base) COM_FORWARD_IVFSExplorer_Cd_TO (base::)
#define COM_FORWARD_IVFSExplorer_CdUp_TO(smth) HRESULT STDMETHODCALLTYPE CdUp (IProgress * * aAProgress) { return smth CdUp (aAProgress); }
#define COM_FORWARD_IVFSExplorer_CdUp_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_CdUp_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_CdUp_TO_BASE(base) COM_FORWARD_IVFSExplorer_CdUp_TO (base::)
#define COM_FORWARD_IVFSExplorer_EntryList_TO(smth) HRESULT STDMETHODCALLTYPE EntryList (SAFEARRAY * * aANames, SAFEARRAY * * aATypes) { return smth EntryList (aANames, aATypes); }
#define COM_FORWARD_IVFSExplorer_EntryList_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_EntryList_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_EntryList_TO_BASE(base) COM_FORWARD_IVFSExplorer_EntryList_TO (base::)
#define COM_FORWARD_IVFSExplorer_Exists_TO(smth) HRESULT STDMETHODCALLTYPE Exists (SAFEARRAY * * aANames, SAFEARRAY * * aAExists) { return smth Exists (aANames, aAExists); }
#define COM_FORWARD_IVFSExplorer_Exists_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_Exists_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_Exists_TO_BASE(base) COM_FORWARD_IVFSExplorer_Exists_TO (base::)
#define COM_FORWARD_IVFSExplorer_Remove_TO(smth) HRESULT STDMETHODCALLTYPE Remove (SAFEARRAY * * aANames, IProgress * * aAProgress) { return smth Remove (aANames, aAProgress); }
#define COM_FORWARD_IVFSExplorer_Remove_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_Remove_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_Remove_TO_BASE(base) COM_FORWARD_IVFSExplorer_Remove_TO (base::)
#define COM_FORWARD_IVFSExplorer_TO(smth) COM_FORWARD_IVFSExplorer_GETTER_Path_TO (smth) COM_FORWARD_IVFSExplorer_GETTER_Type_TO (smth) COM_FORWARD_IVFSExplorer_Update_TO (smth) COM_FORWARD_IVFSExplorer_Cd_TO (smth) COM_FORWARD_IVFSExplorer_CdUp_TO (smth) COM_FORWARD_IVFSExplorer_EntryList_TO (smth) COM_FORWARD_IVFSExplorer_Exists_TO (smth) COM_FORWARD_IVFSExplorer_Remove_TO (smth) 
#define COM_FORWARD_IVFSExplorer_TO_OBJ(obj) COM_FORWARD_IVFSExplorer_TO ((obj)->)
#define COM_FORWARD_IVFSExplorer_TO_BASE(base) COM_FORWARD_IVFSExplorer_TO (base::)
#define COM_FORWARD_IAppliance_GETTER_Path_TO(smth) HRESULT STDMETHODCALLTYPE get_Path (BSTR * aPath) { return smth get_Path (aPath); }
#define COM_FORWARD_IAppliance_GETTER_Path_TO_OBJ(obj) COM_FORWARD_IAppliance_GETTER_Path_TO ((obj)->)
#define COM_FORWARD_IAppliance_GETTER_Path_TO_BASE(base) COM_FORWARD_IAppliance_GETTER_Path_TO (base::)
#define COM_FORWARD_IAppliance_GETTER_Disks_TO(smth) HRESULT STDMETHODCALLTYPE get_Disks (SAFEARRAY * * aDisks) { return smth get_Disks (aDisks); }
#define COM_FORWARD_IAppliance_GETTER_Disks_TO_OBJ(obj) COM_FORWARD_IAppliance_GETTER_Disks_TO ((obj)->)
#define COM_FORWARD_IAppliance_GETTER_Disks_TO_BASE(base) COM_FORWARD_IAppliance_GETTER_Disks_TO (base::)
#define COM_FORWARD_IAppliance_GETTER_VirtualSystemDescriptions_TO(smth) HRESULT STDMETHODCALLTYPE get_VirtualSystemDescriptions (SAFEARRAY * * aVirtualSystemDescriptions) { return smth get_VirtualSystemDescriptions (aVirtualSystemDescriptions); }
#define COM_FORWARD_IAppliance_GETTER_VirtualSystemDescriptions_TO_OBJ(obj) COM_FORWARD_IAppliance_GETTER_VirtualSystemDescriptions_TO ((obj)->)
#define COM_FORWARD_IAppliance_GETTER_VirtualSystemDescriptions_TO_BASE(base) COM_FORWARD_IAppliance_GETTER_VirtualSystemDescriptions_TO (base::)
#define COM_FORWARD_IAppliance_Read_TO(smth) HRESULT STDMETHODCALLTYPE Read (BSTR aFile, IProgress * * aAProgress) { return smth Read (aFile, aAProgress); }
#define COM_FORWARD_IAppliance_Read_TO_OBJ(obj) COM_FORWARD_IAppliance_Read_TO ((obj)->)
#define COM_FORWARD_IAppliance_Read_TO_BASE(base) COM_FORWARD_IAppliance_Read_TO (base::)
#define COM_FORWARD_IAppliance_Interpret_TO(smth) HRESULT STDMETHODCALLTYPE Interpret() { return smth Interpret(); }
#define COM_FORWARD_IAppliance_Interpret_TO_OBJ(obj) COM_FORWARD_IAppliance_Interpret_TO ((obj)->)
#define COM_FORWARD_IAppliance_Interpret_TO_BASE(base) COM_FORWARD_IAppliance_Interpret_TO (base::)
#define COM_FORWARD_IAppliance_ImportMachines_TO(smth) HRESULT STDMETHODCALLTYPE ImportMachines (IProgress * * aAProgress) { return smth ImportMachines (aAProgress); }
#define COM_FORWARD_IAppliance_ImportMachines_TO_OBJ(obj) COM_FORWARD_IAppliance_ImportMachines_TO ((obj)->)
#define COM_FORWARD_IAppliance_ImportMachines_TO_BASE(base) COM_FORWARD_IAppliance_ImportMachines_TO (base::)
#define COM_FORWARD_IAppliance_CreateVFSExplorer_TO(smth) HRESULT STDMETHODCALLTYPE CreateVFSExplorer (BSTR aAUri, IVFSExplorer * * aAExplorer) { return smth CreateVFSExplorer (aAUri, aAExplorer); }
#define COM_FORWARD_IAppliance_CreateVFSExplorer_TO_OBJ(obj) COM_FORWARD_IAppliance_CreateVFSExplorer_TO ((obj)->)
#define COM_FORWARD_IAppliance_CreateVFSExplorer_TO_BASE(base) COM_FORWARD_IAppliance_CreateVFSExplorer_TO (base::)
#define COM_FORWARD_IAppliance_Write_TO(smth) HRESULT STDMETHODCALLTYPE Write (BSTR aFormat, BSTR aPath, IProgress * * aAProgress) { return smth Write (aFormat, aPath, aAProgress); }
#define COM_FORWARD_IAppliance_Write_TO_OBJ(obj) COM_FORWARD_IAppliance_Write_TO ((obj)->)
#define COM_FORWARD_IAppliance_Write_TO_BASE(base) COM_FORWARD_IAppliance_Write_TO (base::)
#define COM_FORWARD_IAppliance_GetWarnings_TO(smth) HRESULT STDMETHODCALLTYPE GetWarnings (SAFEARRAY * * aAWarnings) { return smth GetWarnings (aAWarnings); }
#define COM_FORWARD_IAppliance_GetWarnings_TO_OBJ(obj) COM_FORWARD_IAppliance_GetWarnings_TO ((obj)->)
#define COM_FORWARD_IAppliance_GetWarnings_TO_BASE(base) COM_FORWARD_IAppliance_GetWarnings_TO (base::)
#define COM_FORWARD_IAppliance_TO(smth) COM_FORWARD_IAppliance_GETTER_Path_TO (smth) COM_FORWARD_IAppliance_GETTER_Disks_TO (smth) COM_FORWARD_IAppliance_GETTER_VirtualSystemDescriptions_TO (smth) COM_FORWARD_IAppliance_Read_TO (smth) COM_FORWARD_IAppliance_Interpret_TO (smth) COM_FORWARD_IAppliance_ImportMachines_TO (smth) COM_FORWARD_IAppliance_CreateVFSExplorer_TO (smth) COM_FORWARD_IAppliance_Write_TO (smth) COM_FORWARD_IAppliance_GetWarnings_TO (smth) 
#define COM_FORWARD_IAppliance_TO_OBJ(obj) COM_FORWARD_IAppliance_TO ((obj)->)
#define COM_FORWARD_IAppliance_TO_BASE(base) COM_FORWARD_IAppliance_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_GETTER_Count_TO(smth) HRESULT STDMETHODCALLTYPE get_Count (ULONG * aCount) { return smth get_Count (aCount); }
#define COM_FORWARD_IVirtualSystemDescription_GETTER_Count_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_GETTER_Count_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_GETTER_Count_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_GETTER_Count_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_GetDescription_TO(smth) HRESULT STDMETHODCALLTYPE GetDescription (SAFEARRAY * * aATypes, SAFEARRAY * * aARefs, SAFEARRAY * * aAOvfValues, SAFEARRAY * * aAVBoxValues, SAFEARRAY * * aAExtraConfigValues) { return smth GetDescription (aATypes, aARefs, aAOvfValues, aAVBoxValues, aAExtraConfigValues); }
#define COM_FORWARD_IVirtualSystemDescription_GetDescription_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_GetDescription_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_GetDescription_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_GetDescription_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_GetDescriptionByType_TO(smth) HRESULT STDMETHODCALLTYPE GetDescriptionByType (VirtualSystemDescriptionType aAType, SAFEARRAY * * aATypes, SAFEARRAY * * aARefs, SAFEARRAY * * aAOvfValues, SAFEARRAY * * aAVBoxValues, SAFEARRAY * * aAExtraConfigValues) { return smth GetDescriptionByType (aAType, aATypes, aARefs, aAOvfValues, aAVBoxValues, aAExtraConfigValues); }
#define COM_FORWARD_IVirtualSystemDescription_GetDescriptionByType_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_GetDescriptionByType_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_GetDescriptionByType_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_GetDescriptionByType_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_GetValuesByType_TO(smth) HRESULT STDMETHODCALLTYPE GetValuesByType (VirtualSystemDescriptionType aAType, VirtualSystemDescriptionValueType aAWhich, SAFEARRAY * * aAValues) { return smth GetValuesByType (aAType, aAWhich, aAValues); }
#define COM_FORWARD_IVirtualSystemDescription_GetValuesByType_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_GetValuesByType_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_GetValuesByType_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_GetValuesByType_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_SetFinalValues_TO(smth) HRESULT STDMETHODCALLTYPE SetFinalValues (SAFEARRAY * * aAEnabled, SAFEARRAY * * aAVBoxValues, SAFEARRAY * * aAExtraConfigValues) { return smth SetFinalValues (aAEnabled, aAVBoxValues, aAExtraConfigValues); }
#define COM_FORWARD_IVirtualSystemDescription_SetFinalValues_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_SetFinalValues_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_SetFinalValues_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_SetFinalValues_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_AddDescription_TO(smth) HRESULT STDMETHODCALLTYPE AddDescription (VirtualSystemDescriptionType aAType, BSTR aAVBoxValue, BSTR aAExtraConfigValue) { return smth AddDescription (aAType, aAVBoxValue, aAExtraConfigValue); }
#define COM_FORWARD_IVirtualSystemDescription_AddDescription_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_AddDescription_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_AddDescription_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_AddDescription_TO (base::)
#define COM_FORWARD_IVirtualSystemDescription_TO(smth) COM_FORWARD_IVirtualSystemDescription_GETTER_Count_TO (smth) COM_FORWARD_IVirtualSystemDescription_GetDescription_TO (smth) COM_FORWARD_IVirtualSystemDescription_GetDescriptionByType_TO (smth) COM_FORWARD_IVirtualSystemDescription_GetValuesByType_TO (smth) COM_FORWARD_IVirtualSystemDescription_SetFinalValues_TO (smth) COM_FORWARD_IVirtualSystemDescription_AddDescription_TO (smth) 
#define COM_FORWARD_IVirtualSystemDescription_TO_OBJ(obj) COM_FORWARD_IVirtualSystemDescription_TO ((obj)->)
#define COM_FORWARD_IVirtualSystemDescription_TO_BASE(base) COM_FORWARD_IVirtualSystemDescription_TO (base::)
#define COM_FORWARD_IInternalMachineControl_SetRemoveSavedState_TO(smth) HRESULT STDMETHODCALLTYPE SetRemoveSavedState (BOOL aARemove) { return smth SetRemoveSavedState (aARemove); }
#define COM_FORWARD_IInternalMachineControl_SetRemoveSavedState_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_SetRemoveSavedState_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_SetRemoveSavedState_TO_BASE(base) COM_FORWARD_IInternalMachineControl_SetRemoveSavedState_TO (base::)
#define COM_FORWARD_IInternalMachineControl_UpdateState_TO(smth) HRESULT STDMETHODCALLTYPE UpdateState (MachineState aState) { return smth UpdateState (aState); }
#define COM_FORWARD_IInternalMachineControl_UpdateState_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_UpdateState_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_UpdateState_TO_BASE(base) COM_FORWARD_IInternalMachineControl_UpdateState_TO (base::)
#define COM_FORWARD_IInternalMachineControl_GetIPCId_TO(smth) HRESULT STDMETHODCALLTYPE GetIPCId (BSTR * aId) { return smth GetIPCId (aId); }
#define COM_FORWARD_IInternalMachineControl_GetIPCId_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_GetIPCId_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_GetIPCId_TO_BASE(base) COM_FORWARD_IInternalMachineControl_GetIPCId_TO (base::)
#define COM_FORWARD_IInternalMachineControl_RunUSBDeviceFilters_TO(smth) HRESULT STDMETHODCALLTYPE RunUSBDeviceFilters (IUSBDevice * aDevice, BOOL * aMatched, ULONG * aMaskedInterfaces) { return smth RunUSBDeviceFilters (aDevice, aMatched, aMaskedInterfaces); }
#define COM_FORWARD_IInternalMachineControl_RunUSBDeviceFilters_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_RunUSBDeviceFilters_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_RunUSBDeviceFilters_TO_BASE(base) COM_FORWARD_IInternalMachineControl_RunUSBDeviceFilters_TO (base::)
#define COM_FORWARD_IInternalMachineControl_CaptureUSBDevice_TO(smth) HRESULT STDMETHODCALLTYPE CaptureUSBDevice (BSTR aId) { return smth CaptureUSBDevice (aId); }
#define COM_FORWARD_IInternalMachineControl_CaptureUSBDevice_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_CaptureUSBDevice_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_CaptureUSBDevice_TO_BASE(base) COM_FORWARD_IInternalMachineControl_CaptureUSBDevice_TO (base::)
#define COM_FORWARD_IInternalMachineControl_DetachUSBDevice_TO(smth) HRESULT STDMETHODCALLTYPE DetachUSBDevice (BSTR aId, BOOL aDone) { return smth DetachUSBDevice (aId, aDone); }
#define COM_FORWARD_IInternalMachineControl_DetachUSBDevice_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_DetachUSBDevice_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_DetachUSBDevice_TO_BASE(base) COM_FORWARD_IInternalMachineControl_DetachUSBDevice_TO (base::)
#define COM_FORWARD_IInternalMachineControl_AutoCaptureUSBDevices_TO(smth) HRESULT STDMETHODCALLTYPE AutoCaptureUSBDevices() { return smth AutoCaptureUSBDevices(); }
#define COM_FORWARD_IInternalMachineControl_AutoCaptureUSBDevices_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_AutoCaptureUSBDevices_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_AutoCaptureUSBDevices_TO_BASE(base) COM_FORWARD_IInternalMachineControl_AutoCaptureUSBDevices_TO (base::)
#define COM_FORWARD_IInternalMachineControl_DetachAllUSBDevices_TO(smth) HRESULT STDMETHODCALLTYPE DetachAllUSBDevices (BOOL aDone) { return smth DetachAllUSBDevices (aDone); }
#define COM_FORWARD_IInternalMachineControl_DetachAllUSBDevices_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_DetachAllUSBDevices_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_DetachAllUSBDevices_TO_BASE(base) COM_FORWARD_IInternalMachineControl_DetachAllUSBDevices_TO (base::)
#define COM_FORWARD_IInternalMachineControl_OnSessionEnd_TO(smth) HRESULT STDMETHODCALLTYPE OnSessionEnd (ISession * aSession, IProgress * * aProgress) { return smth OnSessionEnd (aSession, aProgress); }
#define COM_FORWARD_IInternalMachineControl_OnSessionEnd_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_OnSessionEnd_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_OnSessionEnd_TO_BASE(base) COM_FORWARD_IInternalMachineControl_OnSessionEnd_TO (base::)
#define COM_FORWARD_IInternalMachineControl_BeginSavingState_TO(smth) HRESULT STDMETHODCALLTYPE BeginSavingState (IProgress * aProgress, BSTR * aStateFilePath) { return smth BeginSavingState (aProgress, aStateFilePath); }
#define COM_FORWARD_IInternalMachineControl_BeginSavingState_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_BeginSavingState_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_BeginSavingState_TO_BASE(base) COM_FORWARD_IInternalMachineControl_BeginSavingState_TO (base::)
#define COM_FORWARD_IInternalMachineControl_EndSavingState_TO(smth) HRESULT STDMETHODCALLTYPE EndSavingState (BOOL aSuccess) { return smth EndSavingState (aSuccess); }
#define COM_FORWARD_IInternalMachineControl_EndSavingState_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_EndSavingState_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_EndSavingState_TO_BASE(base) COM_FORWARD_IInternalMachineControl_EndSavingState_TO (base::)
#define COM_FORWARD_IInternalMachineControl_AdoptSavedState_TO(smth) HRESULT STDMETHODCALLTYPE AdoptSavedState (BSTR aSavedStateFile) { return smth AdoptSavedState (aSavedStateFile); }
#define COM_FORWARD_IInternalMachineControl_AdoptSavedState_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_AdoptSavedState_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_AdoptSavedState_TO_BASE(base) COM_FORWARD_IInternalMachineControl_AdoptSavedState_TO (base::)
#define COM_FORWARD_IInternalMachineControl_BeginTakingSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE BeginTakingSnapshot (IConsole * aInitiator, BSTR aName, BSTR aDescription, IProgress * aConsoleProgress, BOOL aFTakingSnapshotOnline, BSTR * aStateFilePath) { return smth BeginTakingSnapshot (aInitiator, aName, aDescription, aConsoleProgress, aFTakingSnapshotOnline, aStateFilePath); }
#define COM_FORWARD_IInternalMachineControl_BeginTakingSnapshot_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_BeginTakingSnapshot_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_BeginTakingSnapshot_TO_BASE(base) COM_FORWARD_IInternalMachineControl_BeginTakingSnapshot_TO (base::)
#define COM_FORWARD_IInternalMachineControl_EndTakingSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE EndTakingSnapshot (BOOL aSuccess) { return smth EndTakingSnapshot (aSuccess); }
#define COM_FORWARD_IInternalMachineControl_EndTakingSnapshot_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_EndTakingSnapshot_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_EndTakingSnapshot_TO_BASE(base) COM_FORWARD_IInternalMachineControl_EndTakingSnapshot_TO (base::)
#define COM_FORWARD_IInternalMachineControl_DeleteSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE DeleteSnapshot (IConsole * aInitiator, BSTR aId, MachineState * aMachineState, IProgress * * aProgress) { return smth DeleteSnapshot (aInitiator, aId, aMachineState, aProgress); }
#define COM_FORWARD_IInternalMachineControl_DeleteSnapshot_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_DeleteSnapshot_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_DeleteSnapshot_TO_BASE(base) COM_FORWARD_IInternalMachineControl_DeleteSnapshot_TO (base::)
#define COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE RestoreSnapshot (IConsole * aInitiator, ISnapshot * aSnapshot, MachineState * aMachineState, IProgress * * aProgress) { return smth RestoreSnapshot (aInitiator, aSnapshot, aMachineState, aProgress); }
#define COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO_BASE(base) COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO (base::)
#define COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO(smth) HRESULT STDMETHODCALLTYPE PullGuestProperties (SAFEARRAY * * aName, SAFEARRAY * * aValue, SAFEARRAY * * aTimestamp, SAFEARRAY * * aFlags) { return smth PullGuestProperties (aName, aValue, aTimestamp, aFlags); }
#define COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO_BASE(base) COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO (base::)
#define COM_FORWARD_IInternalMachineControl_PushGuestProperties_TO(smth) HRESULT STDMETHODCALLTYPE PushGuestProperties (SAFEARRAY * * aName, SAFEARRAY * * aValue, SAFEARRAY * * aTimestamp, SAFEARRAY * * aFlags) { return smth PushGuestProperties (aName, aValue, aTimestamp, aFlags); }
#define COM_FORWARD_IInternalMachineControl_PushGuestProperties_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_PushGuestProperties_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_PushGuestProperties_TO_BASE(base) COM_FORWARD_IInternalMachineControl_PushGuestProperties_TO (base::)
#define COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO(smth) HRESULT STDMETHODCALLTYPE PushGuestProperty (BSTR aName, BSTR aValue, ULONG64 aTimestamp, BSTR aFlags) { return smth PushGuestProperty (aName, aValue, aTimestamp, aFlags); }
#define COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO_BASE(base) COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO (base::)
#define COM_FORWARD_IInternalMachineControl_LockMedia_TO(smth) HRESULT STDMETHODCALLTYPE LockMedia() { return smth LockMedia(); }
#define COM_FORWARD_IInternalMachineControl_LockMedia_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_LockMedia_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_LockMedia_TO_BASE(base) COM_FORWARD_IInternalMachineControl_LockMedia_TO (base::)
#define COM_FORWARD_IInternalMachineControl_UnlockMedia_TO(smth) HRESULT STDMETHODCALLTYPE UnlockMedia() { return smth UnlockMedia(); }
#define COM_FORWARD_IInternalMachineControl_UnlockMedia_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_UnlockMedia_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_UnlockMedia_TO_BASE(base) COM_FORWARD_IInternalMachineControl_UnlockMedia_TO (base::)
#define COM_FORWARD_IInternalMachineControl_TO(smth) COM_FORWARD_IInternalMachineControl_SetRemoveSavedState_TO (smth) COM_FORWARD_IInternalMachineControl_UpdateState_TO (smth) COM_FORWARD_IInternalMachineControl_GetIPCId_TO (smth) COM_FORWARD_IInternalMachineControl_RunUSBDeviceFilters_TO (smth) COM_FORWARD_IInternalMachineControl_CaptureUSBDevice_TO (smth) COM_FORWARD_IInternalMachineControl_DetachUSBDevice_TO (smth) COM_FORWARD_IInternalMachineControl_AutoCaptureUSBDevices_TO (smth) COM_FORWARD_IInternalMachineControl_DetachAllUSBDevices_TO (smth) COM_FORWARD_IInternalMachineControl_OnSessionEnd_TO (smth) COM_FORWARD_IInternalMachineControl_BeginSavingState_TO (smth) COM_FORWARD_IInternalMachineControl_EndSavingState_TO (smth) COM_FORWARD_IInternalMachineControl_AdoptSavedState_TO (smth) COM_FORWARD_IInternalMachineControl_BeginTakingSnapshot_TO (smth) COM_FORWARD_IInternalMachineControl_EndTakingSnapshot_TO (smth) COM_FORWARD_IInternalMachineControl_DeleteSnapshot_TO (smth) COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO (smth) COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO (smth) COM_FORWARD_IInternalMachineControl_PushGuestProperties_TO (smth) COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO (smth) COM_FORWARD_IInternalMachineControl_LockMedia_TO (smth) COM_FORWARD_IInternalMachineControl_UnlockMedia_TO (smth) 
#define COM_FORWARD_IInternalMachineControl_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_TO_BASE(base) COM_FORWARD_IInternalMachineControl_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoFadeIn_TO(smth) HRESULT STDMETHODCALLTYPE get_LogoFadeIn (BOOL * aLogoFadeIn) { return smth get_LogoFadeIn (aLogoFadeIn); }
#define COM_FORWARD_IBIOSSettings_GETTER_LogoFadeIn_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_LogoFadeIn_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoFadeIn_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_LogoFadeIn_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoFadeIn_TO(smth) HRESULT STDMETHODCALLTYPE put_LogoFadeIn (BOOL aLogoFadeIn) { return smth put_LogoFadeIn (aLogoFadeIn); }
#define COM_FORWARD_IBIOSSettings_SETTER_LogoFadeIn_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_LogoFadeIn_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoFadeIn_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_LogoFadeIn_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoFadeOut_TO(smth) HRESULT STDMETHODCALLTYPE get_LogoFadeOut (BOOL * aLogoFadeOut) { return smth get_LogoFadeOut (aLogoFadeOut); }
#define COM_FORWARD_IBIOSSettings_GETTER_LogoFadeOut_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_LogoFadeOut_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoFadeOut_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_LogoFadeOut_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoFadeOut_TO(smth) HRESULT STDMETHODCALLTYPE put_LogoFadeOut (BOOL aLogoFadeOut) { return smth put_LogoFadeOut (aLogoFadeOut); }
#define COM_FORWARD_IBIOSSettings_SETTER_LogoFadeOut_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_LogoFadeOut_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoFadeOut_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_LogoFadeOut_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoDisplayTime_TO(smth) HRESULT STDMETHODCALLTYPE get_LogoDisplayTime (ULONG * aLogoDisplayTime) { return smth get_LogoDisplayTime (aLogoDisplayTime); }
#define COM_FORWARD_IBIOSSettings_GETTER_LogoDisplayTime_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_LogoDisplayTime_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoDisplayTime_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_LogoDisplayTime_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoDisplayTime_TO(smth) HRESULT STDMETHODCALLTYPE put_LogoDisplayTime (ULONG aLogoDisplayTime) { return smth put_LogoDisplayTime (aLogoDisplayTime); }
#define COM_FORWARD_IBIOSSettings_SETTER_LogoDisplayTime_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_LogoDisplayTime_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoDisplayTime_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_LogoDisplayTime_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoImagePath_TO(smth) HRESULT STDMETHODCALLTYPE get_LogoImagePath (BSTR * aLogoImagePath) { return smth get_LogoImagePath (aLogoImagePath); }
#define COM_FORWARD_IBIOSSettings_GETTER_LogoImagePath_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_LogoImagePath_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_LogoImagePath_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_LogoImagePath_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoImagePath_TO(smth) HRESULT STDMETHODCALLTYPE put_LogoImagePath (BSTR aLogoImagePath) { return smth put_LogoImagePath (aLogoImagePath); }
#define COM_FORWARD_IBIOSSettings_SETTER_LogoImagePath_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_LogoImagePath_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_LogoImagePath_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_LogoImagePath_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_BootMenuMode_TO(smth) HRESULT STDMETHODCALLTYPE get_BootMenuMode (BIOSBootMenuMode * aBootMenuMode) { return smth get_BootMenuMode (aBootMenuMode); }
#define COM_FORWARD_IBIOSSettings_GETTER_BootMenuMode_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_BootMenuMode_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_BootMenuMode_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_BootMenuMode_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_BootMenuMode_TO(smth) HRESULT STDMETHODCALLTYPE put_BootMenuMode (BIOSBootMenuMode aBootMenuMode) { return smth put_BootMenuMode (aBootMenuMode); }
#define COM_FORWARD_IBIOSSettings_SETTER_BootMenuMode_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_BootMenuMode_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_BootMenuMode_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_BootMenuMode_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_ACPIEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_ACPIEnabled (BOOL * aACPIEnabled) { return smth get_ACPIEnabled (aACPIEnabled); }
#define COM_FORWARD_IBIOSSettings_GETTER_ACPIEnabled_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_ACPIEnabled_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_ACPIEnabled_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_ACPIEnabled_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_ACPIEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_ACPIEnabled (BOOL aACPIEnabled) { return smth put_ACPIEnabled (aACPIEnabled); }
#define COM_FORWARD_IBIOSSettings_SETTER_ACPIEnabled_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_ACPIEnabled_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_ACPIEnabled_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_ACPIEnabled_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_IOAPICEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_IOAPICEnabled (BOOL * aIOAPICEnabled) { return smth get_IOAPICEnabled (aIOAPICEnabled); }
#define COM_FORWARD_IBIOSSettings_GETTER_IOAPICEnabled_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_IOAPICEnabled_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_IOAPICEnabled_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_IOAPICEnabled_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_IOAPICEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_IOAPICEnabled (BOOL aIOAPICEnabled) { return smth put_IOAPICEnabled (aIOAPICEnabled); }
#define COM_FORWARD_IBIOSSettings_SETTER_IOAPICEnabled_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_IOAPICEnabled_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_IOAPICEnabled_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_IOAPICEnabled_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_TimeOffset_TO(smth) HRESULT STDMETHODCALLTYPE get_TimeOffset (LONG64 * aTimeOffset) { return smth get_TimeOffset (aTimeOffset); }
#define COM_FORWARD_IBIOSSettings_GETTER_TimeOffset_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_TimeOffset_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_TimeOffset_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_TimeOffset_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_TimeOffset_TO(smth) HRESULT STDMETHODCALLTYPE put_TimeOffset (LONG64 aTimeOffset) { return smth put_TimeOffset (aTimeOffset); }
#define COM_FORWARD_IBIOSSettings_SETTER_TimeOffset_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_TimeOffset_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_TimeOffset_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_TimeOffset_TO (base::)
#define COM_FORWARD_IBIOSSettings_GETTER_PXEDebugEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_PXEDebugEnabled (BOOL * aPXEDebugEnabled) { return smth get_PXEDebugEnabled (aPXEDebugEnabled); }
#define COM_FORWARD_IBIOSSettings_GETTER_PXEDebugEnabled_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_GETTER_PXEDebugEnabled_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_GETTER_PXEDebugEnabled_TO_BASE(base) COM_FORWARD_IBIOSSettings_GETTER_PXEDebugEnabled_TO (base::)
#define COM_FORWARD_IBIOSSettings_SETTER_PXEDebugEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_PXEDebugEnabled (BOOL aPXEDebugEnabled) { return smth put_PXEDebugEnabled (aPXEDebugEnabled); }
#define COM_FORWARD_IBIOSSettings_SETTER_PXEDebugEnabled_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_SETTER_PXEDebugEnabled_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_SETTER_PXEDebugEnabled_TO_BASE(base) COM_FORWARD_IBIOSSettings_SETTER_PXEDebugEnabled_TO (base::)
#define COM_FORWARD_IBIOSSettings_TO(smth) COM_FORWARD_IBIOSSettings_GETTER_LogoFadeIn_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_LogoFadeIn_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_LogoFadeOut_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_LogoFadeOut_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_LogoDisplayTime_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_LogoDisplayTime_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_LogoImagePath_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_LogoImagePath_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_BootMenuMode_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_BootMenuMode_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_ACPIEnabled_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_ACPIEnabled_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_IOAPICEnabled_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_IOAPICEnabled_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_TimeOffset_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_TimeOffset_TO (smth) COM_FORWARD_IBIOSSettings_GETTER_PXEDebugEnabled_TO (smth) COM_FORWARD_IBIOSSettings_SETTER_PXEDebugEnabled_TO (smth) 
#define COM_FORWARD_IBIOSSettings_TO_OBJ(obj) COM_FORWARD_IBIOSSettings_TO ((obj)->)
#define COM_FORWARD_IBIOSSettings_TO_BASE(base) COM_FORWARD_IBIOSSettings_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Parent_TO(smth) HRESULT STDMETHODCALLTYPE get_Parent (IVirtualBox * * aParent) { return smth get_Parent (aParent); }
#define COM_FORWARD_IMachine_GETTER_Parent_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Parent_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Parent_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Parent_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Accessible_TO(smth) HRESULT STDMETHODCALLTYPE get_Accessible (BOOL * aAccessible) { return smth get_Accessible (aAccessible); }
#define COM_FORWARD_IMachine_GETTER_Accessible_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Accessible_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Accessible_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Accessible_TO (base::)
#define COM_FORWARD_IMachine_GETTER_AccessError_TO(smth) HRESULT STDMETHODCALLTYPE get_AccessError (IVirtualBoxErrorInfo * * aAccessError) { return smth get_AccessError (aAccessError); }
#define COM_FORWARD_IMachine_GETTER_AccessError_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_AccessError_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_AccessError_TO_BASE(base) COM_FORWARD_IMachine_GETTER_AccessError_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IMachine_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Name_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Name_TO (base::)
#define COM_FORWARD_IMachine_SETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE put_Name (BSTR aName) { return smth put_Name (aName); }
#define COM_FORWARD_IMachine_SETTER_Name_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_Name_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_Name_TO_BASE(base) COM_FORWARD_IMachine_SETTER_Name_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IMachine_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Description_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Description_TO (base::)
#define COM_FORWARD_IMachine_SETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE put_Description (BSTR aDescription) { return smth put_Description (aDescription); }
#define COM_FORWARD_IMachine_SETTER_Description_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_Description_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_Description_TO_BASE(base) COM_FORWARD_IMachine_SETTER_Description_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IMachine_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Id_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Id_TO (base::)
#define COM_FORWARD_IMachine_GETTER_OSTypeId_TO(smth) HRESULT STDMETHODCALLTYPE get_OSTypeId (BSTR * aOSTypeId) { return smth get_OSTypeId (aOSTypeId); }
#define COM_FORWARD_IMachine_GETTER_OSTypeId_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_OSTypeId_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_OSTypeId_TO_BASE(base) COM_FORWARD_IMachine_GETTER_OSTypeId_TO (base::)
#define COM_FORWARD_IMachine_SETTER_OSTypeId_TO(smth) HRESULT STDMETHODCALLTYPE put_OSTypeId (BSTR aOSTypeId) { return smth put_OSTypeId (aOSTypeId); }
#define COM_FORWARD_IMachine_SETTER_OSTypeId_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_OSTypeId_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_OSTypeId_TO_BASE(base) COM_FORWARD_IMachine_SETTER_OSTypeId_TO (base::)
#define COM_FORWARD_IMachine_GETTER_HardwareVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_HardwareVersion (BSTR * aHardwareVersion) { return smth get_HardwareVersion (aHardwareVersion); }
#define COM_FORWARD_IMachine_GETTER_HardwareVersion_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_HardwareVersion_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_HardwareVersion_TO_BASE(base) COM_FORWARD_IMachine_GETTER_HardwareVersion_TO (base::)
#define COM_FORWARD_IMachine_SETTER_HardwareVersion_TO(smth) HRESULT STDMETHODCALLTYPE put_HardwareVersion (BSTR aHardwareVersion) { return smth put_HardwareVersion (aHardwareVersion); }
#define COM_FORWARD_IMachine_SETTER_HardwareVersion_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_HardwareVersion_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_HardwareVersion_TO_BASE(base) COM_FORWARD_IMachine_SETTER_HardwareVersion_TO (base::)
#define COM_FORWARD_IMachine_GETTER_HardwareUUID_TO(smth) HRESULT STDMETHODCALLTYPE get_HardwareUUID (BSTR * aHardwareUUID) { return smth get_HardwareUUID (aHardwareUUID); }
#define COM_FORWARD_IMachine_GETTER_HardwareUUID_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_HardwareUUID_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_HardwareUUID_TO_BASE(base) COM_FORWARD_IMachine_GETTER_HardwareUUID_TO (base::)
#define COM_FORWARD_IMachine_SETTER_HardwareUUID_TO(smth) HRESULT STDMETHODCALLTYPE put_HardwareUUID (BSTR aHardwareUUID) { return smth put_HardwareUUID (aHardwareUUID); }
#define COM_FORWARD_IMachine_SETTER_HardwareUUID_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_HardwareUUID_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_HardwareUUID_TO_BASE(base) COM_FORWARD_IMachine_SETTER_HardwareUUID_TO (base::)
#define COM_FORWARD_IMachine_GETTER_CPUCount_TO(smth) HRESULT STDMETHODCALLTYPE get_CPUCount (ULONG * aCPUCount) { return smth get_CPUCount (aCPUCount); }
#define COM_FORWARD_IMachine_GETTER_CPUCount_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_CPUCount_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_CPUCount_TO_BASE(base) COM_FORWARD_IMachine_GETTER_CPUCount_TO (base::)
#define COM_FORWARD_IMachine_SETTER_CPUCount_TO(smth) HRESULT STDMETHODCALLTYPE put_CPUCount (ULONG aCPUCount) { return smth put_CPUCount (aCPUCount); }
#define COM_FORWARD_IMachine_SETTER_CPUCount_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_CPUCount_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_CPUCount_TO_BASE(base) COM_FORWARD_IMachine_SETTER_CPUCount_TO (base::)
#define COM_FORWARD_IMachine_GETTER_MemorySize_TO(smth) HRESULT STDMETHODCALLTYPE get_MemorySize (ULONG * aMemorySize) { return smth get_MemorySize (aMemorySize); }
#define COM_FORWARD_IMachine_GETTER_MemorySize_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_MemorySize_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_MemorySize_TO_BASE(base) COM_FORWARD_IMachine_GETTER_MemorySize_TO (base::)
#define COM_FORWARD_IMachine_SETTER_MemorySize_TO(smth) HRESULT STDMETHODCALLTYPE put_MemorySize (ULONG aMemorySize) { return smth put_MemorySize (aMemorySize); }
#define COM_FORWARD_IMachine_SETTER_MemorySize_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_MemorySize_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_MemorySize_TO_BASE(base) COM_FORWARD_IMachine_SETTER_MemorySize_TO (base::)
#define COM_FORWARD_IMachine_GETTER_MemoryBalloonSize_TO(smth) HRESULT STDMETHODCALLTYPE get_MemoryBalloonSize (ULONG * aMemoryBalloonSize) { return smth get_MemoryBalloonSize (aMemoryBalloonSize); }
#define COM_FORWARD_IMachine_GETTER_MemoryBalloonSize_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_MemoryBalloonSize_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_MemoryBalloonSize_TO_BASE(base) COM_FORWARD_IMachine_GETTER_MemoryBalloonSize_TO (base::)
#define COM_FORWARD_IMachine_SETTER_MemoryBalloonSize_TO(smth) HRESULT STDMETHODCALLTYPE put_MemoryBalloonSize (ULONG aMemoryBalloonSize) { return smth put_MemoryBalloonSize (aMemoryBalloonSize); }
#define COM_FORWARD_IMachine_SETTER_MemoryBalloonSize_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_MemoryBalloonSize_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_MemoryBalloonSize_TO_BASE(base) COM_FORWARD_IMachine_SETTER_MemoryBalloonSize_TO (base::)
#define COM_FORWARD_IMachine_GETTER_StatisticsUpdateInterval_TO(smth) HRESULT STDMETHODCALLTYPE get_StatisticsUpdateInterval (ULONG * aStatisticsUpdateInterval) { return smth get_StatisticsUpdateInterval (aStatisticsUpdateInterval); }
#define COM_FORWARD_IMachine_GETTER_StatisticsUpdateInterval_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_StatisticsUpdateInterval_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_StatisticsUpdateInterval_TO_BASE(base) COM_FORWARD_IMachine_GETTER_StatisticsUpdateInterval_TO (base::)
#define COM_FORWARD_IMachine_SETTER_StatisticsUpdateInterval_TO(smth) HRESULT STDMETHODCALLTYPE put_StatisticsUpdateInterval (ULONG aStatisticsUpdateInterval) { return smth put_StatisticsUpdateInterval (aStatisticsUpdateInterval); }
#define COM_FORWARD_IMachine_SETTER_StatisticsUpdateInterval_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_StatisticsUpdateInterval_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_StatisticsUpdateInterval_TO_BASE(base) COM_FORWARD_IMachine_SETTER_StatisticsUpdateInterval_TO (base::)
#define COM_FORWARD_IMachine_GETTER_VRAMSize_TO(smth) HRESULT STDMETHODCALLTYPE get_VRAMSize (ULONG * aVRAMSize) { return smth get_VRAMSize (aVRAMSize); }
#define COM_FORWARD_IMachine_GETTER_VRAMSize_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_VRAMSize_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_VRAMSize_TO_BASE(base) COM_FORWARD_IMachine_GETTER_VRAMSize_TO (base::)
#define COM_FORWARD_IMachine_SETTER_VRAMSize_TO(smth) HRESULT STDMETHODCALLTYPE put_VRAMSize (ULONG aVRAMSize) { return smth put_VRAMSize (aVRAMSize); }
#define COM_FORWARD_IMachine_SETTER_VRAMSize_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_VRAMSize_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_VRAMSize_TO_BASE(base) COM_FORWARD_IMachine_SETTER_VRAMSize_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Accelerate3DEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Accelerate3DEnabled (BOOL * aAccelerate3DEnabled) { return smth get_Accelerate3DEnabled (aAccelerate3DEnabled); }
#define COM_FORWARD_IMachine_GETTER_Accelerate3DEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Accelerate3DEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Accelerate3DEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Accelerate3DEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_Accelerate3DEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Accelerate3DEnabled (BOOL aAccelerate3DEnabled) { return smth put_Accelerate3DEnabled (aAccelerate3DEnabled); }
#define COM_FORWARD_IMachine_SETTER_Accelerate3DEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_Accelerate3DEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_Accelerate3DEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_Accelerate3DEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_Accelerate2DVideoEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Accelerate2DVideoEnabled (BOOL * aAccelerate2DVideoEnabled) { return smth get_Accelerate2DVideoEnabled (aAccelerate2DVideoEnabled); }
#define COM_FORWARD_IMachine_GETTER_Accelerate2DVideoEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_Accelerate2DVideoEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_Accelerate2DVideoEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_Accelerate2DVideoEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_Accelerate2DVideoEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Accelerate2DVideoEnabled (BOOL aAccelerate2DVideoEnabled) { return smth put_Accelerate2DVideoEnabled (aAccelerate2DVideoEnabled); }
#define COM_FORWARD_IMachine_SETTER_Accelerate2DVideoEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_Accelerate2DVideoEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_Accelerate2DVideoEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_Accelerate2DVideoEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_MonitorCount_TO(smth) HRESULT STDMETHODCALLTYPE get_MonitorCount (ULONG * aMonitorCount) { return smth get_MonitorCount (aMonitorCount); }
#define COM_FORWARD_IMachine_GETTER_MonitorCount_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_MonitorCount_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_MonitorCount_TO_BASE(base) COM_FORWARD_IMachine_GETTER_MonitorCount_TO (base::)
#define COM_FORWARD_IMachine_SETTER_MonitorCount_TO(smth) HRESULT STDMETHODCALLTYPE put_MonitorCount (ULONG aMonitorCount) { return smth put_MonitorCount (aMonitorCount); }
#define COM_FORWARD_IMachine_SETTER_MonitorCount_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_MonitorCount_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_MonitorCount_TO_BASE(base) COM_FORWARD_IMachine_SETTER_MonitorCount_TO (base::)
#define COM_FORWARD_IMachine_GETTER_BIOSSettings_TO(smth) HRESULT STDMETHODCALLTYPE get_BIOSSettings (IBIOSSettings * * aBIOSSettings) { return smth get_BIOSSettings (aBIOSSettings); }
#define COM_FORWARD_IMachine_GETTER_BIOSSettings_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_BIOSSettings_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_BIOSSettings_TO_BASE(base) COM_FORWARD_IMachine_GETTER_BIOSSettings_TO (base::)
#define COM_FORWARD_IMachine_GETTER_FirmwareType_TO(smth) HRESULT STDMETHODCALLTYPE get_FirmwareType (FirmwareType * aFirmwareType) { return smth get_FirmwareType (aFirmwareType); }
#define COM_FORWARD_IMachine_GETTER_FirmwareType_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_FirmwareType_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_FirmwareType_TO_BASE(base) COM_FORWARD_IMachine_GETTER_FirmwareType_TO (base::)
#define COM_FORWARD_IMachine_SETTER_FirmwareType_TO(smth) HRESULT STDMETHODCALLTYPE put_FirmwareType (FirmwareType aFirmwareType) { return smth put_FirmwareType (aFirmwareType); }
#define COM_FORWARD_IMachine_SETTER_FirmwareType_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_FirmwareType_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_FirmwareType_TO_BASE(base) COM_FORWARD_IMachine_SETTER_FirmwareType_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO(smth) HRESULT STDMETHODCALLTYPE get_SnapshotFolder (BSTR * aSnapshotFolder) { return smth get_SnapshotFolder (aSnapshotFolder); }
#define COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO (base::)
#define COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO(smth) HRESULT STDMETHODCALLTYPE put_SnapshotFolder (BSTR aSnapshotFolder) { return smth put_SnapshotFolder (aSnapshotFolder); }
#define COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO_BASE(base) COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO (base::)
#define COM_FORWARD_IMachine_GETTER_VRDPServer_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDPServer (IVRDPServer * * aVRDPServer) { return smth get_VRDPServer (aVRDPServer); }
#define COM_FORWARD_IMachine_GETTER_VRDPServer_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_VRDPServer_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_VRDPServer_TO_BASE(base) COM_FORWARD_IMachine_GETTER_VRDPServer_TO (base::)
#define COM_FORWARD_IMachine_GETTER_MediumAttachments_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumAttachments (SAFEARRAY * * aMediumAttachments) { return smth get_MediumAttachments (aMediumAttachments); }
#define COM_FORWARD_IMachine_GETTER_MediumAttachments_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_MediumAttachments_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_MediumAttachments_TO_BASE(base) COM_FORWARD_IMachine_GETTER_MediumAttachments_TO (base::)
#define COM_FORWARD_IMachine_GETTER_USBController_TO(smth) HRESULT STDMETHODCALLTYPE get_USBController (IUSBController * * aUSBController) { return smth get_USBController (aUSBController); }
#define COM_FORWARD_IMachine_GETTER_USBController_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_USBController_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_USBController_TO_BASE(base) COM_FORWARD_IMachine_GETTER_USBController_TO (base::)
#define COM_FORWARD_IMachine_GETTER_AudioAdapter_TO(smth) HRESULT STDMETHODCALLTYPE get_AudioAdapter (IAudioAdapter * * aAudioAdapter) { return smth get_AudioAdapter (aAudioAdapter); }
#define COM_FORWARD_IMachine_GETTER_AudioAdapter_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_AudioAdapter_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_AudioAdapter_TO_BASE(base) COM_FORWARD_IMachine_GETTER_AudioAdapter_TO (base::)
#define COM_FORWARD_IMachine_GETTER_StorageControllers_TO(smth) HRESULT STDMETHODCALLTYPE get_StorageControllers (SAFEARRAY * * aStorageControllers) { return smth get_StorageControllers (aStorageControllers); }
#define COM_FORWARD_IMachine_GETTER_StorageControllers_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_StorageControllers_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_StorageControllers_TO_BASE(base) COM_FORWARD_IMachine_GETTER_StorageControllers_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SettingsFilePath_TO(smth) HRESULT STDMETHODCALLTYPE get_SettingsFilePath (BSTR * aSettingsFilePath) { return smth get_SettingsFilePath (aSettingsFilePath); }
#define COM_FORWARD_IMachine_GETTER_SettingsFilePath_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SettingsFilePath_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SettingsFilePath_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SettingsFilePath_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SettingsModified_TO(smth) HRESULT STDMETHODCALLTYPE get_SettingsModified (BOOL * aSettingsModified) { return smth get_SettingsModified (aSettingsModified); }
#define COM_FORWARD_IMachine_GETTER_SettingsModified_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SettingsModified_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SettingsModified_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SettingsModified_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SessionState_TO(smth) HRESULT STDMETHODCALLTYPE get_SessionState (SessionState * aSessionState) { return smth get_SessionState (aSessionState); }
#define COM_FORWARD_IMachine_GETTER_SessionState_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SessionState_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SessionState_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SessionState_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SessionType_TO(smth) HRESULT STDMETHODCALLTYPE get_SessionType (BSTR * aSessionType) { return smth get_SessionType (aSessionType); }
#define COM_FORWARD_IMachine_GETTER_SessionType_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SessionType_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SessionType_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SessionType_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SessionPid_TO(smth) HRESULT STDMETHODCALLTYPE get_SessionPid (ULONG * aSessionPid) { return smth get_SessionPid (aSessionPid); }
#define COM_FORWARD_IMachine_GETTER_SessionPid_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SessionPid_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SessionPid_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SessionPid_TO (base::)
#define COM_FORWARD_IMachine_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (MachineState * aState) { return smth get_State (aState); }
#define COM_FORWARD_IMachine_GETTER_State_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_State_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_State_TO_BASE(base) COM_FORWARD_IMachine_GETTER_State_TO (base::)
#define COM_FORWARD_IMachine_GETTER_LastStateChange_TO(smth) HRESULT STDMETHODCALLTYPE get_LastStateChange (LONG64 * aLastStateChange) { return smth get_LastStateChange (aLastStateChange); }
#define COM_FORWARD_IMachine_GETTER_LastStateChange_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_LastStateChange_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_LastStateChange_TO_BASE(base) COM_FORWARD_IMachine_GETTER_LastStateChange_TO (base::)
#define COM_FORWARD_IMachine_GETTER_StateFilePath_TO(smth) HRESULT STDMETHODCALLTYPE get_StateFilePath (BSTR * aStateFilePath) { return smth get_StateFilePath (aStateFilePath); }
#define COM_FORWARD_IMachine_GETTER_StateFilePath_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_StateFilePath_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_StateFilePath_TO_BASE(base) COM_FORWARD_IMachine_GETTER_StateFilePath_TO (base::)
#define COM_FORWARD_IMachine_GETTER_LogFolder_TO(smth) HRESULT STDMETHODCALLTYPE get_LogFolder (BSTR * aLogFolder) { return smth get_LogFolder (aLogFolder); }
#define COM_FORWARD_IMachine_GETTER_LogFolder_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_LogFolder_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_LogFolder_TO_BASE(base) COM_FORWARD_IMachine_GETTER_LogFolder_TO (base::)
#define COM_FORWARD_IMachine_GETTER_CurrentSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE get_CurrentSnapshot (ISnapshot * * aCurrentSnapshot) { return smth get_CurrentSnapshot (aCurrentSnapshot); }
#define COM_FORWARD_IMachine_GETTER_CurrentSnapshot_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_CurrentSnapshot_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_CurrentSnapshot_TO_BASE(base) COM_FORWARD_IMachine_GETTER_CurrentSnapshot_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SnapshotCount_TO(smth) HRESULT STDMETHODCALLTYPE get_SnapshotCount (ULONG * aSnapshotCount) { return smth get_SnapshotCount (aSnapshotCount); }
#define COM_FORWARD_IMachine_GETTER_SnapshotCount_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SnapshotCount_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SnapshotCount_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SnapshotCount_TO (base::)
#define COM_FORWARD_IMachine_GETTER_CurrentStateModified_TO(smth) HRESULT STDMETHODCALLTYPE get_CurrentStateModified (BOOL * aCurrentStateModified) { return smth get_CurrentStateModified (aCurrentStateModified); }
#define COM_FORWARD_IMachine_GETTER_CurrentStateModified_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_CurrentStateModified_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_CurrentStateModified_TO_BASE(base) COM_FORWARD_IMachine_GETTER_CurrentStateModified_TO (base::)
#define COM_FORWARD_IMachine_GETTER_SharedFolders_TO(smth) HRESULT STDMETHODCALLTYPE get_SharedFolders (SAFEARRAY * * aSharedFolders) { return smth get_SharedFolders (aSharedFolders); }
#define COM_FORWARD_IMachine_GETTER_SharedFolders_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_SharedFolders_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_SharedFolders_TO_BASE(base) COM_FORWARD_IMachine_GETTER_SharedFolders_TO (base::)
#define COM_FORWARD_IMachine_GETTER_ClipboardMode_TO(smth) HRESULT STDMETHODCALLTYPE get_ClipboardMode (ClipboardMode * aClipboardMode) { return smth get_ClipboardMode (aClipboardMode); }
#define COM_FORWARD_IMachine_GETTER_ClipboardMode_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_ClipboardMode_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_ClipboardMode_TO_BASE(base) COM_FORWARD_IMachine_GETTER_ClipboardMode_TO (base::)
#define COM_FORWARD_IMachine_SETTER_ClipboardMode_TO(smth) HRESULT STDMETHODCALLTYPE put_ClipboardMode (ClipboardMode aClipboardMode) { return smth put_ClipboardMode (aClipboardMode); }
#define COM_FORWARD_IMachine_SETTER_ClipboardMode_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_ClipboardMode_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_ClipboardMode_TO_BASE(base) COM_FORWARD_IMachine_SETTER_ClipboardMode_TO (base::)
#define COM_FORWARD_IMachine_GETTER_GuestPropertyNotificationPatterns_TO(smth) HRESULT STDMETHODCALLTYPE get_GuestPropertyNotificationPatterns (BSTR * aGuestPropertyNotificationPatterns) { return smth get_GuestPropertyNotificationPatterns (aGuestPropertyNotificationPatterns); }
#define COM_FORWARD_IMachine_GETTER_GuestPropertyNotificationPatterns_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_GuestPropertyNotificationPatterns_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_GuestPropertyNotificationPatterns_TO_BASE(base) COM_FORWARD_IMachine_GETTER_GuestPropertyNotificationPatterns_TO (base::)
#define COM_FORWARD_IMachine_SETTER_GuestPropertyNotificationPatterns_TO(smth) HRESULT STDMETHODCALLTYPE put_GuestPropertyNotificationPatterns (BSTR aGuestPropertyNotificationPatterns) { return smth put_GuestPropertyNotificationPatterns (aGuestPropertyNotificationPatterns); }
#define COM_FORWARD_IMachine_SETTER_GuestPropertyNotificationPatterns_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_GuestPropertyNotificationPatterns_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_GuestPropertyNotificationPatterns_TO_BASE(base) COM_FORWARD_IMachine_SETTER_GuestPropertyNotificationPatterns_TO (base::)
#define COM_FORWARD_IMachine_GETTER_TeleporterEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_TeleporterEnabled (BOOL * aTeleporterEnabled) { return smth get_TeleporterEnabled (aTeleporterEnabled); }
#define COM_FORWARD_IMachine_GETTER_TeleporterEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_TeleporterEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_TeleporterEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_TeleporterEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_TeleporterEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_TeleporterEnabled (BOOL aTeleporterEnabled) { return smth put_TeleporterEnabled (aTeleporterEnabled); }
#define COM_FORWARD_IMachine_SETTER_TeleporterEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_TeleporterEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_TeleporterEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_TeleporterEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_TeleporterPort_TO(smth) HRESULT STDMETHODCALLTYPE get_TeleporterPort (ULONG * aTeleporterPort) { return smth get_TeleporterPort (aTeleporterPort); }
#define COM_FORWARD_IMachine_GETTER_TeleporterPort_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_TeleporterPort_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_TeleporterPort_TO_BASE(base) COM_FORWARD_IMachine_GETTER_TeleporterPort_TO (base::)
#define COM_FORWARD_IMachine_SETTER_TeleporterPort_TO(smth) HRESULT STDMETHODCALLTYPE put_TeleporterPort (ULONG aTeleporterPort) { return smth put_TeleporterPort (aTeleporterPort); }
#define COM_FORWARD_IMachine_SETTER_TeleporterPort_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_TeleporterPort_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_TeleporterPort_TO_BASE(base) COM_FORWARD_IMachine_SETTER_TeleporterPort_TO (base::)
#define COM_FORWARD_IMachine_GETTER_TeleporterAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_TeleporterAddress (BSTR * aTeleporterAddress) { return smth get_TeleporterAddress (aTeleporterAddress); }
#define COM_FORWARD_IMachine_GETTER_TeleporterAddress_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_TeleporterAddress_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_TeleporterAddress_TO_BASE(base) COM_FORWARD_IMachine_GETTER_TeleporterAddress_TO (base::)
#define COM_FORWARD_IMachine_SETTER_TeleporterAddress_TO(smth) HRESULT STDMETHODCALLTYPE put_TeleporterAddress (BSTR aTeleporterAddress) { return smth put_TeleporterAddress (aTeleporterAddress); }
#define COM_FORWARD_IMachine_SETTER_TeleporterAddress_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_TeleporterAddress_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_TeleporterAddress_TO_BASE(base) COM_FORWARD_IMachine_SETTER_TeleporterAddress_TO (base::)
#define COM_FORWARD_IMachine_GETTER_TeleporterPassword_TO(smth) HRESULT STDMETHODCALLTYPE get_TeleporterPassword (BSTR * aTeleporterPassword) { return smth get_TeleporterPassword (aTeleporterPassword); }
#define COM_FORWARD_IMachine_GETTER_TeleporterPassword_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_TeleporterPassword_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_TeleporterPassword_TO_BASE(base) COM_FORWARD_IMachine_GETTER_TeleporterPassword_TO (base::)
#define COM_FORWARD_IMachine_SETTER_TeleporterPassword_TO(smth) HRESULT STDMETHODCALLTYPE put_TeleporterPassword (BSTR aTeleporterPassword) { return smth put_TeleporterPassword (aTeleporterPassword); }
#define COM_FORWARD_IMachine_SETTER_TeleporterPassword_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_TeleporterPassword_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_TeleporterPassword_TO_BASE(base) COM_FORWARD_IMachine_SETTER_TeleporterPassword_TO (base::)
#define COM_FORWARD_IMachine_SetBootOrder_TO(smth) HRESULT STDMETHODCALLTYPE SetBootOrder (ULONG aPosition, DeviceType aDevice) { return smth SetBootOrder (aPosition, aDevice); }
#define COM_FORWARD_IMachine_SetBootOrder_TO_OBJ(obj) COM_FORWARD_IMachine_SetBootOrder_TO ((obj)->)
#define COM_FORWARD_IMachine_SetBootOrder_TO_BASE(base) COM_FORWARD_IMachine_SetBootOrder_TO (base::)
#define COM_FORWARD_IMachine_GetBootOrder_TO(smth) HRESULT STDMETHODCALLTYPE GetBootOrder (ULONG aPosition, DeviceType * aDevice) { return smth GetBootOrder (aPosition, aDevice); }
#define COM_FORWARD_IMachine_GetBootOrder_TO_OBJ(obj) COM_FORWARD_IMachine_GetBootOrder_TO ((obj)->)
#define COM_FORWARD_IMachine_GetBootOrder_TO_BASE(base) COM_FORWARD_IMachine_GetBootOrder_TO (base::)
#define COM_FORWARD_IMachine_AttachDevice_TO(smth) HRESULT STDMETHODCALLTYPE AttachDevice (BSTR aName, LONG aControllerPort, LONG aDevice, DeviceType aType, BSTR aId) { return smth AttachDevice (aName, aControllerPort, aDevice, aType, aId); }
#define COM_FORWARD_IMachine_AttachDevice_TO_OBJ(obj) COM_FORWARD_IMachine_AttachDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_AttachDevice_TO_BASE(base) COM_FORWARD_IMachine_AttachDevice_TO (base::)
#define COM_FORWARD_IMachine_DetachDevice_TO(smth) HRESULT STDMETHODCALLTYPE DetachDevice (BSTR aName, LONG aControllerPort, LONG aDevice) { return smth DetachDevice (aName, aControllerPort, aDevice); }
#define COM_FORWARD_IMachine_DetachDevice_TO_OBJ(obj) COM_FORWARD_IMachine_DetachDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_DetachDevice_TO_BASE(base) COM_FORWARD_IMachine_DetachDevice_TO (base::)
#define COM_FORWARD_IMachine_PassthroughDevice_TO(smth) HRESULT STDMETHODCALLTYPE PassthroughDevice (BSTR aName, LONG aControllerPort, LONG aDevice, BOOL aPassthrough) { return smth PassthroughDevice (aName, aControllerPort, aDevice, aPassthrough); }
#define COM_FORWARD_IMachine_PassthroughDevice_TO_OBJ(obj) COM_FORWARD_IMachine_PassthroughDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_PassthroughDevice_TO_BASE(base) COM_FORWARD_IMachine_PassthroughDevice_TO (base::)
#define COM_FORWARD_IMachine_MountMedium_TO(smth) HRESULT STDMETHODCALLTYPE MountMedium (BSTR aName, LONG aControllerPort, LONG aDevice, BSTR aMedium, BOOL aForce) { return smth MountMedium (aName, aControllerPort, aDevice, aMedium, aForce); }
#define COM_FORWARD_IMachine_MountMedium_TO_OBJ(obj) COM_FORWARD_IMachine_MountMedium_TO ((obj)->)
#define COM_FORWARD_IMachine_MountMedium_TO_BASE(base) COM_FORWARD_IMachine_MountMedium_TO (base::)
#define COM_FORWARD_IMachine_GetMedium_TO(smth) HRESULT STDMETHODCALLTYPE GetMedium (BSTR aName, LONG aControllerPort, LONG aDevice, IMedium * * aMedium) { return smth GetMedium (aName, aControllerPort, aDevice, aMedium); }
#define COM_FORWARD_IMachine_GetMedium_TO_OBJ(obj) COM_FORWARD_IMachine_GetMedium_TO ((obj)->)
#define COM_FORWARD_IMachine_GetMedium_TO_BASE(base) COM_FORWARD_IMachine_GetMedium_TO (base::)
#define COM_FORWARD_IMachine_GetMediumAttachmentsOfController_TO(smth) HRESULT STDMETHODCALLTYPE GetMediumAttachmentsOfController (BSTR aName, SAFEARRAY * * aMediumAttachments) { return smth GetMediumAttachmentsOfController (aName, aMediumAttachments); }
#define COM_FORWARD_IMachine_GetMediumAttachmentsOfController_TO_OBJ(obj) COM_FORWARD_IMachine_GetMediumAttachmentsOfController_TO ((obj)->)
#define COM_FORWARD_IMachine_GetMediumAttachmentsOfController_TO_BASE(base) COM_FORWARD_IMachine_GetMediumAttachmentsOfController_TO (base::)
#define COM_FORWARD_IMachine_GetMediumAttachment_TO(smth) HRESULT STDMETHODCALLTYPE GetMediumAttachment (BSTR aName, LONG aControllerPort, LONG aDevice, IMediumAttachment * * aAttachment) { return smth GetMediumAttachment (aName, aControllerPort, aDevice, aAttachment); }
#define COM_FORWARD_IMachine_GetMediumAttachment_TO_OBJ(obj) COM_FORWARD_IMachine_GetMediumAttachment_TO ((obj)->)
#define COM_FORWARD_IMachine_GetMediumAttachment_TO_BASE(base) COM_FORWARD_IMachine_GetMediumAttachment_TO (base::)
#define COM_FORWARD_IMachine_GetNetworkAdapter_TO(smth) HRESULT STDMETHODCALLTYPE GetNetworkAdapter (ULONG aSlot, INetworkAdapter * * aAdapter) { return smth GetNetworkAdapter (aSlot, aAdapter); }
#define COM_FORWARD_IMachine_GetNetworkAdapter_TO_OBJ(obj) COM_FORWARD_IMachine_GetNetworkAdapter_TO ((obj)->)
#define COM_FORWARD_IMachine_GetNetworkAdapter_TO_BASE(base) COM_FORWARD_IMachine_GetNetworkAdapter_TO (base::)
#define COM_FORWARD_IMachine_AddStorageController_TO(smth) HRESULT STDMETHODCALLTYPE AddStorageController (BSTR aName, StorageBus aConnectionType, IStorageController * * aController) { return smth AddStorageController (aName, aConnectionType, aController); }
#define COM_FORWARD_IMachine_AddStorageController_TO_OBJ(obj) COM_FORWARD_IMachine_AddStorageController_TO ((obj)->)
#define COM_FORWARD_IMachine_AddStorageController_TO_BASE(base) COM_FORWARD_IMachine_AddStorageController_TO (base::)
#define COM_FORWARD_IMachine_GetStorageControllerByName_TO(smth) HRESULT STDMETHODCALLTYPE GetStorageControllerByName (BSTR aName, IStorageController * * aStorageController) { return smth GetStorageControllerByName (aName, aStorageController); }
#define COM_FORWARD_IMachine_GetStorageControllerByName_TO_OBJ(obj) COM_FORWARD_IMachine_GetStorageControllerByName_TO ((obj)->)
#define COM_FORWARD_IMachine_GetStorageControllerByName_TO_BASE(base) COM_FORWARD_IMachine_GetStorageControllerByName_TO (base::)
#define COM_FORWARD_IMachine_GetStorageControllerByInstance_TO(smth) HRESULT STDMETHODCALLTYPE GetStorageControllerByInstance (ULONG aInstance, IStorageController * * aStorageController) { return smth GetStorageControllerByInstance (aInstance, aStorageController); }
#define COM_FORWARD_IMachine_GetStorageControllerByInstance_TO_OBJ(obj) COM_FORWARD_IMachine_GetStorageControllerByInstance_TO ((obj)->)
#define COM_FORWARD_IMachine_GetStorageControllerByInstance_TO_BASE(base) COM_FORWARD_IMachine_GetStorageControllerByInstance_TO (base::)
#define COM_FORWARD_IMachine_RemoveStorageController_TO(smth) HRESULT STDMETHODCALLTYPE RemoveStorageController (BSTR aName) { return smth RemoveStorageController (aName); }
#define COM_FORWARD_IMachine_RemoveStorageController_TO_OBJ(obj) COM_FORWARD_IMachine_RemoveStorageController_TO ((obj)->)
#define COM_FORWARD_IMachine_RemoveStorageController_TO_BASE(base) COM_FORWARD_IMachine_RemoveStorageController_TO (base::)
#define COM_FORWARD_IMachine_GetSerialPort_TO(smth) HRESULT STDMETHODCALLTYPE GetSerialPort (ULONG aSlot, ISerialPort * * aPort) { return smth GetSerialPort (aSlot, aPort); }
#define COM_FORWARD_IMachine_GetSerialPort_TO_OBJ(obj) COM_FORWARD_IMachine_GetSerialPort_TO ((obj)->)
#define COM_FORWARD_IMachine_GetSerialPort_TO_BASE(base) COM_FORWARD_IMachine_GetSerialPort_TO (base::)
#define COM_FORWARD_IMachine_GetParallelPort_TO(smth) HRESULT STDMETHODCALLTYPE GetParallelPort (ULONG aSlot, IParallelPort * * aPort) { return smth GetParallelPort (aSlot, aPort); }
#define COM_FORWARD_IMachine_GetParallelPort_TO_OBJ(obj) COM_FORWARD_IMachine_GetParallelPort_TO ((obj)->)
#define COM_FORWARD_IMachine_GetParallelPort_TO_BASE(base) COM_FORWARD_IMachine_GetParallelPort_TO (base::)
#define COM_FORWARD_IMachine_GetExtraDataKeys_TO(smth) HRESULT STDMETHODCALLTYPE GetExtraDataKeys (SAFEARRAY * * aValue) { return smth GetExtraDataKeys (aValue); }
#define COM_FORWARD_IMachine_GetExtraDataKeys_TO_OBJ(obj) COM_FORWARD_IMachine_GetExtraDataKeys_TO ((obj)->)
#define COM_FORWARD_IMachine_GetExtraDataKeys_TO_BASE(base) COM_FORWARD_IMachine_GetExtraDataKeys_TO (base::)
#define COM_FORWARD_IMachine_GetExtraData_TO(smth) HRESULT STDMETHODCALLTYPE GetExtraData (BSTR aKey, BSTR * aValue) { return smth GetExtraData (aKey, aValue); }
#define COM_FORWARD_IMachine_GetExtraData_TO_OBJ(obj) COM_FORWARD_IMachine_GetExtraData_TO ((obj)->)
#define COM_FORWARD_IMachine_GetExtraData_TO_BASE(base) COM_FORWARD_IMachine_GetExtraData_TO (base::)
#define COM_FORWARD_IMachine_SetExtraData_TO(smth) HRESULT STDMETHODCALLTYPE SetExtraData (BSTR aKey, BSTR aValue) { return smth SetExtraData (aKey, aValue); }
#define COM_FORWARD_IMachine_SetExtraData_TO_OBJ(obj) COM_FORWARD_IMachine_SetExtraData_TO ((obj)->)
#define COM_FORWARD_IMachine_SetExtraData_TO_BASE(base) COM_FORWARD_IMachine_SetExtraData_TO (base::)
#define COM_FORWARD_IMachine_GetCpuProperty_TO(smth) HRESULT STDMETHODCALLTYPE GetCpuProperty (CpuPropertyType aProperty, BOOL * aValue) { return smth GetCpuProperty (aProperty, aValue); }
#define COM_FORWARD_IMachine_GetCpuProperty_TO_OBJ(obj) COM_FORWARD_IMachine_GetCpuProperty_TO ((obj)->)
#define COM_FORWARD_IMachine_GetCpuProperty_TO_BASE(base) COM_FORWARD_IMachine_GetCpuProperty_TO (base::)
#define COM_FORWARD_IMachine_SetCpuProperty_TO(smth) HRESULT STDMETHODCALLTYPE SetCpuProperty (CpuPropertyType aProperty, BOOL aValue) { return smth SetCpuProperty (aProperty, aValue); }
#define COM_FORWARD_IMachine_SetCpuProperty_TO_OBJ(obj) COM_FORWARD_IMachine_SetCpuProperty_TO ((obj)->)
#define COM_FORWARD_IMachine_SetCpuProperty_TO_BASE(base) COM_FORWARD_IMachine_SetCpuProperty_TO (base::)
#define COM_FORWARD_IMachine_GetCpuIdLeaf_TO(smth) HRESULT STDMETHODCALLTYPE GetCpuIdLeaf (ULONG aId, ULONG * aValEax, ULONG * aValEbx, ULONG * aValEcx, ULONG * aValEdx) { return smth GetCpuIdLeaf (aId, aValEax, aValEbx, aValEcx, aValEdx); }
#define COM_FORWARD_IMachine_GetCpuIdLeaf_TO_OBJ(obj) COM_FORWARD_IMachine_GetCpuIdLeaf_TO ((obj)->)
#define COM_FORWARD_IMachine_GetCpuIdLeaf_TO_BASE(base) COM_FORWARD_IMachine_GetCpuIdLeaf_TO (base::)
#define COM_FORWARD_IMachine_SetCpuIdLeaf_TO(smth) HRESULT STDMETHODCALLTYPE SetCpuIdLeaf (ULONG aId, ULONG aValEax, ULONG aValEbx, ULONG aValEcx, ULONG aValEdx) { return smth SetCpuIdLeaf (aId, aValEax, aValEbx, aValEcx, aValEdx); }
#define COM_FORWARD_IMachine_SetCpuIdLeaf_TO_OBJ(obj) COM_FORWARD_IMachine_SetCpuIdLeaf_TO ((obj)->)
#define COM_FORWARD_IMachine_SetCpuIdLeaf_TO_BASE(base) COM_FORWARD_IMachine_SetCpuIdLeaf_TO (base::)
#define COM_FORWARD_IMachine_RemoveCpuIdLeaf_TO(smth) HRESULT STDMETHODCALLTYPE RemoveCpuIdLeaf (ULONG aId) { return smth RemoveCpuIdLeaf (aId); }
#define COM_FORWARD_IMachine_RemoveCpuIdLeaf_TO_OBJ(obj) COM_FORWARD_IMachine_RemoveCpuIdLeaf_TO ((obj)->)
#define COM_FORWARD_IMachine_RemoveCpuIdLeaf_TO_BASE(base) COM_FORWARD_IMachine_RemoveCpuIdLeaf_TO (base::)
#define COM_FORWARD_IMachine_RemoveAllCpuIdLeafs_TO(smth) HRESULT STDMETHODCALLTYPE RemoveAllCpuIdLeafs() { return smth RemoveAllCpuIdLeafs(); }
#define COM_FORWARD_IMachine_RemoveAllCpuIdLeafs_TO_OBJ(obj) COM_FORWARD_IMachine_RemoveAllCpuIdLeafs_TO ((obj)->)
#define COM_FORWARD_IMachine_RemoveAllCpuIdLeafs_TO_BASE(base) COM_FORWARD_IMachine_RemoveAllCpuIdLeafs_TO (base::)
#define COM_FORWARD_IMachine_GetHWVirtExProperty_TO(smth) HRESULT STDMETHODCALLTYPE GetHWVirtExProperty (HWVirtExPropertyType aProperty, BOOL * aValue) { return smth GetHWVirtExProperty (aProperty, aValue); }
#define COM_FORWARD_IMachine_GetHWVirtExProperty_TO_OBJ(obj) COM_FORWARD_IMachine_GetHWVirtExProperty_TO ((obj)->)
#define COM_FORWARD_IMachine_GetHWVirtExProperty_TO_BASE(base) COM_FORWARD_IMachine_GetHWVirtExProperty_TO (base::)
#define COM_FORWARD_IMachine_SetHWVirtExProperty_TO(smth) HRESULT STDMETHODCALLTYPE SetHWVirtExProperty (HWVirtExPropertyType aProperty, BOOL aValue) { return smth SetHWVirtExProperty (aProperty, aValue); }
#define COM_FORWARD_IMachine_SetHWVirtExProperty_TO_OBJ(obj) COM_FORWARD_IMachine_SetHWVirtExProperty_TO ((obj)->)
#define COM_FORWARD_IMachine_SetHWVirtExProperty_TO_BASE(base) COM_FORWARD_IMachine_SetHWVirtExProperty_TO (base::)
#define COM_FORWARD_IMachine_SaveSettings_TO(smth) HRESULT STDMETHODCALLTYPE SaveSettings() { return smth SaveSettings(); }
#define COM_FORWARD_IMachine_SaveSettings_TO_OBJ(obj) COM_FORWARD_IMachine_SaveSettings_TO ((obj)->)
#define COM_FORWARD_IMachine_SaveSettings_TO_BASE(base) COM_FORWARD_IMachine_SaveSettings_TO (base::)
#define COM_FORWARD_IMachine_DiscardSettings_TO(smth) HRESULT STDMETHODCALLTYPE DiscardSettings() { return smth DiscardSettings(); }
#define COM_FORWARD_IMachine_DiscardSettings_TO_OBJ(obj) COM_FORWARD_IMachine_DiscardSettings_TO ((obj)->)
#define COM_FORWARD_IMachine_DiscardSettings_TO_BASE(base) COM_FORWARD_IMachine_DiscardSettings_TO (base::)
#define COM_FORWARD_IMachine_DeleteSettings_TO(smth) HRESULT STDMETHODCALLTYPE DeleteSettings() { return smth DeleteSettings(); }
#define COM_FORWARD_IMachine_DeleteSettings_TO_OBJ(obj) COM_FORWARD_IMachine_DeleteSettings_TO ((obj)->)
#define COM_FORWARD_IMachine_DeleteSettings_TO_BASE(base) COM_FORWARD_IMachine_DeleteSettings_TO (base::)
#define COM_FORWARD_IMachine_Export_TO(smth) HRESULT STDMETHODCALLTYPE Export (IAppliance * aAAppliance, IVirtualSystemDescription * * aADescription) { return smth Export (aAAppliance, aADescription); }
#define COM_FORWARD_IMachine_Export_TO_OBJ(obj) COM_FORWARD_IMachine_Export_TO ((obj)->)
#define COM_FORWARD_IMachine_Export_TO_BASE(base) COM_FORWARD_IMachine_Export_TO (base::)
#define COM_FORWARD_IMachine_GetSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE GetSnapshot (BSTR aId, ISnapshot * * aSnapshot) { return smth GetSnapshot (aId, aSnapshot); }
#define COM_FORWARD_IMachine_GetSnapshot_TO_OBJ(obj) COM_FORWARD_IMachine_GetSnapshot_TO ((obj)->)
#define COM_FORWARD_IMachine_GetSnapshot_TO_BASE(base) COM_FORWARD_IMachine_GetSnapshot_TO (base::)
#define COM_FORWARD_IMachine_FindSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE FindSnapshot (BSTR aName, ISnapshot * * aSnapshot) { return smth FindSnapshot (aName, aSnapshot); }
#define COM_FORWARD_IMachine_FindSnapshot_TO_OBJ(obj) COM_FORWARD_IMachine_FindSnapshot_TO ((obj)->)
#define COM_FORWARD_IMachine_FindSnapshot_TO_BASE(base) COM_FORWARD_IMachine_FindSnapshot_TO (base::)
#define COM_FORWARD_IMachine_SetCurrentSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE SetCurrentSnapshot (BSTR aId) { return smth SetCurrentSnapshot (aId); }
#define COM_FORWARD_IMachine_SetCurrentSnapshot_TO_OBJ(obj) COM_FORWARD_IMachine_SetCurrentSnapshot_TO ((obj)->)
#define COM_FORWARD_IMachine_SetCurrentSnapshot_TO_BASE(base) COM_FORWARD_IMachine_SetCurrentSnapshot_TO (base::)
#define COM_FORWARD_IMachine_CreateSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE CreateSharedFolder (BSTR aName, BSTR aHostPath, BOOL aWritable) { return smth CreateSharedFolder (aName, aHostPath, aWritable); }
#define COM_FORWARD_IMachine_CreateSharedFolder_TO_OBJ(obj) COM_FORWARD_IMachine_CreateSharedFolder_TO ((obj)->)
#define COM_FORWARD_IMachine_CreateSharedFolder_TO_BASE(base) COM_FORWARD_IMachine_CreateSharedFolder_TO (base::)
#define COM_FORWARD_IMachine_RemoveSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE RemoveSharedFolder (BSTR aName) { return smth RemoveSharedFolder (aName); }
#define COM_FORWARD_IMachine_RemoveSharedFolder_TO_OBJ(obj) COM_FORWARD_IMachine_RemoveSharedFolder_TO ((obj)->)
#define COM_FORWARD_IMachine_RemoveSharedFolder_TO_BASE(base) COM_FORWARD_IMachine_RemoveSharedFolder_TO (base::)
#define COM_FORWARD_IMachine_CanShowConsoleWindow_TO(smth) HRESULT STDMETHODCALLTYPE CanShowConsoleWindow (BOOL * aCanShow) { return smth CanShowConsoleWindow (aCanShow); }
#define COM_FORWARD_IMachine_CanShowConsoleWindow_TO_OBJ(obj) COM_FORWARD_IMachine_CanShowConsoleWindow_TO ((obj)->)
#define COM_FORWARD_IMachine_CanShowConsoleWindow_TO_BASE(base) COM_FORWARD_IMachine_CanShowConsoleWindow_TO (base::)
#define COM_FORWARD_IMachine_ShowConsoleWindow_TO(smth) HRESULT STDMETHODCALLTYPE ShowConsoleWindow (ULONG64 * aWinId) { return smth ShowConsoleWindow (aWinId); }
#define COM_FORWARD_IMachine_ShowConsoleWindow_TO_OBJ(obj) COM_FORWARD_IMachine_ShowConsoleWindow_TO ((obj)->)
#define COM_FORWARD_IMachine_ShowConsoleWindow_TO_BASE(base) COM_FORWARD_IMachine_ShowConsoleWindow_TO (base::)
#define COM_FORWARD_IMachine_GetGuestProperty_TO(smth) HRESULT STDMETHODCALLTYPE GetGuestProperty (BSTR aName, BSTR * aValue, ULONG64 * aTimestamp, BSTR * aFlags) { return smth GetGuestProperty (aName, aValue, aTimestamp, aFlags); }
#define COM_FORWARD_IMachine_GetGuestProperty_TO_OBJ(obj) COM_FORWARD_IMachine_GetGuestProperty_TO ((obj)->)
#define COM_FORWARD_IMachine_GetGuestProperty_TO_BASE(base) COM_FORWARD_IMachine_GetGuestProperty_TO (base::)
#define COM_FORWARD_IMachine_GetGuestPropertyValue_TO(smth) HRESULT STDMETHODCALLTYPE GetGuestPropertyValue (BSTR aProperty, BSTR * aValue) { return smth GetGuestPropertyValue (aProperty, aValue); }
#define COM_FORWARD_IMachine_GetGuestPropertyValue_TO_OBJ(obj) COM_FORWARD_IMachine_GetGuestPropertyValue_TO ((obj)->)
#define COM_FORWARD_IMachine_GetGuestPropertyValue_TO_BASE(base) COM_FORWARD_IMachine_GetGuestPropertyValue_TO (base::)
#define COM_FORWARD_IMachine_GetGuestPropertyTimestamp_TO(smth) HRESULT STDMETHODCALLTYPE GetGuestPropertyTimestamp (BSTR aProperty, ULONG64 * aValue) { return smth GetGuestPropertyTimestamp (aProperty, aValue); }
#define COM_FORWARD_IMachine_GetGuestPropertyTimestamp_TO_OBJ(obj) COM_FORWARD_IMachine_GetGuestPropertyTimestamp_TO ((obj)->)
#define COM_FORWARD_IMachine_GetGuestPropertyTimestamp_TO_BASE(base) COM_FORWARD_IMachine_GetGuestPropertyTimestamp_TO (base::)
#define COM_FORWARD_IMachine_SetGuestProperty_TO(smth) HRESULT STDMETHODCALLTYPE SetGuestProperty (BSTR aProperty, BSTR aValue, BSTR aFlags) { return smth SetGuestProperty (aProperty, aValue, aFlags); }
#define COM_FORWARD_IMachine_SetGuestProperty_TO_OBJ(obj) COM_FORWARD_IMachine_SetGuestProperty_TO ((obj)->)
#define COM_FORWARD_IMachine_SetGuestProperty_TO_BASE(base) COM_FORWARD_IMachine_SetGuestProperty_TO (base::)
#define COM_FORWARD_IMachine_SetGuestPropertyValue_TO(smth) HRESULT STDMETHODCALLTYPE SetGuestPropertyValue (BSTR aProperty, BSTR aValue) { return smth SetGuestPropertyValue (aProperty, aValue); }
#define COM_FORWARD_IMachine_SetGuestPropertyValue_TO_OBJ(obj) COM_FORWARD_IMachine_SetGuestPropertyValue_TO ((obj)->)
#define COM_FORWARD_IMachine_SetGuestPropertyValue_TO_BASE(base) COM_FORWARD_IMachine_SetGuestPropertyValue_TO (base::)
#define COM_FORWARD_IMachine_EnumerateGuestProperties_TO(smth) HRESULT STDMETHODCALLTYPE EnumerateGuestProperties (BSTR aPatterns, SAFEARRAY * * aName, SAFEARRAY * * aValue, SAFEARRAY * * aTimestamp, SAFEARRAY * * aFlags) { return smth EnumerateGuestProperties (aPatterns, aName, aValue, aTimestamp, aFlags); }
#define COM_FORWARD_IMachine_EnumerateGuestProperties_TO_OBJ(obj) COM_FORWARD_IMachine_EnumerateGuestProperties_TO ((obj)->)
#define COM_FORWARD_IMachine_EnumerateGuestProperties_TO_BASE(base) COM_FORWARD_IMachine_EnumerateGuestProperties_TO (base::)
#define COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO(smth) HRESULT STDMETHODCALLTYPE QuerySavedThumbnailSize (ULONG * aSize, ULONG * aWidth, ULONG * aHeight) { return smth QuerySavedThumbnailSize (aSize, aWidth, aHeight); }
#define COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO_OBJ(obj) COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO ((obj)->)
#define COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO_BASE(base) COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO (base::)
#define COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO(smth) HRESULT STDMETHODCALLTYPE ReadSavedThumbnailToArray (BOOL aBGR, ULONG * aWidth, ULONG * aHeight, SAFEARRAY * * aData) { return smth ReadSavedThumbnailToArray (aBGR, aWidth, aHeight, aData); }
#define COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO_OBJ(obj) COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO ((obj)->)
#define COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO_BASE(base) COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO (base::)
#define COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO(smth) HRESULT STDMETHODCALLTYPE QuerySavedScreenshotPNGSize (ULONG * aSize, ULONG * aWidth, ULONG * aHeight) { return smth QuerySavedScreenshotPNGSize (aSize, aWidth, aHeight); }
#define COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO_OBJ(obj) COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO ((obj)->)
#define COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO_BASE(base) COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO (base::)
#define COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO(smth) HRESULT STDMETHODCALLTYPE ReadSavedScreenshotPNGToArray (ULONG * aWidth, ULONG * aHeight, SAFEARRAY * * aData) { return smth ReadSavedScreenshotPNGToArray (aWidth, aHeight, aData); }
#define COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO_OBJ(obj) COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO ((obj)->)
#define COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO_BASE(base) COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO (base::)
#define COM_FORWARD_IMachine_TO(smth) COM_FORWARD_IMachine_GETTER_Parent_TO (smth) COM_FORWARD_IMachine_GETTER_Accessible_TO (smth) COM_FORWARD_IMachine_GETTER_AccessError_TO (smth) COM_FORWARD_IMachine_GETTER_Name_TO (smth) COM_FORWARD_IMachine_SETTER_Name_TO (smth) COM_FORWARD_IMachine_GETTER_Description_TO (smth) COM_FORWARD_IMachine_SETTER_Description_TO (smth) COM_FORWARD_IMachine_GETTER_Id_TO (smth) COM_FORWARD_IMachine_GETTER_OSTypeId_TO (smth) COM_FORWARD_IMachine_SETTER_OSTypeId_TO (smth) COM_FORWARD_IMachine_GETTER_HardwareVersion_TO (smth) COM_FORWARD_IMachine_SETTER_HardwareVersion_TO (smth) COM_FORWARD_IMachine_GETTER_HardwareUUID_TO (smth) COM_FORWARD_IMachine_SETTER_HardwareUUID_TO (smth) COM_FORWARD_IMachine_GETTER_CPUCount_TO (smth) COM_FORWARD_IMachine_SETTER_CPUCount_TO (smth) COM_FORWARD_IMachine_GETTER_MemorySize_TO (smth) COM_FORWARD_IMachine_SETTER_MemorySize_TO (smth) COM_FORWARD_IMachine_GETTER_MemoryBalloonSize_TO (smth) COM_FORWARD_IMachine_SETTER_MemoryBalloonSize_TO (smth) COM_FORWARD_IMachine_GETTER_StatisticsUpdateInterval_TO (smth) COM_FORWARD_IMachine_SETTER_StatisticsUpdateInterval_TO (smth) COM_FORWARD_IMachine_GETTER_VRAMSize_TO (smth) COM_FORWARD_IMachine_SETTER_VRAMSize_TO (smth) COM_FORWARD_IMachine_GETTER_Accelerate3DEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_Accelerate3DEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_Accelerate2DVideoEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_Accelerate2DVideoEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_MonitorCount_TO (smth) COM_FORWARD_IMachine_SETTER_MonitorCount_TO (smth) COM_FORWARD_IMachine_GETTER_BIOSSettings_TO (smth) COM_FORWARD_IMachine_GETTER_FirmwareType_TO (smth) COM_FORWARD_IMachine_SETTER_FirmwareType_TO (smth) COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO (smth) COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO (smth) COM_FORWARD_IMachine_GETTER_VRDPServer_TO (smth) COM_FORWARD_IMachine_GETTER_MediumAttachments_TO (smth) COM_FORWARD_IMachine_GETTER_USBController_TO (smth) COM_FORWARD_IMachine_GETTER_AudioAdapter_TO (smth) COM_FORWARD_IMachine_GETTER_StorageControllers_TO (smth) COM_FORWARD_IMachine_GETTER_SettingsFilePath_TO (smth) COM_FORWARD_IMachine_GETTER_SettingsModified_TO (smth) COM_FORWARD_IMachine_GETTER_SessionState_TO (smth) COM_FORWARD_IMachine_GETTER_SessionType_TO (smth) COM_FORWARD_IMachine_GETTER_SessionPid_TO (smth) COM_FORWARD_IMachine_GETTER_State_TO (smth) COM_FORWARD_IMachine_GETTER_LastStateChange_TO (smth) COM_FORWARD_IMachine_GETTER_StateFilePath_TO (smth) COM_FORWARD_IMachine_GETTER_LogFolder_TO (smth) COM_FORWARD_IMachine_GETTER_CurrentSnapshot_TO (smth) COM_FORWARD_IMachine_GETTER_SnapshotCount_TO (smth) COM_FORWARD_IMachine_GETTER_CurrentStateModified_TO (smth) COM_FORWARD_IMachine_GETTER_SharedFolders_TO (smth) COM_FORWARD_IMachine_GETTER_ClipboardMode_TO (smth) COM_FORWARD_IMachine_SETTER_ClipboardMode_TO (smth) COM_FORWARD_IMachine_GETTER_GuestPropertyNotificationPatterns_TO (smth) COM_FORWARD_IMachine_SETTER_GuestPropertyNotificationPatterns_TO (smth) COM_FORWARD_IMachine_GETTER_TeleporterEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_TeleporterEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_TeleporterPort_TO (smth) COM_FORWARD_IMachine_SETTER_TeleporterPort_TO (smth) COM_FORWARD_IMachine_GETTER_TeleporterAddress_TO (smth) COM_FORWARD_IMachine_SETTER_TeleporterAddress_TO (smth) COM_FORWARD_IMachine_GETTER_TeleporterPassword_TO (smth) COM_FORWARD_IMachine_SETTER_TeleporterPassword_TO (smth) COM_FORWARD_IMachine_SetBootOrder_TO (smth) COM_FORWARD_IMachine_GetBootOrder_TO (smth) COM_FORWARD_IMachine_AttachDevice_TO (smth) COM_FORWARD_IMachine_DetachDevice_TO (smth) COM_FORWARD_IMachine_PassthroughDevice_TO (smth) COM_FORWARD_IMachine_MountMedium_TO (smth) COM_FORWARD_IMachine_GetMedium_TO (smth) COM_FORWARD_IMachine_GetMediumAttachmentsOfController_TO (smth) COM_FORWARD_IMachine_GetMediumAttachment_TO (smth) COM_FORWARD_IMachine_GetNetworkAdapter_TO (smth) COM_FORWARD_IMachine_AddStorageController_TO (smth) COM_FORWARD_IMachine_GetStorageControllerByName_TO (smth) COM_FORWARD_IMachine_GetStorageControllerByInstance_TO (smth) COM_FORWARD_IMachine_RemoveStorageController_TO (smth) COM_FORWARD_IMachine_GetSerialPort_TO (smth) COM_FORWARD_IMachine_GetParallelPort_TO (smth) COM_FORWARD_IMachine_GetExtraDataKeys_TO (smth) COM_FORWARD_IMachine_GetExtraData_TO (smth) COM_FORWARD_IMachine_SetExtraData_TO (smth) COM_FORWARD_IMachine_GetCpuProperty_TO (smth) COM_FORWARD_IMachine_SetCpuProperty_TO (smth) COM_FORWARD_IMachine_GetCpuIdLeaf_TO (smth) COM_FORWARD_IMachine_SetCpuIdLeaf_TO (smth) COM_FORWARD_IMachine_RemoveCpuIdLeaf_TO (smth) COM_FORWARD_IMachine_RemoveAllCpuIdLeafs_TO (smth) COM_FORWARD_IMachine_GetHWVirtExProperty_TO (smth) COM_FORWARD_IMachine_SetHWVirtExProperty_TO (smth) COM_FORWARD_IMachine_SaveSettings_TO (smth) COM_FORWARD_IMachine_DiscardSettings_TO (smth) COM_FORWARD_IMachine_DeleteSettings_TO (smth) COM_FORWARD_IMachine_Export_TO (smth) COM_FORWARD_IMachine_GetSnapshot_TO (smth) COM_FORWARD_IMachine_FindSnapshot_TO (smth) COM_FORWARD_IMachine_SetCurrentSnapshot_TO (smth) COM_FORWARD_IMachine_CreateSharedFolder_TO (smth) COM_FORWARD_IMachine_RemoveSharedFolder_TO (smth) COM_FORWARD_IMachine_CanShowConsoleWindow_TO (smth) COM_FORWARD_IMachine_ShowConsoleWindow_TO (smth) COM_FORWARD_IMachine_GetGuestProperty_TO (smth) COM_FORWARD_IMachine_GetGuestPropertyValue_TO (smth) COM_FORWARD_IMachine_GetGuestPropertyTimestamp_TO (smth) COM_FORWARD_IMachine_SetGuestProperty_TO (smth) COM_FORWARD_IMachine_SetGuestPropertyValue_TO (smth) COM_FORWARD_IMachine_EnumerateGuestProperties_TO (smth) COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO (smth) COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO (smth) COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO (smth) COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO (smth) 
#define COM_FORWARD_IMachine_TO_OBJ(obj) COM_FORWARD_IMachine_TO ((obj)->)
#define COM_FORWARD_IMachine_TO_BASE(base) COM_FORWARD_IMachine_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnMousePointerShapeChange_TO(smth) HRESULT STDMETHODCALLTYPE OnMousePointerShapeChange (BOOL aVisible, BOOL aAlpha, ULONG aXHot, ULONG aYHot, ULONG aWidth, ULONG aHeight, BYTE * aShape) { return smth OnMousePointerShapeChange (aVisible, aAlpha, aXHot, aYHot, aWidth, aHeight, aShape); }
#define COM_FORWARD_IConsoleCallback_OnMousePointerShapeChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnMousePointerShapeChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnMousePointerShapeChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnMousePointerShapeChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnMouseCapabilityChange_TO(smth) HRESULT STDMETHODCALLTYPE OnMouseCapabilityChange (BOOL aSupportsAbsolute, BOOL aNeedsHostCursor) { return smth OnMouseCapabilityChange (aSupportsAbsolute, aNeedsHostCursor); }
#define COM_FORWARD_IConsoleCallback_OnMouseCapabilityChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnMouseCapabilityChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnMouseCapabilityChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnMouseCapabilityChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnKeyboardLedsChange_TO(smth) HRESULT STDMETHODCALLTYPE OnKeyboardLedsChange (BOOL aNumLock, BOOL aCapsLock, BOOL aScrollLock) { return smth OnKeyboardLedsChange (aNumLock, aCapsLock, aScrollLock); }
#define COM_FORWARD_IConsoleCallback_OnKeyboardLedsChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnKeyboardLedsChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnKeyboardLedsChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnKeyboardLedsChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnStateChange_TO(smth) HRESULT STDMETHODCALLTYPE OnStateChange (MachineState aState) { return smth OnStateChange (aState); }
#define COM_FORWARD_IConsoleCallback_OnStateChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnStateChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnStateChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnStateChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnAdditionsStateChange_TO(smth) HRESULT STDMETHODCALLTYPE OnAdditionsStateChange() { return smth OnAdditionsStateChange(); }
#define COM_FORWARD_IConsoleCallback_OnAdditionsStateChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnAdditionsStateChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnAdditionsStateChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnAdditionsStateChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnNetworkAdapterChange_TO(smth) HRESULT STDMETHODCALLTYPE OnNetworkAdapterChange (INetworkAdapter * aNetworkAdapter) { return smth OnNetworkAdapterChange (aNetworkAdapter); }
#define COM_FORWARD_IConsoleCallback_OnNetworkAdapterChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnNetworkAdapterChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnNetworkAdapterChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnNetworkAdapterChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnSerialPortChange_TO(smth) HRESULT STDMETHODCALLTYPE OnSerialPortChange (ISerialPort * aSerialPort) { return smth OnSerialPortChange (aSerialPort); }
#define COM_FORWARD_IConsoleCallback_OnSerialPortChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnSerialPortChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnSerialPortChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnSerialPortChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnParallelPortChange_TO(smth) HRESULT STDMETHODCALLTYPE OnParallelPortChange (IParallelPort * aParallelPort) { return smth OnParallelPortChange (aParallelPort); }
#define COM_FORWARD_IConsoleCallback_OnParallelPortChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnParallelPortChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnParallelPortChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnParallelPortChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnStorageControllerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnStorageControllerChange() { return smth OnStorageControllerChange(); }
#define COM_FORWARD_IConsoleCallback_OnStorageControllerChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnStorageControllerChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnStorageControllerChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnStorageControllerChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnMediumChange_TO(smth) HRESULT STDMETHODCALLTYPE OnMediumChange (IMediumAttachment * aMediumAttachment) { return smth OnMediumChange (aMediumAttachment); }
#define COM_FORWARD_IConsoleCallback_OnMediumChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnMediumChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnMediumChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnMediumChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnVRDPServerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnVRDPServerChange() { return smth OnVRDPServerChange(); }
#define COM_FORWARD_IConsoleCallback_OnVRDPServerChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnVRDPServerChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnVRDPServerChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnVRDPServerChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnRemoteDisplayInfoChange_TO(smth) HRESULT STDMETHODCALLTYPE OnRemoteDisplayInfoChange() { return smth OnRemoteDisplayInfoChange(); }
#define COM_FORWARD_IConsoleCallback_OnRemoteDisplayInfoChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnRemoteDisplayInfoChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnRemoteDisplayInfoChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnRemoteDisplayInfoChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnUSBControllerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnUSBControllerChange() { return smth OnUSBControllerChange(); }
#define COM_FORWARD_IConsoleCallback_OnUSBControllerChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnUSBControllerChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnUSBControllerChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnUSBControllerChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnUSBDeviceStateChange_TO(smth) HRESULT STDMETHODCALLTYPE OnUSBDeviceStateChange (IUSBDevice * aDevice, BOOL aAttached, IVirtualBoxErrorInfo * aError) { return smth OnUSBDeviceStateChange (aDevice, aAttached, aError); }
#define COM_FORWARD_IConsoleCallback_OnUSBDeviceStateChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnUSBDeviceStateChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnUSBDeviceStateChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnUSBDeviceStateChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnSharedFolderChange_TO(smth) HRESULT STDMETHODCALLTYPE OnSharedFolderChange (Scope aScope) { return smth OnSharedFolderChange (aScope); }
#define COM_FORWARD_IConsoleCallback_OnSharedFolderChange_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnSharedFolderChange_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnSharedFolderChange_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnSharedFolderChange_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnRuntimeError_TO(smth) HRESULT STDMETHODCALLTYPE OnRuntimeError (BOOL aFatal, BSTR aId, BSTR aMessage) { return smth OnRuntimeError (aFatal, aId, aMessage); }
#define COM_FORWARD_IConsoleCallback_OnRuntimeError_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnRuntimeError_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnRuntimeError_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnRuntimeError_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnCanShowWindow_TO(smth) HRESULT STDMETHODCALLTYPE OnCanShowWindow (BOOL * aCanShow) { return smth OnCanShowWindow (aCanShow); }
#define COM_FORWARD_IConsoleCallback_OnCanShowWindow_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnCanShowWindow_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnCanShowWindow_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnCanShowWindow_TO (base::)
#define COM_FORWARD_IConsoleCallback_OnShowWindow_TO(smth) HRESULT STDMETHODCALLTYPE OnShowWindow (ULONG64 * aWinId) { return smth OnShowWindow (aWinId); }
#define COM_FORWARD_IConsoleCallback_OnShowWindow_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_OnShowWindow_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_OnShowWindow_TO_BASE(base) COM_FORWARD_IConsoleCallback_OnShowWindow_TO (base::)
#define COM_FORWARD_IConsoleCallback_TO(smth) COM_FORWARD_IConsoleCallback_OnMousePointerShapeChange_TO (smth) COM_FORWARD_IConsoleCallback_OnMouseCapabilityChange_TO (smth) COM_FORWARD_IConsoleCallback_OnKeyboardLedsChange_TO (smth) COM_FORWARD_IConsoleCallback_OnStateChange_TO (smth) COM_FORWARD_IConsoleCallback_OnAdditionsStateChange_TO (smth) COM_FORWARD_IConsoleCallback_OnNetworkAdapterChange_TO (smth) COM_FORWARD_IConsoleCallback_OnSerialPortChange_TO (smth) COM_FORWARD_IConsoleCallback_OnParallelPortChange_TO (smth) COM_FORWARD_IConsoleCallback_OnStorageControllerChange_TO (smth) COM_FORWARD_IConsoleCallback_OnMediumChange_TO (smth) COM_FORWARD_IConsoleCallback_OnVRDPServerChange_TO (smth) COM_FORWARD_IConsoleCallback_OnRemoteDisplayInfoChange_TO (smth) COM_FORWARD_IConsoleCallback_OnUSBControllerChange_TO (smth) COM_FORWARD_IConsoleCallback_OnUSBDeviceStateChange_TO (smth) COM_FORWARD_IConsoleCallback_OnSharedFolderChange_TO (smth) COM_FORWARD_IConsoleCallback_OnRuntimeError_TO (smth) COM_FORWARD_IConsoleCallback_OnCanShowWindow_TO (smth) COM_FORWARD_IConsoleCallback_OnShowWindow_TO (smth) 
#define COM_FORWARD_IConsoleCallback_TO_OBJ(obj) COM_FORWARD_IConsoleCallback_TO ((obj)->)
#define COM_FORWARD_IConsoleCallback_TO_BASE(base) COM_FORWARD_IConsoleCallback_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Active_TO(smth) HRESULT STDMETHODCALLTYPE get_Active (BOOL * aActive) { return smth get_Active (aActive); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Active_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_Active_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Active_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_Active_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Port_TO(smth) HRESULT STDMETHODCALLTYPE get_Port (LONG * aPort) { return smth get_Port (aPort); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Port_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_Port_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Port_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_Port_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_NumberOfClients_TO(smth) HRESULT STDMETHODCALLTYPE get_NumberOfClients (ULONG * aNumberOfClients) { return smth get_NumberOfClients (aNumberOfClients); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_NumberOfClients_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_NumberOfClients_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_NumberOfClients_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_NumberOfClients_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BeginTime_TO(smth) HRESULT STDMETHODCALLTYPE get_BeginTime (LONG64 * aBeginTime) { return smth get_BeginTime (aBeginTime); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BeginTime_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_BeginTime_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BeginTime_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_BeginTime_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_EndTime_TO(smth) HRESULT STDMETHODCALLTYPE get_EndTime (LONG64 * aEndTime) { return smth get_EndTime (aEndTime); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_EndTime_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_EndTime_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_EndTime_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_EndTime_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSent_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesSent (ULONG64 * aBytesSent) { return smth get_BytesSent (aBytesSent); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSent_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSent_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSent_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSent_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSentTotal_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesSentTotal (ULONG64 * aBytesSentTotal) { return smth get_BytesSentTotal (aBytesSentTotal); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSentTotal_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSentTotal_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSentTotal_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSentTotal_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceived_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesReceived (ULONG64 * aBytesReceived) { return smth get_BytesReceived (aBytesReceived); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceived_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceived_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceived_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceived_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceivedTotal_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesReceivedTotal (ULONG64 * aBytesReceivedTotal) { return smth get_BytesReceivedTotal (aBytesReceivedTotal); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceivedTotal_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceivedTotal_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceivedTotal_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceivedTotal_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_User_TO(smth) HRESULT STDMETHODCALLTYPE get_User (BSTR * aUser) { return smth get_User (aUser); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_User_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_User_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_User_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_User_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Domain_TO(smth) HRESULT STDMETHODCALLTYPE get_Domain (BSTR * aDomain) { return smth get_Domain (aDomain); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Domain_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_Domain_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_Domain_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_Domain_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientName_TO(smth) HRESULT STDMETHODCALLTYPE get_ClientName (BSTR * aClientName) { return smth get_ClientName (aClientName); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientName_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientName_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientName_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientName_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientIP_TO(smth) HRESULT STDMETHODCALLTYPE get_ClientIP (BSTR * aClientIP) { return smth get_ClientIP (aClientIP); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientIP_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientIP_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientIP_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientIP_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_ClientVersion (ULONG * aClientVersion) { return smth get_ClientVersion (aClientVersion); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientVersion_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientVersion_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientVersion_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientVersion_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_EncryptionStyle_TO(smth) HRESULT STDMETHODCALLTYPE get_EncryptionStyle (ULONG * aEncryptionStyle) { return smth get_EncryptionStyle (aEncryptionStyle); }
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_EncryptionStyle_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_GETTER_EncryptionStyle_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_GETTER_EncryptionStyle_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_GETTER_EncryptionStyle_TO (base::)
#define COM_FORWARD_IRemoteDisplayInfo_TO(smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_Active_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_Port_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_NumberOfClients_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_BeginTime_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_EndTime_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSent_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesSentTotal_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceived_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_BytesReceivedTotal_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_User_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_Domain_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientName_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientIP_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_ClientVersion_TO (smth) COM_FORWARD_IRemoteDisplayInfo_GETTER_EncryptionStyle_TO (smth) 
#define COM_FORWARD_IRemoteDisplayInfo_TO_OBJ(obj) COM_FORWARD_IRemoteDisplayInfo_TO ((obj)->)
#define COM_FORWARD_IRemoteDisplayInfo_TO_BASE(base) COM_FORWARD_IRemoteDisplayInfo_TO (base::)
#define COM_FORWARD_IConsole_GETTER_Machine_TO(smth) HRESULT STDMETHODCALLTYPE get_Machine (IMachine * * aMachine) { return smth get_Machine (aMachine); }
#define COM_FORWARD_IConsole_GETTER_Machine_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_Machine_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_Machine_TO_BASE(base) COM_FORWARD_IConsole_GETTER_Machine_TO (base::)
#define COM_FORWARD_IConsole_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (MachineState * aState) { return smth get_State (aState); }
#define COM_FORWARD_IConsole_GETTER_State_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_State_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_State_TO_BASE(base) COM_FORWARD_IConsole_GETTER_State_TO (base::)
#define COM_FORWARD_IConsole_GETTER_Guest_TO(smth) HRESULT STDMETHODCALLTYPE get_Guest (IGuest * * aGuest) { return smth get_Guest (aGuest); }
#define COM_FORWARD_IConsole_GETTER_Guest_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_Guest_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_Guest_TO_BASE(base) COM_FORWARD_IConsole_GETTER_Guest_TO (base::)
#define COM_FORWARD_IConsole_GETTER_Keyboard_TO(smth) HRESULT STDMETHODCALLTYPE get_Keyboard (IKeyboard * * aKeyboard) { return smth get_Keyboard (aKeyboard); }
#define COM_FORWARD_IConsole_GETTER_Keyboard_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_Keyboard_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_Keyboard_TO_BASE(base) COM_FORWARD_IConsole_GETTER_Keyboard_TO (base::)
#define COM_FORWARD_IConsole_GETTER_Mouse_TO(smth) HRESULT STDMETHODCALLTYPE get_Mouse (IMouse * * aMouse) { return smth get_Mouse (aMouse); }
#define COM_FORWARD_IConsole_GETTER_Mouse_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_Mouse_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_Mouse_TO_BASE(base) COM_FORWARD_IConsole_GETTER_Mouse_TO (base::)
#define COM_FORWARD_IConsole_GETTER_Display_TO(smth) HRESULT STDMETHODCALLTYPE get_Display (IDisplay * * aDisplay) { return smth get_Display (aDisplay); }
#define COM_FORWARD_IConsole_GETTER_Display_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_Display_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_Display_TO_BASE(base) COM_FORWARD_IConsole_GETTER_Display_TO (base::)
#define COM_FORWARD_IConsole_GETTER_Debugger_TO(smth) HRESULT STDMETHODCALLTYPE get_Debugger (IMachineDebugger * * aDebugger) { return smth get_Debugger (aDebugger); }
#define COM_FORWARD_IConsole_GETTER_Debugger_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_Debugger_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_Debugger_TO_BASE(base) COM_FORWARD_IConsole_GETTER_Debugger_TO (base::)
#define COM_FORWARD_IConsole_GETTER_USBDevices_TO(smth) HRESULT STDMETHODCALLTYPE get_USBDevices (SAFEARRAY * * aUSBDevices) { return smth get_USBDevices (aUSBDevices); }
#define COM_FORWARD_IConsole_GETTER_USBDevices_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_USBDevices_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_USBDevices_TO_BASE(base) COM_FORWARD_IConsole_GETTER_USBDevices_TO (base::)
#define COM_FORWARD_IConsole_GETTER_RemoteUSBDevices_TO(smth) HRESULT STDMETHODCALLTYPE get_RemoteUSBDevices (SAFEARRAY * * aRemoteUSBDevices) { return smth get_RemoteUSBDevices (aRemoteUSBDevices); }
#define COM_FORWARD_IConsole_GETTER_RemoteUSBDevices_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_RemoteUSBDevices_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_RemoteUSBDevices_TO_BASE(base) COM_FORWARD_IConsole_GETTER_RemoteUSBDevices_TO (base::)
#define COM_FORWARD_IConsole_GETTER_SharedFolders_TO(smth) HRESULT STDMETHODCALLTYPE get_SharedFolders (SAFEARRAY * * aSharedFolders) { return smth get_SharedFolders (aSharedFolders); }
#define COM_FORWARD_IConsole_GETTER_SharedFolders_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_SharedFolders_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_SharedFolders_TO_BASE(base) COM_FORWARD_IConsole_GETTER_SharedFolders_TO (base::)
#define COM_FORWARD_IConsole_GETTER_RemoteDisplayInfo_TO(smth) HRESULT STDMETHODCALLTYPE get_RemoteDisplayInfo (IRemoteDisplayInfo * * aRemoteDisplayInfo) { return smth get_RemoteDisplayInfo (aRemoteDisplayInfo); }
#define COM_FORWARD_IConsole_GETTER_RemoteDisplayInfo_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_RemoteDisplayInfo_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_RemoteDisplayInfo_TO_BASE(base) COM_FORWARD_IConsole_GETTER_RemoteDisplayInfo_TO (base::)
#define COM_FORWARD_IConsole_PowerUp_TO(smth) HRESULT STDMETHODCALLTYPE PowerUp (IProgress * * aProgress) { return smth PowerUp (aProgress); }
#define COM_FORWARD_IConsole_PowerUp_TO_OBJ(obj) COM_FORWARD_IConsole_PowerUp_TO ((obj)->)
#define COM_FORWARD_IConsole_PowerUp_TO_BASE(base) COM_FORWARD_IConsole_PowerUp_TO (base::)
#define COM_FORWARD_IConsole_PowerUpPaused_TO(smth) HRESULT STDMETHODCALLTYPE PowerUpPaused (IProgress * * aProgress) { return smth PowerUpPaused (aProgress); }
#define COM_FORWARD_IConsole_PowerUpPaused_TO_OBJ(obj) COM_FORWARD_IConsole_PowerUpPaused_TO ((obj)->)
#define COM_FORWARD_IConsole_PowerUpPaused_TO_BASE(base) COM_FORWARD_IConsole_PowerUpPaused_TO (base::)
#define COM_FORWARD_IConsole_PowerDown_TO(smth) HRESULT STDMETHODCALLTYPE PowerDown (IProgress * * aProgress) { return smth PowerDown (aProgress); }
#define COM_FORWARD_IConsole_PowerDown_TO_OBJ(obj) COM_FORWARD_IConsole_PowerDown_TO ((obj)->)
#define COM_FORWARD_IConsole_PowerDown_TO_BASE(base) COM_FORWARD_IConsole_PowerDown_TO (base::)
#define COM_FORWARD_IConsole_Reset_TO(smth) HRESULT STDMETHODCALLTYPE Reset() { return smth Reset(); }
#define COM_FORWARD_IConsole_Reset_TO_OBJ(obj) COM_FORWARD_IConsole_Reset_TO ((obj)->)
#define COM_FORWARD_IConsole_Reset_TO_BASE(base) COM_FORWARD_IConsole_Reset_TO (base::)
#define COM_FORWARD_IConsole_Pause_TO(smth) HRESULT STDMETHODCALLTYPE Pause() { return smth Pause(); }
#define COM_FORWARD_IConsole_Pause_TO_OBJ(obj) COM_FORWARD_IConsole_Pause_TO ((obj)->)
#define COM_FORWARD_IConsole_Pause_TO_BASE(base) COM_FORWARD_IConsole_Pause_TO (base::)
#define COM_FORWARD_IConsole_Resume_TO(smth) HRESULT STDMETHODCALLTYPE Resume() { return smth Resume(); }
#define COM_FORWARD_IConsole_Resume_TO_OBJ(obj) COM_FORWARD_IConsole_Resume_TO ((obj)->)
#define COM_FORWARD_IConsole_Resume_TO_BASE(base) COM_FORWARD_IConsole_Resume_TO (base::)
#define COM_FORWARD_IConsole_PowerButton_TO(smth) HRESULT STDMETHODCALLTYPE PowerButton() { return smth PowerButton(); }
#define COM_FORWARD_IConsole_PowerButton_TO_OBJ(obj) COM_FORWARD_IConsole_PowerButton_TO ((obj)->)
#define COM_FORWARD_IConsole_PowerButton_TO_BASE(base) COM_FORWARD_IConsole_PowerButton_TO (base::)
#define COM_FORWARD_IConsole_SleepButton_TO(smth) HRESULT STDMETHODCALLTYPE SleepButton() { return smth SleepButton(); }
#define COM_FORWARD_IConsole_SleepButton_TO_OBJ(obj) COM_FORWARD_IConsole_SleepButton_TO ((obj)->)
#define COM_FORWARD_IConsole_SleepButton_TO_BASE(base) COM_FORWARD_IConsole_SleepButton_TO (base::)
#define COM_FORWARD_IConsole_GetPowerButtonHandled_TO(smth) HRESULT STDMETHODCALLTYPE GetPowerButtonHandled (BOOL * aHandled) { return smth GetPowerButtonHandled (aHandled); }
#define COM_FORWARD_IConsole_GetPowerButtonHandled_TO_OBJ(obj) COM_FORWARD_IConsole_GetPowerButtonHandled_TO ((obj)->)
#define COM_FORWARD_IConsole_GetPowerButtonHandled_TO_BASE(base) COM_FORWARD_IConsole_GetPowerButtonHandled_TO (base::)
#define COM_FORWARD_IConsole_GetGuestEnteredACPIMode_TO(smth) HRESULT STDMETHODCALLTYPE GetGuestEnteredACPIMode (BOOL * aEntered) { return smth GetGuestEnteredACPIMode (aEntered); }
#define COM_FORWARD_IConsole_GetGuestEnteredACPIMode_TO_OBJ(obj) COM_FORWARD_IConsole_GetGuestEnteredACPIMode_TO ((obj)->)
#define COM_FORWARD_IConsole_GetGuestEnteredACPIMode_TO_BASE(base) COM_FORWARD_IConsole_GetGuestEnteredACPIMode_TO (base::)
#define COM_FORWARD_IConsole_SaveState_TO(smth) HRESULT STDMETHODCALLTYPE SaveState (IProgress * * aProgress) { return smth SaveState (aProgress); }
#define COM_FORWARD_IConsole_SaveState_TO_OBJ(obj) COM_FORWARD_IConsole_SaveState_TO ((obj)->)
#define COM_FORWARD_IConsole_SaveState_TO_BASE(base) COM_FORWARD_IConsole_SaveState_TO (base::)
#define COM_FORWARD_IConsole_AdoptSavedState_TO(smth) HRESULT STDMETHODCALLTYPE AdoptSavedState (BSTR aSavedStateFile) { return smth AdoptSavedState (aSavedStateFile); }
#define COM_FORWARD_IConsole_AdoptSavedState_TO_OBJ(obj) COM_FORWARD_IConsole_AdoptSavedState_TO ((obj)->)
#define COM_FORWARD_IConsole_AdoptSavedState_TO_BASE(base) COM_FORWARD_IConsole_AdoptSavedState_TO (base::)
#define COM_FORWARD_IConsole_ForgetSavedState_TO(smth) HRESULT STDMETHODCALLTYPE ForgetSavedState (BOOL aRemove) { return smth ForgetSavedState (aRemove); }
#define COM_FORWARD_IConsole_ForgetSavedState_TO_OBJ(obj) COM_FORWARD_IConsole_ForgetSavedState_TO ((obj)->)
#define COM_FORWARD_IConsole_ForgetSavedState_TO_BASE(base) COM_FORWARD_IConsole_ForgetSavedState_TO (base::)
#define COM_FORWARD_IConsole_GetDeviceActivity_TO(smth) HRESULT STDMETHODCALLTYPE GetDeviceActivity (DeviceType aType, DeviceActivity * aActivity) { return smth GetDeviceActivity (aType, aActivity); }
#define COM_FORWARD_IConsole_GetDeviceActivity_TO_OBJ(obj) COM_FORWARD_IConsole_GetDeviceActivity_TO ((obj)->)
#define COM_FORWARD_IConsole_GetDeviceActivity_TO_BASE(base) COM_FORWARD_IConsole_GetDeviceActivity_TO (base::)
#define COM_FORWARD_IConsole_AttachUSBDevice_TO(smth) HRESULT STDMETHODCALLTYPE AttachUSBDevice (BSTR aId) { return smth AttachUSBDevice (aId); }
#define COM_FORWARD_IConsole_AttachUSBDevice_TO_OBJ(obj) COM_FORWARD_IConsole_AttachUSBDevice_TO ((obj)->)
#define COM_FORWARD_IConsole_AttachUSBDevice_TO_BASE(base) COM_FORWARD_IConsole_AttachUSBDevice_TO (base::)
#define COM_FORWARD_IConsole_DetachUSBDevice_TO(smth) HRESULT STDMETHODCALLTYPE DetachUSBDevice (BSTR aId, IUSBDevice * * aDevice) { return smth DetachUSBDevice (aId, aDevice); }
#define COM_FORWARD_IConsole_DetachUSBDevice_TO_OBJ(obj) COM_FORWARD_IConsole_DetachUSBDevice_TO ((obj)->)
#define COM_FORWARD_IConsole_DetachUSBDevice_TO_BASE(base) COM_FORWARD_IConsole_DetachUSBDevice_TO (base::)
#define COM_FORWARD_IConsole_FindUSBDeviceByAddress_TO(smth) HRESULT STDMETHODCALLTYPE FindUSBDeviceByAddress (BSTR aName, IUSBDevice * * aDevice) { return smth FindUSBDeviceByAddress (aName, aDevice); }
#define COM_FORWARD_IConsole_FindUSBDeviceByAddress_TO_OBJ(obj) COM_FORWARD_IConsole_FindUSBDeviceByAddress_TO ((obj)->)
#define COM_FORWARD_IConsole_FindUSBDeviceByAddress_TO_BASE(base) COM_FORWARD_IConsole_FindUSBDeviceByAddress_TO (base::)
#define COM_FORWARD_IConsole_FindUSBDeviceById_TO(smth) HRESULT STDMETHODCALLTYPE FindUSBDeviceById (BSTR aId, IUSBDevice * * aDevice) { return smth FindUSBDeviceById (aId, aDevice); }
#define COM_FORWARD_IConsole_FindUSBDeviceById_TO_OBJ(obj) COM_FORWARD_IConsole_FindUSBDeviceById_TO ((obj)->)
#define COM_FORWARD_IConsole_FindUSBDeviceById_TO_BASE(base) COM_FORWARD_IConsole_FindUSBDeviceById_TO (base::)
#define COM_FORWARD_IConsole_CreateSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE CreateSharedFolder (BSTR aName, BSTR aHostPath, BOOL aWritable) { return smth CreateSharedFolder (aName, aHostPath, aWritable); }
#define COM_FORWARD_IConsole_CreateSharedFolder_TO_OBJ(obj) COM_FORWARD_IConsole_CreateSharedFolder_TO ((obj)->)
#define COM_FORWARD_IConsole_CreateSharedFolder_TO_BASE(base) COM_FORWARD_IConsole_CreateSharedFolder_TO (base::)
#define COM_FORWARD_IConsole_RemoveSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE RemoveSharedFolder (BSTR aName) { return smth RemoveSharedFolder (aName); }
#define COM_FORWARD_IConsole_RemoveSharedFolder_TO_OBJ(obj) COM_FORWARD_IConsole_RemoveSharedFolder_TO ((obj)->)
#define COM_FORWARD_IConsole_RemoveSharedFolder_TO_BASE(base) COM_FORWARD_IConsole_RemoveSharedFolder_TO (base::)
#define COM_FORWARD_IConsole_TakeSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE TakeSnapshot (BSTR aName, BSTR aDescription, IProgress * * aProgress) { return smth TakeSnapshot (aName, aDescription, aProgress); }
#define COM_FORWARD_IConsole_TakeSnapshot_TO_OBJ(obj) COM_FORWARD_IConsole_TakeSnapshot_TO ((obj)->)
#define COM_FORWARD_IConsole_TakeSnapshot_TO_BASE(base) COM_FORWARD_IConsole_TakeSnapshot_TO (base::)
#define COM_FORWARD_IConsole_DeleteSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE DeleteSnapshot (BSTR aId, IProgress * * aProgress) { return smth DeleteSnapshot (aId, aProgress); }
#define COM_FORWARD_IConsole_DeleteSnapshot_TO_OBJ(obj) COM_FORWARD_IConsole_DeleteSnapshot_TO ((obj)->)
#define COM_FORWARD_IConsole_DeleteSnapshot_TO_BASE(base) COM_FORWARD_IConsole_DeleteSnapshot_TO (base::)
#define COM_FORWARD_IConsole_RestoreSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE RestoreSnapshot (ISnapshot * aSnapshot, IProgress * * aProgress) { return smth RestoreSnapshot (aSnapshot, aProgress); }
#define COM_FORWARD_IConsole_RestoreSnapshot_TO_OBJ(obj) COM_FORWARD_IConsole_RestoreSnapshot_TO ((obj)->)
#define COM_FORWARD_IConsole_RestoreSnapshot_TO_BASE(base) COM_FORWARD_IConsole_RestoreSnapshot_TO (base::)
#define COM_FORWARD_IConsole_Teleport_TO(smth) HRESULT STDMETHODCALLTYPE Teleport (BSTR aHostname, ULONG aTcpport, BSTR aPassword, ULONG aMaxDowntime, IProgress * * aProgress) { return smth Teleport (aHostname, aTcpport, aPassword, aMaxDowntime, aProgress); }
#define COM_FORWARD_IConsole_Teleport_TO_OBJ(obj) COM_FORWARD_IConsole_Teleport_TO ((obj)->)
#define COM_FORWARD_IConsole_Teleport_TO_BASE(base) COM_FORWARD_IConsole_Teleport_TO (base::)
#define COM_FORWARD_IConsole_RegisterCallback_TO(smth) HRESULT STDMETHODCALLTYPE RegisterCallback (IConsoleCallback * aCallback) { return smth RegisterCallback (aCallback); }
#define COM_FORWARD_IConsole_RegisterCallback_TO_OBJ(obj) COM_FORWARD_IConsole_RegisterCallback_TO ((obj)->)
#define COM_FORWARD_IConsole_RegisterCallback_TO_BASE(base) COM_FORWARD_IConsole_RegisterCallback_TO (base::)
#define COM_FORWARD_IConsole_UnregisterCallback_TO(smth) HRESULT STDMETHODCALLTYPE UnregisterCallback (IConsoleCallback * aCallback) { return smth UnregisterCallback (aCallback); }
#define COM_FORWARD_IConsole_UnregisterCallback_TO_OBJ(obj) COM_FORWARD_IConsole_UnregisterCallback_TO ((obj)->)
#define COM_FORWARD_IConsole_UnregisterCallback_TO_BASE(base) COM_FORWARD_IConsole_UnregisterCallback_TO (base::)
#define COM_FORWARD_IConsole_TO(smth) COM_FORWARD_IConsole_GETTER_Machine_TO (smth) COM_FORWARD_IConsole_GETTER_State_TO (smth) COM_FORWARD_IConsole_GETTER_Guest_TO (smth) COM_FORWARD_IConsole_GETTER_Keyboard_TO (smth) COM_FORWARD_IConsole_GETTER_Mouse_TO (smth) COM_FORWARD_IConsole_GETTER_Display_TO (smth) COM_FORWARD_IConsole_GETTER_Debugger_TO (smth) COM_FORWARD_IConsole_GETTER_USBDevices_TO (smth) COM_FORWARD_IConsole_GETTER_RemoteUSBDevices_TO (smth) COM_FORWARD_IConsole_GETTER_SharedFolders_TO (smth) COM_FORWARD_IConsole_GETTER_RemoteDisplayInfo_TO (smth) COM_FORWARD_IConsole_PowerUp_TO (smth) COM_FORWARD_IConsole_PowerUpPaused_TO (smth) COM_FORWARD_IConsole_PowerDown_TO (smth) COM_FORWARD_IConsole_Reset_TO (smth) COM_FORWARD_IConsole_Pause_TO (smth) COM_FORWARD_IConsole_Resume_TO (smth) COM_FORWARD_IConsole_PowerButton_TO (smth) COM_FORWARD_IConsole_SleepButton_TO (smth) COM_FORWARD_IConsole_GetPowerButtonHandled_TO (smth) COM_FORWARD_IConsole_GetGuestEnteredACPIMode_TO (smth) COM_FORWARD_IConsole_SaveState_TO (smth) COM_FORWARD_IConsole_AdoptSavedState_TO (smth) COM_FORWARD_IConsole_ForgetSavedState_TO (smth) COM_FORWARD_IConsole_GetDeviceActivity_TO (smth) COM_FORWARD_IConsole_AttachUSBDevice_TO (smth) COM_FORWARD_IConsole_DetachUSBDevice_TO (smth) COM_FORWARD_IConsole_FindUSBDeviceByAddress_TO (smth) COM_FORWARD_IConsole_FindUSBDeviceById_TO (smth) COM_FORWARD_IConsole_CreateSharedFolder_TO (smth) COM_FORWARD_IConsole_RemoveSharedFolder_TO (smth) COM_FORWARD_IConsole_TakeSnapshot_TO (smth) COM_FORWARD_IConsole_DeleteSnapshot_TO (smth) COM_FORWARD_IConsole_RestoreSnapshot_TO (smth) COM_FORWARD_IConsole_Teleport_TO (smth) COM_FORWARD_IConsole_RegisterCallback_TO (smth) COM_FORWARD_IConsole_UnregisterCallback_TO (smth) 
#define COM_FORWARD_IConsole_TO_OBJ(obj) COM_FORWARD_IConsole_TO ((obj)->)
#define COM_FORWARD_IConsole_TO_BASE(base) COM_FORWARD_IConsole_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_Name_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_Name_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_Id_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_Id_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_NetworkName_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkName (BSTR * aNetworkName) { return smth get_NetworkName (aNetworkName); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_NetworkName_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_NetworkName_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_NetworkName_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_NetworkName_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_DhcpEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_DhcpEnabled (BOOL * aDhcpEnabled) { return smth get_DhcpEnabled (aDhcpEnabled); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_DhcpEnabled_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_DhcpEnabled_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_DhcpEnabled_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_DhcpEnabled_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_IPAddress (BSTR * aIPAddress) { return smth get_IPAddress (aIPAddress); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPAddress_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_IPAddress_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPAddress_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_IPAddress_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_NetworkMask_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkMask (BSTR * aNetworkMask) { return smth get_NetworkMask (aNetworkMask); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_NetworkMask_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_NetworkMask_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_NetworkMask_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_NetworkMask_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Supported_TO(smth) HRESULT STDMETHODCALLTYPE get_IPV6Supported (BOOL * aIPV6Supported) { return smth get_IPV6Supported (aIPV6Supported); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Supported_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Supported_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Supported_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Supported_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Address_TO(smth) HRESULT STDMETHODCALLTYPE get_IPV6Address (BSTR * aIPV6Address) { return smth get_IPV6Address (aIPV6Address); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Address_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Address_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Address_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Address_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6NetworkMaskPrefixLength_TO(smth) HRESULT STDMETHODCALLTYPE get_IPV6NetworkMaskPrefixLength (ULONG * aIPV6NetworkMaskPrefixLength) { return smth get_IPV6NetworkMaskPrefixLength (aIPV6NetworkMaskPrefixLength); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6NetworkMaskPrefixLength_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6NetworkMaskPrefixLength_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_IPV6NetworkMaskPrefixLength_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6NetworkMaskPrefixLength_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_HardwareAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_HardwareAddress (BSTR * aHardwareAddress) { return smth get_HardwareAddress (aHardwareAddress); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_HardwareAddress_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_HardwareAddress_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_HardwareAddress_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_HardwareAddress_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_MediumType_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumType (HostNetworkInterfaceMediumType * aMediumType) { return smth get_MediumType (aMediumType); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_MediumType_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_MediumType_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_MediumType_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_MediumType_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_Status_TO(smth) HRESULT STDMETHODCALLTYPE get_Status (HostNetworkInterfaceStatus * aStatus) { return smth get_Status (aStatus); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_Status_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_Status_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_Status_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_Status_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_GETTER_InterfaceType_TO(smth) HRESULT STDMETHODCALLTYPE get_InterfaceType (HostNetworkInterfaceType * aInterfaceType) { return smth get_InterfaceType (aInterfaceType); }
#define COM_FORWARD_IHostNetworkInterface_GETTER_InterfaceType_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_GETTER_InterfaceType_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_GETTER_InterfaceType_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_GETTER_InterfaceType_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfig_TO(smth) HRESULT STDMETHODCALLTYPE EnableStaticIpConfig (BSTR aIPAddress, BSTR aNetworkMask) { return smth EnableStaticIpConfig (aIPAddress, aNetworkMask); }
#define COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfig_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfig_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfig_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfig_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfigV6_TO(smth) HRESULT STDMETHODCALLTYPE EnableStaticIpConfigV6 (BSTR aIPV6Address, ULONG aIPV6NetworkMaskPrefixLength) { return smth EnableStaticIpConfigV6 (aIPV6Address, aIPV6NetworkMaskPrefixLength); }
#define COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfigV6_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfigV6_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfigV6_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfigV6_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_EnableDynamicIpConfig_TO(smth) HRESULT STDMETHODCALLTYPE EnableDynamicIpConfig() { return smth EnableDynamicIpConfig(); }
#define COM_FORWARD_IHostNetworkInterface_EnableDynamicIpConfig_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_EnableDynamicIpConfig_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_EnableDynamicIpConfig_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_EnableDynamicIpConfig_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_DhcpRediscover_TO(smth) HRESULT STDMETHODCALLTYPE DhcpRediscover() { return smth DhcpRediscover(); }
#define COM_FORWARD_IHostNetworkInterface_DhcpRediscover_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_DhcpRediscover_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_DhcpRediscover_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_DhcpRediscover_TO (base::)
#define COM_FORWARD_IHostNetworkInterface_TO(smth) COM_FORWARD_IHostNetworkInterface_GETTER_Name_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_Id_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_NetworkName_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_DhcpEnabled_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_IPAddress_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_NetworkMask_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Supported_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6Address_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_IPV6NetworkMaskPrefixLength_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_HardwareAddress_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_MediumType_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_Status_TO (smth) COM_FORWARD_IHostNetworkInterface_GETTER_InterfaceType_TO (smth) COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfig_TO (smth) COM_FORWARD_IHostNetworkInterface_EnableStaticIpConfigV6_TO (smth) COM_FORWARD_IHostNetworkInterface_EnableDynamicIpConfig_TO (smth) COM_FORWARD_IHostNetworkInterface_DhcpRediscover_TO (smth) 
#define COM_FORWARD_IHostNetworkInterface_TO_OBJ(obj) COM_FORWARD_IHostNetworkInterface_TO ((obj)->)
#define COM_FORWARD_IHostNetworkInterface_TO_BASE(base) COM_FORWARD_IHostNetworkInterface_TO (base::)
#define COM_FORWARD_IHost_GETTER_DVDDrives_TO(smth) HRESULT STDMETHODCALLTYPE get_DVDDrives (SAFEARRAY * * aDVDDrives) { return smth get_DVDDrives (aDVDDrives); }
#define COM_FORWARD_IHost_GETTER_DVDDrives_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_DVDDrives_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_DVDDrives_TO_BASE(base) COM_FORWARD_IHost_GETTER_DVDDrives_TO (base::)
#define COM_FORWARD_IHost_GETTER_FloppyDrives_TO(smth) HRESULT STDMETHODCALLTYPE get_FloppyDrives (SAFEARRAY * * aFloppyDrives) { return smth get_FloppyDrives (aFloppyDrives); }
#define COM_FORWARD_IHost_GETTER_FloppyDrives_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_FloppyDrives_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_FloppyDrives_TO_BASE(base) COM_FORWARD_IHost_GETTER_FloppyDrives_TO (base::)
#define COM_FORWARD_IHost_GETTER_USBDevices_TO(smth) HRESULT STDMETHODCALLTYPE get_USBDevices (SAFEARRAY * * aUSBDevices) { return smth get_USBDevices (aUSBDevices); }
#define COM_FORWARD_IHost_GETTER_USBDevices_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_USBDevices_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_USBDevices_TO_BASE(base) COM_FORWARD_IHost_GETTER_USBDevices_TO (base::)
#define COM_FORWARD_IHost_GETTER_USBDeviceFilters_TO(smth) HRESULT STDMETHODCALLTYPE get_USBDeviceFilters (SAFEARRAY * * aUSBDeviceFilters) { return smth get_USBDeviceFilters (aUSBDeviceFilters); }
#define COM_FORWARD_IHost_GETTER_USBDeviceFilters_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_USBDeviceFilters_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_USBDeviceFilters_TO_BASE(base) COM_FORWARD_IHost_GETTER_USBDeviceFilters_TO (base::)
#define COM_FORWARD_IHost_GETTER_NetworkInterfaces_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkInterfaces (SAFEARRAY * * aNetworkInterfaces) { return smth get_NetworkInterfaces (aNetworkInterfaces); }
#define COM_FORWARD_IHost_GETTER_NetworkInterfaces_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_NetworkInterfaces_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_NetworkInterfaces_TO_BASE(base) COM_FORWARD_IHost_GETTER_NetworkInterfaces_TO (base::)
#define COM_FORWARD_IHost_GETTER_ProcessorCount_TO(smth) HRESULT STDMETHODCALLTYPE get_ProcessorCount (ULONG * aProcessorCount) { return smth get_ProcessorCount (aProcessorCount); }
#define COM_FORWARD_IHost_GETTER_ProcessorCount_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_ProcessorCount_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_ProcessorCount_TO_BASE(base) COM_FORWARD_IHost_GETTER_ProcessorCount_TO (base::)
#define COM_FORWARD_IHost_GETTER_ProcessorOnlineCount_TO(smth) HRESULT STDMETHODCALLTYPE get_ProcessorOnlineCount (ULONG * aProcessorOnlineCount) { return smth get_ProcessorOnlineCount (aProcessorOnlineCount); }
#define COM_FORWARD_IHost_GETTER_ProcessorOnlineCount_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_ProcessorOnlineCount_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_ProcessorOnlineCount_TO_BASE(base) COM_FORWARD_IHost_GETTER_ProcessorOnlineCount_TO (base::)
#define COM_FORWARD_IHost_GETTER_MemorySize_TO(smth) HRESULT STDMETHODCALLTYPE get_MemorySize (ULONG * aMemorySize) { return smth get_MemorySize (aMemorySize); }
#define COM_FORWARD_IHost_GETTER_MemorySize_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_MemorySize_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_MemorySize_TO_BASE(base) COM_FORWARD_IHost_GETTER_MemorySize_TO (base::)
#define COM_FORWARD_IHost_GETTER_MemoryAvailable_TO(smth) HRESULT STDMETHODCALLTYPE get_MemoryAvailable (ULONG * aMemoryAvailable) { return smth get_MemoryAvailable (aMemoryAvailable); }
#define COM_FORWARD_IHost_GETTER_MemoryAvailable_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_MemoryAvailable_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_MemoryAvailable_TO_BASE(base) COM_FORWARD_IHost_GETTER_MemoryAvailable_TO (base::)
#define COM_FORWARD_IHost_GETTER_OperatingSystem_TO(smth) HRESULT STDMETHODCALLTYPE get_OperatingSystem (BSTR * aOperatingSystem) { return smth get_OperatingSystem (aOperatingSystem); }
#define COM_FORWARD_IHost_GETTER_OperatingSystem_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_OperatingSystem_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_OperatingSystem_TO_BASE(base) COM_FORWARD_IHost_GETTER_OperatingSystem_TO (base::)
#define COM_FORWARD_IHost_GETTER_OSVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_OSVersion (BSTR * aOSVersion) { return smth get_OSVersion (aOSVersion); }
#define COM_FORWARD_IHost_GETTER_OSVersion_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_OSVersion_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_OSVersion_TO_BASE(base) COM_FORWARD_IHost_GETTER_OSVersion_TO (base::)
#define COM_FORWARD_IHost_GETTER_UTCTime_TO(smth) HRESULT STDMETHODCALLTYPE get_UTCTime (LONG64 * aUTCTime) { return smth get_UTCTime (aUTCTime); }
#define COM_FORWARD_IHost_GETTER_UTCTime_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_UTCTime_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_UTCTime_TO_BASE(base) COM_FORWARD_IHost_GETTER_UTCTime_TO (base::)
#define COM_FORWARD_IHost_GETTER_Acceleration3DAvailable_TO(smth) HRESULT STDMETHODCALLTYPE get_Acceleration3DAvailable (BOOL * aAcceleration3DAvailable) { return smth get_Acceleration3DAvailable (aAcceleration3DAvailable); }
#define COM_FORWARD_IHost_GETTER_Acceleration3DAvailable_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_Acceleration3DAvailable_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_Acceleration3DAvailable_TO_BASE(base) COM_FORWARD_IHost_GETTER_Acceleration3DAvailable_TO (base::)
#define COM_FORWARD_IHost_GetProcessorSpeed_TO(smth) HRESULT STDMETHODCALLTYPE GetProcessorSpeed (ULONG aCpuId, ULONG * aSpeed) { return smth GetProcessorSpeed (aCpuId, aSpeed); }
#define COM_FORWARD_IHost_GetProcessorSpeed_TO_OBJ(obj) COM_FORWARD_IHost_GetProcessorSpeed_TO ((obj)->)
#define COM_FORWARD_IHost_GetProcessorSpeed_TO_BASE(base) COM_FORWARD_IHost_GetProcessorSpeed_TO (base::)
#define COM_FORWARD_IHost_GetProcessorFeature_TO(smth) HRESULT STDMETHODCALLTYPE GetProcessorFeature (ProcessorFeature aFeature, BOOL * aSupported) { return smth GetProcessorFeature (aFeature, aSupported); }
#define COM_FORWARD_IHost_GetProcessorFeature_TO_OBJ(obj) COM_FORWARD_IHost_GetProcessorFeature_TO ((obj)->)
#define COM_FORWARD_IHost_GetProcessorFeature_TO_BASE(base) COM_FORWARD_IHost_GetProcessorFeature_TO (base::)
#define COM_FORWARD_IHost_GetProcessorDescription_TO(smth) HRESULT STDMETHODCALLTYPE GetProcessorDescription (ULONG aCpuId, BSTR * aDescription) { return smth GetProcessorDescription (aCpuId, aDescription); }
#define COM_FORWARD_IHost_GetProcessorDescription_TO_OBJ(obj) COM_FORWARD_IHost_GetProcessorDescription_TO ((obj)->)
#define COM_FORWARD_IHost_GetProcessorDescription_TO_BASE(base) COM_FORWARD_IHost_GetProcessorDescription_TO (base::)
#define COM_FORWARD_IHost_GetProcessorCpuIdLeaf_TO(smth) HRESULT STDMETHODCALLTYPE GetProcessorCpuIdLeaf (ULONG aCpuId, ULONG aLeaf, ULONG aSubLeaf, ULONG * aValEax, ULONG * aValEbx, ULONG * aValEcx, ULONG * aValEdx) { return smth GetProcessorCpuIdLeaf (aCpuId, aLeaf, aSubLeaf, aValEax, aValEbx, aValEcx, aValEdx); }
#define COM_FORWARD_IHost_GetProcessorCpuIdLeaf_TO_OBJ(obj) COM_FORWARD_IHost_GetProcessorCpuIdLeaf_TO ((obj)->)
#define COM_FORWARD_IHost_GetProcessorCpuIdLeaf_TO_BASE(base) COM_FORWARD_IHost_GetProcessorCpuIdLeaf_TO (base::)
#define COM_FORWARD_IHost_CreateHostOnlyNetworkInterface_TO(smth) HRESULT STDMETHODCALLTYPE CreateHostOnlyNetworkInterface (IHostNetworkInterface * * aHostInterface, IProgress * * aProgress) { return smth CreateHostOnlyNetworkInterface (aHostInterface, aProgress); }
#define COM_FORWARD_IHost_CreateHostOnlyNetworkInterface_TO_OBJ(obj) COM_FORWARD_IHost_CreateHostOnlyNetworkInterface_TO ((obj)->)
#define COM_FORWARD_IHost_CreateHostOnlyNetworkInterface_TO_BASE(base) COM_FORWARD_IHost_CreateHostOnlyNetworkInterface_TO (base::)
#define COM_FORWARD_IHost_RemoveHostOnlyNetworkInterface_TO(smth) HRESULT STDMETHODCALLTYPE RemoveHostOnlyNetworkInterface (BSTR aId, IProgress * * aProgress) { return smth RemoveHostOnlyNetworkInterface (aId, aProgress); }
#define COM_FORWARD_IHost_RemoveHostOnlyNetworkInterface_TO_OBJ(obj) COM_FORWARD_IHost_RemoveHostOnlyNetworkInterface_TO ((obj)->)
#define COM_FORWARD_IHost_RemoveHostOnlyNetworkInterface_TO_BASE(base) COM_FORWARD_IHost_RemoveHostOnlyNetworkInterface_TO (base::)
#define COM_FORWARD_IHost_CreateUSBDeviceFilter_TO(smth) HRESULT STDMETHODCALLTYPE CreateUSBDeviceFilter (BSTR aName, IHostUSBDeviceFilter * * aFilter) { return smth CreateUSBDeviceFilter (aName, aFilter); }
#define COM_FORWARD_IHost_CreateUSBDeviceFilter_TO_OBJ(obj) COM_FORWARD_IHost_CreateUSBDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IHost_CreateUSBDeviceFilter_TO_BASE(base) COM_FORWARD_IHost_CreateUSBDeviceFilter_TO (base::)
#define COM_FORWARD_IHost_InsertUSBDeviceFilter_TO(smth) HRESULT STDMETHODCALLTYPE InsertUSBDeviceFilter (ULONG aPosition, IHostUSBDeviceFilter * aFilter) { return smth InsertUSBDeviceFilter (aPosition, aFilter); }
#define COM_FORWARD_IHost_InsertUSBDeviceFilter_TO_OBJ(obj) COM_FORWARD_IHost_InsertUSBDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IHost_InsertUSBDeviceFilter_TO_BASE(base) COM_FORWARD_IHost_InsertUSBDeviceFilter_TO (base::)
#define COM_FORWARD_IHost_RemoveUSBDeviceFilter_TO(smth) HRESULT STDMETHODCALLTYPE RemoveUSBDeviceFilter (ULONG aPosition) { return smth RemoveUSBDeviceFilter (aPosition); }
#define COM_FORWARD_IHost_RemoveUSBDeviceFilter_TO_OBJ(obj) COM_FORWARD_IHost_RemoveUSBDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IHost_RemoveUSBDeviceFilter_TO_BASE(base) COM_FORWARD_IHost_RemoveUSBDeviceFilter_TO (base::)
#define COM_FORWARD_IHost_FindHostDVDDrive_TO(smth) HRESULT STDMETHODCALLTYPE FindHostDVDDrive (BSTR aName, IMedium * * aDrive) { return smth FindHostDVDDrive (aName, aDrive); }
#define COM_FORWARD_IHost_FindHostDVDDrive_TO_OBJ(obj) COM_FORWARD_IHost_FindHostDVDDrive_TO ((obj)->)
#define COM_FORWARD_IHost_FindHostDVDDrive_TO_BASE(base) COM_FORWARD_IHost_FindHostDVDDrive_TO (base::)
#define COM_FORWARD_IHost_FindHostFloppyDrive_TO(smth) HRESULT STDMETHODCALLTYPE FindHostFloppyDrive (BSTR aName, IMedium * * aDrive) { return smth FindHostFloppyDrive (aName, aDrive); }
#define COM_FORWARD_IHost_FindHostFloppyDrive_TO_OBJ(obj) COM_FORWARD_IHost_FindHostFloppyDrive_TO ((obj)->)
#define COM_FORWARD_IHost_FindHostFloppyDrive_TO_BASE(base) COM_FORWARD_IHost_FindHostFloppyDrive_TO (base::)
#define COM_FORWARD_IHost_FindHostNetworkInterfaceByName_TO(smth) HRESULT STDMETHODCALLTYPE FindHostNetworkInterfaceByName (BSTR aName, IHostNetworkInterface * * aNetworkInterface) { return smth FindHostNetworkInterfaceByName (aName, aNetworkInterface); }
#define COM_FORWARD_IHost_FindHostNetworkInterfaceByName_TO_OBJ(obj) COM_FORWARD_IHost_FindHostNetworkInterfaceByName_TO ((obj)->)
#define COM_FORWARD_IHost_FindHostNetworkInterfaceByName_TO_BASE(base) COM_FORWARD_IHost_FindHostNetworkInterfaceByName_TO (base::)
#define COM_FORWARD_IHost_FindHostNetworkInterfaceById_TO(smth) HRESULT STDMETHODCALLTYPE FindHostNetworkInterfaceById (BSTR aId, IHostNetworkInterface * * aNetworkInterface) { return smth FindHostNetworkInterfaceById (aId, aNetworkInterface); }
#define COM_FORWARD_IHost_FindHostNetworkInterfaceById_TO_OBJ(obj) COM_FORWARD_IHost_FindHostNetworkInterfaceById_TO ((obj)->)
#define COM_FORWARD_IHost_FindHostNetworkInterfaceById_TO_BASE(base) COM_FORWARD_IHost_FindHostNetworkInterfaceById_TO (base::)
#define COM_FORWARD_IHost_FindHostNetworkInterfacesOfType_TO(smth) HRESULT STDMETHODCALLTYPE FindHostNetworkInterfacesOfType (HostNetworkInterfaceType aType, SAFEARRAY * * aNetworkInterfaces) { return smth FindHostNetworkInterfacesOfType (aType, aNetworkInterfaces); }
#define COM_FORWARD_IHost_FindHostNetworkInterfacesOfType_TO_OBJ(obj) COM_FORWARD_IHost_FindHostNetworkInterfacesOfType_TO ((obj)->)
#define COM_FORWARD_IHost_FindHostNetworkInterfacesOfType_TO_BASE(base) COM_FORWARD_IHost_FindHostNetworkInterfacesOfType_TO (base::)
#define COM_FORWARD_IHost_FindUSBDeviceById_TO(smth) HRESULT STDMETHODCALLTYPE FindUSBDeviceById (BSTR aId, IHostUSBDevice * * aDevice) { return smth FindUSBDeviceById (aId, aDevice); }
#define COM_FORWARD_IHost_FindUSBDeviceById_TO_OBJ(obj) COM_FORWARD_IHost_FindUSBDeviceById_TO ((obj)->)
#define COM_FORWARD_IHost_FindUSBDeviceById_TO_BASE(base) COM_FORWARD_IHost_FindUSBDeviceById_TO (base::)
#define COM_FORWARD_IHost_FindUSBDeviceByAddress_TO(smth) HRESULT STDMETHODCALLTYPE FindUSBDeviceByAddress (BSTR aName, IHostUSBDevice * * aDevice) { return smth FindUSBDeviceByAddress (aName, aDevice); }
#define COM_FORWARD_IHost_FindUSBDeviceByAddress_TO_OBJ(obj) COM_FORWARD_IHost_FindUSBDeviceByAddress_TO ((obj)->)
#define COM_FORWARD_IHost_FindUSBDeviceByAddress_TO_BASE(base) COM_FORWARD_IHost_FindUSBDeviceByAddress_TO (base::)
#define COM_FORWARD_IHost_TO(smth) COM_FORWARD_IHost_GETTER_DVDDrives_TO (smth) COM_FORWARD_IHost_GETTER_FloppyDrives_TO (smth) COM_FORWARD_IHost_GETTER_USBDevices_TO (smth) COM_FORWARD_IHost_GETTER_USBDeviceFilters_TO (smth) COM_FORWARD_IHost_GETTER_NetworkInterfaces_TO (smth) COM_FORWARD_IHost_GETTER_ProcessorCount_TO (smth) COM_FORWARD_IHost_GETTER_ProcessorOnlineCount_TO (smth) COM_FORWARD_IHost_GETTER_MemorySize_TO (smth) COM_FORWARD_IHost_GETTER_MemoryAvailable_TO (smth) COM_FORWARD_IHost_GETTER_OperatingSystem_TO (smth) COM_FORWARD_IHost_GETTER_OSVersion_TO (smth) COM_FORWARD_IHost_GETTER_UTCTime_TO (smth) COM_FORWARD_IHost_GETTER_Acceleration3DAvailable_TO (smth) COM_FORWARD_IHost_GetProcessorSpeed_TO (smth) COM_FORWARD_IHost_GetProcessorFeature_TO (smth) COM_FORWARD_IHost_GetProcessorDescription_TO (smth) COM_FORWARD_IHost_GetProcessorCpuIdLeaf_TO (smth) COM_FORWARD_IHost_CreateHostOnlyNetworkInterface_TO (smth) COM_FORWARD_IHost_RemoveHostOnlyNetworkInterface_TO (smth) COM_FORWARD_IHost_CreateUSBDeviceFilter_TO (smth) COM_FORWARD_IHost_InsertUSBDeviceFilter_TO (smth) COM_FORWARD_IHost_RemoveUSBDeviceFilter_TO (smth) COM_FORWARD_IHost_FindHostDVDDrive_TO (smth) COM_FORWARD_IHost_FindHostFloppyDrive_TO (smth) COM_FORWARD_IHost_FindHostNetworkInterfaceByName_TO (smth) COM_FORWARD_IHost_FindHostNetworkInterfaceById_TO (smth) COM_FORWARD_IHost_FindHostNetworkInterfacesOfType_TO (smth) COM_FORWARD_IHost_FindUSBDeviceById_TO (smth) COM_FORWARD_IHost_FindUSBDeviceByAddress_TO (smth) 
#define COM_FORWARD_IHost_TO_OBJ(obj) COM_FORWARD_IHost_TO ((obj)->)
#define COM_FORWARD_IHost_TO_BASE(base) COM_FORWARD_IHost_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_MinGuestRAM (ULONG * aMinGuestRAM) { return smth get_MinGuestRAM (aMinGuestRAM); }
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestRAM_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MinGuestRAM_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestRAM_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MinGuestRAM_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxGuestRAM (ULONG * aMaxGuestRAM) { return smth get_MaxGuestRAM (aMaxGuestRAM); }
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestRAM_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MaxGuestRAM_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestRAM_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MaxGuestRAM_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestVRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_MinGuestVRAM (ULONG * aMinGuestVRAM) { return smth get_MinGuestVRAM (aMinGuestVRAM); }
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestVRAM_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MinGuestVRAM_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestVRAM_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MinGuestVRAM_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestVRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxGuestVRAM (ULONG * aMaxGuestVRAM) { return smth get_MaxGuestVRAM (aMaxGuestVRAM); }
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestVRAM_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MaxGuestVRAM_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestVRAM_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MaxGuestVRAM_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestCPUCount_TO(smth) HRESULT STDMETHODCALLTYPE get_MinGuestCPUCount (ULONG * aMinGuestCPUCount) { return smth get_MinGuestCPUCount (aMinGuestCPUCount); }
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestCPUCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MinGuestCPUCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MinGuestCPUCount_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MinGuestCPUCount_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestCPUCount_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxGuestCPUCount (ULONG * aMaxGuestCPUCount) { return smth get_MaxGuestCPUCount (aMaxGuestCPUCount); }
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestCPUCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MaxGuestCPUCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestCPUCount_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MaxGuestCPUCount_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MaxVDISize_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxVDISize (ULONG64 * aMaxVDISize) { return smth get_MaxVDISize (aMaxVDISize); }
#define COM_FORWARD_ISystemProperties_GETTER_MaxVDISize_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MaxVDISize_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MaxVDISize_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MaxVDISize_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_NetworkAdapterCount_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkAdapterCount (ULONG * aNetworkAdapterCount) { return smth get_NetworkAdapterCount (aNetworkAdapterCount); }
#define COM_FORWARD_ISystemProperties_GETTER_NetworkAdapterCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_NetworkAdapterCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_NetworkAdapterCount_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_NetworkAdapterCount_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_SerialPortCount_TO(smth) HRESULT STDMETHODCALLTYPE get_SerialPortCount (ULONG * aSerialPortCount) { return smth get_SerialPortCount (aSerialPortCount); }
#define COM_FORWARD_ISystemProperties_GETTER_SerialPortCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_SerialPortCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_SerialPortCount_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_SerialPortCount_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_ParallelPortCount_TO(smth) HRESULT STDMETHODCALLTYPE get_ParallelPortCount (ULONG * aParallelPortCount) { return smth get_ParallelPortCount (aParallelPortCount); }
#define COM_FORWARD_ISystemProperties_GETTER_ParallelPortCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_ParallelPortCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_ParallelPortCount_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_ParallelPortCount_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MaxBootPosition_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxBootPosition (ULONG * aMaxBootPosition) { return smth get_MaxBootPosition (aMaxBootPosition); }
#define COM_FORWARD_ISystemProperties_GETTER_MaxBootPosition_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MaxBootPosition_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MaxBootPosition_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MaxBootPosition_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultMachineFolder_TO(smth) HRESULT STDMETHODCALLTYPE get_DefaultMachineFolder (BSTR * aDefaultMachineFolder) { return smth get_DefaultMachineFolder (aDefaultMachineFolder); }
#define COM_FORWARD_ISystemProperties_GETTER_DefaultMachineFolder_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_DefaultMachineFolder_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultMachineFolder_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_DefaultMachineFolder_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultMachineFolder_TO(smth) HRESULT STDMETHODCALLTYPE put_DefaultMachineFolder (BSTR aDefaultMachineFolder) { return smth put_DefaultMachineFolder (aDefaultMachineFolder); }
#define COM_FORWARD_ISystemProperties_SETTER_DefaultMachineFolder_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_DefaultMachineFolder_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultMachineFolder_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_DefaultMachineFolder_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFolder_TO(smth) HRESULT STDMETHODCALLTYPE get_DefaultHardDiskFolder (BSTR * aDefaultHardDiskFolder) { return smth get_DefaultHardDiskFolder (aDefaultHardDiskFolder); }
#define COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFolder_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFolder_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFolder_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFolder_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFolder_TO(smth) HRESULT STDMETHODCALLTYPE put_DefaultHardDiskFolder (BSTR aDefaultHardDiskFolder) { return smth put_DefaultHardDiskFolder (aDefaultHardDiskFolder); }
#define COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFolder_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFolder_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFolder_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFolder_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_MediumFormats_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumFormats (SAFEARRAY * * aMediumFormats) { return smth get_MediumFormats (aMediumFormats); }
#define COM_FORWARD_ISystemProperties_GETTER_MediumFormats_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MediumFormats_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MediumFormats_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MediumFormats_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO(smth) HRESULT STDMETHODCALLTYPE get_DefaultHardDiskFormat (BSTR * aDefaultHardDiskFormat) { return smth get_DefaultHardDiskFormat (aDefaultHardDiskFormat); }
#define COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO(smth) HRESULT STDMETHODCALLTYPE put_DefaultHardDiskFormat (BSTR aDefaultHardDiskFormat) { return smth put_DefaultHardDiskFormat (aDefaultHardDiskFormat); }
#define COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_RemoteDisplayAuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE get_RemoteDisplayAuthLibrary (BSTR * aRemoteDisplayAuthLibrary) { return smth get_RemoteDisplayAuthLibrary (aRemoteDisplayAuthLibrary); }
#define COM_FORWARD_ISystemProperties_GETTER_RemoteDisplayAuthLibrary_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_RemoteDisplayAuthLibrary_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_RemoteDisplayAuthLibrary_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_RemoteDisplayAuthLibrary_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_RemoteDisplayAuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE put_RemoteDisplayAuthLibrary (BSTR aRemoteDisplayAuthLibrary) { return smth put_RemoteDisplayAuthLibrary (aRemoteDisplayAuthLibrary); }
#define COM_FORWARD_ISystemProperties_SETTER_RemoteDisplayAuthLibrary_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_RemoteDisplayAuthLibrary_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_RemoteDisplayAuthLibrary_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_RemoteDisplayAuthLibrary_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE get_WebServiceAuthLibrary (BSTR * aWebServiceAuthLibrary) { return smth get_WebServiceAuthLibrary (aWebServiceAuthLibrary); }
#define COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE put_WebServiceAuthLibrary (BSTR aWebServiceAuthLibrary) { return smth put_WebServiceAuthLibrary (aWebServiceAuthLibrary); }
#define COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_LogHistoryCount_TO(smth) HRESULT STDMETHODCALLTYPE get_LogHistoryCount (ULONG * aLogHistoryCount) { return smth get_LogHistoryCount (aLogHistoryCount); }
#define COM_FORWARD_ISystemProperties_GETTER_LogHistoryCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_LogHistoryCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_LogHistoryCount_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_LogHistoryCount_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_LogHistoryCount_TO(smth) HRESULT STDMETHODCALLTYPE put_LogHistoryCount (ULONG aLogHistoryCount) { return smth put_LogHistoryCount (aLogHistoryCount); }
#define COM_FORWARD_ISystemProperties_SETTER_LogHistoryCount_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_LogHistoryCount_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_LogHistoryCount_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_LogHistoryCount_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultAudioDriver_TO(smth) HRESULT STDMETHODCALLTYPE get_DefaultAudioDriver (AudioDriverType * aDefaultAudioDriver) { return smth get_DefaultAudioDriver (aDefaultAudioDriver); }
#define COM_FORWARD_ISystemProperties_GETTER_DefaultAudioDriver_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_DefaultAudioDriver_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultAudioDriver_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_DefaultAudioDriver_TO (base::)
#define COM_FORWARD_ISystemProperties_GetMaxDevicesPerPortForStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE GetMaxDevicesPerPortForStorageBus (StorageBus aBus, ULONG * aMaxDevicesPerPort) { return smth GetMaxDevicesPerPortForStorageBus (aBus, aMaxDevicesPerPort); }
#define COM_FORWARD_ISystemProperties_GetMaxDevicesPerPortForStorageBus_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetMaxDevicesPerPortForStorageBus_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetMaxDevicesPerPortForStorageBus_TO_BASE(base) COM_FORWARD_ISystemProperties_GetMaxDevicesPerPortForStorageBus_TO (base::)
#define COM_FORWARD_ISystemProperties_GetMinPortCountForStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE GetMinPortCountForStorageBus (StorageBus aBus, ULONG * aMinPortCount) { return smth GetMinPortCountForStorageBus (aBus, aMinPortCount); }
#define COM_FORWARD_ISystemProperties_GetMinPortCountForStorageBus_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetMinPortCountForStorageBus_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetMinPortCountForStorageBus_TO_BASE(base) COM_FORWARD_ISystemProperties_GetMinPortCountForStorageBus_TO (base::)
#define COM_FORWARD_ISystemProperties_GetMaxPortCountForStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE GetMaxPortCountForStorageBus (StorageBus aBus, ULONG * aMaxPortCount) { return smth GetMaxPortCountForStorageBus (aBus, aMaxPortCount); }
#define COM_FORWARD_ISystemProperties_GetMaxPortCountForStorageBus_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetMaxPortCountForStorageBus_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetMaxPortCountForStorageBus_TO_BASE(base) COM_FORWARD_ISystemProperties_GetMaxPortCountForStorageBus_TO (base::)
#define COM_FORWARD_ISystemProperties_GetMaxInstancesOfStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE GetMaxInstancesOfStorageBus (StorageBus aBus, ULONG * aMaxInstances) { return smth GetMaxInstancesOfStorageBus (aBus, aMaxInstances); }
#define COM_FORWARD_ISystemProperties_GetMaxInstancesOfStorageBus_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetMaxInstancesOfStorageBus_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetMaxInstancesOfStorageBus_TO_BASE(base) COM_FORWARD_ISystemProperties_GetMaxInstancesOfStorageBus_TO (base::)
#define COM_FORWARD_ISystemProperties_GetDeviceTypesForStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE GetDeviceTypesForStorageBus (StorageBus aBus, SAFEARRAY * * aDeviceTypes) { return smth GetDeviceTypesForStorageBus (aBus, aDeviceTypes); }
#define COM_FORWARD_ISystemProperties_GetDeviceTypesForStorageBus_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetDeviceTypesForStorageBus_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetDeviceTypesForStorageBus_TO_BASE(base) COM_FORWARD_ISystemProperties_GetDeviceTypesForStorageBus_TO (base::)
#define COM_FORWARD_ISystemProperties_TO(smth) COM_FORWARD_ISystemProperties_GETTER_MinGuestRAM_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MaxGuestRAM_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MinGuestVRAM_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MaxGuestVRAM_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MinGuestCPUCount_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MaxGuestCPUCount_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MaxVDISize_TO (smth) COM_FORWARD_ISystemProperties_GETTER_NetworkAdapterCount_TO (smth) COM_FORWARD_ISystemProperties_GETTER_SerialPortCount_TO (smth) COM_FORWARD_ISystemProperties_GETTER_ParallelPortCount_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MaxBootPosition_TO (smth) COM_FORWARD_ISystemProperties_GETTER_DefaultMachineFolder_TO (smth) COM_FORWARD_ISystemProperties_SETTER_DefaultMachineFolder_TO (smth) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFolder_TO (smth) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFolder_TO (smth) COM_FORWARD_ISystemProperties_GETTER_MediumFormats_TO (smth) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO (smth) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO (smth) COM_FORWARD_ISystemProperties_GETTER_RemoteDisplayAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_SETTER_RemoteDisplayAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_GETTER_LogHistoryCount_TO (smth) COM_FORWARD_ISystemProperties_SETTER_LogHistoryCount_TO (smth) COM_FORWARD_ISystemProperties_GETTER_DefaultAudioDriver_TO (smth) COM_FORWARD_ISystemProperties_GetMaxDevicesPerPortForStorageBus_TO (smth) COM_FORWARD_ISystemProperties_GetMinPortCountForStorageBus_TO (smth) COM_FORWARD_ISystemProperties_GetMaxPortCountForStorageBus_TO (smth) COM_FORWARD_ISystemProperties_GetMaxInstancesOfStorageBus_TO (smth) COM_FORWARD_ISystemProperties_GetDeviceTypesForStorageBus_TO (smth) 
#define COM_FORWARD_ISystemProperties_TO_OBJ(obj) COM_FORWARD_ISystemProperties_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_TO_BASE(base) COM_FORWARD_ISystemProperties_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_FamilyId_TO(smth) HRESULT STDMETHODCALLTYPE get_FamilyId (BSTR * aFamilyId) { return smth get_FamilyId (aFamilyId); }
#define COM_FORWARD_IGuestOSType_GETTER_FamilyId_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_FamilyId_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_FamilyId_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_FamilyId_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_FamilyDescription_TO(smth) HRESULT STDMETHODCALLTYPE get_FamilyDescription (BSTR * aFamilyDescription) { return smth get_FamilyDescription (aFamilyDescription); }
#define COM_FORWARD_IGuestOSType_GETTER_FamilyDescription_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_FamilyDescription_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_FamilyDescription_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_FamilyDescription_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IGuestOSType_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_Id_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_Id_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IGuestOSType_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_Description_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_Description_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_Is64Bit_TO(smth) HRESULT STDMETHODCALLTYPE get_Is64Bit (BOOL * aIs64Bit) { return smth get_Is64Bit (aIs64Bit); }
#define COM_FORWARD_IGuestOSType_GETTER_Is64Bit_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_Is64Bit_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_Is64Bit_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_Is64Bit_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedIOAPIC_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedIOAPIC (BOOL * aRecommendedIOAPIC) { return smth get_RecommendedIOAPIC (aRecommendedIOAPIC); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedIOAPIC_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedIOAPIC_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedIOAPIC_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedIOAPIC_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedVirtEx_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedVirtEx (BOOL * aRecommendedVirtEx) { return smth get_RecommendedVirtEx (aRecommendedVirtEx); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedVirtEx_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedVirtEx_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedVirtEx_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedVirtEx_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedRAM (ULONG * aRecommendedRAM) { return smth get_RecommendedRAM (aRecommendedRAM); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedRAM_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedRAM_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedRAM_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedRAM_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedVRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedVRAM (ULONG * aRecommendedVRAM) { return smth get_RecommendedVRAM (aRecommendedVRAM); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedVRAM_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedVRAM_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedVRAM_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedVRAM_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHDD_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedHDD (ULONG * aRecommendedHDD) { return smth get_RecommendedHDD (aRecommendedHDD); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHDD_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedHDD_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHDD_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedHDD_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_AdapterType_TO(smth) HRESULT STDMETHODCALLTYPE get_AdapterType (NetworkAdapterType * aAdapterType) { return smth get_AdapterType (aAdapterType); }
#define COM_FORWARD_IGuestOSType_GETTER_AdapterType_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_AdapterType_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_AdapterType_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_AdapterType_TO (base::)
#define COM_FORWARD_IGuestOSType_TO(smth) COM_FORWARD_IGuestOSType_GETTER_FamilyId_TO (smth) COM_FORWARD_IGuestOSType_GETTER_FamilyDescription_TO (smth) COM_FORWARD_IGuestOSType_GETTER_Id_TO (smth) COM_FORWARD_IGuestOSType_GETTER_Description_TO (smth) COM_FORWARD_IGuestOSType_GETTER_Is64Bit_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedIOAPIC_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedVirtEx_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedRAM_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedVRAM_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedHDD_TO (smth) COM_FORWARD_IGuestOSType_GETTER_AdapterType_TO (smth) 
#define COM_FORWARD_IGuestOSType_TO_OBJ(obj) COM_FORWARD_IGuestOSType_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_TO_BASE(base) COM_FORWARD_IGuestOSType_TO (base::)
#define COM_FORWARD_IGuest_GETTER_OSTypeId_TO(smth) HRESULT STDMETHODCALLTYPE get_OSTypeId (BSTR * aOSTypeId) { return smth get_OSTypeId (aOSTypeId); }
#define COM_FORWARD_IGuest_GETTER_OSTypeId_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_OSTypeId_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_OSTypeId_TO_BASE(base) COM_FORWARD_IGuest_GETTER_OSTypeId_TO (base::)
#define COM_FORWARD_IGuest_GETTER_AdditionsActive_TO(smth) HRESULT STDMETHODCALLTYPE get_AdditionsActive (BOOL * aAdditionsActive) { return smth get_AdditionsActive (aAdditionsActive); }
#define COM_FORWARD_IGuest_GETTER_AdditionsActive_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_AdditionsActive_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_AdditionsActive_TO_BASE(base) COM_FORWARD_IGuest_GETTER_AdditionsActive_TO (base::)
#define COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_AdditionsVersion (BSTR * aAdditionsVersion) { return smth get_AdditionsVersion (aAdditionsVersion); }
#define COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO_BASE(base) COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO (base::)
#define COM_FORWARD_IGuest_GETTER_SupportsSeamless_TO(smth) HRESULT STDMETHODCALLTYPE get_SupportsSeamless (BOOL * aSupportsSeamless) { return smth get_SupportsSeamless (aSupportsSeamless); }
#define COM_FORWARD_IGuest_GETTER_SupportsSeamless_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_SupportsSeamless_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_SupportsSeamless_TO_BASE(base) COM_FORWARD_IGuest_GETTER_SupportsSeamless_TO (base::)
#define COM_FORWARD_IGuest_GETTER_SupportsGraphics_TO(smth) HRESULT STDMETHODCALLTYPE get_SupportsGraphics (BOOL * aSupportsGraphics) { return smth get_SupportsGraphics (aSupportsGraphics); }
#define COM_FORWARD_IGuest_GETTER_SupportsGraphics_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_SupportsGraphics_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_SupportsGraphics_TO_BASE(base) COM_FORWARD_IGuest_GETTER_SupportsGraphics_TO (base::)
#define COM_FORWARD_IGuest_GETTER_MemoryBalloonSize_TO(smth) HRESULT STDMETHODCALLTYPE get_MemoryBalloonSize (ULONG * aMemoryBalloonSize) { return smth get_MemoryBalloonSize (aMemoryBalloonSize); }
#define COM_FORWARD_IGuest_GETTER_MemoryBalloonSize_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_MemoryBalloonSize_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_MemoryBalloonSize_TO_BASE(base) COM_FORWARD_IGuest_GETTER_MemoryBalloonSize_TO (base::)
#define COM_FORWARD_IGuest_SETTER_MemoryBalloonSize_TO(smth) HRESULT STDMETHODCALLTYPE put_MemoryBalloonSize (ULONG aMemoryBalloonSize) { return smth put_MemoryBalloonSize (aMemoryBalloonSize); }
#define COM_FORWARD_IGuest_SETTER_MemoryBalloonSize_TO_OBJ(obj) COM_FORWARD_IGuest_SETTER_MemoryBalloonSize_TO ((obj)->)
#define COM_FORWARD_IGuest_SETTER_MemoryBalloonSize_TO_BASE(base) COM_FORWARD_IGuest_SETTER_MemoryBalloonSize_TO (base::)
#define COM_FORWARD_IGuest_GETTER_StatisticsUpdateInterval_TO(smth) HRESULT STDMETHODCALLTYPE get_StatisticsUpdateInterval (ULONG * aStatisticsUpdateInterval) { return smth get_StatisticsUpdateInterval (aStatisticsUpdateInterval); }
#define COM_FORWARD_IGuest_GETTER_StatisticsUpdateInterval_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_StatisticsUpdateInterval_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_StatisticsUpdateInterval_TO_BASE(base) COM_FORWARD_IGuest_GETTER_StatisticsUpdateInterval_TO (base::)
#define COM_FORWARD_IGuest_SETTER_StatisticsUpdateInterval_TO(smth) HRESULT STDMETHODCALLTYPE put_StatisticsUpdateInterval (ULONG aStatisticsUpdateInterval) { return smth put_StatisticsUpdateInterval (aStatisticsUpdateInterval); }
#define COM_FORWARD_IGuest_SETTER_StatisticsUpdateInterval_TO_OBJ(obj) COM_FORWARD_IGuest_SETTER_StatisticsUpdateInterval_TO ((obj)->)
#define COM_FORWARD_IGuest_SETTER_StatisticsUpdateInterval_TO_BASE(base) COM_FORWARD_IGuest_SETTER_StatisticsUpdateInterval_TO (base::)
#define COM_FORWARD_IGuest_SetCredentials_TO(smth) HRESULT STDMETHODCALLTYPE SetCredentials (BSTR aUserName, BSTR aPassword, BSTR aDomain, BOOL aAllowInteractiveLogon) { return smth SetCredentials (aUserName, aPassword, aDomain, aAllowInteractiveLogon); }
#define COM_FORWARD_IGuest_SetCredentials_TO_OBJ(obj) COM_FORWARD_IGuest_SetCredentials_TO ((obj)->)
#define COM_FORWARD_IGuest_SetCredentials_TO_BASE(base) COM_FORWARD_IGuest_SetCredentials_TO (base::)
#define COM_FORWARD_IGuest_GetStatistic_TO(smth) HRESULT STDMETHODCALLTYPE GetStatistic (ULONG aCpuId, GuestStatisticType aStatistic, ULONG * aStatVal) { return smth GetStatistic (aCpuId, aStatistic, aStatVal); }
#define COM_FORWARD_IGuest_GetStatistic_TO_OBJ(obj) COM_FORWARD_IGuest_GetStatistic_TO ((obj)->)
#define COM_FORWARD_IGuest_GetStatistic_TO_BASE(base) COM_FORWARD_IGuest_GetStatistic_TO (base::)
#define COM_FORWARD_IGuest_TO(smth) COM_FORWARD_IGuest_GETTER_OSTypeId_TO (smth) COM_FORWARD_IGuest_GETTER_AdditionsActive_TO (smth) COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO (smth) COM_FORWARD_IGuest_GETTER_SupportsSeamless_TO (smth) COM_FORWARD_IGuest_GETTER_SupportsGraphics_TO (smth) COM_FORWARD_IGuest_GETTER_MemoryBalloonSize_TO (smth) COM_FORWARD_IGuest_SETTER_MemoryBalloonSize_TO (smth) COM_FORWARD_IGuest_GETTER_StatisticsUpdateInterval_TO (smth) COM_FORWARD_IGuest_SETTER_StatisticsUpdateInterval_TO (smth) COM_FORWARD_IGuest_SetCredentials_TO (smth) COM_FORWARD_IGuest_GetStatistic_TO (smth) 
#define COM_FORWARD_IGuest_TO_OBJ(obj) COM_FORWARD_IGuest_TO ((obj)->)
#define COM_FORWARD_IGuest_TO_BASE(base) COM_FORWARD_IGuest_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IProgress_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Id_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Id_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IProgress_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Description_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Description_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Initiator_TO(smth) HRESULT STDMETHODCALLTYPE get_Initiator (IUnknown * * aInitiator) { return smth get_Initiator (aInitiator); }
#define COM_FORWARD_IProgress_GETTER_Initiator_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Initiator_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Initiator_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Initiator_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Cancelable_TO(smth) HRESULT STDMETHODCALLTYPE get_Cancelable (BOOL * aCancelable) { return smth get_Cancelable (aCancelable); }
#define COM_FORWARD_IProgress_GETTER_Cancelable_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Cancelable_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Cancelable_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Cancelable_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Percent_TO(smth) HRESULT STDMETHODCALLTYPE get_Percent (ULONG * aPercent) { return smth get_Percent (aPercent); }
#define COM_FORWARD_IProgress_GETTER_Percent_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Percent_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Percent_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Percent_TO (base::)
#define COM_FORWARD_IProgress_GETTER_TimeRemaining_TO(smth) HRESULT STDMETHODCALLTYPE get_TimeRemaining (LONG * aTimeRemaining) { return smth get_TimeRemaining (aTimeRemaining); }
#define COM_FORWARD_IProgress_GETTER_TimeRemaining_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_TimeRemaining_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_TimeRemaining_TO_BASE(base) COM_FORWARD_IProgress_GETTER_TimeRemaining_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Completed_TO(smth) HRESULT STDMETHODCALLTYPE get_Completed (BOOL * aCompleted) { return smth get_Completed (aCompleted); }
#define COM_FORWARD_IProgress_GETTER_Completed_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Completed_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Completed_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Completed_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Canceled_TO(smth) HRESULT STDMETHODCALLTYPE get_Canceled (BOOL * aCanceled) { return smth get_Canceled (aCanceled); }
#define COM_FORWARD_IProgress_GETTER_Canceled_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Canceled_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Canceled_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Canceled_TO (base::)
#define COM_FORWARD_IProgress_GETTER_ResultCode_TO(smth) HRESULT STDMETHODCALLTYPE get_ResultCode (LONG * aResultCode) { return smth get_ResultCode (aResultCode); }
#define COM_FORWARD_IProgress_GETTER_ResultCode_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_ResultCode_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_ResultCode_TO_BASE(base) COM_FORWARD_IProgress_GETTER_ResultCode_TO (base::)
#define COM_FORWARD_IProgress_GETTER_ErrorInfo_TO(smth) HRESULT STDMETHODCALLTYPE get_ErrorInfo (IVirtualBoxErrorInfo * * aErrorInfo) { return smth get_ErrorInfo (aErrorInfo); }
#define COM_FORWARD_IProgress_GETTER_ErrorInfo_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_ErrorInfo_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_ErrorInfo_TO_BASE(base) COM_FORWARD_IProgress_GETTER_ErrorInfo_TO (base::)
#define COM_FORWARD_IProgress_GETTER_OperationCount_TO(smth) HRESULT STDMETHODCALLTYPE get_OperationCount (ULONG * aOperationCount) { return smth get_OperationCount (aOperationCount); }
#define COM_FORWARD_IProgress_GETTER_OperationCount_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_OperationCount_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_OperationCount_TO_BASE(base) COM_FORWARD_IProgress_GETTER_OperationCount_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Operation_TO(smth) HRESULT STDMETHODCALLTYPE get_Operation (ULONG * aOperation) { return smth get_Operation (aOperation); }
#define COM_FORWARD_IProgress_GETTER_Operation_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Operation_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Operation_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Operation_TO (base::)
#define COM_FORWARD_IProgress_GETTER_OperationDescription_TO(smth) HRESULT STDMETHODCALLTYPE get_OperationDescription (BSTR * aOperationDescription) { return smth get_OperationDescription (aOperationDescription); }
#define COM_FORWARD_IProgress_GETTER_OperationDescription_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_OperationDescription_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_OperationDescription_TO_BASE(base) COM_FORWARD_IProgress_GETTER_OperationDescription_TO (base::)
#define COM_FORWARD_IProgress_GETTER_OperationPercent_TO(smth) HRESULT STDMETHODCALLTYPE get_OperationPercent (ULONG * aOperationPercent) { return smth get_OperationPercent (aOperationPercent); }
#define COM_FORWARD_IProgress_GETTER_OperationPercent_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_OperationPercent_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_OperationPercent_TO_BASE(base) COM_FORWARD_IProgress_GETTER_OperationPercent_TO (base::)
#define COM_FORWARD_IProgress_GETTER_Timeout_TO(smth) HRESULT STDMETHODCALLTYPE get_Timeout (ULONG * aTimeout) { return smth get_Timeout (aTimeout); }
#define COM_FORWARD_IProgress_GETTER_Timeout_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_Timeout_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_Timeout_TO_BASE(base) COM_FORWARD_IProgress_GETTER_Timeout_TO (base::)
#define COM_FORWARD_IProgress_SETTER_Timeout_TO(smth) HRESULT STDMETHODCALLTYPE put_Timeout (ULONG aTimeout) { return smth put_Timeout (aTimeout); }
#define COM_FORWARD_IProgress_SETTER_Timeout_TO_OBJ(obj) COM_FORWARD_IProgress_SETTER_Timeout_TO ((obj)->)
#define COM_FORWARD_IProgress_SETTER_Timeout_TO_BASE(base) COM_FORWARD_IProgress_SETTER_Timeout_TO (base::)
#define COM_FORWARD_IProgress_SetCurrentOperationProgress_TO(smth) HRESULT STDMETHODCALLTYPE SetCurrentOperationProgress (ULONG aPercent) { return smth SetCurrentOperationProgress (aPercent); }
#define COM_FORWARD_IProgress_SetCurrentOperationProgress_TO_OBJ(obj) COM_FORWARD_IProgress_SetCurrentOperationProgress_TO ((obj)->)
#define COM_FORWARD_IProgress_SetCurrentOperationProgress_TO_BASE(base) COM_FORWARD_IProgress_SetCurrentOperationProgress_TO (base::)
#define COM_FORWARD_IProgress_SetNextOperation_TO(smth) HRESULT STDMETHODCALLTYPE SetNextOperation (BSTR aNextOperationDescription, ULONG aNextOperationsWeight) { return smth SetNextOperation (aNextOperationDescription, aNextOperationsWeight); }
#define COM_FORWARD_IProgress_SetNextOperation_TO_OBJ(obj) COM_FORWARD_IProgress_SetNextOperation_TO ((obj)->)
#define COM_FORWARD_IProgress_SetNextOperation_TO_BASE(base) COM_FORWARD_IProgress_SetNextOperation_TO (base::)
#define COM_FORWARD_IProgress_WaitForCompletion_TO(smth) HRESULT STDMETHODCALLTYPE WaitForCompletion (LONG aTimeout) { return smth WaitForCompletion (aTimeout); }
#define COM_FORWARD_IProgress_WaitForCompletion_TO_OBJ(obj) COM_FORWARD_IProgress_WaitForCompletion_TO ((obj)->)
#define COM_FORWARD_IProgress_WaitForCompletion_TO_BASE(base) COM_FORWARD_IProgress_WaitForCompletion_TO (base::)
#define COM_FORWARD_IProgress_WaitForOperationCompletion_TO(smth) HRESULT STDMETHODCALLTYPE WaitForOperationCompletion (ULONG aOperation, LONG aTimeout) { return smth WaitForOperationCompletion (aOperation, aTimeout); }
#define COM_FORWARD_IProgress_WaitForOperationCompletion_TO_OBJ(obj) COM_FORWARD_IProgress_WaitForOperationCompletion_TO ((obj)->)
#define COM_FORWARD_IProgress_WaitForOperationCompletion_TO_BASE(base) COM_FORWARD_IProgress_WaitForOperationCompletion_TO (base::)
#define COM_FORWARD_IProgress_Cancel_TO(smth) HRESULT STDMETHODCALLTYPE Cancel() { return smth Cancel(); }
#define COM_FORWARD_IProgress_Cancel_TO_OBJ(obj) COM_FORWARD_IProgress_Cancel_TO ((obj)->)
#define COM_FORWARD_IProgress_Cancel_TO_BASE(base) COM_FORWARD_IProgress_Cancel_TO (base::)
#define COM_FORWARD_IProgress_TO(smth) COM_FORWARD_IProgress_GETTER_Id_TO (smth) COM_FORWARD_IProgress_GETTER_Description_TO (smth) COM_FORWARD_IProgress_GETTER_Initiator_TO (smth) COM_FORWARD_IProgress_GETTER_Cancelable_TO (smth) COM_FORWARD_IProgress_GETTER_Percent_TO (smth) COM_FORWARD_IProgress_GETTER_TimeRemaining_TO (smth) COM_FORWARD_IProgress_GETTER_Completed_TO (smth) COM_FORWARD_IProgress_GETTER_Canceled_TO (smth) COM_FORWARD_IProgress_GETTER_ResultCode_TO (smth) COM_FORWARD_IProgress_GETTER_ErrorInfo_TO (smth) COM_FORWARD_IProgress_GETTER_OperationCount_TO (smth) COM_FORWARD_IProgress_GETTER_Operation_TO (smth) COM_FORWARD_IProgress_GETTER_OperationDescription_TO (smth) COM_FORWARD_IProgress_GETTER_OperationPercent_TO (smth) COM_FORWARD_IProgress_GETTER_Timeout_TO (smth) COM_FORWARD_IProgress_SETTER_Timeout_TO (smth) COM_FORWARD_IProgress_SetCurrentOperationProgress_TO (smth) COM_FORWARD_IProgress_SetNextOperation_TO (smth) COM_FORWARD_IProgress_WaitForCompletion_TO (smth) COM_FORWARD_IProgress_WaitForOperationCompletion_TO (smth) COM_FORWARD_IProgress_Cancel_TO (smth) 
#define COM_FORWARD_IProgress_TO_OBJ(obj) COM_FORWARD_IProgress_TO ((obj)->)
#define COM_FORWARD_IProgress_TO_BASE(base) COM_FORWARD_IProgress_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_ISnapshot_GETTER_Id_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Id_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Id_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_ISnapshot_GETTER_Name_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Name_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Name_TO (base::)
#define COM_FORWARD_ISnapshot_SETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE put_Name (BSTR aName) { return smth put_Name (aName); }
#define COM_FORWARD_ISnapshot_SETTER_Name_TO_OBJ(obj) COM_FORWARD_ISnapshot_SETTER_Name_TO ((obj)->)
#define COM_FORWARD_ISnapshot_SETTER_Name_TO_BASE(base) COM_FORWARD_ISnapshot_SETTER_Name_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_ISnapshot_GETTER_Description_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Description_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Description_TO (base::)
#define COM_FORWARD_ISnapshot_SETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE put_Description (BSTR aDescription) { return smth put_Description (aDescription); }
#define COM_FORWARD_ISnapshot_SETTER_Description_TO_OBJ(obj) COM_FORWARD_ISnapshot_SETTER_Description_TO ((obj)->)
#define COM_FORWARD_ISnapshot_SETTER_Description_TO_BASE(base) COM_FORWARD_ISnapshot_SETTER_Description_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_TimeStamp_TO(smth) HRESULT STDMETHODCALLTYPE get_TimeStamp (LONG64 * aTimeStamp) { return smth get_TimeStamp (aTimeStamp); }
#define COM_FORWARD_ISnapshot_GETTER_TimeStamp_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_TimeStamp_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_TimeStamp_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_TimeStamp_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Online_TO(smth) HRESULT STDMETHODCALLTYPE get_Online (BOOL * aOnline) { return smth get_Online (aOnline); }
#define COM_FORWARD_ISnapshot_GETTER_Online_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Online_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Online_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Online_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Machine_TO(smth) HRESULT STDMETHODCALLTYPE get_Machine (IMachine * * aMachine) { return smth get_Machine (aMachine); }
#define COM_FORWARD_ISnapshot_GETTER_Machine_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Machine_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Machine_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Machine_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Parent_TO(smth) HRESULT STDMETHODCALLTYPE get_Parent (ISnapshot * * aParent) { return smth get_Parent (aParent); }
#define COM_FORWARD_ISnapshot_GETTER_Parent_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Parent_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Parent_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Parent_TO (base::)
#define COM_FORWARD_ISnapshot_GETTER_Children_TO(smth) HRESULT STDMETHODCALLTYPE get_Children (SAFEARRAY * * aChildren) { return smth get_Children (aChildren); }
#define COM_FORWARD_ISnapshot_GETTER_Children_TO_OBJ(obj) COM_FORWARD_ISnapshot_GETTER_Children_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GETTER_Children_TO_BASE(base) COM_FORWARD_ISnapshot_GETTER_Children_TO (base::)
#define COM_FORWARD_ISnapshot_TO(smth) COM_FORWARD_ISnapshot_GETTER_Id_TO (smth) COM_FORWARD_ISnapshot_GETTER_Name_TO (smth) COM_FORWARD_ISnapshot_SETTER_Name_TO (smth) COM_FORWARD_ISnapshot_GETTER_Description_TO (smth) COM_FORWARD_ISnapshot_SETTER_Description_TO (smth) COM_FORWARD_ISnapshot_GETTER_TimeStamp_TO (smth) COM_FORWARD_ISnapshot_GETTER_Online_TO (smth) COM_FORWARD_ISnapshot_GETTER_Machine_TO (smth) COM_FORWARD_ISnapshot_GETTER_Parent_TO (smth) COM_FORWARD_ISnapshot_GETTER_Children_TO (smth) 
#define COM_FORWARD_ISnapshot_TO_OBJ(obj) COM_FORWARD_ISnapshot_TO ((obj)->)
#define COM_FORWARD_ISnapshot_TO_BASE(base) COM_FORWARD_ISnapshot_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_Medium_TO(smth) HRESULT STDMETHODCALLTYPE get_Medium (IMedium * * aMedium) { return smth get_Medium (aMedium); }
#define COM_FORWARD_IMediumAttachment_GETTER_Medium_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_Medium_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_Medium_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_Medium_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_Controller_TO(smth) HRESULT STDMETHODCALLTYPE get_Controller (BSTR * aController) { return smth get_Controller (aController); }
#define COM_FORWARD_IMediumAttachment_GETTER_Controller_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_Controller_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_Controller_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_Controller_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_Port_TO(smth) HRESULT STDMETHODCALLTYPE get_Port (LONG * aPort) { return smth get_Port (aPort); }
#define COM_FORWARD_IMediumAttachment_GETTER_Port_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_Port_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_Port_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_Port_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_Device_TO(smth) HRESULT STDMETHODCALLTYPE get_Device (LONG * aDevice) { return smth get_Device (aDevice); }
#define COM_FORWARD_IMediumAttachment_GETTER_Device_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_Device_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_Device_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_Device_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (DeviceType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IMediumAttachment_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_Type_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_Type_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_Passthrough_TO(smth) HRESULT STDMETHODCALLTYPE get_Passthrough (BOOL * aPassthrough) { return smth get_Passthrough (aPassthrough); }
#define COM_FORWARD_IMediumAttachment_GETTER_Passthrough_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_Passthrough_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_Passthrough_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_Passthrough_TO (base::)
#define COM_FORWARD_IMediumAttachment_TO(smth) COM_FORWARD_IMediumAttachment_GETTER_Medium_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_Controller_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_Port_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_Device_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_Type_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_Passthrough_TO (smth) 
#define COM_FORWARD_IMediumAttachment_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_TO_BASE(base) COM_FORWARD_IMediumAttachment_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IMedium_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Id_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Id_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IMedium_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Description_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Description_TO (base::)
#define COM_FORWARD_IMedium_SETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE put_Description (BSTR aDescription) { return smth put_Description (aDescription); }
#define COM_FORWARD_IMedium_SETTER_Description_TO_OBJ(obj) COM_FORWARD_IMedium_SETTER_Description_TO ((obj)->)
#define COM_FORWARD_IMedium_SETTER_Description_TO_BASE(base) COM_FORWARD_IMedium_SETTER_Description_TO (base::)
#define COM_FORWARD_IMedium_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (MediumState * aState) { return smth get_State (aState); }
#define COM_FORWARD_IMedium_GETTER_State_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_State_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_State_TO_BASE(base) COM_FORWARD_IMedium_GETTER_State_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Location_TO(smth) HRESULT STDMETHODCALLTYPE get_Location (BSTR * aLocation) { return smth get_Location (aLocation); }
#define COM_FORWARD_IMedium_GETTER_Location_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Location_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Location_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Location_TO (base::)
#define COM_FORWARD_IMedium_SETTER_Location_TO(smth) HRESULT STDMETHODCALLTYPE put_Location (BSTR aLocation) { return smth put_Location (aLocation); }
#define COM_FORWARD_IMedium_SETTER_Location_TO_OBJ(obj) COM_FORWARD_IMedium_SETTER_Location_TO ((obj)->)
#define COM_FORWARD_IMedium_SETTER_Location_TO_BASE(base) COM_FORWARD_IMedium_SETTER_Location_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IMedium_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Name_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Name_TO (base::)
#define COM_FORWARD_IMedium_GETTER_DeviceType_TO(smth) HRESULT STDMETHODCALLTYPE get_DeviceType (DeviceType * aDeviceType) { return smth get_DeviceType (aDeviceType); }
#define COM_FORWARD_IMedium_GETTER_DeviceType_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_DeviceType_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_DeviceType_TO_BASE(base) COM_FORWARD_IMedium_GETTER_DeviceType_TO (base::)
#define COM_FORWARD_IMedium_GETTER_HostDrive_TO(smth) HRESULT STDMETHODCALLTYPE get_HostDrive (BOOL * aHostDrive) { return smth get_HostDrive (aHostDrive); }
#define COM_FORWARD_IMedium_GETTER_HostDrive_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_HostDrive_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_HostDrive_TO_BASE(base) COM_FORWARD_IMedium_GETTER_HostDrive_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Size_TO(smth) HRESULT STDMETHODCALLTYPE get_Size (ULONG64 * aSize) { return smth get_Size (aSize); }
#define COM_FORWARD_IMedium_GETTER_Size_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Size_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Size_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Size_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Format_TO(smth) HRESULT STDMETHODCALLTYPE get_Format (BSTR * aFormat) { return smth get_Format (aFormat); }
#define COM_FORWARD_IMedium_GETTER_Format_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Format_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Format_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Format_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (MediumType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IMedium_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Type_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Type_TO (base::)
#define COM_FORWARD_IMedium_SETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE put_Type (MediumType aType) { return smth put_Type (aType); }
#define COM_FORWARD_IMedium_SETTER_Type_TO_OBJ(obj) COM_FORWARD_IMedium_SETTER_Type_TO ((obj)->)
#define COM_FORWARD_IMedium_SETTER_Type_TO_BASE(base) COM_FORWARD_IMedium_SETTER_Type_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Parent_TO(smth) HRESULT STDMETHODCALLTYPE get_Parent (IMedium * * aParent) { return smth get_Parent (aParent); }
#define COM_FORWARD_IMedium_GETTER_Parent_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Parent_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Parent_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Parent_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Children_TO(smth) HRESULT STDMETHODCALLTYPE get_Children (SAFEARRAY * * aChildren) { return smth get_Children (aChildren); }
#define COM_FORWARD_IMedium_GETTER_Children_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Children_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Children_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Children_TO (base::)
#define COM_FORWARD_IMedium_GETTER_Base_TO(smth) HRESULT STDMETHODCALLTYPE get_Base (IMedium * * aBase) { return smth get_Base (aBase); }
#define COM_FORWARD_IMedium_GETTER_Base_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Base_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Base_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Base_TO (base::)
#define COM_FORWARD_IMedium_GETTER_ReadOnly_TO(smth) HRESULT STDMETHODCALLTYPE get_ReadOnly (BOOL * aReadOnly) { return smth get_ReadOnly (aReadOnly); }
#define COM_FORWARD_IMedium_GETTER_ReadOnly_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_ReadOnly_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_ReadOnly_TO_BASE(base) COM_FORWARD_IMedium_GETTER_ReadOnly_TO (base::)
#define COM_FORWARD_IMedium_GETTER_LogicalSize_TO(smth) HRESULT STDMETHODCALLTYPE get_LogicalSize (ULONG64 * aLogicalSize) { return smth get_LogicalSize (aLogicalSize); }
#define COM_FORWARD_IMedium_GETTER_LogicalSize_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_LogicalSize_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_LogicalSize_TO_BASE(base) COM_FORWARD_IMedium_GETTER_LogicalSize_TO (base::)
#define COM_FORWARD_IMedium_GETTER_AutoReset_TO(smth) HRESULT STDMETHODCALLTYPE get_AutoReset (BOOL * aAutoReset) { return smth get_AutoReset (aAutoReset); }
#define COM_FORWARD_IMedium_GETTER_AutoReset_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_AutoReset_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_AutoReset_TO_BASE(base) COM_FORWARD_IMedium_GETTER_AutoReset_TO (base::)
#define COM_FORWARD_IMedium_SETTER_AutoReset_TO(smth) HRESULT STDMETHODCALLTYPE put_AutoReset (BOOL aAutoReset) { return smth put_AutoReset (aAutoReset); }
#define COM_FORWARD_IMedium_SETTER_AutoReset_TO_OBJ(obj) COM_FORWARD_IMedium_SETTER_AutoReset_TO ((obj)->)
#define COM_FORWARD_IMedium_SETTER_AutoReset_TO_BASE(base) COM_FORWARD_IMedium_SETTER_AutoReset_TO (base::)
#define COM_FORWARD_IMedium_GETTER_LastAccessError_TO(smth) HRESULT STDMETHODCALLTYPE get_LastAccessError (BSTR * aLastAccessError) { return smth get_LastAccessError (aLastAccessError); }
#define COM_FORWARD_IMedium_GETTER_LastAccessError_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_LastAccessError_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_LastAccessError_TO_BASE(base) COM_FORWARD_IMedium_GETTER_LastAccessError_TO (base::)
#define COM_FORWARD_IMedium_GETTER_MachineIds_TO(smth) HRESULT STDMETHODCALLTYPE get_MachineIds (SAFEARRAY * * aMachineIds) { return smth get_MachineIds (aMachineIds); }
#define COM_FORWARD_IMedium_GETTER_MachineIds_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_MachineIds_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_MachineIds_TO_BASE(base) COM_FORWARD_IMedium_GETTER_MachineIds_TO (base::)
#define COM_FORWARD_IMedium_RefreshState_TO(smth) HRESULT STDMETHODCALLTYPE RefreshState (MediumState * aState) { return smth RefreshState (aState); }
#define COM_FORWARD_IMedium_RefreshState_TO_OBJ(obj) COM_FORWARD_IMedium_RefreshState_TO ((obj)->)
#define COM_FORWARD_IMedium_RefreshState_TO_BASE(base) COM_FORWARD_IMedium_RefreshState_TO (base::)
#define COM_FORWARD_IMedium_GetSnapshotIds_TO(smth) HRESULT STDMETHODCALLTYPE GetSnapshotIds (BSTR aMachineId, SAFEARRAY * * aSnapshotIds) { return smth GetSnapshotIds (aMachineId, aSnapshotIds); }
#define COM_FORWARD_IMedium_GetSnapshotIds_TO_OBJ(obj) COM_FORWARD_IMedium_GetSnapshotIds_TO ((obj)->)
#define COM_FORWARD_IMedium_GetSnapshotIds_TO_BASE(base) COM_FORWARD_IMedium_GetSnapshotIds_TO (base::)
#define COM_FORWARD_IMedium_LockRead_TO(smth) HRESULT STDMETHODCALLTYPE LockRead (MediumState * aState) { return smth LockRead (aState); }
#define COM_FORWARD_IMedium_LockRead_TO_OBJ(obj) COM_FORWARD_IMedium_LockRead_TO ((obj)->)
#define COM_FORWARD_IMedium_LockRead_TO_BASE(base) COM_FORWARD_IMedium_LockRead_TO (base::)
#define COM_FORWARD_IMedium_UnlockRead_TO(smth) HRESULT STDMETHODCALLTYPE UnlockRead (MediumState * aState) { return smth UnlockRead (aState); }
#define COM_FORWARD_IMedium_UnlockRead_TO_OBJ(obj) COM_FORWARD_IMedium_UnlockRead_TO ((obj)->)
#define COM_FORWARD_IMedium_UnlockRead_TO_BASE(base) COM_FORWARD_IMedium_UnlockRead_TO (base::)
#define COM_FORWARD_IMedium_LockWrite_TO(smth) HRESULT STDMETHODCALLTYPE LockWrite (MediumState * aState) { return smth LockWrite (aState); }
#define COM_FORWARD_IMedium_LockWrite_TO_OBJ(obj) COM_FORWARD_IMedium_LockWrite_TO ((obj)->)
#define COM_FORWARD_IMedium_LockWrite_TO_BASE(base) COM_FORWARD_IMedium_LockWrite_TO (base::)
#define COM_FORWARD_IMedium_UnlockWrite_TO(smth) HRESULT STDMETHODCALLTYPE UnlockWrite (MediumState * aState) { return smth UnlockWrite (aState); }
#define COM_FORWARD_IMedium_UnlockWrite_TO_OBJ(obj) COM_FORWARD_IMedium_UnlockWrite_TO ((obj)->)
#define COM_FORWARD_IMedium_UnlockWrite_TO_BASE(base) COM_FORWARD_IMedium_UnlockWrite_TO (base::)
#define COM_FORWARD_IMedium_Close_TO(smth) HRESULT STDMETHODCALLTYPE Close() { return smth Close(); }
#define COM_FORWARD_IMedium_Close_TO_OBJ(obj) COM_FORWARD_IMedium_Close_TO ((obj)->)
#define COM_FORWARD_IMedium_Close_TO_BASE(base) COM_FORWARD_IMedium_Close_TO (base::)
#define COM_FORWARD_IMedium_GetProperty_TO(smth) HRESULT STDMETHODCALLTYPE GetProperty (BSTR aName, BSTR * aValue) { return smth GetProperty (aName, aValue); }
#define COM_FORWARD_IMedium_GetProperty_TO_OBJ(obj) COM_FORWARD_IMedium_GetProperty_TO ((obj)->)
#define COM_FORWARD_IMedium_GetProperty_TO_BASE(base) COM_FORWARD_IMedium_GetProperty_TO (base::)
#define COM_FORWARD_IMedium_SetProperty_TO(smth) HRESULT STDMETHODCALLTYPE SetProperty (BSTR aName, BSTR aValue) { return smth SetProperty (aName, aValue); }
#define COM_FORWARD_IMedium_SetProperty_TO_OBJ(obj) COM_FORWARD_IMedium_SetProperty_TO ((obj)->)
#define COM_FORWARD_IMedium_SetProperty_TO_BASE(base) COM_FORWARD_IMedium_SetProperty_TO (base::)
#define COM_FORWARD_IMedium_GetProperties_TO(smth) HRESULT STDMETHODCALLTYPE GetProperties (BSTR aNames, SAFEARRAY * * aReturnNames, SAFEARRAY * * aReturnValues) { return smth GetProperties (aNames, aReturnNames, aReturnValues); }
#define COM_FORWARD_IMedium_GetProperties_TO_OBJ(obj) COM_FORWARD_IMedium_GetProperties_TO ((obj)->)
#define COM_FORWARD_IMedium_GetProperties_TO_BASE(base) COM_FORWARD_IMedium_GetProperties_TO (base::)
#define COM_FORWARD_IMedium_SetProperties_TO(smth) HRESULT STDMETHODCALLTYPE SetProperties (SAFEARRAY * * aNames, SAFEARRAY * * aValues) { return smth SetProperties (aNames, aValues); }
#define COM_FORWARD_IMedium_SetProperties_TO_OBJ(obj) COM_FORWARD_IMedium_SetProperties_TO ((obj)->)
#define COM_FORWARD_IMedium_SetProperties_TO_BASE(base) COM_FORWARD_IMedium_SetProperties_TO (base::)
#define COM_FORWARD_IMedium_CreateBaseStorage_TO(smth) HRESULT STDMETHODCALLTYPE CreateBaseStorage (ULONG64 aLogicalSize, MediumVariant aVariant, IProgress * * aProgress) { return smth CreateBaseStorage (aLogicalSize, aVariant, aProgress); }
#define COM_FORWARD_IMedium_CreateBaseStorage_TO_OBJ(obj) COM_FORWARD_IMedium_CreateBaseStorage_TO ((obj)->)
#define COM_FORWARD_IMedium_CreateBaseStorage_TO_BASE(base) COM_FORWARD_IMedium_CreateBaseStorage_TO (base::)
#define COM_FORWARD_IMedium_DeleteStorage_TO(smth) HRESULT STDMETHODCALLTYPE DeleteStorage (IProgress * * aProgress) { return smth DeleteStorage (aProgress); }
#define COM_FORWARD_IMedium_DeleteStorage_TO_OBJ(obj) COM_FORWARD_IMedium_DeleteStorage_TO ((obj)->)
#define COM_FORWARD_IMedium_DeleteStorage_TO_BASE(base) COM_FORWARD_IMedium_DeleteStorage_TO (base::)
#define COM_FORWARD_IMedium_CreateDiffStorage_TO(smth) HRESULT STDMETHODCALLTYPE CreateDiffStorage (IMedium * aTarget, MediumVariant aVariant, IProgress * * aProgress) { return smth CreateDiffStorage (aTarget, aVariant, aProgress); }
#define COM_FORWARD_IMedium_CreateDiffStorage_TO_OBJ(obj) COM_FORWARD_IMedium_CreateDiffStorage_TO ((obj)->)
#define COM_FORWARD_IMedium_CreateDiffStorage_TO_BASE(base) COM_FORWARD_IMedium_CreateDiffStorage_TO (base::)
#define COM_FORWARD_IMedium_MergeTo_TO(smth) HRESULT STDMETHODCALLTYPE MergeTo (BSTR aTargetId, IProgress * * aProgress) { return smth MergeTo (aTargetId, aProgress); }
#define COM_FORWARD_IMedium_MergeTo_TO_OBJ(obj) COM_FORWARD_IMedium_MergeTo_TO ((obj)->)
#define COM_FORWARD_IMedium_MergeTo_TO_BASE(base) COM_FORWARD_IMedium_MergeTo_TO (base::)
#define COM_FORWARD_IMedium_CloneTo_TO(smth) HRESULT STDMETHODCALLTYPE CloneTo (IMedium * aTarget, MediumVariant aVariant, IMedium * aParent, IProgress * * aProgress) { return smth CloneTo (aTarget, aVariant, aParent, aProgress); }
#define COM_FORWARD_IMedium_CloneTo_TO_OBJ(obj) COM_FORWARD_IMedium_CloneTo_TO ((obj)->)
#define COM_FORWARD_IMedium_CloneTo_TO_BASE(base) COM_FORWARD_IMedium_CloneTo_TO (base::)
#define COM_FORWARD_IMedium_Compact_TO(smth) HRESULT STDMETHODCALLTYPE Compact (IProgress * * aProgress) { return smth Compact (aProgress); }
#define COM_FORWARD_IMedium_Compact_TO_OBJ(obj) COM_FORWARD_IMedium_Compact_TO ((obj)->)
#define COM_FORWARD_IMedium_Compact_TO_BASE(base) COM_FORWARD_IMedium_Compact_TO (base::)
#define COM_FORWARD_IMedium_Resize_TO(smth) HRESULT STDMETHODCALLTYPE Resize (ULONG64 aLogicalSize, IProgress * * aProgress) { return smth Resize (aLogicalSize, aProgress); }
#define COM_FORWARD_IMedium_Resize_TO_OBJ(obj) COM_FORWARD_IMedium_Resize_TO ((obj)->)
#define COM_FORWARD_IMedium_Resize_TO_BASE(base) COM_FORWARD_IMedium_Resize_TO (base::)
#define COM_FORWARD_IMedium_Reset_TO(smth) HRESULT STDMETHODCALLTYPE Reset (IProgress * * aProgress) { return smth Reset (aProgress); }
#define COM_FORWARD_IMedium_Reset_TO_OBJ(obj) COM_FORWARD_IMedium_Reset_TO ((obj)->)
#define COM_FORWARD_IMedium_Reset_TO_BASE(base) COM_FORWARD_IMedium_Reset_TO (base::)
#define COM_FORWARD_IMedium_TO(smth) COM_FORWARD_IMedium_GETTER_Id_TO (smth) COM_FORWARD_IMedium_GETTER_Description_TO (smth) COM_FORWARD_IMedium_SETTER_Description_TO (smth) COM_FORWARD_IMedium_GETTER_State_TO (smth) COM_FORWARD_IMedium_GETTER_Location_TO (smth) COM_FORWARD_IMedium_SETTER_Location_TO (smth) COM_FORWARD_IMedium_GETTER_Name_TO (smth) COM_FORWARD_IMedium_GETTER_DeviceType_TO (smth) COM_FORWARD_IMedium_GETTER_HostDrive_TO (smth) COM_FORWARD_IMedium_GETTER_Size_TO (smth) COM_FORWARD_IMedium_GETTER_Format_TO (smth) COM_FORWARD_IMedium_GETTER_Type_TO (smth) COM_FORWARD_IMedium_SETTER_Type_TO (smth) COM_FORWARD_IMedium_GETTER_Parent_TO (smth) COM_FORWARD_IMedium_GETTER_Children_TO (smth) COM_FORWARD_IMedium_GETTER_Base_TO (smth) COM_FORWARD_IMedium_GETTER_ReadOnly_TO (smth) COM_FORWARD_IMedium_GETTER_LogicalSize_TO (smth) COM_FORWARD_IMedium_GETTER_AutoReset_TO (smth) COM_FORWARD_IMedium_SETTER_AutoReset_TO (smth) COM_FORWARD_IMedium_GETTER_LastAccessError_TO (smth) COM_FORWARD_IMedium_GETTER_MachineIds_TO (smth) COM_FORWARD_IMedium_RefreshState_TO (smth) COM_FORWARD_IMedium_GetSnapshotIds_TO (smth) COM_FORWARD_IMedium_LockRead_TO (smth) COM_FORWARD_IMedium_UnlockRead_TO (smth) COM_FORWARD_IMedium_LockWrite_TO (smth) COM_FORWARD_IMedium_UnlockWrite_TO (smth) COM_FORWARD_IMedium_Close_TO (smth) COM_FORWARD_IMedium_GetProperty_TO (smth) COM_FORWARD_IMedium_SetProperty_TO (smth) COM_FORWARD_IMedium_GetProperties_TO (smth) COM_FORWARD_IMedium_SetProperties_TO (smth) COM_FORWARD_IMedium_CreateBaseStorage_TO (smth) COM_FORWARD_IMedium_DeleteStorage_TO (smth) COM_FORWARD_IMedium_CreateDiffStorage_TO (smth) COM_FORWARD_IMedium_MergeTo_TO (smth) COM_FORWARD_IMedium_CloneTo_TO (smth) COM_FORWARD_IMedium_Compact_TO (smth) COM_FORWARD_IMedium_Resize_TO (smth) COM_FORWARD_IMedium_Reset_TO (smth) 
#define COM_FORWARD_IMedium_TO_OBJ(obj) COM_FORWARD_IMedium_TO ((obj)->)
#define COM_FORWARD_IMedium_TO_BASE(base) COM_FORWARD_IMedium_TO (base::)
#define COM_FORWARD_IMediumFormat_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IMediumFormat_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IMediumFormat_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_GETTER_Id_TO_BASE(base) COM_FORWARD_IMediumFormat_GETTER_Id_TO (base::)
#define COM_FORWARD_IMediumFormat_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IMediumFormat_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IMediumFormat_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_GETTER_Name_TO_BASE(base) COM_FORWARD_IMediumFormat_GETTER_Name_TO (base::)
#define COM_FORWARD_IMediumFormat_GETTER_FileExtensions_TO(smth) HRESULT STDMETHODCALLTYPE get_FileExtensions (SAFEARRAY * * aFileExtensions) { return smth get_FileExtensions (aFileExtensions); }
#define COM_FORWARD_IMediumFormat_GETTER_FileExtensions_TO_OBJ(obj) COM_FORWARD_IMediumFormat_GETTER_FileExtensions_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_GETTER_FileExtensions_TO_BASE(base) COM_FORWARD_IMediumFormat_GETTER_FileExtensions_TO (base::)
#define COM_FORWARD_IMediumFormat_GETTER_Capabilities_TO(smth) HRESULT STDMETHODCALLTYPE get_Capabilities (ULONG * aCapabilities) { return smth get_Capabilities (aCapabilities); }
#define COM_FORWARD_IMediumFormat_GETTER_Capabilities_TO_OBJ(obj) COM_FORWARD_IMediumFormat_GETTER_Capabilities_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_GETTER_Capabilities_TO_BASE(base) COM_FORWARD_IMediumFormat_GETTER_Capabilities_TO (base::)
#define COM_FORWARD_IMediumFormat_DescribeProperties_TO(smth) HRESULT STDMETHODCALLTYPE DescribeProperties (SAFEARRAY * * aNames, SAFEARRAY * * aDescription, SAFEARRAY * * aTypes, SAFEARRAY * * aFlags, SAFEARRAY * * aDefaults) { return smth DescribeProperties (aNames, aDescription, aTypes, aFlags, aDefaults); }
#define COM_FORWARD_IMediumFormat_DescribeProperties_TO_OBJ(obj) COM_FORWARD_IMediumFormat_DescribeProperties_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_DescribeProperties_TO_BASE(base) COM_FORWARD_IMediumFormat_DescribeProperties_TO (base::)
#define COM_FORWARD_IMediumFormat_TO(smth) COM_FORWARD_IMediumFormat_GETTER_Id_TO (smth) COM_FORWARD_IMediumFormat_GETTER_Name_TO (smth) COM_FORWARD_IMediumFormat_GETTER_FileExtensions_TO (smth) COM_FORWARD_IMediumFormat_GETTER_Capabilities_TO (smth) COM_FORWARD_IMediumFormat_DescribeProperties_TO (smth) 
#define COM_FORWARD_IMediumFormat_TO_OBJ(obj) COM_FORWARD_IMediumFormat_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_TO_BASE(base) COM_FORWARD_IMediumFormat_TO (base::)
#define COM_FORWARD_IKeyboard_PutScancode_TO(smth) HRESULT STDMETHODCALLTYPE PutScancode (LONG aScancode) { return smth PutScancode (aScancode); }
#define COM_FORWARD_IKeyboard_PutScancode_TO_OBJ(obj) COM_FORWARD_IKeyboard_PutScancode_TO ((obj)->)
#define COM_FORWARD_IKeyboard_PutScancode_TO_BASE(base) COM_FORWARD_IKeyboard_PutScancode_TO (base::)
#define COM_FORWARD_IKeyboard_PutScancodes_TO(smth) HRESULT STDMETHODCALLTYPE PutScancodes (SAFEARRAY * * aScancodes, ULONG * aCodesStored) { return smth PutScancodes (aScancodes, aCodesStored); }
#define COM_FORWARD_IKeyboard_PutScancodes_TO_OBJ(obj) COM_FORWARD_IKeyboard_PutScancodes_TO ((obj)->)
#define COM_FORWARD_IKeyboard_PutScancodes_TO_BASE(base) COM_FORWARD_IKeyboard_PutScancodes_TO (base::)
#define COM_FORWARD_IKeyboard_PutCAD_TO(smth) HRESULT STDMETHODCALLTYPE PutCAD() { return smth PutCAD(); }
#define COM_FORWARD_IKeyboard_PutCAD_TO_OBJ(obj) COM_FORWARD_IKeyboard_PutCAD_TO ((obj)->)
#define COM_FORWARD_IKeyboard_PutCAD_TO_BASE(base) COM_FORWARD_IKeyboard_PutCAD_TO (base::)
#define COM_FORWARD_IKeyboard_TO(smth) COM_FORWARD_IKeyboard_PutScancode_TO (smth) COM_FORWARD_IKeyboard_PutScancodes_TO (smth) COM_FORWARD_IKeyboard_PutCAD_TO (smth) 
#define COM_FORWARD_IKeyboard_TO_OBJ(obj) COM_FORWARD_IKeyboard_TO ((obj)->)
#define COM_FORWARD_IKeyboard_TO_BASE(base) COM_FORWARD_IKeyboard_TO (base::)
#define COM_FORWARD_IMouse_GETTER_AbsoluteSupported_TO(smth) HRESULT STDMETHODCALLTYPE get_AbsoluteSupported (BOOL * aAbsoluteSupported) { return smth get_AbsoluteSupported (aAbsoluteSupported); }
#define COM_FORWARD_IMouse_GETTER_AbsoluteSupported_TO_OBJ(obj) COM_FORWARD_IMouse_GETTER_AbsoluteSupported_TO ((obj)->)
#define COM_FORWARD_IMouse_GETTER_AbsoluteSupported_TO_BASE(base) COM_FORWARD_IMouse_GETTER_AbsoluteSupported_TO (base::)
#define COM_FORWARD_IMouse_PutMouseEvent_TO(smth) HRESULT STDMETHODCALLTYPE PutMouseEvent (LONG aDx, LONG aDy, LONG aDz, LONG aDw, LONG aButtonState) { return smth PutMouseEvent (aDx, aDy, aDz, aDw, aButtonState); }
#define COM_FORWARD_IMouse_PutMouseEvent_TO_OBJ(obj) COM_FORWARD_IMouse_PutMouseEvent_TO ((obj)->)
#define COM_FORWARD_IMouse_PutMouseEvent_TO_BASE(base) COM_FORWARD_IMouse_PutMouseEvent_TO (base::)
#define COM_FORWARD_IMouse_PutMouseEventAbsolute_TO(smth) HRESULT STDMETHODCALLTYPE PutMouseEventAbsolute (LONG aX, LONG aY, LONG aDz, LONG aDw, LONG aButtonState) { return smth PutMouseEventAbsolute (aX, aY, aDz, aDw, aButtonState); }
#define COM_FORWARD_IMouse_PutMouseEventAbsolute_TO_OBJ(obj) COM_FORWARD_IMouse_PutMouseEventAbsolute_TO ((obj)->)
#define COM_FORWARD_IMouse_PutMouseEventAbsolute_TO_BASE(base) COM_FORWARD_IMouse_PutMouseEventAbsolute_TO (base::)
#define COM_FORWARD_IMouse_TO(smth) COM_FORWARD_IMouse_GETTER_AbsoluteSupported_TO (smth) COM_FORWARD_IMouse_PutMouseEvent_TO (smth) COM_FORWARD_IMouse_PutMouseEventAbsolute_TO (smth) 
#define COM_FORWARD_IMouse_TO_OBJ(obj) COM_FORWARD_IMouse_TO ((obj)->)
#define COM_FORWARD_IMouse_TO_BASE(base) COM_FORWARD_IMouse_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_Address_TO(smth) HRESULT STDMETHODCALLTYPE get_Address (BYTE * * aAddress) { return smth get_Address (aAddress); }
#define COM_FORWARD_IFramebuffer_GETTER_Address_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_Address_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_Address_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_Address_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_Width_TO(smth) HRESULT STDMETHODCALLTYPE get_Width (ULONG * aWidth) { return smth get_Width (aWidth); }
#define COM_FORWARD_IFramebuffer_GETTER_Width_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_Width_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_Width_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_Width_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_Height_TO(smth) HRESULT STDMETHODCALLTYPE get_Height (ULONG * aHeight) { return smth get_Height (aHeight); }
#define COM_FORWARD_IFramebuffer_GETTER_Height_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_Height_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_Height_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_Height_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_BitsPerPixel_TO(smth) HRESULT STDMETHODCALLTYPE get_BitsPerPixel (ULONG * aBitsPerPixel) { return smth get_BitsPerPixel (aBitsPerPixel); }
#define COM_FORWARD_IFramebuffer_GETTER_BitsPerPixel_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_BitsPerPixel_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_BitsPerPixel_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_BitsPerPixel_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_BytesPerLine_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesPerLine (ULONG * aBytesPerLine) { return smth get_BytesPerLine (aBytesPerLine); }
#define COM_FORWARD_IFramebuffer_GETTER_BytesPerLine_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_BytesPerLine_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_BytesPerLine_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_BytesPerLine_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_PixelFormat_TO(smth) HRESULT STDMETHODCALLTYPE get_PixelFormat (ULONG * aPixelFormat) { return smth get_PixelFormat (aPixelFormat); }
#define COM_FORWARD_IFramebuffer_GETTER_PixelFormat_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_PixelFormat_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_PixelFormat_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_PixelFormat_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_UsesGuestVRAM_TO(smth) HRESULT STDMETHODCALLTYPE get_UsesGuestVRAM (BOOL * aUsesGuestVRAM) { return smth get_UsesGuestVRAM (aUsesGuestVRAM); }
#define COM_FORWARD_IFramebuffer_GETTER_UsesGuestVRAM_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_UsesGuestVRAM_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_UsesGuestVRAM_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_UsesGuestVRAM_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_HeightReduction_TO(smth) HRESULT STDMETHODCALLTYPE get_HeightReduction (ULONG * aHeightReduction) { return smth get_HeightReduction (aHeightReduction); }
#define COM_FORWARD_IFramebuffer_GETTER_HeightReduction_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_HeightReduction_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_HeightReduction_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_HeightReduction_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_Overlay_TO(smth) HRESULT STDMETHODCALLTYPE get_Overlay (IFramebufferOverlay * * aOverlay) { return smth get_Overlay (aOverlay); }
#define COM_FORWARD_IFramebuffer_GETTER_Overlay_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_Overlay_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_Overlay_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_Overlay_TO (base::)
#define COM_FORWARD_IFramebuffer_GETTER_WinId_TO(smth) HRESULT STDMETHODCALLTYPE get_WinId (ULONG64 * aWinId) { return smth get_WinId (aWinId); }
#define COM_FORWARD_IFramebuffer_GETTER_WinId_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GETTER_WinId_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GETTER_WinId_TO_BASE(base) COM_FORWARD_IFramebuffer_GETTER_WinId_TO (base::)
#define COM_FORWARD_IFramebuffer_Lock_TO(smth) HRESULT STDMETHODCALLTYPE Lock() { return smth Lock(); }
#define COM_FORWARD_IFramebuffer_Lock_TO_OBJ(obj) COM_FORWARD_IFramebuffer_Lock_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_Lock_TO_BASE(base) COM_FORWARD_IFramebuffer_Lock_TO (base::)
#define COM_FORWARD_IFramebuffer_Unlock_TO(smth) HRESULT STDMETHODCALLTYPE Unlock() { return smth Unlock(); }
#define COM_FORWARD_IFramebuffer_Unlock_TO_OBJ(obj) COM_FORWARD_IFramebuffer_Unlock_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_Unlock_TO_BASE(base) COM_FORWARD_IFramebuffer_Unlock_TO (base::)
#define COM_FORWARD_IFramebuffer_NotifyUpdate_TO(smth) HRESULT STDMETHODCALLTYPE NotifyUpdate (ULONG aX, ULONG aY, ULONG aWidth, ULONG aHeight) { return smth NotifyUpdate (aX, aY, aWidth, aHeight); }
#define COM_FORWARD_IFramebuffer_NotifyUpdate_TO_OBJ(obj) COM_FORWARD_IFramebuffer_NotifyUpdate_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_NotifyUpdate_TO_BASE(base) COM_FORWARD_IFramebuffer_NotifyUpdate_TO (base::)
#define COM_FORWARD_IFramebuffer_RequestResize_TO(smth) HRESULT STDMETHODCALLTYPE RequestResize (ULONG aScreenId, ULONG aPixelFormat, BYTE * aVRAM, ULONG aBitsPerPixel, ULONG aBytesPerLine, ULONG aWidth, ULONG aHeight, BOOL * aFinished) { return smth RequestResize (aScreenId, aPixelFormat, aVRAM, aBitsPerPixel, aBytesPerLine, aWidth, aHeight, aFinished); }
#define COM_FORWARD_IFramebuffer_RequestResize_TO_OBJ(obj) COM_FORWARD_IFramebuffer_RequestResize_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_RequestResize_TO_BASE(base) COM_FORWARD_IFramebuffer_RequestResize_TO (base::)
#define COM_FORWARD_IFramebuffer_VideoModeSupported_TO(smth) HRESULT STDMETHODCALLTYPE VideoModeSupported (ULONG aWidth, ULONG aHeight, ULONG aBpp, BOOL * aSupported) { return smth VideoModeSupported (aWidth, aHeight, aBpp, aSupported); }
#define COM_FORWARD_IFramebuffer_VideoModeSupported_TO_OBJ(obj) COM_FORWARD_IFramebuffer_VideoModeSupported_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_VideoModeSupported_TO_BASE(base) COM_FORWARD_IFramebuffer_VideoModeSupported_TO (base::)
#define COM_FORWARD_IFramebuffer_GetVisibleRegion_TO(smth) HRESULT STDMETHODCALLTYPE GetVisibleRegion (BYTE * aRectangles, ULONG aCount, ULONG * aCountCopied) { return smth GetVisibleRegion (aRectangles, aCount, aCountCopied); }
#define COM_FORWARD_IFramebuffer_GetVisibleRegion_TO_OBJ(obj) COM_FORWARD_IFramebuffer_GetVisibleRegion_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_GetVisibleRegion_TO_BASE(base) COM_FORWARD_IFramebuffer_GetVisibleRegion_TO (base::)
#define COM_FORWARD_IFramebuffer_SetVisibleRegion_TO(smth) HRESULT STDMETHODCALLTYPE SetVisibleRegion (BYTE * aRectangles, ULONG aCount) { return smth SetVisibleRegion (aRectangles, aCount); }
#define COM_FORWARD_IFramebuffer_SetVisibleRegion_TO_OBJ(obj) COM_FORWARD_IFramebuffer_SetVisibleRegion_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_SetVisibleRegion_TO_BASE(base) COM_FORWARD_IFramebuffer_SetVisibleRegion_TO (base::)
#define COM_FORWARD_IFramebuffer_ProcessVHWACommand_TO(smth) HRESULT STDMETHODCALLTYPE ProcessVHWACommand (BYTE * aCommand) { return smth ProcessVHWACommand (aCommand); }
#define COM_FORWARD_IFramebuffer_ProcessVHWACommand_TO_OBJ(obj) COM_FORWARD_IFramebuffer_ProcessVHWACommand_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_ProcessVHWACommand_TO_BASE(base) COM_FORWARD_IFramebuffer_ProcessVHWACommand_TO (base::)
#define COM_FORWARD_IFramebuffer_TO(smth) COM_FORWARD_IFramebuffer_GETTER_Address_TO (smth) COM_FORWARD_IFramebuffer_GETTER_Width_TO (smth) COM_FORWARD_IFramebuffer_GETTER_Height_TO (smth) COM_FORWARD_IFramebuffer_GETTER_BitsPerPixel_TO (smth) COM_FORWARD_IFramebuffer_GETTER_BytesPerLine_TO (smth) COM_FORWARD_IFramebuffer_GETTER_PixelFormat_TO (smth) COM_FORWARD_IFramebuffer_GETTER_UsesGuestVRAM_TO (smth) COM_FORWARD_IFramebuffer_GETTER_HeightReduction_TO (smth) COM_FORWARD_IFramebuffer_GETTER_Overlay_TO (smth) COM_FORWARD_IFramebuffer_GETTER_WinId_TO (smth) COM_FORWARD_IFramebuffer_Lock_TO (smth) COM_FORWARD_IFramebuffer_Unlock_TO (smth) COM_FORWARD_IFramebuffer_NotifyUpdate_TO (smth) COM_FORWARD_IFramebuffer_RequestResize_TO (smth) COM_FORWARD_IFramebuffer_VideoModeSupported_TO (smth) COM_FORWARD_IFramebuffer_GetVisibleRegion_TO (smth) COM_FORWARD_IFramebuffer_SetVisibleRegion_TO (smth) COM_FORWARD_IFramebuffer_ProcessVHWACommand_TO (smth) 
#define COM_FORWARD_IFramebuffer_TO_OBJ(obj) COM_FORWARD_IFramebuffer_TO ((obj)->)
#define COM_FORWARD_IFramebuffer_TO_BASE(base) COM_FORWARD_IFramebuffer_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_GETTER_X_TO(smth) HRESULT STDMETHODCALLTYPE get_X (ULONG * aX) { return smth get_X (aX); }
#define COM_FORWARD_IFramebufferOverlay_GETTER_X_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_GETTER_X_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_GETTER_X_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_GETTER_X_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_GETTER_Y_TO(smth) HRESULT STDMETHODCALLTYPE get_Y (ULONG * aY) { return smth get_Y (aY); }
#define COM_FORWARD_IFramebufferOverlay_GETTER_Y_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_GETTER_Y_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_GETTER_Y_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_GETTER_Y_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_GETTER_Visible_TO(smth) HRESULT STDMETHODCALLTYPE get_Visible (BOOL * aVisible) { return smth get_Visible (aVisible); }
#define COM_FORWARD_IFramebufferOverlay_GETTER_Visible_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_GETTER_Visible_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_GETTER_Visible_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_GETTER_Visible_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_SETTER_Visible_TO(smth) HRESULT STDMETHODCALLTYPE put_Visible (BOOL aVisible) { return smth put_Visible (aVisible); }
#define COM_FORWARD_IFramebufferOverlay_SETTER_Visible_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_SETTER_Visible_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_SETTER_Visible_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_SETTER_Visible_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_GETTER_Alpha_TO(smth) HRESULT STDMETHODCALLTYPE get_Alpha (ULONG * aAlpha) { return smth get_Alpha (aAlpha); }
#define COM_FORWARD_IFramebufferOverlay_GETTER_Alpha_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_GETTER_Alpha_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_GETTER_Alpha_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_GETTER_Alpha_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_SETTER_Alpha_TO(smth) HRESULT STDMETHODCALLTYPE put_Alpha (ULONG aAlpha) { return smth put_Alpha (aAlpha); }
#define COM_FORWARD_IFramebufferOverlay_SETTER_Alpha_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_SETTER_Alpha_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_SETTER_Alpha_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_SETTER_Alpha_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_Move_TO(smth) HRESULT STDMETHODCALLTYPE Move (ULONG aX, ULONG aY) { return smth Move (aX, aY); }
#define COM_FORWARD_IFramebufferOverlay_Move_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_Move_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_Move_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_Move_TO (base::)
#define COM_FORWARD_IFramebufferOverlay_TO(smth) COM_FORWARD_IFramebufferOverlay_GETTER_X_TO (smth) COM_FORWARD_IFramebufferOverlay_GETTER_Y_TO (smth) COM_FORWARD_IFramebufferOverlay_GETTER_Visible_TO (smth) COM_FORWARD_IFramebufferOverlay_SETTER_Visible_TO (smth) COM_FORWARD_IFramebufferOverlay_GETTER_Alpha_TO (smth) COM_FORWARD_IFramebufferOverlay_SETTER_Alpha_TO (smth) COM_FORWARD_IFramebufferOverlay_Move_TO (smth) 
#define COM_FORWARD_IFramebufferOverlay_TO_OBJ(obj) COM_FORWARD_IFramebufferOverlay_TO ((obj)->)
#define COM_FORWARD_IFramebufferOverlay_TO_BASE(base) COM_FORWARD_IFramebufferOverlay_TO (base::)
#define COM_FORWARD_IDisplay_GETTER_Width_TO(smth) HRESULT STDMETHODCALLTYPE get_Width (ULONG * aWidth) { return smth get_Width (aWidth); }
#define COM_FORWARD_IDisplay_GETTER_Width_TO_OBJ(obj) COM_FORWARD_IDisplay_GETTER_Width_TO ((obj)->)
#define COM_FORWARD_IDisplay_GETTER_Width_TO_BASE(base) COM_FORWARD_IDisplay_GETTER_Width_TO (base::)
#define COM_FORWARD_IDisplay_GETTER_Height_TO(smth) HRESULT STDMETHODCALLTYPE get_Height (ULONG * aHeight) { return smth get_Height (aHeight); }
#define COM_FORWARD_IDisplay_GETTER_Height_TO_OBJ(obj) COM_FORWARD_IDisplay_GETTER_Height_TO ((obj)->)
#define COM_FORWARD_IDisplay_GETTER_Height_TO_BASE(base) COM_FORWARD_IDisplay_GETTER_Height_TO (base::)
#define COM_FORWARD_IDisplay_GETTER_BitsPerPixel_TO(smth) HRESULT STDMETHODCALLTYPE get_BitsPerPixel (ULONG * aBitsPerPixel) { return smth get_BitsPerPixel (aBitsPerPixel); }
#define COM_FORWARD_IDisplay_GETTER_BitsPerPixel_TO_OBJ(obj) COM_FORWARD_IDisplay_GETTER_BitsPerPixel_TO ((obj)->)
#define COM_FORWARD_IDisplay_GETTER_BitsPerPixel_TO_BASE(base) COM_FORWARD_IDisplay_GETTER_BitsPerPixel_TO (base::)
#define COM_FORWARD_IDisplay_SetFramebuffer_TO(smth) HRESULT STDMETHODCALLTYPE SetFramebuffer (ULONG aScreenId, IFramebuffer * aFramebuffer) { return smth SetFramebuffer (aScreenId, aFramebuffer); }
#define COM_FORWARD_IDisplay_SetFramebuffer_TO_OBJ(obj) COM_FORWARD_IDisplay_SetFramebuffer_TO ((obj)->)
#define COM_FORWARD_IDisplay_SetFramebuffer_TO_BASE(base) COM_FORWARD_IDisplay_SetFramebuffer_TO (base::)
#define COM_FORWARD_IDisplay_GetFramebuffer_TO(smth) HRESULT STDMETHODCALLTYPE GetFramebuffer (ULONG aScreenId, IFramebuffer * * aFramebuffer, LONG * aXOrigin, LONG * aYOrigin) { return smth GetFramebuffer (aScreenId, aFramebuffer, aXOrigin, aYOrigin); }
#define COM_FORWARD_IDisplay_GetFramebuffer_TO_OBJ(obj) COM_FORWARD_IDisplay_GetFramebuffer_TO ((obj)->)
#define COM_FORWARD_IDisplay_GetFramebuffer_TO_BASE(base) COM_FORWARD_IDisplay_GetFramebuffer_TO (base::)
#define COM_FORWARD_IDisplay_SetVideoModeHint_TO(smth) HRESULT STDMETHODCALLTYPE SetVideoModeHint (ULONG aWidth, ULONG aHeight, ULONG aBitsPerPixel, ULONG aDisplay) { return smth SetVideoModeHint (aWidth, aHeight, aBitsPerPixel, aDisplay); }
#define COM_FORWARD_IDisplay_SetVideoModeHint_TO_OBJ(obj) COM_FORWARD_IDisplay_SetVideoModeHint_TO ((obj)->)
#define COM_FORWARD_IDisplay_SetVideoModeHint_TO_BASE(base) COM_FORWARD_IDisplay_SetVideoModeHint_TO (base::)
#define COM_FORWARD_IDisplay_SetSeamlessMode_TO(smth) HRESULT STDMETHODCALLTYPE SetSeamlessMode (BOOL aEnabled) { return smth SetSeamlessMode (aEnabled); }
#define COM_FORWARD_IDisplay_SetSeamlessMode_TO_OBJ(obj) COM_FORWARD_IDisplay_SetSeamlessMode_TO ((obj)->)
#define COM_FORWARD_IDisplay_SetSeamlessMode_TO_BASE(base) COM_FORWARD_IDisplay_SetSeamlessMode_TO (base::)
#define COM_FORWARD_IDisplay_TakeScreenShot_TO(smth) HRESULT STDMETHODCALLTYPE TakeScreenShot (BYTE * aAddress, ULONG aWidth, ULONG aHeight) { return smth TakeScreenShot (aAddress, aWidth, aHeight); }
#define COM_FORWARD_IDisplay_TakeScreenShot_TO_OBJ(obj) COM_FORWARD_IDisplay_TakeScreenShot_TO ((obj)->)
#define COM_FORWARD_IDisplay_TakeScreenShot_TO_BASE(base) COM_FORWARD_IDisplay_TakeScreenShot_TO (base::)
#define COM_FORWARD_IDisplay_TakeScreenShotSlow_TO(smth) HRESULT STDMETHODCALLTYPE TakeScreenShotSlow (ULONG aWidth, ULONG aHeight, SAFEARRAY * * aScreenData) { return smth TakeScreenShotSlow (aWidth, aHeight, aScreenData); }
#define COM_FORWARD_IDisplay_TakeScreenShotSlow_TO_OBJ(obj) COM_FORWARD_IDisplay_TakeScreenShotSlow_TO ((obj)->)
#define COM_FORWARD_IDisplay_TakeScreenShotSlow_TO_BASE(base) COM_FORWARD_IDisplay_TakeScreenShotSlow_TO (base::)
#define COM_FORWARD_IDisplay_DrawToScreen_TO(smth) HRESULT STDMETHODCALLTYPE DrawToScreen (BYTE * aAddress, ULONG aX, ULONG aY, ULONG aWidth, ULONG aHeight) { return smth DrawToScreen (aAddress, aX, aY, aWidth, aHeight); }
#define COM_FORWARD_IDisplay_DrawToScreen_TO_OBJ(obj) COM_FORWARD_IDisplay_DrawToScreen_TO ((obj)->)
#define COM_FORWARD_IDisplay_DrawToScreen_TO_BASE(base) COM_FORWARD_IDisplay_DrawToScreen_TO (base::)
#define COM_FORWARD_IDisplay_InvalidateAndUpdate_TO(smth) HRESULT STDMETHODCALLTYPE InvalidateAndUpdate() { return smth InvalidateAndUpdate(); }
#define COM_FORWARD_IDisplay_InvalidateAndUpdate_TO_OBJ(obj) COM_FORWARD_IDisplay_InvalidateAndUpdate_TO ((obj)->)
#define COM_FORWARD_IDisplay_InvalidateAndUpdate_TO_BASE(base) COM_FORWARD_IDisplay_InvalidateAndUpdate_TO (base::)
#define COM_FORWARD_IDisplay_ResizeCompleted_TO(smth) HRESULT STDMETHODCALLTYPE ResizeCompleted (ULONG aScreenId) { return smth ResizeCompleted (aScreenId); }
#define COM_FORWARD_IDisplay_ResizeCompleted_TO_OBJ(obj) COM_FORWARD_IDisplay_ResizeCompleted_TO ((obj)->)
#define COM_FORWARD_IDisplay_ResizeCompleted_TO_BASE(base) COM_FORWARD_IDisplay_ResizeCompleted_TO (base::)
#define COM_FORWARD_IDisplay_UpdateCompleted_TO(smth) HRESULT STDMETHODCALLTYPE UpdateCompleted() { return smth UpdateCompleted(); }
#define COM_FORWARD_IDisplay_UpdateCompleted_TO_OBJ(obj) COM_FORWARD_IDisplay_UpdateCompleted_TO ((obj)->)
#define COM_FORWARD_IDisplay_UpdateCompleted_TO_BASE(base) COM_FORWARD_IDisplay_UpdateCompleted_TO (base::)
#define COM_FORWARD_IDisplay_CompleteVHWACommand_TO(smth) HRESULT STDMETHODCALLTYPE CompleteVHWACommand (BYTE * aCommand) { return smth CompleteVHWACommand (aCommand); }
#define COM_FORWARD_IDisplay_CompleteVHWACommand_TO_OBJ(obj) COM_FORWARD_IDisplay_CompleteVHWACommand_TO ((obj)->)
#define COM_FORWARD_IDisplay_CompleteVHWACommand_TO_BASE(base) COM_FORWARD_IDisplay_CompleteVHWACommand_TO (base::)
#define COM_FORWARD_IDisplay_TO(smth) COM_FORWARD_IDisplay_GETTER_Width_TO (smth) COM_FORWARD_IDisplay_GETTER_Height_TO (smth) COM_FORWARD_IDisplay_GETTER_BitsPerPixel_TO (smth) COM_FORWARD_IDisplay_SetFramebuffer_TO (smth) COM_FORWARD_IDisplay_GetFramebuffer_TO (smth) COM_FORWARD_IDisplay_SetVideoModeHint_TO (smth) COM_FORWARD_IDisplay_SetSeamlessMode_TO (smth) COM_FORWARD_IDisplay_TakeScreenShot_TO (smth) COM_FORWARD_IDisplay_TakeScreenShotSlow_TO (smth) COM_FORWARD_IDisplay_DrawToScreen_TO (smth) COM_FORWARD_IDisplay_InvalidateAndUpdate_TO (smth) COM_FORWARD_IDisplay_ResizeCompleted_TO (smth) COM_FORWARD_IDisplay_UpdateCompleted_TO (smth) COM_FORWARD_IDisplay_CompleteVHWACommand_TO (smth) 
#define COM_FORWARD_IDisplay_TO_OBJ(obj) COM_FORWARD_IDisplay_TO ((obj)->)
#define COM_FORWARD_IDisplay_TO_BASE(base) COM_FORWARD_IDisplay_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_AdapterType_TO(smth) HRESULT STDMETHODCALLTYPE get_AdapterType (NetworkAdapterType * aAdapterType) { return smth get_AdapterType (aAdapterType); }
#define COM_FORWARD_INetworkAdapter_GETTER_AdapterType_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_AdapterType_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_AdapterType_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_AdapterType_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_AdapterType_TO(smth) HRESULT STDMETHODCALLTYPE put_AdapterType (NetworkAdapterType aAdapterType) { return smth put_AdapterType (aAdapterType); }
#define COM_FORWARD_INetworkAdapter_SETTER_AdapterType_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_AdapterType_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_AdapterType_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_AdapterType_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_Slot_TO(smth) HRESULT STDMETHODCALLTYPE get_Slot (ULONG * aSlot) { return smth get_Slot (aSlot); }
#define COM_FORWARD_INetworkAdapter_GETTER_Slot_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_Slot_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_Slot_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_Slot_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_INetworkAdapter_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_Enabled_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_Enabled_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_INetworkAdapter_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_Enabled_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_Enabled_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_MACAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_MACAddress (BSTR * aMACAddress) { return smth get_MACAddress (aMACAddress); }
#define COM_FORWARD_INetworkAdapter_GETTER_MACAddress_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_MACAddress_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_MACAddress_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_MACAddress_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_MACAddress_TO(smth) HRESULT STDMETHODCALLTYPE put_MACAddress (BSTR aMACAddress) { return smth put_MACAddress (aMACAddress); }
#define COM_FORWARD_INetworkAdapter_SETTER_MACAddress_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_MACAddress_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_MACAddress_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_MACAddress_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_AttachmentType_TO(smth) HRESULT STDMETHODCALLTYPE get_AttachmentType (NetworkAttachmentType * aAttachmentType) { return smth get_AttachmentType (aAttachmentType); }
#define COM_FORWARD_INetworkAdapter_GETTER_AttachmentType_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_AttachmentType_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_AttachmentType_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_AttachmentType_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_HostInterface_TO(smth) HRESULT STDMETHODCALLTYPE get_HostInterface (BSTR * aHostInterface) { return smth get_HostInterface (aHostInterface); }
#define COM_FORWARD_INetworkAdapter_GETTER_HostInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_HostInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_HostInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_HostInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_HostInterface_TO(smth) HRESULT STDMETHODCALLTYPE put_HostInterface (BSTR aHostInterface) { return smth put_HostInterface (aHostInterface); }
#define COM_FORWARD_INetworkAdapter_SETTER_HostInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_HostInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_HostInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_HostInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_InternalNetwork_TO(smth) HRESULT STDMETHODCALLTYPE get_InternalNetwork (BSTR * aInternalNetwork) { return smth get_InternalNetwork (aInternalNetwork); }
#define COM_FORWARD_INetworkAdapter_GETTER_InternalNetwork_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_InternalNetwork_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_InternalNetwork_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_InternalNetwork_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_InternalNetwork_TO(smth) HRESULT STDMETHODCALLTYPE put_InternalNetwork (BSTR aInternalNetwork) { return smth put_InternalNetwork (aInternalNetwork); }
#define COM_FORWARD_INetworkAdapter_SETTER_InternalNetwork_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_InternalNetwork_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_InternalNetwork_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_InternalNetwork_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_NATNetwork_TO(smth) HRESULT STDMETHODCALLTYPE get_NATNetwork (BSTR * aNATNetwork) { return smth get_NATNetwork (aNATNetwork); }
#define COM_FORWARD_INetworkAdapter_GETTER_NATNetwork_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_NATNetwork_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_NATNetwork_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_NATNetwork_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_NATNetwork_TO(smth) HRESULT STDMETHODCALLTYPE put_NATNetwork (BSTR aNATNetwork) { return smth put_NATNetwork (aNATNetwork); }
#define COM_FORWARD_INetworkAdapter_SETTER_NATNetwork_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_NATNetwork_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_NATNetwork_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_NATNetwork_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_CableConnected_TO(smth) HRESULT STDMETHODCALLTYPE get_CableConnected (BOOL * aCableConnected) { return smth get_CableConnected (aCableConnected); }
#define COM_FORWARD_INetworkAdapter_GETTER_CableConnected_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_CableConnected_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_CableConnected_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_CableConnected_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_CableConnected_TO(smth) HRESULT STDMETHODCALLTYPE put_CableConnected (BOOL aCableConnected) { return smth put_CableConnected (aCableConnected); }
#define COM_FORWARD_INetworkAdapter_SETTER_CableConnected_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_CableConnected_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_CableConnected_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_CableConnected_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_LineSpeed_TO(smth) HRESULT STDMETHODCALLTYPE get_LineSpeed (ULONG * aLineSpeed) { return smth get_LineSpeed (aLineSpeed); }
#define COM_FORWARD_INetworkAdapter_GETTER_LineSpeed_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_LineSpeed_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_LineSpeed_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_LineSpeed_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_LineSpeed_TO(smth) HRESULT STDMETHODCALLTYPE put_LineSpeed (ULONG aLineSpeed) { return smth put_LineSpeed (aLineSpeed); }
#define COM_FORWARD_INetworkAdapter_SETTER_LineSpeed_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_LineSpeed_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_LineSpeed_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_LineSpeed_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_TraceEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_TraceEnabled (BOOL * aTraceEnabled) { return smth get_TraceEnabled (aTraceEnabled); }
#define COM_FORWARD_INetworkAdapter_GETTER_TraceEnabled_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_TraceEnabled_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_TraceEnabled_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_TraceEnabled_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_TraceEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_TraceEnabled (BOOL aTraceEnabled) { return smth put_TraceEnabled (aTraceEnabled); }
#define COM_FORWARD_INetworkAdapter_SETTER_TraceEnabled_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_TraceEnabled_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_TraceEnabled_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_TraceEnabled_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_TraceFile_TO(smth) HRESULT STDMETHODCALLTYPE get_TraceFile (BSTR * aTraceFile) { return smth get_TraceFile (aTraceFile); }
#define COM_FORWARD_INetworkAdapter_GETTER_TraceFile_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_TraceFile_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_TraceFile_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_TraceFile_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_TraceFile_TO(smth) HRESULT STDMETHODCALLTYPE put_TraceFile (BSTR aTraceFile) { return smth put_TraceFile (aTraceFile); }
#define COM_FORWARD_INetworkAdapter_SETTER_TraceFile_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_TraceFile_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_TraceFile_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_TraceFile_TO (base::)
#define COM_FORWARD_INetworkAdapter_AttachToNAT_TO(smth) HRESULT STDMETHODCALLTYPE AttachToNAT() { return smth AttachToNAT(); }
#define COM_FORWARD_INetworkAdapter_AttachToNAT_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_AttachToNAT_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_AttachToNAT_TO_BASE(base) COM_FORWARD_INetworkAdapter_AttachToNAT_TO (base::)
#define COM_FORWARD_INetworkAdapter_AttachToBridgedInterface_TO(smth) HRESULT STDMETHODCALLTYPE AttachToBridgedInterface() { return smth AttachToBridgedInterface(); }
#define COM_FORWARD_INetworkAdapter_AttachToBridgedInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_AttachToBridgedInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_AttachToBridgedInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_AttachToBridgedInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_AttachToInternalNetwork_TO(smth) HRESULT STDMETHODCALLTYPE AttachToInternalNetwork() { return smth AttachToInternalNetwork(); }
#define COM_FORWARD_INetworkAdapter_AttachToInternalNetwork_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_AttachToInternalNetwork_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_AttachToInternalNetwork_TO_BASE(base) COM_FORWARD_INetworkAdapter_AttachToInternalNetwork_TO (base::)
#define COM_FORWARD_INetworkAdapter_AttachToHostOnlyInterface_TO(smth) HRESULT STDMETHODCALLTYPE AttachToHostOnlyInterface() { return smth AttachToHostOnlyInterface(); }
#define COM_FORWARD_INetworkAdapter_AttachToHostOnlyInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_AttachToHostOnlyInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_AttachToHostOnlyInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_AttachToHostOnlyInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_Detach_TO(smth) HRESULT STDMETHODCALLTYPE Detach() { return smth Detach(); }
#define COM_FORWARD_INetworkAdapter_Detach_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_Detach_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_Detach_TO_BASE(base) COM_FORWARD_INetworkAdapter_Detach_TO (base::)
#define COM_FORWARD_INetworkAdapter_TO(smth) COM_FORWARD_INetworkAdapter_GETTER_AdapterType_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_AdapterType_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_Slot_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_Enabled_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_Enabled_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_MACAddress_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_MACAddress_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_AttachmentType_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_HostInterface_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_HostInterface_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_InternalNetwork_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_InternalNetwork_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_NATNetwork_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_NATNetwork_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_CableConnected_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_CableConnected_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_LineSpeed_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_LineSpeed_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_TraceEnabled_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_TraceEnabled_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_TraceFile_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_TraceFile_TO (smth) COM_FORWARD_INetworkAdapter_AttachToNAT_TO (smth) COM_FORWARD_INetworkAdapter_AttachToBridgedInterface_TO (smth) COM_FORWARD_INetworkAdapter_AttachToInternalNetwork_TO (smth) COM_FORWARD_INetworkAdapter_AttachToHostOnlyInterface_TO (smth) COM_FORWARD_INetworkAdapter_Detach_TO (smth) 
#define COM_FORWARD_INetworkAdapter_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_TO_BASE(base) COM_FORWARD_INetworkAdapter_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_Slot_TO(smth) HRESULT STDMETHODCALLTYPE get_Slot (ULONG * aSlot) { return smth get_Slot (aSlot); }
#define COM_FORWARD_ISerialPort_GETTER_Slot_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_Slot_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_Slot_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_Slot_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_ISerialPort_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_Enabled_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_Enabled_TO (base::)
#define COM_FORWARD_ISerialPort_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_ISerialPort_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_ISerialPort_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_ISerialPort_SETTER_Enabled_TO_BASE(base) COM_FORWARD_ISerialPort_SETTER_Enabled_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_IOBase_TO(smth) HRESULT STDMETHODCALLTYPE get_IOBase (ULONG * aIOBase) { return smth get_IOBase (aIOBase); }
#define COM_FORWARD_ISerialPort_GETTER_IOBase_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_IOBase_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_IOBase_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_IOBase_TO (base::)
#define COM_FORWARD_ISerialPort_SETTER_IOBase_TO(smth) HRESULT STDMETHODCALLTYPE put_IOBase (ULONG aIOBase) { return smth put_IOBase (aIOBase); }
#define COM_FORWARD_ISerialPort_SETTER_IOBase_TO_OBJ(obj) COM_FORWARD_ISerialPort_SETTER_IOBase_TO ((obj)->)
#define COM_FORWARD_ISerialPort_SETTER_IOBase_TO_BASE(base) COM_FORWARD_ISerialPort_SETTER_IOBase_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_IRQ_TO(smth) HRESULT STDMETHODCALLTYPE get_IRQ (ULONG * aIRQ) { return smth get_IRQ (aIRQ); }
#define COM_FORWARD_ISerialPort_GETTER_IRQ_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_IRQ_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_IRQ_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_IRQ_TO (base::)
#define COM_FORWARD_ISerialPort_SETTER_IRQ_TO(smth) HRESULT STDMETHODCALLTYPE put_IRQ (ULONG aIRQ) { return smth put_IRQ (aIRQ); }
#define COM_FORWARD_ISerialPort_SETTER_IRQ_TO_OBJ(obj) COM_FORWARD_ISerialPort_SETTER_IRQ_TO ((obj)->)
#define COM_FORWARD_ISerialPort_SETTER_IRQ_TO_BASE(base) COM_FORWARD_ISerialPort_SETTER_IRQ_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_HostMode_TO(smth) HRESULT STDMETHODCALLTYPE get_HostMode (PortMode * aHostMode) { return smth get_HostMode (aHostMode); }
#define COM_FORWARD_ISerialPort_GETTER_HostMode_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_HostMode_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_HostMode_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_HostMode_TO (base::)
#define COM_FORWARD_ISerialPort_SETTER_HostMode_TO(smth) HRESULT STDMETHODCALLTYPE put_HostMode (PortMode aHostMode) { return smth put_HostMode (aHostMode); }
#define COM_FORWARD_ISerialPort_SETTER_HostMode_TO_OBJ(obj) COM_FORWARD_ISerialPort_SETTER_HostMode_TO ((obj)->)
#define COM_FORWARD_ISerialPort_SETTER_HostMode_TO_BASE(base) COM_FORWARD_ISerialPort_SETTER_HostMode_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_Server_TO(smth) HRESULT STDMETHODCALLTYPE get_Server (BOOL * aServer) { return smth get_Server (aServer); }
#define COM_FORWARD_ISerialPort_GETTER_Server_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_Server_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_Server_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_Server_TO (base::)
#define COM_FORWARD_ISerialPort_SETTER_Server_TO(smth) HRESULT STDMETHODCALLTYPE put_Server (BOOL aServer) { return smth put_Server (aServer); }
#define COM_FORWARD_ISerialPort_SETTER_Server_TO_OBJ(obj) COM_FORWARD_ISerialPort_SETTER_Server_TO ((obj)->)
#define COM_FORWARD_ISerialPort_SETTER_Server_TO_BASE(base) COM_FORWARD_ISerialPort_SETTER_Server_TO (base::)
#define COM_FORWARD_ISerialPort_GETTER_Path_TO(smth) HRESULT STDMETHODCALLTYPE get_Path (BSTR * aPath) { return smth get_Path (aPath); }
#define COM_FORWARD_ISerialPort_GETTER_Path_TO_OBJ(obj) COM_FORWARD_ISerialPort_GETTER_Path_TO ((obj)->)
#define COM_FORWARD_ISerialPort_GETTER_Path_TO_BASE(base) COM_FORWARD_ISerialPort_GETTER_Path_TO (base::)
#define COM_FORWARD_ISerialPort_SETTER_Path_TO(smth) HRESULT STDMETHODCALLTYPE put_Path (BSTR aPath) { return smth put_Path (aPath); }
#define COM_FORWARD_ISerialPort_SETTER_Path_TO_OBJ(obj) COM_FORWARD_ISerialPort_SETTER_Path_TO ((obj)->)
#define COM_FORWARD_ISerialPort_SETTER_Path_TO_BASE(base) COM_FORWARD_ISerialPort_SETTER_Path_TO (base::)
#define COM_FORWARD_ISerialPort_TO(smth) COM_FORWARD_ISerialPort_GETTER_Slot_TO (smth) COM_FORWARD_ISerialPort_GETTER_Enabled_TO (smth) COM_FORWARD_ISerialPort_SETTER_Enabled_TO (smth) COM_FORWARD_ISerialPort_GETTER_IOBase_TO (smth) COM_FORWARD_ISerialPort_SETTER_IOBase_TO (smth) COM_FORWARD_ISerialPort_GETTER_IRQ_TO (smth) COM_FORWARD_ISerialPort_SETTER_IRQ_TO (smth) COM_FORWARD_ISerialPort_GETTER_HostMode_TO (smth) COM_FORWARD_ISerialPort_SETTER_HostMode_TO (smth) COM_FORWARD_ISerialPort_GETTER_Server_TO (smth) COM_FORWARD_ISerialPort_SETTER_Server_TO (smth) COM_FORWARD_ISerialPort_GETTER_Path_TO (smth) COM_FORWARD_ISerialPort_SETTER_Path_TO (smth) 
#define COM_FORWARD_ISerialPort_TO_OBJ(obj) COM_FORWARD_ISerialPort_TO ((obj)->)
#define COM_FORWARD_ISerialPort_TO_BASE(base) COM_FORWARD_ISerialPort_TO (base::)
#define COM_FORWARD_IParallelPort_GETTER_Slot_TO(smth) HRESULT STDMETHODCALLTYPE get_Slot (ULONG * aSlot) { return smth get_Slot (aSlot); }
#define COM_FORWARD_IParallelPort_GETTER_Slot_TO_OBJ(obj) COM_FORWARD_IParallelPort_GETTER_Slot_TO ((obj)->)
#define COM_FORWARD_IParallelPort_GETTER_Slot_TO_BASE(base) COM_FORWARD_IParallelPort_GETTER_Slot_TO (base::)
#define COM_FORWARD_IParallelPort_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_IParallelPort_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IParallelPort_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IParallelPort_GETTER_Enabled_TO_BASE(base) COM_FORWARD_IParallelPort_GETTER_Enabled_TO (base::)
#define COM_FORWARD_IParallelPort_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_IParallelPort_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IParallelPort_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IParallelPort_SETTER_Enabled_TO_BASE(base) COM_FORWARD_IParallelPort_SETTER_Enabled_TO (base::)
#define COM_FORWARD_IParallelPort_GETTER_IOBase_TO(smth) HRESULT STDMETHODCALLTYPE get_IOBase (ULONG * aIOBase) { return smth get_IOBase (aIOBase); }
#define COM_FORWARD_IParallelPort_GETTER_IOBase_TO_OBJ(obj) COM_FORWARD_IParallelPort_GETTER_IOBase_TO ((obj)->)
#define COM_FORWARD_IParallelPort_GETTER_IOBase_TO_BASE(base) COM_FORWARD_IParallelPort_GETTER_IOBase_TO (base::)
#define COM_FORWARD_IParallelPort_SETTER_IOBase_TO(smth) HRESULT STDMETHODCALLTYPE put_IOBase (ULONG aIOBase) { return smth put_IOBase (aIOBase); }
#define COM_FORWARD_IParallelPort_SETTER_IOBase_TO_OBJ(obj) COM_FORWARD_IParallelPort_SETTER_IOBase_TO ((obj)->)
#define COM_FORWARD_IParallelPort_SETTER_IOBase_TO_BASE(base) COM_FORWARD_IParallelPort_SETTER_IOBase_TO (base::)
#define COM_FORWARD_IParallelPort_GETTER_IRQ_TO(smth) HRESULT STDMETHODCALLTYPE get_IRQ (ULONG * aIRQ) { return smth get_IRQ (aIRQ); }
#define COM_FORWARD_IParallelPort_GETTER_IRQ_TO_OBJ(obj) COM_FORWARD_IParallelPort_GETTER_IRQ_TO ((obj)->)
#define COM_FORWARD_IParallelPort_GETTER_IRQ_TO_BASE(base) COM_FORWARD_IParallelPort_GETTER_IRQ_TO (base::)
#define COM_FORWARD_IParallelPort_SETTER_IRQ_TO(smth) HRESULT STDMETHODCALLTYPE put_IRQ (ULONG aIRQ) { return smth put_IRQ (aIRQ); }
#define COM_FORWARD_IParallelPort_SETTER_IRQ_TO_OBJ(obj) COM_FORWARD_IParallelPort_SETTER_IRQ_TO ((obj)->)
#define COM_FORWARD_IParallelPort_SETTER_IRQ_TO_BASE(base) COM_FORWARD_IParallelPort_SETTER_IRQ_TO (base::)
#define COM_FORWARD_IParallelPort_GETTER_Path_TO(smth) HRESULT STDMETHODCALLTYPE get_Path (BSTR * aPath) { return smth get_Path (aPath); }
#define COM_FORWARD_IParallelPort_GETTER_Path_TO_OBJ(obj) COM_FORWARD_IParallelPort_GETTER_Path_TO ((obj)->)
#define COM_FORWARD_IParallelPort_GETTER_Path_TO_BASE(base) COM_FORWARD_IParallelPort_GETTER_Path_TO (base::)
#define COM_FORWARD_IParallelPort_SETTER_Path_TO(smth) HRESULT STDMETHODCALLTYPE put_Path (BSTR aPath) { return smth put_Path (aPath); }
#define COM_FORWARD_IParallelPort_SETTER_Path_TO_OBJ(obj) COM_FORWARD_IParallelPort_SETTER_Path_TO ((obj)->)
#define COM_FORWARD_IParallelPort_SETTER_Path_TO_BASE(base) COM_FORWARD_IParallelPort_SETTER_Path_TO (base::)
#define COM_FORWARD_IParallelPort_TO(smth) COM_FORWARD_IParallelPort_GETTER_Slot_TO (smth) COM_FORWARD_IParallelPort_GETTER_Enabled_TO (smth) COM_FORWARD_IParallelPort_SETTER_Enabled_TO (smth) COM_FORWARD_IParallelPort_GETTER_IOBase_TO (smth) COM_FORWARD_IParallelPort_SETTER_IOBase_TO (smth) COM_FORWARD_IParallelPort_GETTER_IRQ_TO (smth) COM_FORWARD_IParallelPort_SETTER_IRQ_TO (smth) COM_FORWARD_IParallelPort_GETTER_Path_TO (smth) COM_FORWARD_IParallelPort_SETTER_Path_TO (smth) 
#define COM_FORWARD_IParallelPort_TO_OBJ(obj) COM_FORWARD_IParallelPort_TO ((obj)->)
#define COM_FORWARD_IParallelPort_TO_BASE(base) COM_FORWARD_IParallelPort_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_Singlestep_TO(smth) HRESULT STDMETHODCALLTYPE get_Singlestep (BOOL * aSinglestep) { return smth get_Singlestep (aSinglestep); }
#define COM_FORWARD_IMachineDebugger_GETTER_Singlestep_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_Singlestep_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_Singlestep_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_Singlestep_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_Singlestep_TO(smth) HRESULT STDMETHODCALLTYPE put_Singlestep (BOOL aSinglestep) { return smth put_Singlestep (aSinglestep); }
#define COM_FORWARD_IMachineDebugger_SETTER_Singlestep_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_Singlestep_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_Singlestep_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_Singlestep_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_RecompileUser_TO(smth) HRESULT STDMETHODCALLTYPE get_RecompileUser (BOOL * aRecompileUser) { return smth get_RecompileUser (aRecompileUser); }
#define COM_FORWARD_IMachineDebugger_GETTER_RecompileUser_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_RecompileUser_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_RecompileUser_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_RecompileUser_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_RecompileUser_TO(smth) HRESULT STDMETHODCALLTYPE put_RecompileUser (BOOL aRecompileUser) { return smth put_RecompileUser (aRecompileUser); }
#define COM_FORWARD_IMachineDebugger_SETTER_RecompileUser_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_RecompileUser_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_RecompileUser_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_RecompileUser_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_RecompileSupervisor_TO(smth) HRESULT STDMETHODCALLTYPE get_RecompileSupervisor (BOOL * aRecompileSupervisor) { return smth get_RecompileSupervisor (aRecompileSupervisor); }
#define COM_FORWARD_IMachineDebugger_GETTER_RecompileSupervisor_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_RecompileSupervisor_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_RecompileSupervisor_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_RecompileSupervisor_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_RecompileSupervisor_TO(smth) HRESULT STDMETHODCALLTYPE put_RecompileSupervisor (BOOL aRecompileSupervisor) { return smth put_RecompileSupervisor (aRecompileSupervisor); }
#define COM_FORWARD_IMachineDebugger_SETTER_RecompileSupervisor_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_RecompileSupervisor_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_RecompileSupervisor_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_RecompileSupervisor_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_PATMEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_PATMEnabled (BOOL * aPATMEnabled) { return smth get_PATMEnabled (aPATMEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_PATMEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_PATMEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_PATMEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_PATMEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_PATMEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_PATMEnabled (BOOL aPATMEnabled) { return smth put_PATMEnabled (aPATMEnabled); }
#define COM_FORWARD_IMachineDebugger_SETTER_PATMEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_PATMEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_PATMEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_PATMEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_CSAMEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_CSAMEnabled (BOOL * aCSAMEnabled) { return smth get_CSAMEnabled (aCSAMEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_CSAMEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_CSAMEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_CSAMEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_CSAMEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_CSAMEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_CSAMEnabled (BOOL aCSAMEnabled) { return smth put_CSAMEnabled (aCSAMEnabled); }
#define COM_FORWARD_IMachineDebugger_SETTER_CSAMEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_CSAMEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_CSAMEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_CSAMEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_LogEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_LogEnabled (BOOL * aLogEnabled) { return smth get_LogEnabled (aLogEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_LogEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_LogEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_LogEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_LogEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_LogEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_LogEnabled (BOOL aLogEnabled) { return smth put_LogEnabled (aLogEnabled); }
#define COM_FORWARD_IMachineDebugger_SETTER_LogEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_LogEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_LogEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_LogEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_HWVirtExEnabled (BOOL * aHWVirtExEnabled) { return smth get_HWVirtExEnabled (aHWVirtExEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExNestedPagingEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_HWVirtExNestedPagingEnabled (BOOL * aHWVirtExNestedPagingEnabled) { return smth get_HWVirtExNestedPagingEnabled (aHWVirtExNestedPagingEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExNestedPagingEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExNestedPagingEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExNestedPagingEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExNestedPagingEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExVPIDEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_HWVirtExVPIDEnabled (BOOL * aHWVirtExVPIDEnabled) { return smth get_HWVirtExVPIDEnabled (aHWVirtExVPIDEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExVPIDEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExVPIDEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_HWVirtExVPIDEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExVPIDEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_PAEEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_PAEEnabled (BOOL * aPAEEnabled) { return smth get_PAEEnabled (aPAEEnabled); }
#define COM_FORWARD_IMachineDebugger_GETTER_PAEEnabled_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_PAEEnabled_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_PAEEnabled_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_PAEEnabled_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_VirtualTimeRate_TO(smth) HRESULT STDMETHODCALLTYPE get_VirtualTimeRate (ULONG * aVirtualTimeRate) { return smth get_VirtualTimeRate (aVirtualTimeRate); }
#define COM_FORWARD_IMachineDebugger_GETTER_VirtualTimeRate_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_VirtualTimeRate_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_VirtualTimeRate_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_VirtualTimeRate_TO (base::)
#define COM_FORWARD_IMachineDebugger_SETTER_VirtualTimeRate_TO(smth) HRESULT STDMETHODCALLTYPE put_VirtualTimeRate (ULONG aVirtualTimeRate) { return smth put_VirtualTimeRate (aVirtualTimeRate); }
#define COM_FORWARD_IMachineDebugger_SETTER_VirtualTimeRate_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SETTER_VirtualTimeRate_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SETTER_VirtualTimeRate_TO_BASE(base) COM_FORWARD_IMachineDebugger_SETTER_VirtualTimeRate_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_VM_TO(smth) HRESULT STDMETHODCALLTYPE get_VM (ULONG64 * aVM) { return smth get_VM (aVM); }
#define COM_FORWARD_IMachineDebugger_GETTER_VM_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_VM_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_VM_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_VM_TO (base::)
#define COM_FORWARD_IMachineDebugger_ResetStats_TO(smth) HRESULT STDMETHODCALLTYPE ResetStats (BSTR aPattern) { return smth ResetStats (aPattern); }
#define COM_FORWARD_IMachineDebugger_ResetStats_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_ResetStats_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_ResetStats_TO_BASE(base) COM_FORWARD_IMachineDebugger_ResetStats_TO (base::)
#define COM_FORWARD_IMachineDebugger_DumpStats_TO(smth) HRESULT STDMETHODCALLTYPE DumpStats (BSTR aPattern) { return smth DumpStats (aPattern); }
#define COM_FORWARD_IMachineDebugger_DumpStats_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_DumpStats_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_DumpStats_TO_BASE(base) COM_FORWARD_IMachineDebugger_DumpStats_TO (base::)
#define COM_FORWARD_IMachineDebugger_GetStats_TO(smth) HRESULT STDMETHODCALLTYPE GetStats (BSTR aPattern, BOOL aWithDescriptions, BSTR * aStats) { return smth GetStats (aPattern, aWithDescriptions, aStats); }
#define COM_FORWARD_IMachineDebugger_GetStats_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GetStats_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GetStats_TO_BASE(base) COM_FORWARD_IMachineDebugger_GetStats_TO (base::)
#define COM_FORWARD_IMachineDebugger_InjectNMI_TO(smth) HRESULT STDMETHODCALLTYPE InjectNMI() { return smth InjectNMI(); }
#define COM_FORWARD_IMachineDebugger_InjectNMI_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_InjectNMI_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_InjectNMI_TO_BASE(base) COM_FORWARD_IMachineDebugger_InjectNMI_TO (base::)
#define COM_FORWARD_IMachineDebugger_TO(smth) COM_FORWARD_IMachineDebugger_GETTER_Singlestep_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_Singlestep_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_RecompileUser_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_RecompileUser_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_RecompileSupervisor_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_RecompileSupervisor_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_PATMEnabled_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_PATMEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_CSAMEnabled_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_CSAMEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_LogEnabled_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_LogEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExNestedPagingEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_HWVirtExVPIDEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_PAEEnabled_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_VirtualTimeRate_TO (smth) COM_FORWARD_IMachineDebugger_SETTER_VirtualTimeRate_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_VM_TO (smth) COM_FORWARD_IMachineDebugger_ResetStats_TO (smth) COM_FORWARD_IMachineDebugger_DumpStats_TO (smth) COM_FORWARD_IMachineDebugger_GetStats_TO (smth) COM_FORWARD_IMachineDebugger_InjectNMI_TO (smth) 
#define COM_FORWARD_IMachineDebugger_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_TO_BASE(base) COM_FORWARD_IMachineDebugger_TO (base::)
#define COM_FORWARD_IUSBController_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_IUSBController_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IUSBController_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IUSBController_GETTER_Enabled_TO_BASE(base) COM_FORWARD_IUSBController_GETTER_Enabled_TO (base::)
#define COM_FORWARD_IUSBController_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_IUSBController_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IUSBController_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IUSBController_SETTER_Enabled_TO_BASE(base) COM_FORWARD_IUSBController_SETTER_Enabled_TO (base::)
#define COM_FORWARD_IUSBController_GETTER_EnabledEhci_TO(smth) HRESULT STDMETHODCALLTYPE get_EnabledEhci (BOOL * aEnabledEhci) { return smth get_EnabledEhci (aEnabledEhci); }
#define COM_FORWARD_IUSBController_GETTER_EnabledEhci_TO_OBJ(obj) COM_FORWARD_IUSBController_GETTER_EnabledEhci_TO ((obj)->)
#define COM_FORWARD_IUSBController_GETTER_EnabledEhci_TO_BASE(base) COM_FORWARD_IUSBController_GETTER_EnabledEhci_TO (base::)
#define COM_FORWARD_IUSBController_SETTER_EnabledEhci_TO(smth) HRESULT STDMETHODCALLTYPE put_EnabledEhci (BOOL aEnabledEhci) { return smth put_EnabledEhci (aEnabledEhci); }
#define COM_FORWARD_IUSBController_SETTER_EnabledEhci_TO_OBJ(obj) COM_FORWARD_IUSBController_SETTER_EnabledEhci_TO ((obj)->)
#define COM_FORWARD_IUSBController_SETTER_EnabledEhci_TO_BASE(base) COM_FORWARD_IUSBController_SETTER_EnabledEhci_TO (base::)
#define COM_FORWARD_IUSBController_GETTER_USBStandard_TO(smth) HRESULT STDMETHODCALLTYPE get_USBStandard (USHORT * aUSBStandard) { return smth get_USBStandard (aUSBStandard); }
#define COM_FORWARD_IUSBController_GETTER_USBStandard_TO_OBJ(obj) COM_FORWARD_IUSBController_GETTER_USBStandard_TO ((obj)->)
#define COM_FORWARD_IUSBController_GETTER_USBStandard_TO_BASE(base) COM_FORWARD_IUSBController_GETTER_USBStandard_TO (base::)
#define COM_FORWARD_IUSBController_GETTER_DeviceFilters_TO(smth) HRESULT STDMETHODCALLTYPE get_DeviceFilters (SAFEARRAY * * aDeviceFilters) { return smth get_DeviceFilters (aDeviceFilters); }
#define COM_FORWARD_IUSBController_GETTER_DeviceFilters_TO_OBJ(obj) COM_FORWARD_IUSBController_GETTER_DeviceFilters_TO ((obj)->)
#define COM_FORWARD_IUSBController_GETTER_DeviceFilters_TO_BASE(base) COM_FORWARD_IUSBController_GETTER_DeviceFilters_TO (base::)
#define COM_FORWARD_IUSBController_CreateDeviceFilter_TO(smth) HRESULT STDMETHODCALLTYPE CreateDeviceFilter (BSTR aName, IUSBDeviceFilter * * aFilter) { return smth CreateDeviceFilter (aName, aFilter); }
#define COM_FORWARD_IUSBController_CreateDeviceFilter_TO_OBJ(obj) COM_FORWARD_IUSBController_CreateDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IUSBController_CreateDeviceFilter_TO_BASE(base) COM_FORWARD_IUSBController_CreateDeviceFilter_TO (base::)
#define COM_FORWARD_IUSBController_InsertDeviceFilter_TO(smth) HRESULT STDMETHODCALLTYPE InsertDeviceFilter (ULONG aPosition, IUSBDeviceFilter * aFilter) { return smth InsertDeviceFilter (aPosition, aFilter); }
#define COM_FORWARD_IUSBController_InsertDeviceFilter_TO_OBJ(obj) COM_FORWARD_IUSBController_InsertDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IUSBController_InsertDeviceFilter_TO_BASE(base) COM_FORWARD_IUSBController_InsertDeviceFilter_TO (base::)
#define COM_FORWARD_IUSBController_RemoveDeviceFilter_TO(smth) HRESULT STDMETHODCALLTYPE RemoveDeviceFilter (ULONG aPosition, IUSBDeviceFilter * * aFilter) { return smth RemoveDeviceFilter (aPosition, aFilter); }
#define COM_FORWARD_IUSBController_RemoveDeviceFilter_TO_OBJ(obj) COM_FORWARD_IUSBController_RemoveDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IUSBController_RemoveDeviceFilter_TO_BASE(base) COM_FORWARD_IUSBController_RemoveDeviceFilter_TO (base::)
#define COM_FORWARD_IUSBController_TO(smth) COM_FORWARD_IUSBController_GETTER_Enabled_TO (smth) COM_FORWARD_IUSBController_SETTER_Enabled_TO (smth) COM_FORWARD_IUSBController_GETTER_EnabledEhci_TO (smth) COM_FORWARD_IUSBController_SETTER_EnabledEhci_TO (smth) COM_FORWARD_IUSBController_GETTER_USBStandard_TO (smth) COM_FORWARD_IUSBController_GETTER_DeviceFilters_TO (smth) COM_FORWARD_IUSBController_CreateDeviceFilter_TO (smth) COM_FORWARD_IUSBController_InsertDeviceFilter_TO (smth) COM_FORWARD_IUSBController_RemoveDeviceFilter_TO (smth) 
#define COM_FORWARD_IUSBController_TO_OBJ(obj) COM_FORWARD_IUSBController_TO ((obj)->)
#define COM_FORWARD_IUSBController_TO_BASE(base) COM_FORWARD_IUSBController_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IUSBDevice_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Id_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Id_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_VendorId_TO(smth) HRESULT STDMETHODCALLTYPE get_VendorId (USHORT * aVendorId) { return smth get_VendorId (aVendorId); }
#define COM_FORWARD_IUSBDevice_GETTER_VendorId_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_VendorId_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_VendorId_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_VendorId_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_ProductId_TO(smth) HRESULT STDMETHODCALLTYPE get_ProductId (USHORT * aProductId) { return smth get_ProductId (aProductId); }
#define COM_FORWARD_IUSBDevice_GETTER_ProductId_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_ProductId_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_ProductId_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_ProductId_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Revision_TO(smth) HRESULT STDMETHODCALLTYPE get_Revision (USHORT * aRevision) { return smth get_Revision (aRevision); }
#define COM_FORWARD_IUSBDevice_GETTER_Revision_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Revision_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Revision_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Revision_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Manufacturer_TO(smth) HRESULT STDMETHODCALLTYPE get_Manufacturer (BSTR * aManufacturer) { return smth get_Manufacturer (aManufacturer); }
#define COM_FORWARD_IUSBDevice_GETTER_Manufacturer_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Manufacturer_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Manufacturer_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Manufacturer_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Product_TO(smth) HRESULT STDMETHODCALLTYPE get_Product (BSTR * aProduct) { return smth get_Product (aProduct); }
#define COM_FORWARD_IUSBDevice_GETTER_Product_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Product_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Product_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Product_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_SerialNumber_TO(smth) HRESULT STDMETHODCALLTYPE get_SerialNumber (BSTR * aSerialNumber) { return smth get_SerialNumber (aSerialNumber); }
#define COM_FORWARD_IUSBDevice_GETTER_SerialNumber_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_SerialNumber_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_SerialNumber_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_SerialNumber_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Address_TO(smth) HRESULT STDMETHODCALLTYPE get_Address (BSTR * aAddress) { return smth get_Address (aAddress); }
#define COM_FORWARD_IUSBDevice_GETTER_Address_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Address_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Address_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Address_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Port_TO(smth) HRESULT STDMETHODCALLTYPE get_Port (USHORT * aPort) { return smth get_Port (aPort); }
#define COM_FORWARD_IUSBDevice_GETTER_Port_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Port_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Port_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Port_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Version_TO(smth) HRESULT STDMETHODCALLTYPE get_Version (USHORT * aVersion) { return smth get_Version (aVersion); }
#define COM_FORWARD_IUSBDevice_GETTER_Version_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Version_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Version_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Version_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_PortVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_PortVersion (USHORT * aPortVersion) { return smth get_PortVersion (aPortVersion); }
#define COM_FORWARD_IUSBDevice_GETTER_PortVersion_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_PortVersion_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_PortVersion_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_PortVersion_TO (base::)
#define COM_FORWARD_IUSBDevice_GETTER_Remote_TO(smth) HRESULT STDMETHODCALLTYPE get_Remote (BOOL * aRemote) { return smth get_Remote (aRemote); }
#define COM_FORWARD_IUSBDevice_GETTER_Remote_TO_OBJ(obj) COM_FORWARD_IUSBDevice_GETTER_Remote_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_GETTER_Remote_TO_BASE(base) COM_FORWARD_IUSBDevice_GETTER_Remote_TO (base::)
#define COM_FORWARD_IUSBDevice_TO(smth) COM_FORWARD_IUSBDevice_GETTER_Id_TO (smth) COM_FORWARD_IUSBDevice_GETTER_VendorId_TO (smth) COM_FORWARD_IUSBDevice_GETTER_ProductId_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Revision_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Manufacturer_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Product_TO (smth) COM_FORWARD_IUSBDevice_GETTER_SerialNumber_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Address_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Port_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Version_TO (smth) COM_FORWARD_IUSBDevice_GETTER_PortVersion_TO (smth) COM_FORWARD_IUSBDevice_GETTER_Remote_TO (smth) 
#define COM_FORWARD_IUSBDevice_TO_OBJ(obj) COM_FORWARD_IUSBDevice_TO ((obj)->)
#define COM_FORWARD_IUSBDevice_TO_BASE(base) COM_FORWARD_IUSBDevice_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Name_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Name_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE put_Name (BSTR aName) { return smth put_Name (aName); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Name_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Name_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Name_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Name_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Active_TO(smth) HRESULT STDMETHODCALLTYPE get_Active (BOOL * aActive) { return smth get_Active (aActive); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Active_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Active_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Active_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Active_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Active_TO(smth) HRESULT STDMETHODCALLTYPE put_Active (BOOL aActive) { return smth put_Active (aActive); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Active_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Active_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Active_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Active_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_VendorId_TO(smth) HRESULT STDMETHODCALLTYPE get_VendorId (BSTR * aVendorId) { return smth get_VendorId (aVendorId); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_VendorId_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_VendorId_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_VendorId_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_VendorId_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_VendorId_TO(smth) HRESULT STDMETHODCALLTYPE put_VendorId (BSTR aVendorId) { return smth put_VendorId (aVendorId); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_VendorId_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_VendorId_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_VendorId_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_VendorId_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_ProductId_TO(smth) HRESULT STDMETHODCALLTYPE get_ProductId (BSTR * aProductId) { return smth get_ProductId (aProductId); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_ProductId_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_ProductId_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_ProductId_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_ProductId_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_ProductId_TO(smth) HRESULT STDMETHODCALLTYPE put_ProductId (BSTR aProductId) { return smth put_ProductId (aProductId); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_ProductId_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_ProductId_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_ProductId_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_ProductId_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Revision_TO(smth) HRESULT STDMETHODCALLTYPE get_Revision (BSTR * aRevision) { return smth get_Revision (aRevision); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Revision_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Revision_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Revision_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Revision_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Revision_TO(smth) HRESULT STDMETHODCALLTYPE put_Revision (BSTR aRevision) { return smth put_Revision (aRevision); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Revision_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Revision_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Revision_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Revision_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Manufacturer_TO(smth) HRESULT STDMETHODCALLTYPE get_Manufacturer (BSTR * aManufacturer) { return smth get_Manufacturer (aManufacturer); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Manufacturer_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Manufacturer_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Manufacturer_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Manufacturer_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Manufacturer_TO(smth) HRESULT STDMETHODCALLTYPE put_Manufacturer (BSTR aManufacturer) { return smth put_Manufacturer (aManufacturer); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Manufacturer_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Manufacturer_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Manufacturer_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Manufacturer_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Product_TO(smth) HRESULT STDMETHODCALLTYPE get_Product (BSTR * aProduct) { return smth get_Product (aProduct); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Product_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Product_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Product_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Product_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Product_TO(smth) HRESULT STDMETHODCALLTYPE put_Product (BSTR aProduct) { return smth put_Product (aProduct); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Product_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Product_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Product_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Product_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_SerialNumber_TO(smth) HRESULT STDMETHODCALLTYPE get_SerialNumber (BSTR * aSerialNumber) { return smth get_SerialNumber (aSerialNumber); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_SerialNumber_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_SerialNumber_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_SerialNumber_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_SerialNumber_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_SerialNumber_TO(smth) HRESULT STDMETHODCALLTYPE put_SerialNumber (BSTR aSerialNumber) { return smth put_SerialNumber (aSerialNumber); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_SerialNumber_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_SerialNumber_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_SerialNumber_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_SerialNumber_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Port_TO(smth) HRESULT STDMETHODCALLTYPE get_Port (BSTR * aPort) { return smth get_Port (aPort); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Port_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Port_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Port_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Port_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Port_TO(smth) HRESULT STDMETHODCALLTYPE put_Port (BSTR aPort) { return smth put_Port (aPort); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Port_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Port_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Port_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Port_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Remote_TO(smth) HRESULT STDMETHODCALLTYPE get_Remote (BSTR * aRemote) { return smth get_Remote (aRemote); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Remote_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_Remote_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_Remote_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_Remote_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Remote_TO(smth) HRESULT STDMETHODCALLTYPE put_Remote (BSTR aRemote) { return smth put_Remote (aRemote); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Remote_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_Remote_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_Remote_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_Remote_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_MaskedInterfaces_TO(smth) HRESULT STDMETHODCALLTYPE get_MaskedInterfaces (ULONG * aMaskedInterfaces) { return smth get_MaskedInterfaces (aMaskedInterfaces); }
#define COM_FORWARD_IUSBDeviceFilter_GETTER_MaskedInterfaces_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_GETTER_MaskedInterfaces_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_GETTER_MaskedInterfaces_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_GETTER_MaskedInterfaces_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_MaskedInterfaces_TO(smth) HRESULT STDMETHODCALLTYPE put_MaskedInterfaces (ULONG aMaskedInterfaces) { return smth put_MaskedInterfaces (aMaskedInterfaces); }
#define COM_FORWARD_IUSBDeviceFilter_SETTER_MaskedInterfaces_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_SETTER_MaskedInterfaces_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_SETTER_MaskedInterfaces_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_SETTER_MaskedInterfaces_TO (base::)
#define COM_FORWARD_IUSBDeviceFilter_TO(smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Name_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Name_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Active_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Active_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_VendorId_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_VendorId_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_ProductId_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_ProductId_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Revision_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Revision_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Manufacturer_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Manufacturer_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Product_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Product_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_SerialNumber_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_SerialNumber_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Port_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Port_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_Remote_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_Remote_TO (smth) COM_FORWARD_IUSBDeviceFilter_GETTER_MaskedInterfaces_TO (smth) COM_FORWARD_IUSBDeviceFilter_SETTER_MaskedInterfaces_TO (smth) 
#define COM_FORWARD_IUSBDeviceFilter_TO_OBJ(obj) COM_FORWARD_IUSBDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceFilter_TO_BASE(base) COM_FORWARD_IUSBDeviceFilter_TO (base::)
#define COM_FORWARD_IHostUSBDevice_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (USBDeviceState * aState) { return smth get_State (aState); }
#define COM_FORWARD_IHostUSBDevice_GETTER_State_TO_OBJ(obj) COM_FORWARD_IHostUSBDevice_GETTER_State_TO ((obj)->)
#define COM_FORWARD_IHostUSBDevice_GETTER_State_TO_BASE(base) COM_FORWARD_IHostUSBDevice_GETTER_State_TO (base::)
#define COM_FORWARD_IHostUSBDevice_TO(smth) COM_FORWARD_IHostUSBDevice_GETTER_State_TO (smth) 
#define COM_FORWARD_IHostUSBDevice_TO_OBJ(obj) COM_FORWARD_IHostUSBDevice_TO ((obj)->)
#define COM_FORWARD_IHostUSBDevice_TO_BASE(base) COM_FORWARD_IHostUSBDevice_TO (base::)
#define COM_FORWARD_IHostUSBDeviceFilter_GETTER_Action_TO(smth) HRESULT STDMETHODCALLTYPE get_Action (USBDeviceFilterAction * aAction) { return smth get_Action (aAction); }
#define COM_FORWARD_IHostUSBDeviceFilter_GETTER_Action_TO_OBJ(obj) COM_FORWARD_IHostUSBDeviceFilter_GETTER_Action_TO ((obj)->)
#define COM_FORWARD_IHostUSBDeviceFilter_GETTER_Action_TO_BASE(base) COM_FORWARD_IHostUSBDeviceFilter_GETTER_Action_TO (base::)
#define COM_FORWARD_IHostUSBDeviceFilter_SETTER_Action_TO(smth) HRESULT STDMETHODCALLTYPE put_Action (USBDeviceFilterAction aAction) { return smth put_Action (aAction); }
#define COM_FORWARD_IHostUSBDeviceFilter_SETTER_Action_TO_OBJ(obj) COM_FORWARD_IHostUSBDeviceFilter_SETTER_Action_TO ((obj)->)
#define COM_FORWARD_IHostUSBDeviceFilter_SETTER_Action_TO_BASE(base) COM_FORWARD_IHostUSBDeviceFilter_SETTER_Action_TO (base::)
#define COM_FORWARD_IHostUSBDeviceFilter_TO(smth) COM_FORWARD_IHostUSBDeviceFilter_GETTER_Action_TO (smth) COM_FORWARD_IHostUSBDeviceFilter_SETTER_Action_TO (smth) 
#define COM_FORWARD_IHostUSBDeviceFilter_TO_OBJ(obj) COM_FORWARD_IHostUSBDeviceFilter_TO ((obj)->)
#define COM_FORWARD_IHostUSBDeviceFilter_TO_BASE(base) COM_FORWARD_IHostUSBDeviceFilter_TO (base::)
#define COM_FORWARD_IAudioAdapter_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_IAudioAdapter_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_GETTER_Enabled_TO_BASE(base) COM_FORWARD_IAudioAdapter_GETTER_Enabled_TO (base::)
#define COM_FORWARD_IAudioAdapter_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_IAudioAdapter_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_SETTER_Enabled_TO_BASE(base) COM_FORWARD_IAudioAdapter_SETTER_Enabled_TO (base::)
#define COM_FORWARD_IAudioAdapter_GETTER_AudioController_TO(smth) HRESULT STDMETHODCALLTYPE get_AudioController (AudioControllerType * aAudioController) { return smth get_AudioController (aAudioController); }
#define COM_FORWARD_IAudioAdapter_GETTER_AudioController_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_GETTER_AudioController_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_GETTER_AudioController_TO_BASE(base) COM_FORWARD_IAudioAdapter_GETTER_AudioController_TO (base::)
#define COM_FORWARD_IAudioAdapter_SETTER_AudioController_TO(smth) HRESULT STDMETHODCALLTYPE put_AudioController (AudioControllerType aAudioController) { return smth put_AudioController (aAudioController); }
#define COM_FORWARD_IAudioAdapter_SETTER_AudioController_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_SETTER_AudioController_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_SETTER_AudioController_TO_BASE(base) COM_FORWARD_IAudioAdapter_SETTER_AudioController_TO (base::)
#define COM_FORWARD_IAudioAdapter_GETTER_AudioDriver_TO(smth) HRESULT STDMETHODCALLTYPE get_AudioDriver (AudioDriverType * aAudioDriver) { return smth get_AudioDriver (aAudioDriver); }
#define COM_FORWARD_IAudioAdapter_GETTER_AudioDriver_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_GETTER_AudioDriver_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_GETTER_AudioDriver_TO_BASE(base) COM_FORWARD_IAudioAdapter_GETTER_AudioDriver_TO (base::)
#define COM_FORWARD_IAudioAdapter_SETTER_AudioDriver_TO(smth) HRESULT STDMETHODCALLTYPE put_AudioDriver (AudioDriverType aAudioDriver) { return smth put_AudioDriver (aAudioDriver); }
#define COM_FORWARD_IAudioAdapter_SETTER_AudioDriver_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_SETTER_AudioDriver_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_SETTER_AudioDriver_TO_BASE(base) COM_FORWARD_IAudioAdapter_SETTER_AudioDriver_TO (base::)
#define COM_FORWARD_IAudioAdapter_TO(smth) COM_FORWARD_IAudioAdapter_GETTER_Enabled_TO (smth) COM_FORWARD_IAudioAdapter_SETTER_Enabled_TO (smth) COM_FORWARD_IAudioAdapter_GETTER_AudioController_TO (smth) COM_FORWARD_IAudioAdapter_SETTER_AudioController_TO (smth) COM_FORWARD_IAudioAdapter_GETTER_AudioDriver_TO (smth) COM_FORWARD_IAudioAdapter_SETTER_AudioDriver_TO (smth) 
#define COM_FORWARD_IAudioAdapter_TO_OBJ(obj) COM_FORWARD_IAudioAdapter_TO ((obj)->)
#define COM_FORWARD_IAudioAdapter_TO_BASE(base) COM_FORWARD_IAudioAdapter_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_IVRDPServer_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_Enabled_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_Enabled_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_IVRDPServer_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_Enabled_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_Enabled_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_Ports_TO(smth) HRESULT STDMETHODCALLTYPE get_Ports (BSTR * aPorts) { return smth get_Ports (aPorts); }
#define COM_FORWARD_IVRDPServer_GETTER_Ports_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_Ports_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_Ports_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_Ports_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_Ports_TO(smth) HRESULT STDMETHODCALLTYPE put_Ports (BSTR aPorts) { return smth put_Ports (aPorts); }
#define COM_FORWARD_IVRDPServer_SETTER_Ports_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_Ports_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_Ports_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_Ports_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_NetAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_NetAddress (BSTR * aNetAddress) { return smth get_NetAddress (aNetAddress); }
#define COM_FORWARD_IVRDPServer_GETTER_NetAddress_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_NetAddress_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_NetAddress_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_NetAddress_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_NetAddress_TO(smth) HRESULT STDMETHODCALLTYPE put_NetAddress (BSTR aNetAddress) { return smth put_NetAddress (aNetAddress); }
#define COM_FORWARD_IVRDPServer_SETTER_NetAddress_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_NetAddress_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_NetAddress_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_NetAddress_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_AuthType_TO(smth) HRESULT STDMETHODCALLTYPE get_AuthType (VRDPAuthType * aAuthType) { return smth get_AuthType (aAuthType); }
#define COM_FORWARD_IVRDPServer_GETTER_AuthType_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_AuthType_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_AuthType_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_AuthType_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_AuthType_TO(smth) HRESULT STDMETHODCALLTYPE put_AuthType (VRDPAuthType aAuthType) { return smth put_AuthType (aAuthType); }
#define COM_FORWARD_IVRDPServer_SETTER_AuthType_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_AuthType_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_AuthType_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_AuthType_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_AuthTimeout_TO(smth) HRESULT STDMETHODCALLTYPE get_AuthTimeout (ULONG * aAuthTimeout) { return smth get_AuthTimeout (aAuthTimeout); }
#define COM_FORWARD_IVRDPServer_GETTER_AuthTimeout_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_AuthTimeout_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_AuthTimeout_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_AuthTimeout_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_AuthTimeout_TO(smth) HRESULT STDMETHODCALLTYPE put_AuthTimeout (ULONG aAuthTimeout) { return smth put_AuthTimeout (aAuthTimeout); }
#define COM_FORWARD_IVRDPServer_SETTER_AuthTimeout_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_AuthTimeout_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_AuthTimeout_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_AuthTimeout_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_AllowMultiConnection_TO(smth) HRESULT STDMETHODCALLTYPE get_AllowMultiConnection (BOOL * aAllowMultiConnection) { return smth get_AllowMultiConnection (aAllowMultiConnection); }
#define COM_FORWARD_IVRDPServer_GETTER_AllowMultiConnection_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_AllowMultiConnection_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_AllowMultiConnection_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_AllowMultiConnection_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_AllowMultiConnection_TO(smth) HRESULT STDMETHODCALLTYPE put_AllowMultiConnection (BOOL aAllowMultiConnection) { return smth put_AllowMultiConnection (aAllowMultiConnection); }
#define COM_FORWARD_IVRDPServer_SETTER_AllowMultiConnection_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_AllowMultiConnection_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_AllowMultiConnection_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_AllowMultiConnection_TO (base::)
#define COM_FORWARD_IVRDPServer_GETTER_ReuseSingleConnection_TO(smth) HRESULT STDMETHODCALLTYPE get_ReuseSingleConnection (BOOL * aReuseSingleConnection) { return smth get_ReuseSingleConnection (aReuseSingleConnection); }
#define COM_FORWARD_IVRDPServer_GETTER_ReuseSingleConnection_TO_OBJ(obj) COM_FORWARD_IVRDPServer_GETTER_ReuseSingleConnection_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_GETTER_ReuseSingleConnection_TO_BASE(base) COM_FORWARD_IVRDPServer_GETTER_ReuseSingleConnection_TO (base::)
#define COM_FORWARD_IVRDPServer_SETTER_ReuseSingleConnection_TO(smth) HRESULT STDMETHODCALLTYPE put_ReuseSingleConnection (BOOL aReuseSingleConnection) { return smth put_ReuseSingleConnection (aReuseSingleConnection); }
#define COM_FORWARD_IVRDPServer_SETTER_ReuseSingleConnection_TO_OBJ(obj) COM_FORWARD_IVRDPServer_SETTER_ReuseSingleConnection_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_SETTER_ReuseSingleConnection_TO_BASE(base) COM_FORWARD_IVRDPServer_SETTER_ReuseSingleConnection_TO (base::)
#define COM_FORWARD_IVRDPServer_TO(smth) COM_FORWARD_IVRDPServer_GETTER_Enabled_TO (smth) COM_FORWARD_IVRDPServer_SETTER_Enabled_TO (smth) COM_FORWARD_IVRDPServer_GETTER_Ports_TO (smth) COM_FORWARD_IVRDPServer_SETTER_Ports_TO (smth) COM_FORWARD_IVRDPServer_GETTER_NetAddress_TO (smth) COM_FORWARD_IVRDPServer_SETTER_NetAddress_TO (smth) COM_FORWARD_IVRDPServer_GETTER_AuthType_TO (smth) COM_FORWARD_IVRDPServer_SETTER_AuthType_TO (smth) COM_FORWARD_IVRDPServer_GETTER_AuthTimeout_TO (smth) COM_FORWARD_IVRDPServer_SETTER_AuthTimeout_TO (smth) COM_FORWARD_IVRDPServer_GETTER_AllowMultiConnection_TO (smth) COM_FORWARD_IVRDPServer_SETTER_AllowMultiConnection_TO (smth) COM_FORWARD_IVRDPServer_GETTER_ReuseSingleConnection_TO (smth) COM_FORWARD_IVRDPServer_SETTER_ReuseSingleConnection_TO (smth) 
#define COM_FORWARD_IVRDPServer_TO_OBJ(obj) COM_FORWARD_IVRDPServer_TO ((obj)->)
#define COM_FORWARD_IVRDPServer_TO_BASE(base) COM_FORWARD_IVRDPServer_TO (base::)
#define COM_FORWARD_ISharedFolder_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_ISharedFolder_GETTER_Name_TO_OBJ(obj) COM_FORWARD_ISharedFolder_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_GETTER_Name_TO_BASE(base) COM_FORWARD_ISharedFolder_GETTER_Name_TO (base::)
#define COM_FORWARD_ISharedFolder_GETTER_HostPath_TO(smth) HRESULT STDMETHODCALLTYPE get_HostPath (BSTR * aHostPath) { return smth get_HostPath (aHostPath); }
#define COM_FORWARD_ISharedFolder_GETTER_HostPath_TO_OBJ(obj) COM_FORWARD_ISharedFolder_GETTER_HostPath_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_GETTER_HostPath_TO_BASE(base) COM_FORWARD_ISharedFolder_GETTER_HostPath_TO (base::)
#define COM_FORWARD_ISharedFolder_GETTER_Accessible_TO(smth) HRESULT STDMETHODCALLTYPE get_Accessible (BOOL * aAccessible) { return smth get_Accessible (aAccessible); }
#define COM_FORWARD_ISharedFolder_GETTER_Accessible_TO_OBJ(obj) COM_FORWARD_ISharedFolder_GETTER_Accessible_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_GETTER_Accessible_TO_BASE(base) COM_FORWARD_ISharedFolder_GETTER_Accessible_TO (base::)
#define COM_FORWARD_ISharedFolder_GETTER_Writable_TO(smth) HRESULT STDMETHODCALLTYPE get_Writable (BOOL * aWritable) { return smth get_Writable (aWritable); }
#define COM_FORWARD_ISharedFolder_GETTER_Writable_TO_OBJ(obj) COM_FORWARD_ISharedFolder_GETTER_Writable_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_GETTER_Writable_TO_BASE(base) COM_FORWARD_ISharedFolder_GETTER_Writable_TO (base::)
#define COM_FORWARD_ISharedFolder_GETTER_LastAccessError_TO(smth) HRESULT STDMETHODCALLTYPE get_LastAccessError (BSTR * aLastAccessError) { return smth get_LastAccessError (aLastAccessError); }
#define COM_FORWARD_ISharedFolder_GETTER_LastAccessError_TO_OBJ(obj) COM_FORWARD_ISharedFolder_GETTER_LastAccessError_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_GETTER_LastAccessError_TO_BASE(base) COM_FORWARD_ISharedFolder_GETTER_LastAccessError_TO (base::)
#define COM_FORWARD_ISharedFolder_TO(smth) COM_FORWARD_ISharedFolder_GETTER_Name_TO (smth) COM_FORWARD_ISharedFolder_GETTER_HostPath_TO (smth) COM_FORWARD_ISharedFolder_GETTER_Accessible_TO (smth) COM_FORWARD_ISharedFolder_GETTER_Writable_TO (smth) COM_FORWARD_ISharedFolder_GETTER_LastAccessError_TO (smth) 
#define COM_FORWARD_ISharedFolder_TO_OBJ(obj) COM_FORWARD_ISharedFolder_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_TO_BASE(base) COM_FORWARD_ISharedFolder_TO (base::)
#define COM_FORWARD_IInternalSessionControl_GetPID_TO(smth) HRESULT STDMETHODCALLTYPE GetPID (ULONG * aPid) { return smth GetPID (aPid); }
#define COM_FORWARD_IInternalSessionControl_GetPID_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_GetPID_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_GetPID_TO_BASE(base) COM_FORWARD_IInternalSessionControl_GetPID_TO (base::)
#define COM_FORWARD_IInternalSessionControl_GetRemoteConsole_TO(smth) HRESULT STDMETHODCALLTYPE GetRemoteConsole (IConsole * * aConsole) { return smth GetRemoteConsole (aConsole); }
#define COM_FORWARD_IInternalSessionControl_GetRemoteConsole_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_GetRemoteConsole_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_GetRemoteConsole_TO_BASE(base) COM_FORWARD_IInternalSessionControl_GetRemoteConsole_TO (base::)
#define COM_FORWARD_IInternalSessionControl_AssignMachine_TO(smth) HRESULT STDMETHODCALLTYPE AssignMachine (IMachine * aMachine) { return smth AssignMachine (aMachine); }
#define COM_FORWARD_IInternalSessionControl_AssignMachine_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_AssignMachine_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_AssignMachine_TO_BASE(base) COM_FORWARD_IInternalSessionControl_AssignMachine_TO (base::)
#define COM_FORWARD_IInternalSessionControl_AssignRemoteMachine_TO(smth) HRESULT STDMETHODCALLTYPE AssignRemoteMachine (IMachine * aMachine, IConsole * aConsole) { return smth AssignRemoteMachine (aMachine, aConsole); }
#define COM_FORWARD_IInternalSessionControl_AssignRemoteMachine_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_AssignRemoteMachine_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_AssignRemoteMachine_TO_BASE(base) COM_FORWARD_IInternalSessionControl_AssignRemoteMachine_TO (base::)
#define COM_FORWARD_IInternalSessionControl_UpdateMachineState_TO(smth) HRESULT STDMETHODCALLTYPE UpdateMachineState (MachineState aAMachineState) { return smth UpdateMachineState (aAMachineState); }
#define COM_FORWARD_IInternalSessionControl_UpdateMachineState_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_UpdateMachineState_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_UpdateMachineState_TO_BASE(base) COM_FORWARD_IInternalSessionControl_UpdateMachineState_TO (base::)
#define COM_FORWARD_IInternalSessionControl_Uninitialize_TO(smth) HRESULT STDMETHODCALLTYPE Uninitialize() { return smth Uninitialize(); }
#define COM_FORWARD_IInternalSessionControl_Uninitialize_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_Uninitialize_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_Uninitialize_TO_BASE(base) COM_FORWARD_IInternalSessionControl_Uninitialize_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnNetworkAdapterChange_TO(smth) HRESULT STDMETHODCALLTYPE OnNetworkAdapterChange (INetworkAdapter * aNetworkAdapter, BOOL aChangeAdapter) { return smth OnNetworkAdapterChange (aNetworkAdapter, aChangeAdapter); }
#define COM_FORWARD_IInternalSessionControl_OnNetworkAdapterChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnNetworkAdapterChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnNetworkAdapterChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnNetworkAdapterChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnSerialPortChange_TO(smth) HRESULT STDMETHODCALLTYPE OnSerialPortChange (ISerialPort * aSerialPort) { return smth OnSerialPortChange (aSerialPort); }
#define COM_FORWARD_IInternalSessionControl_OnSerialPortChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnSerialPortChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnSerialPortChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnSerialPortChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnParallelPortChange_TO(smth) HRESULT STDMETHODCALLTYPE OnParallelPortChange (IParallelPort * aParallelPort) { return smth OnParallelPortChange (aParallelPort); }
#define COM_FORWARD_IInternalSessionControl_OnParallelPortChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnParallelPortChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnParallelPortChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnParallelPortChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnStorageControllerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnStorageControllerChange() { return smth OnStorageControllerChange(); }
#define COM_FORWARD_IInternalSessionControl_OnStorageControllerChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnStorageControllerChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnStorageControllerChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnStorageControllerChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnMediumChange_TO(smth) HRESULT STDMETHODCALLTYPE OnMediumChange (IMediumAttachment * aMediumAttachment, BOOL aForce) { return smth OnMediumChange (aMediumAttachment, aForce); }
#define COM_FORWARD_IInternalSessionControl_OnMediumChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnMediumChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnMediumChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnMediumChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnVRDPServerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnVRDPServerChange() { return smth OnVRDPServerChange(); }
#define COM_FORWARD_IInternalSessionControl_OnVRDPServerChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnVRDPServerChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnVRDPServerChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnVRDPServerChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnUSBControllerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnUSBControllerChange() { return smth OnUSBControllerChange(); }
#define COM_FORWARD_IInternalSessionControl_OnUSBControllerChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnUSBControllerChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnUSBControllerChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnUSBControllerChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnSharedFolderChange_TO(smth) HRESULT STDMETHODCALLTYPE OnSharedFolderChange (BOOL aGlobal) { return smth OnSharedFolderChange (aGlobal); }
#define COM_FORWARD_IInternalSessionControl_OnSharedFolderChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnSharedFolderChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnSharedFolderChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnSharedFolderChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnUSBDeviceAttach_TO(smth) HRESULT STDMETHODCALLTYPE OnUSBDeviceAttach (IUSBDevice * aDevice, IVirtualBoxErrorInfo * aError, ULONG aMaskedInterfaces) { return smth OnUSBDeviceAttach (aDevice, aError, aMaskedInterfaces); }
#define COM_FORWARD_IInternalSessionControl_OnUSBDeviceAttach_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnUSBDeviceAttach_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnUSBDeviceAttach_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnUSBDeviceAttach_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnUSBDeviceDetach_TO(smth) HRESULT STDMETHODCALLTYPE OnUSBDeviceDetach (BSTR aId, IVirtualBoxErrorInfo * aError) { return smth OnUSBDeviceDetach (aId, aError); }
#define COM_FORWARD_IInternalSessionControl_OnUSBDeviceDetach_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnUSBDeviceDetach_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnUSBDeviceDetach_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnUSBDeviceDetach_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnShowWindow_TO(smth) HRESULT STDMETHODCALLTYPE OnShowWindow (BOOL aCheck, BOOL * aCanShow, ULONG64 * aWinId) { return smth OnShowWindow (aCheck, aCanShow, aWinId); }
#define COM_FORWARD_IInternalSessionControl_OnShowWindow_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnShowWindow_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnShowWindow_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnShowWindow_TO (base::)
#define COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO(smth) HRESULT STDMETHODCALLTYPE AccessGuestProperty (BSTR aName, BSTR aValue, BSTR aFlags, BOOL aIsSetter, BSTR * aRetValue, ULONG64 * aRetTimestamp, BSTR * aRetFlags) { return smth AccessGuestProperty (aName, aValue, aFlags, aIsSetter, aRetValue, aRetTimestamp, aRetFlags); }
#define COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO_BASE(base) COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO (base::)
#define COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO(smth) HRESULT STDMETHODCALLTYPE EnumerateGuestProperties (BSTR aPatterns, SAFEARRAY * * aKey, SAFEARRAY * * aValue, SAFEARRAY * * aTimestamp, SAFEARRAY * * aFlags) { return smth EnumerateGuestProperties (aPatterns, aKey, aValue, aTimestamp, aFlags); }
#define COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO_BASE(base) COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO (base::)
#define COM_FORWARD_IInternalSessionControl_TO(smth) COM_FORWARD_IInternalSessionControl_GetPID_TO (smth) COM_FORWARD_IInternalSessionControl_GetRemoteConsole_TO (smth) COM_FORWARD_IInternalSessionControl_AssignMachine_TO (smth) COM_FORWARD_IInternalSessionControl_AssignRemoteMachine_TO (smth) COM_FORWARD_IInternalSessionControl_UpdateMachineState_TO (smth) COM_FORWARD_IInternalSessionControl_Uninitialize_TO (smth) COM_FORWARD_IInternalSessionControl_OnNetworkAdapterChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnSerialPortChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnParallelPortChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnStorageControllerChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnMediumChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnVRDPServerChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnUSBControllerChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnSharedFolderChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnUSBDeviceAttach_TO (smth) COM_FORWARD_IInternalSessionControl_OnUSBDeviceDetach_TO (smth) COM_FORWARD_IInternalSessionControl_OnShowWindow_TO (smth) COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO (smth) COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO (smth) 
#define COM_FORWARD_IInternalSessionControl_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_TO_BASE(base) COM_FORWARD_IInternalSessionControl_TO (base::)
#define COM_FORWARD_ISession_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (SessionState * aState) { return smth get_State (aState); }
#define COM_FORWARD_ISession_GETTER_State_TO_OBJ(obj) COM_FORWARD_ISession_GETTER_State_TO ((obj)->)
#define COM_FORWARD_ISession_GETTER_State_TO_BASE(base) COM_FORWARD_ISession_GETTER_State_TO (base::)
#define COM_FORWARD_ISession_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (SessionType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_ISession_GETTER_Type_TO_OBJ(obj) COM_FORWARD_ISession_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_ISession_GETTER_Type_TO_BASE(base) COM_FORWARD_ISession_GETTER_Type_TO (base::)
#define COM_FORWARD_ISession_GETTER_Machine_TO(smth) HRESULT STDMETHODCALLTYPE get_Machine (IMachine * * aMachine) { return smth get_Machine (aMachine); }
#define COM_FORWARD_ISession_GETTER_Machine_TO_OBJ(obj) COM_FORWARD_ISession_GETTER_Machine_TO ((obj)->)
#define COM_FORWARD_ISession_GETTER_Machine_TO_BASE(base) COM_FORWARD_ISession_GETTER_Machine_TO (base::)
#define COM_FORWARD_ISession_GETTER_Console_TO(smth) HRESULT STDMETHODCALLTYPE get_Console (IConsole * * aConsole) { return smth get_Console (aConsole); }
#define COM_FORWARD_ISession_GETTER_Console_TO_OBJ(obj) COM_FORWARD_ISession_GETTER_Console_TO ((obj)->)
#define COM_FORWARD_ISession_GETTER_Console_TO_BASE(base) COM_FORWARD_ISession_GETTER_Console_TO (base::)
#define COM_FORWARD_ISession_Close_TO(smth) HRESULT STDMETHODCALLTYPE Close() { return smth Close(); }
#define COM_FORWARD_ISession_Close_TO_OBJ(obj) COM_FORWARD_ISession_Close_TO ((obj)->)
#define COM_FORWARD_ISession_Close_TO_BASE(base) COM_FORWARD_ISession_Close_TO (base::)
#define COM_FORWARD_ISession_TO(smth) COM_FORWARD_ISession_GETTER_State_TO (smth) COM_FORWARD_ISession_GETTER_Type_TO (smth) COM_FORWARD_ISession_GETTER_Machine_TO (smth) COM_FORWARD_ISession_GETTER_Console_TO (smth) COM_FORWARD_ISession_Close_TO (smth) 
#define COM_FORWARD_ISession_TO_OBJ(obj) COM_FORWARD_ISession_TO ((obj)->)
#define COM_FORWARD_ISession_TO_BASE(base) COM_FORWARD_ISession_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IStorageController_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_Name_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_Name_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_MaxDevicesPerPortCount_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxDevicesPerPortCount (ULONG * aMaxDevicesPerPortCount) { return smth get_MaxDevicesPerPortCount (aMaxDevicesPerPortCount); }
#define COM_FORWARD_IStorageController_GETTER_MaxDevicesPerPortCount_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_MaxDevicesPerPortCount_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_MaxDevicesPerPortCount_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_MaxDevicesPerPortCount_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_MinPortCount_TO(smth) HRESULT STDMETHODCALLTYPE get_MinPortCount (ULONG * aMinPortCount) { return smth get_MinPortCount (aMinPortCount); }
#define COM_FORWARD_IStorageController_GETTER_MinPortCount_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_MinPortCount_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_MinPortCount_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_MinPortCount_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_MaxPortCount_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxPortCount (ULONG * aMaxPortCount) { return smth get_MaxPortCount (aMaxPortCount); }
#define COM_FORWARD_IStorageController_GETTER_MaxPortCount_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_MaxPortCount_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_MaxPortCount_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_MaxPortCount_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_Instance_TO(smth) HRESULT STDMETHODCALLTYPE get_Instance (ULONG * aInstance) { return smth get_Instance (aInstance); }
#define COM_FORWARD_IStorageController_GETTER_Instance_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_Instance_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_Instance_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_Instance_TO (base::)
#define COM_FORWARD_IStorageController_SETTER_Instance_TO(smth) HRESULT STDMETHODCALLTYPE put_Instance (ULONG aInstance) { return smth put_Instance (aInstance); }
#define COM_FORWARD_IStorageController_SETTER_Instance_TO_OBJ(obj) COM_FORWARD_IStorageController_SETTER_Instance_TO ((obj)->)
#define COM_FORWARD_IStorageController_SETTER_Instance_TO_BASE(base) COM_FORWARD_IStorageController_SETTER_Instance_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_PortCount_TO(smth) HRESULT STDMETHODCALLTYPE get_PortCount (ULONG * aPortCount) { return smth get_PortCount (aPortCount); }
#define COM_FORWARD_IStorageController_GETTER_PortCount_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_PortCount_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_PortCount_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_PortCount_TO (base::)
#define COM_FORWARD_IStorageController_SETTER_PortCount_TO(smth) HRESULT STDMETHODCALLTYPE put_PortCount (ULONG aPortCount) { return smth put_PortCount (aPortCount); }
#define COM_FORWARD_IStorageController_SETTER_PortCount_TO_OBJ(obj) COM_FORWARD_IStorageController_SETTER_PortCount_TO ((obj)->)
#define COM_FORWARD_IStorageController_SETTER_PortCount_TO_BASE(base) COM_FORWARD_IStorageController_SETTER_PortCount_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_Bus_TO(smth) HRESULT STDMETHODCALLTYPE get_Bus (StorageBus * aBus) { return smth get_Bus (aBus); }
#define COM_FORWARD_IStorageController_GETTER_Bus_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_Bus_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_Bus_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_Bus_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_ControllerType_TO(smth) HRESULT STDMETHODCALLTYPE get_ControllerType (StorageControllerType * aControllerType) { return smth get_ControllerType (aControllerType); }
#define COM_FORWARD_IStorageController_GETTER_ControllerType_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_ControllerType_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_ControllerType_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_ControllerType_TO (base::)
#define COM_FORWARD_IStorageController_SETTER_ControllerType_TO(smth) HRESULT STDMETHODCALLTYPE put_ControllerType (StorageControllerType aControllerType) { return smth put_ControllerType (aControllerType); }
#define COM_FORWARD_IStorageController_SETTER_ControllerType_TO_OBJ(obj) COM_FORWARD_IStorageController_SETTER_ControllerType_TO ((obj)->)
#define COM_FORWARD_IStorageController_SETTER_ControllerType_TO_BASE(base) COM_FORWARD_IStorageController_SETTER_ControllerType_TO (base::)
#define COM_FORWARD_IStorageController_GetIDEEmulationPort_TO(smth) HRESULT STDMETHODCALLTYPE GetIDEEmulationPort (LONG aDevicePosition, LONG * aPortNumber) { return smth GetIDEEmulationPort (aDevicePosition, aPortNumber); }
#define COM_FORWARD_IStorageController_GetIDEEmulationPort_TO_OBJ(obj) COM_FORWARD_IStorageController_GetIDEEmulationPort_TO ((obj)->)
#define COM_FORWARD_IStorageController_GetIDEEmulationPort_TO_BASE(base) COM_FORWARD_IStorageController_GetIDEEmulationPort_TO (base::)
#define COM_FORWARD_IStorageController_SetIDEEmulationPort_TO(smth) HRESULT STDMETHODCALLTYPE SetIDEEmulationPort (LONG aDevicePosition, LONG aPortNumber) { return smth SetIDEEmulationPort (aDevicePosition, aPortNumber); }
#define COM_FORWARD_IStorageController_SetIDEEmulationPort_TO_OBJ(obj) COM_FORWARD_IStorageController_SetIDEEmulationPort_TO ((obj)->)
#define COM_FORWARD_IStorageController_SetIDEEmulationPort_TO_BASE(base) COM_FORWARD_IStorageController_SetIDEEmulationPort_TO (base::)
#define COM_FORWARD_IStorageController_TO(smth) COM_FORWARD_IStorageController_GETTER_Name_TO (smth) COM_FORWARD_IStorageController_GETTER_MaxDevicesPerPortCount_TO (smth) COM_FORWARD_IStorageController_GETTER_MinPortCount_TO (smth) COM_FORWARD_IStorageController_GETTER_MaxPortCount_TO (smth) COM_FORWARD_IStorageController_GETTER_Instance_TO (smth) COM_FORWARD_IStorageController_SETTER_Instance_TO (smth) COM_FORWARD_IStorageController_GETTER_PortCount_TO (smth) COM_FORWARD_IStorageController_SETTER_PortCount_TO (smth) COM_FORWARD_IStorageController_GETTER_Bus_TO (smth) COM_FORWARD_IStorageController_GETTER_ControllerType_TO (smth) COM_FORWARD_IStorageController_SETTER_ControllerType_TO (smth) COM_FORWARD_IStorageController_GetIDEEmulationPort_TO (smth) COM_FORWARD_IStorageController_SetIDEEmulationPort_TO (smth) 
#define COM_FORWARD_IStorageController_TO_OBJ(obj) COM_FORWARD_IStorageController_TO ((obj)->)
#define COM_FORWARD_IStorageController_TO_BASE(base) COM_FORWARD_IStorageController_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_MetricName_TO(smth) HRESULT STDMETHODCALLTYPE get_MetricName (BSTR * aMetricName) { return smth get_MetricName (aMetricName); }
#define COM_FORWARD_IPerformanceMetric_GETTER_MetricName_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_MetricName_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_MetricName_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_MetricName_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_Object_TO(smth) HRESULT STDMETHODCALLTYPE get_Object (IUnknown * * aObject) { return smth get_Object (aObject); }
#define COM_FORWARD_IPerformanceMetric_GETTER_Object_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_Object_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_Object_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_Object_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IPerformanceMetric_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_Description_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_Description_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_Period_TO(smth) HRESULT STDMETHODCALLTYPE get_Period (ULONG * aPeriod) { return smth get_Period (aPeriod); }
#define COM_FORWARD_IPerformanceMetric_GETTER_Period_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_Period_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_Period_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_Period_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_Count_TO(smth) HRESULT STDMETHODCALLTYPE get_Count (ULONG * aCount) { return smth get_Count (aCount); }
#define COM_FORWARD_IPerformanceMetric_GETTER_Count_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_Count_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_Count_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_Count_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_Unit_TO(smth) HRESULT STDMETHODCALLTYPE get_Unit (BSTR * aUnit) { return smth get_Unit (aUnit); }
#define COM_FORWARD_IPerformanceMetric_GETTER_Unit_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_Unit_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_Unit_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_Unit_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_MinimumValue_TO(smth) HRESULT STDMETHODCALLTYPE get_MinimumValue (LONG * aMinimumValue) { return smth get_MinimumValue (aMinimumValue); }
#define COM_FORWARD_IPerformanceMetric_GETTER_MinimumValue_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_MinimumValue_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_MinimumValue_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_MinimumValue_TO (base::)
#define COM_FORWARD_IPerformanceMetric_GETTER_MaximumValue_TO(smth) HRESULT STDMETHODCALLTYPE get_MaximumValue (LONG * aMaximumValue) { return smth get_MaximumValue (aMaximumValue); }
#define COM_FORWARD_IPerformanceMetric_GETTER_MaximumValue_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_GETTER_MaximumValue_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_GETTER_MaximumValue_TO_BASE(base) COM_FORWARD_IPerformanceMetric_GETTER_MaximumValue_TO (base::)
#define COM_FORWARD_IPerformanceMetric_TO(smth) COM_FORWARD_IPerformanceMetric_GETTER_MetricName_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_Object_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_Description_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_Period_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_Count_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_Unit_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_MinimumValue_TO (smth) COM_FORWARD_IPerformanceMetric_GETTER_MaximumValue_TO (smth) 
#define COM_FORWARD_IPerformanceMetric_TO_OBJ(obj) COM_FORWARD_IPerformanceMetric_TO ((obj)->)
#define COM_FORWARD_IPerformanceMetric_TO_BASE(base) COM_FORWARD_IPerformanceMetric_TO (base::)
#define COM_FORWARD_IPerformanceCollector_GETTER_MetricNames_TO(smth) HRESULT STDMETHODCALLTYPE get_MetricNames (SAFEARRAY * * aMetricNames) { return smth get_MetricNames (aMetricNames); }
#define COM_FORWARD_IPerformanceCollector_GETTER_MetricNames_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_GETTER_MetricNames_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_GETTER_MetricNames_TO_BASE(base) COM_FORWARD_IPerformanceCollector_GETTER_MetricNames_TO (base::)
#define COM_FORWARD_IPerformanceCollector_GetMetrics_TO(smth) HRESULT STDMETHODCALLTYPE GetMetrics (SAFEARRAY * * aMetricNames, SAFEARRAY * * aObjects, SAFEARRAY * * aMetrics) { return smth GetMetrics (aMetricNames, aObjects, aMetrics); }
#define COM_FORWARD_IPerformanceCollector_GetMetrics_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_GetMetrics_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_GetMetrics_TO_BASE(base) COM_FORWARD_IPerformanceCollector_GetMetrics_TO (base::)
#define COM_FORWARD_IPerformanceCollector_SetupMetrics_TO(smth) HRESULT STDMETHODCALLTYPE SetupMetrics (SAFEARRAY * * aMetricNames, SAFEARRAY * * aObjects, ULONG aPeriod, ULONG aCount, SAFEARRAY * * aAffectedMetrics) { return smth SetupMetrics (aMetricNames, aObjects, aPeriod, aCount, aAffectedMetrics); }
#define COM_FORWARD_IPerformanceCollector_SetupMetrics_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_SetupMetrics_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_SetupMetrics_TO_BASE(base) COM_FORWARD_IPerformanceCollector_SetupMetrics_TO (base::)
#define COM_FORWARD_IPerformanceCollector_EnableMetrics_TO(smth) HRESULT STDMETHODCALLTYPE EnableMetrics (SAFEARRAY * * aMetricNames, SAFEARRAY * * aObjects, SAFEARRAY * * aAffectedMetrics) { return smth EnableMetrics (aMetricNames, aObjects, aAffectedMetrics); }
#define COM_FORWARD_IPerformanceCollector_EnableMetrics_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_EnableMetrics_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_EnableMetrics_TO_BASE(base) COM_FORWARD_IPerformanceCollector_EnableMetrics_TO (base::)
#define COM_FORWARD_IPerformanceCollector_DisableMetrics_TO(smth) HRESULT STDMETHODCALLTYPE DisableMetrics (SAFEARRAY * * aMetricNames, SAFEARRAY * * aObjects, SAFEARRAY * * aAffectedMetrics) { return smth DisableMetrics (aMetricNames, aObjects, aAffectedMetrics); }
#define COM_FORWARD_IPerformanceCollector_DisableMetrics_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_DisableMetrics_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_DisableMetrics_TO_BASE(base) COM_FORWARD_IPerformanceCollector_DisableMetrics_TO (base::)
#define COM_FORWARD_IPerformanceCollector_QueryMetricsData_TO(smth) HRESULT STDMETHODCALLTYPE QueryMetricsData (SAFEARRAY * * aMetricNames, SAFEARRAY * * aObjects, SAFEARRAY * * aReturnMetricNames, SAFEARRAY * * aReturnObjects, SAFEARRAY * * aReturnUnits, SAFEARRAY * * aReturnScales, SAFEARRAY * * aReturnSequenceNumbers, SAFEARRAY * * aReturnDataIndices, SAFEARRAY * * aReturnDataLengths, SAFEARRAY * * aReturnData) { return smth QueryMetricsData (aMetricNames, aObjects, aReturnMetricNames, aReturnObjects, aReturnUnits, aReturnScales, aReturnSequenceNumbers, aReturnDataIndices, aReturnDataLengths, aReturnData); }
#define COM_FORWARD_IPerformanceCollector_QueryMetricsData_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_QueryMetricsData_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_QueryMetricsData_TO_BASE(base) COM_FORWARD_IPerformanceCollector_QueryMetricsData_TO (base::)
#define COM_FORWARD_IPerformanceCollector_TO(smth) COM_FORWARD_IPerformanceCollector_GETTER_MetricNames_TO (smth) COM_FORWARD_IPerformanceCollector_GetMetrics_TO (smth) COM_FORWARD_IPerformanceCollector_SetupMetrics_TO (smth) COM_FORWARD_IPerformanceCollector_EnableMetrics_TO (smth) COM_FORWARD_IPerformanceCollector_DisableMetrics_TO (smth) COM_FORWARD_IPerformanceCollector_QueryMetricsData_TO (smth) 
#define COM_FORWARD_IPerformanceCollector_TO_OBJ(obj) COM_FORWARD_IPerformanceCollector_TO ((obj)->)
#define COM_FORWARD_IPerformanceCollector_TO_BASE(base) COM_FORWARD_IPerformanceCollector_TO (base::)

EXTERN_C const IID LIBID_VirtualBox;

#ifndef __IVirtualBoxErrorInfo_INTERFACE_DEFINED__
#define __IVirtualBoxErrorInfo_INTERFACE_DEFINED__

/* interface IVirtualBoxErrorInfo */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVirtualBoxErrorInfo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4b86d186-407e-4f9e-8be8-e50061be8725")
    IVirtualBoxErrorInfo : public IErrorInfo
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ResultCode( 
            /* [retval][out] */ LONG *aResultCode) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_InterfaceID( 
            /* [retval][out] */ BSTR *aInterfaceID) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Component( 
            /* [retval][out] */ BSTR *aComponent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ BSTR *aText) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Next( 
            /* [retval][out] */ IVirtualBoxErrorInfo **aNext) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVirtualBoxErrorInfoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVirtualBoxErrorInfo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVirtualBoxErrorInfo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVirtualBoxErrorInfo * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetGUID )( 
            IVirtualBoxErrorInfo * This,
            /* [out] */ GUID *pGUID);
        
        HRESULT ( STDMETHODCALLTYPE *GetSource )( 
            IVirtualBoxErrorInfo * This,
            /* [out] */ BSTR *pBstrSource);
        
        HRESULT ( STDMETHODCALLTYPE *GetDescription )( 
            IVirtualBoxErrorInfo * This,
            /* [out] */ BSTR *pBstrDescription);
        
        HRESULT ( STDMETHODCALLTYPE *GetHelpFile )( 
            IVirtualBoxErrorInfo * This,
            /* [out] */ BSTR *pBstrHelpFile);
        
        HRESULT ( STDMETHODCALLTYPE *GetHelpContext )( 
            IVirtualBoxErrorInfo * This,
            /* [out] */ DWORD *pdwHelpContext);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ResultCode )( 
            IVirtualBoxErrorInfo * This,
            /* [retval][out] */ LONG *aResultCode);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_InterfaceID )( 
            IVirtualBoxErrorInfo * This,
            /* [retval][out] */ BSTR *aInterfaceID);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Component )( 
            IVirtualBoxErrorInfo * This,
            /* [retval][out] */ BSTR *aComponent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Text )( 
            IVirtualBoxErrorInfo * This,
            /* [retval][out] */ BSTR *aText);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Next )( 
            IVirtualBoxErrorInfo * This,
            /* [retval][out] */ IVirtualBoxErrorInfo **aNext);
        
        END_INTERFACE
    } IVirtualBoxErrorInfoVtbl;

    interface IVirtualBoxErrorInfo
    {
        CONST_VTBL struct IVirtualBoxErrorInfoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVirtualBoxErrorInfo_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVirtualBoxErrorInfo_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVirtualBoxErrorInfo_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVirtualBoxErrorInfo_GetGUID(This,pGUID)	\
    (This)->lpVtbl -> GetGUID(This,pGUID)

#define IVirtualBoxErrorInfo_GetSource(This,pBstrSource)	\
    (This)->lpVtbl -> GetSource(This,pBstrSource)

#define IVirtualBoxErrorInfo_GetDescription(This,pBstrDescription)	\
    (This)->lpVtbl -> GetDescription(This,pBstrDescription)

#define IVirtualBoxErrorInfo_GetHelpFile(This,pBstrHelpFile)	\
    (This)->lpVtbl -> GetHelpFile(This,pBstrHelpFile)

#define IVirtualBoxErrorInfo_GetHelpContext(This,pdwHelpContext)	\
    (This)->lpVtbl -> GetHelpContext(This,pdwHelpContext)


#define IVirtualBoxErrorInfo_get_ResultCode(This,aResultCode)	\
    (This)->lpVtbl -> get_ResultCode(This,aResultCode)

#define IVirtualBoxErrorInfo_get_InterfaceID(This,aInterfaceID)	\
    (This)->lpVtbl -> get_InterfaceID(This,aInterfaceID)

#define IVirtualBoxErrorInfo_get_Component(This,aComponent)	\
    (This)->lpVtbl -> get_Component(This,aComponent)

#define IVirtualBoxErrorInfo_get_Text(This,aText)	\
    (This)->lpVtbl -> get_Text(This,aText)

#define IVirtualBoxErrorInfo_get_Next(This,aNext)	\
    (This)->lpVtbl -> get_Next(This,aNext)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxErrorInfo_get_ResultCode_Proxy( 
    IVirtualBoxErrorInfo * This,
    /* [retval][out] */ LONG *aResultCode);


void __RPC_STUB IVirtualBoxErrorInfo_get_ResultCode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxErrorInfo_get_InterfaceID_Proxy( 
    IVirtualBoxErrorInfo * This,
    /* [retval][out] */ BSTR *aInterfaceID);


void __RPC_STUB IVirtualBoxErrorInfo_get_InterfaceID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxErrorInfo_get_Component_Proxy( 
    IVirtualBoxErrorInfo * This,
    /* [retval][out] */ BSTR *aComponent);


void __RPC_STUB IVirtualBoxErrorInfo_get_Component_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxErrorInfo_get_Text_Proxy( 
    IVirtualBoxErrorInfo * This,
    /* [retval][out] */ BSTR *aText);


void __RPC_STUB IVirtualBoxErrorInfo_get_Text_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxErrorInfo_get_Next_Proxy( 
    IVirtualBoxErrorInfo * This,
    /* [retval][out] */ IVirtualBoxErrorInfo **aNext);


void __RPC_STUB IVirtualBoxErrorInfo_get_Next_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVirtualBoxErrorInfo_INTERFACE_DEFINED__ */


#ifndef __ILocalOwner_INTERFACE_DEFINED__
#define __ILocalOwner_INTERFACE_DEFINED__

/* interface ILocalOwner */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ILocalOwner;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("308FF42A-DC45-49D4-A950-B1EEE5E00BB5")
    ILocalOwner : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetLocalObject( 
            /* [in] */ IUnknown *aObject) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ILocalOwnerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ILocalOwner * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ILocalOwner * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ILocalOwner * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ILocalOwner * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ILocalOwner * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ILocalOwner * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ILocalOwner * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        HRESULT ( STDMETHODCALLTYPE *SetLocalObject )( 
            ILocalOwner * This,
            /* [in] */ IUnknown *aObject);
        
        END_INTERFACE
    } ILocalOwnerVtbl;

    interface ILocalOwner
    {
        CONST_VTBL struct ILocalOwnerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ILocalOwner_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ILocalOwner_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ILocalOwner_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ILocalOwner_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ILocalOwner_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ILocalOwner_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ILocalOwner_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ILocalOwner_SetLocalObject(This,aObject)	\
    (This)->lpVtbl -> SetLocalObject(This,aObject)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE ILocalOwner_SetLocalObject_Proxy( 
    ILocalOwner * This,
    /* [in] */ IUnknown *aObject);


void __RPC_STUB ILocalOwner_SetLocalObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ILocalOwner_INTERFACE_DEFINED__ */


#ifndef __IVirtualBoxCallback_INTERFACE_DEFINED__
#define __IVirtualBoxCallback_INTERFACE_DEFINED__

/* interface IVirtualBoxCallback */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVirtualBoxCallback;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9a65adf2-3ee6-406b-bca2-2b1fa05f0d0b")
    IVirtualBoxCallback : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE OnMachineStateChange( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ MachineState aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnMachineDataChange( 
            /* [in] */ BSTR aMachineId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnExtraDataCanChange( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue,
            /* [out] */ BSTR *aError,
            /* [retval][out] */ BOOL *aAllowChange) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnExtraDataChange( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnMediumRegistered( 
            /* [in] */ BSTR aMediumId,
            /* [in] */ DeviceType aMediumType,
            /* [in] */ BOOL aRegistered) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnMachineRegistered( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BOOL aRegistered) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSessionStateChange( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ SessionState aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSnapshotTaken( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aSnapshotId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSnapshotDiscarded( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aSnapshotId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSnapshotChange( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aSnapshotId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnGuestPropertyChange( 
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVirtualBoxCallbackVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVirtualBoxCallback * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVirtualBoxCallback * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVirtualBoxCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVirtualBoxCallback * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVirtualBoxCallback * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVirtualBoxCallback * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVirtualBoxCallback * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        HRESULT ( STDMETHODCALLTYPE *OnMachineStateChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ MachineState aState);
        
        HRESULT ( STDMETHODCALLTYPE *OnMachineDataChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId);
        
        HRESULT ( STDMETHODCALLTYPE *OnExtraDataCanChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue,
            /* [out] */ BSTR *aError,
            /* [retval][out] */ BOOL *aAllowChange);
        
        HRESULT ( STDMETHODCALLTYPE *OnExtraDataChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *OnMediumRegistered )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMediumId,
            /* [in] */ DeviceType aMediumType,
            /* [in] */ BOOL aRegistered);
        
        HRESULT ( STDMETHODCALLTYPE *OnMachineRegistered )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BOOL aRegistered);
        
        HRESULT ( STDMETHODCALLTYPE *OnSessionStateChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ SessionState aState);
        
        HRESULT ( STDMETHODCALLTYPE *OnSnapshotTaken )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aSnapshotId);
        
        HRESULT ( STDMETHODCALLTYPE *OnSnapshotDiscarded )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aSnapshotId);
        
        HRESULT ( STDMETHODCALLTYPE *OnSnapshotChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aSnapshotId);
        
        HRESULT ( STDMETHODCALLTYPE *OnGuestPropertyChange )( 
            IVirtualBoxCallback * This,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags);
        
        END_INTERFACE
    } IVirtualBoxCallbackVtbl;

    interface IVirtualBoxCallback
    {
        CONST_VTBL struct IVirtualBoxCallbackVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVirtualBoxCallback_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVirtualBoxCallback_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVirtualBoxCallback_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVirtualBoxCallback_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVirtualBoxCallback_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVirtualBoxCallback_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVirtualBoxCallback_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVirtualBoxCallback_OnMachineStateChange(This,aMachineId,aState)	\
    (This)->lpVtbl -> OnMachineStateChange(This,aMachineId,aState)

#define IVirtualBoxCallback_OnMachineDataChange(This,aMachineId)	\
    (This)->lpVtbl -> OnMachineDataChange(This,aMachineId)

#define IVirtualBoxCallback_OnExtraDataCanChange(This,aMachineId,aKey,aValue,aError,aAllowChange)	\
    (This)->lpVtbl -> OnExtraDataCanChange(This,aMachineId,aKey,aValue,aError,aAllowChange)

#define IVirtualBoxCallback_OnExtraDataChange(This,aMachineId,aKey,aValue)	\
    (This)->lpVtbl -> OnExtraDataChange(This,aMachineId,aKey,aValue)

#define IVirtualBoxCallback_OnMediumRegistered(This,aMediumId,aMediumType,aRegistered)	\
    (This)->lpVtbl -> OnMediumRegistered(This,aMediumId,aMediumType,aRegistered)

#define IVirtualBoxCallback_OnMachineRegistered(This,aMachineId,aRegistered)	\
    (This)->lpVtbl -> OnMachineRegistered(This,aMachineId,aRegistered)

#define IVirtualBoxCallback_OnSessionStateChange(This,aMachineId,aState)	\
    (This)->lpVtbl -> OnSessionStateChange(This,aMachineId,aState)

#define IVirtualBoxCallback_OnSnapshotTaken(This,aMachineId,aSnapshotId)	\
    (This)->lpVtbl -> OnSnapshotTaken(This,aMachineId,aSnapshotId)

#define IVirtualBoxCallback_OnSnapshotDiscarded(This,aMachineId,aSnapshotId)	\
    (This)->lpVtbl -> OnSnapshotDiscarded(This,aMachineId,aSnapshotId)

#define IVirtualBoxCallback_OnSnapshotChange(This,aMachineId,aSnapshotId)	\
    (This)->lpVtbl -> OnSnapshotChange(This,aMachineId,aSnapshotId)

#define IVirtualBoxCallback_OnGuestPropertyChange(This,aMachineId,aName,aValue,aFlags)	\
    (This)->lpVtbl -> OnGuestPropertyChange(This,aMachineId,aName,aValue,aFlags)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnMachineStateChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ MachineState aState);


void __RPC_STUB IVirtualBoxCallback_OnMachineStateChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnMachineDataChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId);


void __RPC_STUB IVirtualBoxCallback_OnMachineDataChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnExtraDataCanChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aKey,
    /* [in] */ BSTR aValue,
    /* [out] */ BSTR *aError,
    /* [retval][out] */ BOOL *aAllowChange);


void __RPC_STUB IVirtualBoxCallback_OnExtraDataCanChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnExtraDataChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aKey,
    /* [in] */ BSTR aValue);


void __RPC_STUB IVirtualBoxCallback_OnExtraDataChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnMediumRegistered_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMediumId,
    /* [in] */ DeviceType aMediumType,
    /* [in] */ BOOL aRegistered);


void __RPC_STUB IVirtualBoxCallback_OnMediumRegistered_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnMachineRegistered_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BOOL aRegistered);


void __RPC_STUB IVirtualBoxCallback_OnMachineRegistered_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnSessionStateChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ SessionState aState);


void __RPC_STUB IVirtualBoxCallback_OnSessionStateChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnSnapshotTaken_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aSnapshotId);


void __RPC_STUB IVirtualBoxCallback_OnSnapshotTaken_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnSnapshotDiscarded_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aSnapshotId);


void __RPC_STUB IVirtualBoxCallback_OnSnapshotDiscarded_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnSnapshotChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aSnapshotId);


void __RPC_STUB IVirtualBoxCallback_OnSnapshotChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBoxCallback_OnGuestPropertyChange_Proxy( 
    IVirtualBoxCallback * This,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aValue,
    /* [in] */ BSTR aFlags);


void __RPC_STUB IVirtualBoxCallback_OnGuestPropertyChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVirtualBoxCallback_INTERFACE_DEFINED__ */


#ifndef __IDHCPServer_INTERFACE_DEFINED__
#define __IDHCPServer_INTERFACE_DEFINED__

/* interface IDHCPServer */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IDHCPServer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6cfe387c-74fb-4ca7-bff6-973bec8af7a3")
    IDHCPServer : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IPAddress( 
            /* [retval][out] */ BSTR *aIPAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkMask( 
            /* [retval][out] */ BSTR *aNetworkMask) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkName( 
            /* [retval][out] */ BSTR *aNetworkName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LowerIP( 
            /* [retval][out] */ BSTR *aLowerIP) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UpperIP( 
            /* [retval][out] */ BSTR *aUpperIP) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetConfiguration( 
            /* [in] */ BSTR aIPAddress,
            /* [in] */ BSTR aNetworkMask,
            /* [in] */ BSTR aFromIPAddress,
            /* [in] */ BSTR aToIPAddress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Start( 
            /* [in] */ BSTR aNetworkName,
            /* [in] */ BSTR aTrunkName,
            /* [in] */ BSTR aTrunkType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDHCPServerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IDHCPServer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IDHCPServer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IDHCPServer * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IDHCPServer * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IDHCPServer * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IDHCPServer * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IDHCPServer * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            IDHCPServer * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            IDHCPServer * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IPAddress )( 
            IDHCPServer * This,
            /* [retval][out] */ BSTR *aIPAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkMask )( 
            IDHCPServer * This,
            /* [retval][out] */ BSTR *aNetworkMask);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkName )( 
            IDHCPServer * This,
            /* [retval][out] */ BSTR *aNetworkName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LowerIP )( 
            IDHCPServer * This,
            /* [retval][out] */ BSTR *aLowerIP);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UpperIP )( 
            IDHCPServer * This,
            /* [retval][out] */ BSTR *aUpperIP);
        
        HRESULT ( STDMETHODCALLTYPE *SetConfiguration )( 
            IDHCPServer * This,
            /* [in] */ BSTR aIPAddress,
            /* [in] */ BSTR aNetworkMask,
            /* [in] */ BSTR aFromIPAddress,
            /* [in] */ BSTR aToIPAddress);
        
        HRESULT ( STDMETHODCALLTYPE *Start )( 
            IDHCPServer * This,
            /* [in] */ BSTR aNetworkName,
            /* [in] */ BSTR aTrunkName,
            /* [in] */ BSTR aTrunkType);
        
        HRESULT ( STDMETHODCALLTYPE *Stop )( 
            IDHCPServer * This);
        
        END_INTERFACE
    } IDHCPServerVtbl;

    interface IDHCPServer
    {
        CONST_VTBL struct IDHCPServerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDHCPServer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDHCPServer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDHCPServer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDHCPServer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDHCPServer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDHCPServer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDHCPServer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDHCPServer_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define IDHCPServer_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define IDHCPServer_get_IPAddress(This,aIPAddress)	\
    (This)->lpVtbl -> get_IPAddress(This,aIPAddress)

#define IDHCPServer_get_NetworkMask(This,aNetworkMask)	\
    (This)->lpVtbl -> get_NetworkMask(This,aNetworkMask)

#define IDHCPServer_get_NetworkName(This,aNetworkName)	\
    (This)->lpVtbl -> get_NetworkName(This,aNetworkName)

#define IDHCPServer_get_LowerIP(This,aLowerIP)	\
    (This)->lpVtbl -> get_LowerIP(This,aLowerIP)

#define IDHCPServer_get_UpperIP(This,aUpperIP)	\
    (This)->lpVtbl -> get_UpperIP(This,aUpperIP)

#define IDHCPServer_SetConfiguration(This,aIPAddress,aNetworkMask,aFromIPAddress,aToIPAddress)	\
    (This)->lpVtbl -> SetConfiguration(This,aIPAddress,aNetworkMask,aFromIPAddress,aToIPAddress)

#define IDHCPServer_Start(This,aNetworkName,aTrunkName,aTrunkType)	\
    (This)->lpVtbl -> Start(This,aNetworkName,aTrunkName,aTrunkType)

#define IDHCPServer_Stop(This)	\
    (This)->lpVtbl -> Stop(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IDHCPServer_get_Enabled_Proxy( 
    IDHCPServer * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB IDHCPServer_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IDHCPServer_put_Enabled_Proxy( 
    IDHCPServer * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB IDHCPServer_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDHCPServer_get_IPAddress_Proxy( 
    IDHCPServer * This,
    /* [retval][out] */ BSTR *aIPAddress);


void __RPC_STUB IDHCPServer_get_IPAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDHCPServer_get_NetworkMask_Proxy( 
    IDHCPServer * This,
    /* [retval][out] */ BSTR *aNetworkMask);


void __RPC_STUB IDHCPServer_get_NetworkMask_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDHCPServer_get_NetworkName_Proxy( 
    IDHCPServer * This,
    /* [retval][out] */ BSTR *aNetworkName);


void __RPC_STUB IDHCPServer_get_NetworkName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDHCPServer_get_LowerIP_Proxy( 
    IDHCPServer * This,
    /* [retval][out] */ BSTR *aLowerIP);


void __RPC_STUB IDHCPServer_get_LowerIP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDHCPServer_get_UpperIP_Proxy( 
    IDHCPServer * This,
    /* [retval][out] */ BSTR *aUpperIP);


void __RPC_STUB IDHCPServer_get_UpperIP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDHCPServer_SetConfiguration_Proxy( 
    IDHCPServer * This,
    /* [in] */ BSTR aIPAddress,
    /* [in] */ BSTR aNetworkMask,
    /* [in] */ BSTR aFromIPAddress,
    /* [in] */ BSTR aToIPAddress);


void __RPC_STUB IDHCPServer_SetConfiguration_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDHCPServer_Start_Proxy( 
    IDHCPServer * This,
    /* [in] */ BSTR aNetworkName,
    /* [in] */ BSTR aTrunkName,
    /* [in] */ BSTR aTrunkType);


void __RPC_STUB IDHCPServer_Start_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDHCPServer_Stop_Proxy( 
    IDHCPServer * This);


void __RPC_STUB IDHCPServer_Stop_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDHCPServer_INTERFACE_DEFINED__ */


#ifndef __IVirtualBox_INTERFACE_DEFINED__
#define __IVirtualBox_INTERFACE_DEFINED__

/* interface IVirtualBox */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVirtualBox;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2158464a-f706-414b-a8c4-fb589dfc6b62")
    IVirtualBox : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Version( 
            /* [retval][out] */ BSTR *aVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Revision( 
            /* [retval][out] */ ULONG *aRevision) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PackageType( 
            /* [retval][out] */ BSTR *aPackageType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HomeFolder( 
            /* [retval][out] */ BSTR *aHomeFolder) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SettingsFilePath( 
            /* [retval][out] */ BSTR *aSettingsFilePath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Host( 
            /* [retval][out] */ IHost **aHost) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SystemProperties( 
            /* [retval][out] */ ISystemProperties **aSystemProperties) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Machines( 
            /* [retval][out] */ SAFEARRAY * *aMachines) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HardDisks( 
            /* [retval][out] */ SAFEARRAY * *aHardDisks) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DVDImages( 
            /* [retval][out] */ SAFEARRAY * *aDVDImages) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FloppyImages( 
            /* [retval][out] */ SAFEARRAY * *aFloppyImages) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ProgressOperations( 
            /* [retval][out] */ SAFEARRAY * *aProgressOperations) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_GuestOSTypes( 
            /* [retval][out] */ SAFEARRAY * *aGuestOSTypes) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SharedFolders( 
            /* [retval][out] */ SAFEARRAY * *aSharedFolders) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PerformanceCollector( 
            /* [retval][out] */ IPerformanceCollector **aPerformanceCollector) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DHCPServers( 
            /* [retval][out] */ SAFEARRAY * *aDHCPServers) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateMachine( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aOsTypeId,
            /* [in] */ BSTR aBaseFolder,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateLegacyMachine( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aOsTypeId,
            /* [in] */ BSTR aSettingsFile,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenMachine( 
            /* [in] */ BSTR aSettingsFile,
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RegisterMachine( 
            /* [in] */ IMachine *aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMachine( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindMachine( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnregisterMachine( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateAppliance( 
            /* [retval][out] */ IAppliance **aAppliance) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateHardDisk( 
            /* [in] */ BSTR aFormat,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenHardDisk( 
            /* [in] */ BSTR aLocation,
            /* [in] */ AccessMode aAccessMode,
            /* [in] */ BOOL aSetImageId,
            /* [in] */ BSTR aImageId,
            /* [in] */ BOOL aSetParentId,
            /* [in] */ BSTR aParentId,
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetHardDisk( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindHardDisk( 
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenDVDImage( 
            /* [in] */ BSTR aLocation,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDVDImage( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindDVDImage( 
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aImage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenFloppyImage( 
            /* [in] */ BSTR aLocation,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetFloppyImage( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindFloppyImage( 
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aImage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuestOSType( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IGuestOSType **aType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateSharedFolder( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveSharedFolder( 
            /* [in] */ BSTR aName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetExtraDataKeys( 
            /* [retval][out] */ SAFEARRAY * *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetExtraData( 
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetExtraData( 
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenSession( 
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aMachineId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenRemoteSession( 
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aType,
            /* [in] */ BSTR aEnvironment,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenExistingSession( 
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aMachineId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RegisterCallback( 
            /* [in] */ IVirtualBoxCallback *aCallback) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnregisterCallback( 
            /* [in] */ IVirtualBoxCallback *aCallback) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE WaitForPropertyChange( 
            /* [in] */ BSTR aWhat,
            /* [in] */ ULONG aTimeout,
            /* [out] */ BSTR *aChanged,
            /* [out] */ BSTR *aValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateDHCPServer( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IDHCPServer **aServer) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindDHCPServerByNetworkName( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IDHCPServer **aServer) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveDHCPServer( 
            /* [in] */ IDHCPServer *aServer) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CheckFirmwarePresent( 
            /* [in] */ FirmwareType aFirmwareType,
            /* [in] */ BSTR aVersion,
            /* [out] */ BSTR *aUrl,
            /* [out] */ BSTR *aFile,
            /* [retval][out] */ BOOL *aResult) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVirtualBoxVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVirtualBox * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVirtualBox * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVirtualBox * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVirtualBox * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVirtualBox * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVirtualBox * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVirtualBox * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
            IVirtualBox * This,
            /* [retval][out] */ BSTR *aVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IVirtualBox * This,
            /* [retval][out] */ ULONG *aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PackageType )( 
            IVirtualBox * This,
            /* [retval][out] */ BSTR *aPackageType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HomeFolder )( 
            IVirtualBox * This,
            /* [retval][out] */ BSTR *aHomeFolder);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SettingsFilePath )( 
            IVirtualBox * This,
            /* [retval][out] */ BSTR *aSettingsFilePath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Host )( 
            IVirtualBox * This,
            /* [retval][out] */ IHost **aHost);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SystemProperties )( 
            IVirtualBox * This,
            /* [retval][out] */ ISystemProperties **aSystemProperties);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Machines )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aMachines);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HardDisks )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aHardDisks);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DVDImages )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aDVDImages);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FloppyImages )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aFloppyImages);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProgressOperations )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aProgressOperations);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_GuestOSTypes )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aGuestOSTypes);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SharedFolders )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aSharedFolders);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceCollector )( 
            IVirtualBox * This,
            /* [retval][out] */ IPerformanceCollector **aPerformanceCollector);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DHCPServers )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aDHCPServers);
        
        HRESULT ( STDMETHODCALLTYPE *CreateMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aOsTypeId,
            /* [in] */ BSTR aBaseFolder,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *CreateLegacyMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aOsTypeId,
            /* [in] */ BSTR aSettingsFile,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *OpenMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aSettingsFile,
            /* [retval][out] */ IMachine **aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *RegisterMachine )( 
            IVirtualBox * This,
            /* [in] */ IMachine *aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *GetMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *FindMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IMachine **aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *UnregisterMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMachine **aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *CreateAppliance )( 
            IVirtualBox * This,
            /* [retval][out] */ IAppliance **aAppliance);
        
        HRESULT ( STDMETHODCALLTYPE *CreateHardDisk )( 
            IVirtualBox * This,
            /* [in] */ BSTR aFormat,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aMedium);
        
        HRESULT ( STDMETHODCALLTYPE *OpenHardDisk )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [in] */ AccessMode aAccessMode,
            /* [in] */ BOOL aSetImageId,
            /* [in] */ BSTR aImageId,
            /* [in] */ BOOL aSetParentId,
            /* [in] */ BSTR aParentId,
            /* [retval][out] */ IMedium **aMedium);
        
        HRESULT ( STDMETHODCALLTYPE *GetHardDisk )( 
            IVirtualBox * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aMedium);
        
        HRESULT ( STDMETHODCALLTYPE *FindHardDisk )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aMedium);
        
        HRESULT ( STDMETHODCALLTYPE *OpenDVDImage )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage);
        
        HRESULT ( STDMETHODCALLTYPE *GetDVDImage )( 
            IVirtualBox * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage);
        
        HRESULT ( STDMETHODCALLTYPE *FindDVDImage )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aImage);
        
        HRESULT ( STDMETHODCALLTYPE *OpenFloppyImage )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage);
        
        HRESULT ( STDMETHODCALLTYPE *GetFloppyImage )( 
            IVirtualBox * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IMedium **aImage);
        
        HRESULT ( STDMETHODCALLTYPE *FindFloppyImage )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IMedium **aImage);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuestOSType )( 
            IVirtualBox * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IGuestOSType **aType);
        
        HRESULT ( STDMETHODCALLTYPE *CreateSharedFolder )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveSharedFolder )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName);
        
        HRESULT ( STDMETHODCALLTYPE *GetExtraDataKeys )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetExtraData )( 
            IVirtualBox * This,
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetExtraData )( 
            IVirtualBox * This,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *OpenSession )( 
            IVirtualBox * This,
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aMachineId);
        
        HRESULT ( STDMETHODCALLTYPE *OpenRemoteSession )( 
            IVirtualBox * This,
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aMachineId,
            /* [in] */ BSTR aType,
            /* [in] */ BSTR aEnvironment,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *OpenExistingSession )( 
            IVirtualBox * This,
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aMachineId);
        
        HRESULT ( STDMETHODCALLTYPE *RegisterCallback )( 
            IVirtualBox * This,
            /* [in] */ IVirtualBoxCallback *aCallback);
        
        HRESULT ( STDMETHODCALLTYPE *UnregisterCallback )( 
            IVirtualBox * This,
            /* [in] */ IVirtualBoxCallback *aCallback);
        
        HRESULT ( STDMETHODCALLTYPE *WaitForPropertyChange )( 
            IVirtualBox * This,
            /* [in] */ BSTR aWhat,
            /* [in] */ ULONG aTimeout,
            /* [out] */ BSTR *aChanged,
            /* [out] */ BSTR *aValues);
        
        HRESULT ( STDMETHODCALLTYPE *CreateDHCPServer )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IDHCPServer **aServer);
        
        HRESULT ( STDMETHODCALLTYPE *FindDHCPServerByNetworkName )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IDHCPServer **aServer);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveDHCPServer )( 
            IVirtualBox * This,
            /* [in] */ IDHCPServer *aServer);
        
        HRESULT ( STDMETHODCALLTYPE *CheckFirmwarePresent )( 
            IVirtualBox * This,
            /* [in] */ FirmwareType aFirmwareType,
            /* [in] */ BSTR aVersion,
            /* [out] */ BSTR *aUrl,
            /* [out] */ BSTR *aFile,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IVirtualBoxVtbl;

    interface IVirtualBox
    {
        CONST_VTBL struct IVirtualBoxVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVirtualBox_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVirtualBox_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVirtualBox_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVirtualBox_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVirtualBox_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVirtualBox_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVirtualBox_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVirtualBox_get_Version(This,aVersion)	\
    (This)->lpVtbl -> get_Version(This,aVersion)

#define IVirtualBox_get_Revision(This,aRevision)	\
    (This)->lpVtbl -> get_Revision(This,aRevision)

#define IVirtualBox_get_PackageType(This,aPackageType)	\
    (This)->lpVtbl -> get_PackageType(This,aPackageType)

#define IVirtualBox_get_HomeFolder(This,aHomeFolder)	\
    (This)->lpVtbl -> get_HomeFolder(This,aHomeFolder)

#define IVirtualBox_get_SettingsFilePath(This,aSettingsFilePath)	\
    (This)->lpVtbl -> get_SettingsFilePath(This,aSettingsFilePath)

#define IVirtualBox_get_Host(This,aHost)	\
    (This)->lpVtbl -> get_Host(This,aHost)

#define IVirtualBox_get_SystemProperties(This,aSystemProperties)	\
    (This)->lpVtbl -> get_SystemProperties(This,aSystemProperties)

#define IVirtualBox_get_Machines(This,aMachines)	\
    (This)->lpVtbl -> get_Machines(This,aMachines)

#define IVirtualBox_get_HardDisks(This,aHardDisks)	\
    (This)->lpVtbl -> get_HardDisks(This,aHardDisks)

#define IVirtualBox_get_DVDImages(This,aDVDImages)	\
    (This)->lpVtbl -> get_DVDImages(This,aDVDImages)

#define IVirtualBox_get_FloppyImages(This,aFloppyImages)	\
    (This)->lpVtbl -> get_FloppyImages(This,aFloppyImages)

#define IVirtualBox_get_ProgressOperations(This,aProgressOperations)	\
    (This)->lpVtbl -> get_ProgressOperations(This,aProgressOperations)

#define IVirtualBox_get_GuestOSTypes(This,aGuestOSTypes)	\
    (This)->lpVtbl -> get_GuestOSTypes(This,aGuestOSTypes)

#define IVirtualBox_get_SharedFolders(This,aSharedFolders)	\
    (This)->lpVtbl -> get_SharedFolders(This,aSharedFolders)

#define IVirtualBox_get_PerformanceCollector(This,aPerformanceCollector)	\
    (This)->lpVtbl -> get_PerformanceCollector(This,aPerformanceCollector)

#define IVirtualBox_get_DHCPServers(This,aDHCPServers)	\
    (This)->lpVtbl -> get_DHCPServers(This,aDHCPServers)

#define IVirtualBox_CreateMachine(This,aName,aOsTypeId,aBaseFolder,aId,aMachine)	\
    (This)->lpVtbl -> CreateMachine(This,aName,aOsTypeId,aBaseFolder,aId,aMachine)

#define IVirtualBox_CreateLegacyMachine(This,aName,aOsTypeId,aSettingsFile,aId,aMachine)	\
    (This)->lpVtbl -> CreateLegacyMachine(This,aName,aOsTypeId,aSettingsFile,aId,aMachine)

#define IVirtualBox_OpenMachine(This,aSettingsFile,aMachine)	\
    (This)->lpVtbl -> OpenMachine(This,aSettingsFile,aMachine)

#define IVirtualBox_RegisterMachine(This,aMachine)	\
    (This)->lpVtbl -> RegisterMachine(This,aMachine)

#define IVirtualBox_GetMachine(This,aId,aMachine)	\
    (This)->lpVtbl -> GetMachine(This,aId,aMachine)

#define IVirtualBox_FindMachine(This,aName,aMachine)	\
    (This)->lpVtbl -> FindMachine(This,aName,aMachine)

#define IVirtualBox_UnregisterMachine(This,aId,aMachine)	\
    (This)->lpVtbl -> UnregisterMachine(This,aId,aMachine)

#define IVirtualBox_CreateAppliance(This,aAppliance)	\
    (This)->lpVtbl -> CreateAppliance(This,aAppliance)

#define IVirtualBox_CreateHardDisk(This,aFormat,aLocation,aMedium)	\
    (This)->lpVtbl -> CreateHardDisk(This,aFormat,aLocation,aMedium)

#define IVirtualBox_OpenHardDisk(This,aLocation,aAccessMode,aSetImageId,aImageId,aSetParentId,aParentId,aMedium)	\
    (This)->lpVtbl -> OpenHardDisk(This,aLocation,aAccessMode,aSetImageId,aImageId,aSetParentId,aParentId,aMedium)

#define IVirtualBox_GetHardDisk(This,aId,aMedium)	\
    (This)->lpVtbl -> GetHardDisk(This,aId,aMedium)

#define IVirtualBox_FindHardDisk(This,aLocation,aMedium)	\
    (This)->lpVtbl -> FindHardDisk(This,aLocation,aMedium)

#define IVirtualBox_OpenDVDImage(This,aLocation,aId,aImage)	\
    (This)->lpVtbl -> OpenDVDImage(This,aLocation,aId,aImage)

#define IVirtualBox_GetDVDImage(This,aId,aImage)	\
    (This)->lpVtbl -> GetDVDImage(This,aId,aImage)

#define IVirtualBox_FindDVDImage(This,aLocation,aImage)	\
    (This)->lpVtbl -> FindDVDImage(This,aLocation,aImage)

#define IVirtualBox_OpenFloppyImage(This,aLocation,aId,aImage)	\
    (This)->lpVtbl -> OpenFloppyImage(This,aLocation,aId,aImage)

#define IVirtualBox_GetFloppyImage(This,aId,aImage)	\
    (This)->lpVtbl -> GetFloppyImage(This,aId,aImage)

#define IVirtualBox_FindFloppyImage(This,aLocation,aImage)	\
    (This)->lpVtbl -> FindFloppyImage(This,aLocation,aImage)

#define IVirtualBox_GetGuestOSType(This,aId,aType)	\
    (This)->lpVtbl -> GetGuestOSType(This,aId,aType)

#define IVirtualBox_CreateSharedFolder(This,aName,aHostPath,aWritable)	\
    (This)->lpVtbl -> CreateSharedFolder(This,aName,aHostPath,aWritable)

#define IVirtualBox_RemoveSharedFolder(This,aName)	\
    (This)->lpVtbl -> RemoveSharedFolder(This,aName)

#define IVirtualBox_GetExtraDataKeys(This,aValue)	\
    (This)->lpVtbl -> GetExtraDataKeys(This,aValue)

#define IVirtualBox_GetExtraData(This,aKey,aValue)	\
    (This)->lpVtbl -> GetExtraData(This,aKey,aValue)

#define IVirtualBox_SetExtraData(This,aKey,aValue)	\
    (This)->lpVtbl -> SetExtraData(This,aKey,aValue)

#define IVirtualBox_OpenSession(This,aSession,aMachineId)	\
    (This)->lpVtbl -> OpenSession(This,aSession,aMachineId)

#define IVirtualBox_OpenRemoteSession(This,aSession,aMachineId,aType,aEnvironment,aProgress)	\
    (This)->lpVtbl -> OpenRemoteSession(This,aSession,aMachineId,aType,aEnvironment,aProgress)

#define IVirtualBox_OpenExistingSession(This,aSession,aMachineId)	\
    (This)->lpVtbl -> OpenExistingSession(This,aSession,aMachineId)

#define IVirtualBox_RegisterCallback(This,aCallback)	\
    (This)->lpVtbl -> RegisterCallback(This,aCallback)

#define IVirtualBox_UnregisterCallback(This,aCallback)	\
    (This)->lpVtbl -> UnregisterCallback(This,aCallback)

#define IVirtualBox_WaitForPropertyChange(This,aWhat,aTimeout,aChanged,aValues)	\
    (This)->lpVtbl -> WaitForPropertyChange(This,aWhat,aTimeout,aChanged,aValues)

#define IVirtualBox_CreateDHCPServer(This,aName,aServer)	\
    (This)->lpVtbl -> CreateDHCPServer(This,aName,aServer)

#define IVirtualBox_FindDHCPServerByNetworkName(This,aName,aServer)	\
    (This)->lpVtbl -> FindDHCPServerByNetworkName(This,aName,aServer)

#define IVirtualBox_RemoveDHCPServer(This,aServer)	\
    (This)->lpVtbl -> RemoveDHCPServer(This,aServer)

#define IVirtualBox_CheckFirmwarePresent(This,aFirmwareType,aVersion,aUrl,aFile,aResult)	\
    (This)->lpVtbl -> CheckFirmwarePresent(This,aFirmwareType,aVersion,aUrl,aFile,aResult)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_Version_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ BSTR *aVersion);


void __RPC_STUB IVirtualBox_get_Version_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_Revision_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ ULONG *aRevision);


void __RPC_STUB IVirtualBox_get_Revision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_PackageType_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ BSTR *aPackageType);


void __RPC_STUB IVirtualBox_get_PackageType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_HomeFolder_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ BSTR *aHomeFolder);


void __RPC_STUB IVirtualBox_get_HomeFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_SettingsFilePath_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ BSTR *aSettingsFilePath);


void __RPC_STUB IVirtualBox_get_SettingsFilePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_Host_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ IHost **aHost);


void __RPC_STUB IVirtualBox_get_Host_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_SystemProperties_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ ISystemProperties **aSystemProperties);


void __RPC_STUB IVirtualBox_get_SystemProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_Machines_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aMachines);


void __RPC_STUB IVirtualBox_get_Machines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_HardDisks_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aHardDisks);


void __RPC_STUB IVirtualBox_get_HardDisks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_DVDImages_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aDVDImages);


void __RPC_STUB IVirtualBox_get_DVDImages_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_FloppyImages_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aFloppyImages);


void __RPC_STUB IVirtualBox_get_FloppyImages_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_ProgressOperations_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aProgressOperations);


void __RPC_STUB IVirtualBox_get_ProgressOperations_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_GuestOSTypes_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aGuestOSTypes);


void __RPC_STUB IVirtualBox_get_GuestOSTypes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_SharedFolders_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aSharedFolders);


void __RPC_STUB IVirtualBox_get_SharedFolders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_PerformanceCollector_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ IPerformanceCollector **aPerformanceCollector);


void __RPC_STUB IVirtualBox_get_PerformanceCollector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_DHCPServers_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aDHCPServers);


void __RPC_STUB IVirtualBox_get_DHCPServers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CreateMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aOsTypeId,
    /* [in] */ BSTR aBaseFolder,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_CreateMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CreateLegacyMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aOsTypeId,
    /* [in] */ BSTR aSettingsFile,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_CreateLegacyMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aSettingsFile,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_OpenMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_RegisterMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ IMachine *aMachine);


void __RPC_STUB IVirtualBox_RegisterMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_GetMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_FindMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_FindMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_UnregisterMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_UnregisterMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CreateAppliance_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ IAppliance **aAppliance);


void __RPC_STUB IVirtualBox_CreateAppliance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CreateHardDisk_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aFormat,
    /* [in] */ BSTR aLocation,
    /* [retval][out] */ IMedium **aMedium);


void __RPC_STUB IVirtualBox_CreateHardDisk_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenHardDisk_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [in] */ AccessMode aAccessMode,
    /* [in] */ BOOL aSetImageId,
    /* [in] */ BSTR aImageId,
    /* [in] */ BOOL aSetParentId,
    /* [in] */ BSTR aParentId,
    /* [retval][out] */ IMedium **aMedium);


void __RPC_STUB IVirtualBox_OpenHardDisk_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetHardDisk_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMedium **aMedium);


void __RPC_STUB IVirtualBox_GetHardDisk_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_FindHardDisk_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [retval][out] */ IMedium **aMedium);


void __RPC_STUB IVirtualBox_FindHardDisk_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenDVDImage_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMedium **aImage);


void __RPC_STUB IVirtualBox_OpenDVDImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetDVDImage_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMedium **aImage);


void __RPC_STUB IVirtualBox_GetDVDImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_FindDVDImage_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [retval][out] */ IMedium **aImage);


void __RPC_STUB IVirtualBox_FindDVDImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenFloppyImage_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMedium **aImage);


void __RPC_STUB IVirtualBox_OpenFloppyImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetFloppyImage_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IMedium **aImage);


void __RPC_STUB IVirtualBox_GetFloppyImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_FindFloppyImage_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [retval][out] */ IMedium **aImage);


void __RPC_STUB IVirtualBox_FindFloppyImage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetGuestOSType_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IGuestOSType **aType);


void __RPC_STUB IVirtualBox_GetGuestOSType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CreateSharedFolder_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aHostPath,
    /* [in] */ BOOL aWritable);


void __RPC_STUB IVirtualBox_CreateSharedFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_RemoveSharedFolder_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName);


void __RPC_STUB IVirtualBox_RemoveSharedFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetExtraDataKeys_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ SAFEARRAY * *aValue);


void __RPC_STUB IVirtualBox_GetExtraDataKeys_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_GetExtraData_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aKey,
    /* [retval][out] */ BSTR *aValue);


void __RPC_STUB IVirtualBox_GetExtraData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_SetExtraData_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aKey,
    /* [in] */ BSTR aValue);


void __RPC_STUB IVirtualBox_SetExtraData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenSession_Proxy( 
    IVirtualBox * This,
    /* [in] */ ISession *aSession,
    /* [in] */ BSTR aMachineId);


void __RPC_STUB IVirtualBox_OpenSession_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenRemoteSession_Proxy( 
    IVirtualBox * This,
    /* [in] */ ISession *aSession,
    /* [in] */ BSTR aMachineId,
    /* [in] */ BSTR aType,
    /* [in] */ BSTR aEnvironment,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IVirtualBox_OpenRemoteSession_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_OpenExistingSession_Proxy( 
    IVirtualBox * This,
    /* [in] */ ISession *aSession,
    /* [in] */ BSTR aMachineId);


void __RPC_STUB IVirtualBox_OpenExistingSession_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_RegisterCallback_Proxy( 
    IVirtualBox * This,
    /* [in] */ IVirtualBoxCallback *aCallback);


void __RPC_STUB IVirtualBox_RegisterCallback_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_UnregisterCallback_Proxy( 
    IVirtualBox * This,
    /* [in] */ IVirtualBoxCallback *aCallback);


void __RPC_STUB IVirtualBox_UnregisterCallback_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_WaitForPropertyChange_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aWhat,
    /* [in] */ ULONG aTimeout,
    /* [out] */ BSTR *aChanged,
    /* [out] */ BSTR *aValues);


void __RPC_STUB IVirtualBox_WaitForPropertyChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CreateDHCPServer_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IDHCPServer **aServer);


void __RPC_STUB IVirtualBox_CreateDHCPServer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_FindDHCPServerByNetworkName_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IDHCPServer **aServer);


void __RPC_STUB IVirtualBox_FindDHCPServerByNetworkName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_RemoveDHCPServer_Proxy( 
    IVirtualBox * This,
    /* [in] */ IDHCPServer *aServer);


void __RPC_STUB IVirtualBox_RemoveDHCPServer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualBox_CheckFirmwarePresent_Proxy( 
    IVirtualBox * This,
    /* [in] */ FirmwareType aFirmwareType,
    /* [in] */ BSTR aVersion,
    /* [out] */ BSTR *aUrl,
    /* [out] */ BSTR *aFile,
    /* [retval][out] */ BOOL *aResult);


void __RPC_STUB IVirtualBox_CheckFirmwarePresent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVirtualBox_INTERFACE_DEFINED__ */


#ifndef __IVFSExplorer_INTERFACE_DEFINED__
#define __IVFSExplorer_INTERFACE_DEFINED__

/* interface IVFSExplorer */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVFSExplorer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2bb864a1-02a3-4474-a1d4-fb5f23b742e1")
    IVFSExplorer : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR *aPath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ VFSType *aType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Update( 
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Cd( 
            /* [in] */ BSTR aADir,
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CdUp( 
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EntryList( 
            /* [out] */ SAFEARRAY * *aANames,
            /* [out] */ SAFEARRAY * *aATypes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Exists( 
            /* [out][in] */ SAFEARRAY * *aANames,
            /* [retval][out] */ SAFEARRAY * *aAExists) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Remove( 
            /* [out][in] */ SAFEARRAY * *aANames,
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVFSExplorerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVFSExplorer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVFSExplorer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVFSExplorer * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVFSExplorer * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVFSExplorer * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVFSExplorer * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVFSExplorer * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IVFSExplorer * This,
            /* [retval][out] */ BSTR *aPath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IVFSExplorer * This,
            /* [retval][out] */ VFSType *aType);
        
        HRESULT ( STDMETHODCALLTYPE *Update )( 
            IVFSExplorer * This,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Cd )( 
            IVFSExplorer * This,
            /* [in] */ BSTR aADir,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CdUp )( 
            IVFSExplorer * This,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *EntryList )( 
            IVFSExplorer * This,
            /* [out] */ SAFEARRAY * *aANames,
            /* [out] */ SAFEARRAY * *aATypes);
        
        HRESULT ( STDMETHODCALLTYPE *Exists )( 
            IVFSExplorer * This,
            /* [out][in] */ SAFEARRAY * *aANames,
            /* [retval][out] */ SAFEARRAY * *aAExists);
        
        HRESULT ( STDMETHODCALLTYPE *Remove )( 
            IVFSExplorer * This,
            /* [out][in] */ SAFEARRAY * *aANames,
            /* [retval][out] */ IProgress **aAProgress);
        
        END_INTERFACE
    } IVFSExplorerVtbl;

    interface IVFSExplorer
    {
        CONST_VTBL struct IVFSExplorerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVFSExplorer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVFSExplorer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVFSExplorer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVFSExplorer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVFSExplorer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVFSExplorer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVFSExplorer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVFSExplorer_get_Path(This,aPath)	\
    (This)->lpVtbl -> get_Path(This,aPath)

#define IVFSExplorer_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IVFSExplorer_Update(This,aAProgress)	\
    (This)->lpVtbl -> Update(This,aAProgress)

#define IVFSExplorer_Cd(This,aADir,aAProgress)	\
    (This)->lpVtbl -> Cd(This,aADir,aAProgress)

#define IVFSExplorer_CdUp(This,aAProgress)	\
    (This)->lpVtbl -> CdUp(This,aAProgress)

#define IVFSExplorer_EntryList(This,aANames,aATypes)	\
    (This)->lpVtbl -> EntryList(This,aANames,aATypes)

#define IVFSExplorer_Exists(This,aANames,aAExists)	\
    (This)->lpVtbl -> Exists(This,aANames,aAExists)

#define IVFSExplorer_Remove(This,aANames,aAProgress)	\
    (This)->lpVtbl -> Remove(This,aANames,aAProgress)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVFSExplorer_get_Path_Proxy( 
    IVFSExplorer * This,
    /* [retval][out] */ BSTR *aPath);


void __RPC_STUB IVFSExplorer_get_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVFSExplorer_get_Type_Proxy( 
    IVFSExplorer * This,
    /* [retval][out] */ VFSType *aType);


void __RPC_STUB IVFSExplorer_get_Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVFSExplorer_Update_Proxy( 
    IVFSExplorer * This,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IVFSExplorer_Update_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVFSExplorer_Cd_Proxy( 
    IVFSExplorer * This,
    /* [in] */ BSTR aADir,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IVFSExplorer_Cd_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVFSExplorer_CdUp_Proxy( 
    IVFSExplorer * This,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IVFSExplorer_CdUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVFSExplorer_EntryList_Proxy( 
    IVFSExplorer * This,
    /* [out] */ SAFEARRAY * *aANames,
    /* [out] */ SAFEARRAY * *aATypes);


void __RPC_STUB IVFSExplorer_EntryList_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVFSExplorer_Exists_Proxy( 
    IVFSExplorer * This,
    /* [out][in] */ SAFEARRAY * *aANames,
    /* [retval][out] */ SAFEARRAY * *aAExists);


void __RPC_STUB IVFSExplorer_Exists_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVFSExplorer_Remove_Proxy( 
    IVFSExplorer * This,
    /* [out][in] */ SAFEARRAY * *aANames,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IVFSExplorer_Remove_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVFSExplorer_INTERFACE_DEFINED__ */


#ifndef __IAppliance_INTERFACE_DEFINED__
#define __IAppliance_INTERFACE_DEFINED__

/* interface IAppliance */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IAppliance;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e3ba9ab9-ac2c-4266-8bd2-91c4bf721ceb")
    IAppliance : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR *aPath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Disks( 
            /* [retval][out] */ SAFEARRAY * *aDisks) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VirtualSystemDescriptions( 
            /* [retval][out] */ SAFEARRAY * *aVirtualSystemDescriptions) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Read( 
            /* [in] */ BSTR aFile,
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Interpret( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ImportMachines( 
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateVFSExplorer( 
            /* [in] */ BSTR aAUri,
            /* [retval][out] */ IVFSExplorer **aAExplorer) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Write( 
            /* [in] */ BSTR aFormat,
            /* [in] */ BSTR aPath,
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetWarnings( 
            /* [retval][out] */ SAFEARRAY * *aAWarnings) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IApplianceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAppliance * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAppliance * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAppliance * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAppliance * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAppliance * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAppliance * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAppliance * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IAppliance * This,
            /* [retval][out] */ BSTR *aPath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Disks )( 
            IAppliance * This,
            /* [retval][out] */ SAFEARRAY * *aDisks);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VirtualSystemDescriptions )( 
            IAppliance * This,
            /* [retval][out] */ SAFEARRAY * *aVirtualSystemDescriptions);
        
        HRESULT ( STDMETHODCALLTYPE *Read )( 
            IAppliance * This,
            /* [in] */ BSTR aFile,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Interpret )( 
            IAppliance * This);
        
        HRESULT ( STDMETHODCALLTYPE *ImportMachines )( 
            IAppliance * This,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CreateVFSExplorer )( 
            IAppliance * This,
            /* [in] */ BSTR aAUri,
            /* [retval][out] */ IVFSExplorer **aAExplorer);
        
        HRESULT ( STDMETHODCALLTYPE *Write )( 
            IAppliance * This,
            /* [in] */ BSTR aFormat,
            /* [in] */ BSTR aPath,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *GetWarnings )( 
            IAppliance * This,
            /* [retval][out] */ SAFEARRAY * *aAWarnings);
        
        END_INTERFACE
    } IApplianceVtbl;

    interface IAppliance
    {
        CONST_VTBL struct IApplianceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAppliance_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAppliance_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAppliance_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAppliance_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAppliance_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAppliance_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAppliance_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAppliance_get_Path(This,aPath)	\
    (This)->lpVtbl -> get_Path(This,aPath)

#define IAppliance_get_Disks(This,aDisks)	\
    (This)->lpVtbl -> get_Disks(This,aDisks)

#define IAppliance_get_VirtualSystemDescriptions(This,aVirtualSystemDescriptions)	\
    (This)->lpVtbl -> get_VirtualSystemDescriptions(This,aVirtualSystemDescriptions)

#define IAppliance_Read(This,aFile,aAProgress)	\
    (This)->lpVtbl -> Read(This,aFile,aAProgress)

#define IAppliance_Interpret(This)	\
    (This)->lpVtbl -> Interpret(This)

#define IAppliance_ImportMachines(This,aAProgress)	\
    (This)->lpVtbl -> ImportMachines(This,aAProgress)

#define IAppliance_CreateVFSExplorer(This,aAUri,aAExplorer)	\
    (This)->lpVtbl -> CreateVFSExplorer(This,aAUri,aAExplorer)

#define IAppliance_Write(This,aFormat,aPath,aAProgress)	\
    (This)->lpVtbl -> Write(This,aFormat,aPath,aAProgress)

#define IAppliance_GetWarnings(This,aAWarnings)	\
    (This)->lpVtbl -> GetWarnings(This,aAWarnings)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IAppliance_get_Path_Proxy( 
    IAppliance * This,
    /* [retval][out] */ BSTR *aPath);


void __RPC_STUB IAppliance_get_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IAppliance_get_Disks_Proxy( 
    IAppliance * This,
    /* [retval][out] */ SAFEARRAY * *aDisks);


void __RPC_STUB IAppliance_get_Disks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IAppliance_get_VirtualSystemDescriptions_Proxy( 
    IAppliance * This,
    /* [retval][out] */ SAFEARRAY * *aVirtualSystemDescriptions);


void __RPC_STUB IAppliance_get_VirtualSystemDescriptions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IAppliance_Read_Proxy( 
    IAppliance * This,
    /* [in] */ BSTR aFile,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IAppliance_Read_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IAppliance_Interpret_Proxy( 
    IAppliance * This);


void __RPC_STUB IAppliance_Interpret_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IAppliance_ImportMachines_Proxy( 
    IAppliance * This,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IAppliance_ImportMachines_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IAppliance_CreateVFSExplorer_Proxy( 
    IAppliance * This,
    /* [in] */ BSTR aAUri,
    /* [retval][out] */ IVFSExplorer **aAExplorer);


void __RPC_STUB IAppliance_CreateVFSExplorer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IAppliance_Write_Proxy( 
    IAppliance * This,
    /* [in] */ BSTR aFormat,
    /* [in] */ BSTR aPath,
    /* [retval][out] */ IProgress **aAProgress);


void __RPC_STUB IAppliance_Write_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IAppliance_GetWarnings_Proxy( 
    IAppliance * This,
    /* [retval][out] */ SAFEARRAY * *aAWarnings);


void __RPC_STUB IAppliance_GetWarnings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAppliance_INTERFACE_DEFINED__ */


#ifndef __IVirtualSystemDescription_INTERFACE_DEFINED__
#define __IVirtualSystemDescription_INTERFACE_DEFINED__

/* interface IVirtualSystemDescription */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVirtualSystemDescription;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d7525e6c-531a-4c51-8e04-41235083a3d8")
    IVirtualSystemDescription : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ ULONG *aCount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDescription( 
            /* [out] */ SAFEARRAY * *aATypes,
            /* [out] */ SAFEARRAY * *aARefs,
            /* [out] */ SAFEARRAY * *aAOvfValues,
            /* [out] */ SAFEARRAY * *aAVBoxValues,
            /* [out] */ SAFEARRAY * *aAExtraConfigValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDescriptionByType( 
            /* [in] */ VirtualSystemDescriptionType aAType,
            /* [out] */ SAFEARRAY * *aATypes,
            /* [out] */ SAFEARRAY * *aARefs,
            /* [out] */ SAFEARRAY * *aAOvfValues,
            /* [out] */ SAFEARRAY * *aAVBoxValues,
            /* [out] */ SAFEARRAY * *aAExtraConfigValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetValuesByType( 
            /* [in] */ VirtualSystemDescriptionType aAType,
            /* [in] */ VirtualSystemDescriptionValueType aAWhich,
            /* [retval][out] */ SAFEARRAY * *aAValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetFinalValues( 
            /* [out][in] */ SAFEARRAY * *aAEnabled,
            /* [out][in] */ SAFEARRAY * *aAVBoxValues,
            /* [out][in] */ SAFEARRAY * *aAExtraConfigValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AddDescription( 
            /* [in] */ VirtualSystemDescriptionType aAType,
            /* [in] */ BSTR aAVBoxValue,
            /* [in] */ BSTR aAExtraConfigValue) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVirtualSystemDescriptionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVirtualSystemDescription * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVirtualSystemDescription * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVirtualSystemDescription * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVirtualSystemDescription * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVirtualSystemDescription * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVirtualSystemDescription * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVirtualSystemDescription * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IVirtualSystemDescription * This,
            /* [retval][out] */ ULONG *aCount);
        
        HRESULT ( STDMETHODCALLTYPE *GetDescription )( 
            IVirtualSystemDescription * This,
            /* [out] */ SAFEARRAY * *aATypes,
            /* [out] */ SAFEARRAY * *aARefs,
            /* [out] */ SAFEARRAY * *aAOvfValues,
            /* [out] */ SAFEARRAY * *aAVBoxValues,
            /* [out] */ SAFEARRAY * *aAExtraConfigValues);
        
        HRESULT ( STDMETHODCALLTYPE *GetDescriptionByType )( 
            IVirtualSystemDescription * This,
            /* [in] */ VirtualSystemDescriptionType aAType,
            /* [out] */ SAFEARRAY * *aATypes,
            /* [out] */ SAFEARRAY * *aARefs,
            /* [out] */ SAFEARRAY * *aAOvfValues,
            /* [out] */ SAFEARRAY * *aAVBoxValues,
            /* [out] */ SAFEARRAY * *aAExtraConfigValues);
        
        HRESULT ( STDMETHODCALLTYPE *GetValuesByType )( 
            IVirtualSystemDescription * This,
            /* [in] */ VirtualSystemDescriptionType aAType,
            /* [in] */ VirtualSystemDescriptionValueType aAWhich,
            /* [retval][out] */ SAFEARRAY * *aAValues);
        
        HRESULT ( STDMETHODCALLTYPE *SetFinalValues )( 
            IVirtualSystemDescription * This,
            /* [out][in] */ SAFEARRAY * *aAEnabled,
            /* [out][in] */ SAFEARRAY * *aAVBoxValues,
            /* [out][in] */ SAFEARRAY * *aAExtraConfigValues);
        
        HRESULT ( STDMETHODCALLTYPE *AddDescription )( 
            IVirtualSystemDescription * This,
            /* [in] */ VirtualSystemDescriptionType aAType,
            /* [in] */ BSTR aAVBoxValue,
            /* [in] */ BSTR aAExtraConfigValue);
        
        END_INTERFACE
    } IVirtualSystemDescriptionVtbl;

    interface IVirtualSystemDescription
    {
        CONST_VTBL struct IVirtualSystemDescriptionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVirtualSystemDescription_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVirtualSystemDescription_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVirtualSystemDescription_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVirtualSystemDescription_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVirtualSystemDescription_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVirtualSystemDescription_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVirtualSystemDescription_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVirtualSystemDescription_get_Count(This,aCount)	\
    (This)->lpVtbl -> get_Count(This,aCount)

#define IVirtualSystemDescription_GetDescription(This,aATypes,aARefs,aAOvfValues,aAVBoxValues,aAExtraConfigValues)	\
    (This)->lpVtbl -> GetDescription(This,aATypes,aARefs,aAOvfValues,aAVBoxValues,aAExtraConfigValues)

#define IVirtualSystemDescription_GetDescriptionByType(This,aAType,aATypes,aARefs,aAOvfValues,aAVBoxValues,aAExtraConfigValues)	\
    (This)->lpVtbl -> GetDescriptionByType(This,aAType,aATypes,aARefs,aAOvfValues,aAVBoxValues,aAExtraConfigValues)

#define IVirtualSystemDescription_GetValuesByType(This,aAType,aAWhich,aAValues)	\
    (This)->lpVtbl -> GetValuesByType(This,aAType,aAWhich,aAValues)

#define IVirtualSystemDescription_SetFinalValues(This,aAEnabled,aAVBoxValues,aAExtraConfigValues)	\
    (This)->lpVtbl -> SetFinalValues(This,aAEnabled,aAVBoxValues,aAExtraConfigValues)

#define IVirtualSystemDescription_AddDescription(This,aAType,aAVBoxValue,aAExtraConfigValue)	\
    (This)->lpVtbl -> AddDescription(This,aAType,aAVBoxValue,aAExtraConfigValue)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualSystemDescription_get_Count_Proxy( 
    IVirtualSystemDescription * This,
    /* [retval][out] */ ULONG *aCount);


void __RPC_STUB IVirtualSystemDescription_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualSystemDescription_GetDescription_Proxy( 
    IVirtualSystemDescription * This,
    /* [out] */ SAFEARRAY * *aATypes,
    /* [out] */ SAFEARRAY * *aARefs,
    /* [out] */ SAFEARRAY * *aAOvfValues,
    /* [out] */ SAFEARRAY * *aAVBoxValues,
    /* [out] */ SAFEARRAY * *aAExtraConfigValues);


void __RPC_STUB IVirtualSystemDescription_GetDescription_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualSystemDescription_GetDescriptionByType_Proxy( 
    IVirtualSystemDescription * This,
    /* [in] */ VirtualSystemDescriptionType aAType,
    /* [out] */ SAFEARRAY * *aATypes,
    /* [out] */ SAFEARRAY * *aARefs,
    /* [out] */ SAFEARRAY * *aAOvfValues,
    /* [out] */ SAFEARRAY * *aAVBoxValues,
    /* [out] */ SAFEARRAY * *aAExtraConfigValues);


void __RPC_STUB IVirtualSystemDescription_GetDescriptionByType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualSystemDescription_GetValuesByType_Proxy( 
    IVirtualSystemDescription * This,
    /* [in] */ VirtualSystemDescriptionType aAType,
    /* [in] */ VirtualSystemDescriptionValueType aAWhich,
    /* [retval][out] */ SAFEARRAY * *aAValues);


void __RPC_STUB IVirtualSystemDescription_GetValuesByType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualSystemDescription_SetFinalValues_Proxy( 
    IVirtualSystemDescription * This,
    /* [out][in] */ SAFEARRAY * *aAEnabled,
    /* [out][in] */ SAFEARRAY * *aAVBoxValues,
    /* [out][in] */ SAFEARRAY * *aAExtraConfigValues);


void __RPC_STUB IVirtualSystemDescription_SetFinalValues_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVirtualSystemDescription_AddDescription_Proxy( 
    IVirtualSystemDescription * This,
    /* [in] */ VirtualSystemDescriptionType aAType,
    /* [in] */ BSTR aAVBoxValue,
    /* [in] */ BSTR aAExtraConfigValue);


void __RPC_STUB IVirtualSystemDescription_AddDescription_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVirtualSystemDescription_INTERFACE_DEFINED__ */


#ifndef __IInternalMachineControl_INTERFACE_DEFINED__
#define __IInternalMachineControl_INTERFACE_DEFINED__

/* interface IInternalMachineControl */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IInternalMachineControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("35d8d838-d066-447d-927a-fd93afdbec90")
    IInternalMachineControl : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetRemoveSavedState( 
            /* [in] */ BOOL aARemove) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UpdateState( 
            /* [in] */ MachineState aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetIPCId( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RunUSBDeviceFilters( 
            /* [in] */ IUSBDevice *aDevice,
            /* [out] */ BOOL *aMatched,
            /* [out] */ ULONG *aMaskedInterfaces) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CaptureUSBDevice( 
            /* [in] */ BSTR aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DetachUSBDevice( 
            /* [in] */ BSTR aId,
            /* [in] */ BOOL aDone) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AutoCaptureUSBDevices( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DetachAllUSBDevices( 
            /* [in] */ BOOL aDone) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSessionEnd( 
            /* [in] */ ISession *aSession,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE BeginSavingState( 
            /* [in] */ IProgress *aProgress,
            /* [out] */ BSTR *aStateFilePath) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EndSavingState( 
            /* [in] */ BOOL aSuccess) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AdoptSavedState( 
            /* [in] */ BSTR aSavedStateFile) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE BeginTakingSnapshot( 
            /* [in] */ IConsole *aInitiator,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aDescription,
            /* [in] */ IProgress *aConsoleProgress,
            /* [in] */ BOOL aFTakingSnapshotOnline,
            /* [out] */ BSTR *aStateFilePath) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EndTakingSnapshot( 
            /* [in] */ BOOL aSuccess) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteSnapshot( 
            /* [in] */ IConsole *aInitiator,
            /* [in] */ BSTR aId,
            /* [out] */ MachineState *aMachineState,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RestoreSnapshot( 
            /* [in] */ IConsole *aInitiator,
            /* [in] */ ISnapshot *aSnapshot,
            /* [out] */ MachineState *aMachineState,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PullGuestProperties( 
            /* [out] */ SAFEARRAY * *aName,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PushGuestProperties( 
            /* [out][in] */ SAFEARRAY * *aName,
            /* [out][in] */ SAFEARRAY * *aValue,
            /* [out][in] */ SAFEARRAY * *aTimestamp,
            /* [out][in] */ SAFEARRAY * *aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PushGuestProperty( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ ULONG64 aTimestamp,
            /* [in] */ BSTR aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE LockMedia( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnlockMedia( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInternalMachineControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IInternalMachineControl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IInternalMachineControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IInternalMachineControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IInternalMachineControl * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IInternalMachineControl * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IInternalMachineControl * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IInternalMachineControl * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        HRESULT ( STDMETHODCALLTYPE *SetRemoveSavedState )( 
            IInternalMachineControl * This,
            /* [in] */ BOOL aARemove);
        
        HRESULT ( STDMETHODCALLTYPE *UpdateState )( 
            IInternalMachineControl * This,
            /* [in] */ MachineState aState);
        
        HRESULT ( STDMETHODCALLTYPE *GetIPCId )( 
            IInternalMachineControl * This,
            /* [retval][out] */ BSTR *aId);
        
        HRESULT ( STDMETHODCALLTYPE *RunUSBDeviceFilters )( 
            IInternalMachineControl * This,
            /* [in] */ IUSBDevice *aDevice,
            /* [out] */ BOOL *aMatched,
            /* [out] */ ULONG *aMaskedInterfaces);
        
        HRESULT ( STDMETHODCALLTYPE *CaptureUSBDevice )( 
            IInternalMachineControl * This,
            /* [in] */ BSTR aId);
        
        HRESULT ( STDMETHODCALLTYPE *DetachUSBDevice )( 
            IInternalMachineControl * This,
            /* [in] */ BSTR aId,
            /* [in] */ BOOL aDone);
        
        HRESULT ( STDMETHODCALLTYPE *AutoCaptureUSBDevices )( 
            IInternalMachineControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *DetachAllUSBDevices )( 
            IInternalMachineControl * This,
            /* [in] */ BOOL aDone);
        
        HRESULT ( STDMETHODCALLTYPE *OnSessionEnd )( 
            IInternalMachineControl * This,
            /* [in] */ ISession *aSession,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *BeginSavingState )( 
            IInternalMachineControl * This,
            /* [in] */ IProgress *aProgress,
            /* [out] */ BSTR *aStateFilePath);
        
        HRESULT ( STDMETHODCALLTYPE *EndSavingState )( 
            IInternalMachineControl * This,
            /* [in] */ BOOL aSuccess);
        
        HRESULT ( STDMETHODCALLTYPE *AdoptSavedState )( 
            IInternalMachineControl * This,
            /* [in] */ BSTR aSavedStateFile);
        
        HRESULT ( STDMETHODCALLTYPE *BeginTakingSnapshot )( 
            IInternalMachineControl * This,
            /* [in] */ IConsole *aInitiator,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aDescription,
            /* [in] */ IProgress *aConsoleProgress,
            /* [in] */ BOOL aFTakingSnapshotOnline,
            /* [out] */ BSTR *aStateFilePath);
        
        HRESULT ( STDMETHODCALLTYPE *EndTakingSnapshot )( 
            IInternalMachineControl * This,
            /* [in] */ BOOL aSuccess);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteSnapshot )( 
            IInternalMachineControl * This,
            /* [in] */ IConsole *aInitiator,
            /* [in] */ BSTR aId,
            /* [out] */ MachineState *aMachineState,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *RestoreSnapshot )( 
            IInternalMachineControl * This,
            /* [in] */ IConsole *aInitiator,
            /* [in] */ ISnapshot *aSnapshot,
            /* [out] */ MachineState *aMachineState,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *PullGuestProperties )( 
            IInternalMachineControl * This,
            /* [out] */ SAFEARRAY * *aName,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *PushGuestProperties )( 
            IInternalMachineControl * This,
            /* [out][in] */ SAFEARRAY * *aName,
            /* [out][in] */ SAFEARRAY * *aValue,
            /* [out][in] */ SAFEARRAY * *aTimestamp,
            /* [out][in] */ SAFEARRAY * *aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *PushGuestProperty )( 
            IInternalMachineControl * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ ULONG64 aTimestamp,
            /* [in] */ BSTR aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *LockMedia )( 
            IInternalMachineControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *UnlockMedia )( 
            IInternalMachineControl * This);
        
        END_INTERFACE
    } IInternalMachineControlVtbl;

    interface IInternalMachineControl
    {
        CONST_VTBL struct IInternalMachineControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInternalMachineControl_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInternalMachineControl_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInternalMachineControl_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInternalMachineControl_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInternalMachineControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInternalMachineControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInternalMachineControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInternalMachineControl_SetRemoveSavedState(This,aARemove)	\
    (This)->lpVtbl -> SetRemoveSavedState(This,aARemove)

#define IInternalMachineControl_UpdateState(This,aState)	\
    (This)->lpVtbl -> UpdateState(This,aState)

#define IInternalMachineControl_GetIPCId(This,aId)	\
    (This)->lpVtbl -> GetIPCId(This,aId)

#define IInternalMachineControl_RunUSBDeviceFilters(This,aDevice,aMatched,aMaskedInterfaces)	\
    (This)->lpVtbl -> RunUSBDeviceFilters(This,aDevice,aMatched,aMaskedInterfaces)

#define IInternalMachineControl_CaptureUSBDevice(This,aId)	\
    (This)->lpVtbl -> CaptureUSBDevice(This,aId)

#define IInternalMachineControl_DetachUSBDevice(This,aId,aDone)	\
    (This)->lpVtbl -> DetachUSBDevice(This,aId,aDone)

#define IInternalMachineControl_AutoCaptureUSBDevices(This)	\
    (This)->lpVtbl -> AutoCaptureUSBDevices(This)

#define IInternalMachineControl_DetachAllUSBDevices(This,aDone)	\
    (This)->lpVtbl -> DetachAllUSBDevices(This,aDone)

#define IInternalMachineControl_OnSessionEnd(This,aSession,aProgress)	\
    (This)->lpVtbl -> OnSessionEnd(This,aSession,aProgress)

#define IInternalMachineControl_BeginSavingState(This,aProgress,aStateFilePath)	\
    (This)->lpVtbl -> BeginSavingState(This,aProgress,aStateFilePath)

#define IInternalMachineControl_EndSavingState(This,aSuccess)	\
    (This)->lpVtbl -> EndSavingState(This,aSuccess)

#define IInternalMachineControl_AdoptSavedState(This,aSavedStateFile)	\
    (This)->lpVtbl -> AdoptSavedState(This,aSavedStateFile)

#define IInternalMachineControl_BeginTakingSnapshot(This,aInitiator,aName,aDescription,aConsoleProgress,aFTakingSnapshotOnline,aStateFilePath)	\
    (This)->lpVtbl -> BeginTakingSnapshot(This,aInitiator,aName,aDescription,aConsoleProgress,aFTakingSnapshotOnline,aStateFilePath)

#define IInternalMachineControl_EndTakingSnapshot(This,aSuccess)	\
    (This)->lpVtbl -> EndTakingSnapshot(This,aSuccess)

#define IInternalMachineControl_DeleteSnapshot(This,aInitiator,aId,aMachineState,aProgress)	\
    (This)->lpVtbl -> DeleteSnapshot(This,aInitiator,aId,aMachineState,aProgress)

#define IInternalMachineControl_RestoreSnapshot(This,aInitiator,aSnapshot,aMachineState,aProgress)	\
    (This)->lpVtbl -> RestoreSnapshot(This,aInitiator,aSnapshot,aMachineState,aProgress)

#define IInternalMachineControl_PullGuestProperties(This,aName,aValue,aTimestamp,aFlags)	\
    (This)->lpVtbl -> PullGuestProperties(This,aName,aValue,aTimestamp,aFlags)

#define IInternalMachineControl_PushGuestProperties(This,aName,aValue,aTimestamp,aFlags)	\
    (This)->lpVtbl -> PushGuestProperties(This,aName,aValue,aTimestamp,aFlags)

#define IInternalMachineControl_PushGuestProperty(This,aName,aValue,aTimestamp,aFlags)	\
    (This)->lpVtbl -> PushGuestProperty(This,aName,aValue,aTimestamp,aFlags)

#define IInternalMachineControl_LockMedia(This)	\
    (This)->lpVtbl -> LockMedia(This)

#define IInternalMachineControl_UnlockMedia(This)	\
    (This)->lpVtbl -> UnlockMedia(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IInternalMachineControl_SetRemoveSavedState_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BOOL aARemove);


void __RPC_STUB IInternalMachineControl_SetRemoveSavedState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_UpdateState_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ MachineState aState);


void __RPC_STUB IInternalMachineControl_UpdateState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_GetIPCId_Proxy( 
    IInternalMachineControl * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IInternalMachineControl_GetIPCId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_RunUSBDeviceFilters_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IUSBDevice *aDevice,
    /* [out] */ BOOL *aMatched,
    /* [out] */ ULONG *aMaskedInterfaces);


void __RPC_STUB IInternalMachineControl_RunUSBDeviceFilters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_CaptureUSBDevice_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BSTR aId);


void __RPC_STUB IInternalMachineControl_CaptureUSBDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_DetachUSBDevice_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BSTR aId,
    /* [in] */ BOOL aDone);


void __RPC_STUB IInternalMachineControl_DetachUSBDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_AutoCaptureUSBDevices_Proxy( 
    IInternalMachineControl * This);


void __RPC_STUB IInternalMachineControl_AutoCaptureUSBDevices_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_DetachAllUSBDevices_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BOOL aDone);


void __RPC_STUB IInternalMachineControl_DetachAllUSBDevices_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_OnSessionEnd_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ ISession *aSession,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IInternalMachineControl_OnSessionEnd_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_BeginSavingState_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IProgress *aProgress,
    /* [out] */ BSTR *aStateFilePath);


void __RPC_STUB IInternalMachineControl_BeginSavingState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_EndSavingState_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BOOL aSuccess);


void __RPC_STUB IInternalMachineControl_EndSavingState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_AdoptSavedState_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BSTR aSavedStateFile);


void __RPC_STUB IInternalMachineControl_AdoptSavedState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_BeginTakingSnapshot_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IConsole *aInitiator,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aDescription,
    /* [in] */ IProgress *aConsoleProgress,
    /* [in] */ BOOL aFTakingSnapshotOnline,
    /* [out] */ BSTR *aStateFilePath);


void __RPC_STUB IInternalMachineControl_BeginTakingSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_EndTakingSnapshot_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BOOL aSuccess);


void __RPC_STUB IInternalMachineControl_EndTakingSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_DeleteSnapshot_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IConsole *aInitiator,
    /* [in] */ BSTR aId,
    /* [out] */ MachineState *aMachineState,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IInternalMachineControl_DeleteSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_RestoreSnapshot_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IConsole *aInitiator,
    /* [in] */ ISnapshot *aSnapshot,
    /* [out] */ MachineState *aMachineState,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IInternalMachineControl_RestoreSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_PullGuestProperties_Proxy( 
    IInternalMachineControl * This,
    /* [out] */ SAFEARRAY * *aName,
    /* [out] */ SAFEARRAY * *aValue,
    /* [out] */ SAFEARRAY * *aTimestamp,
    /* [out] */ SAFEARRAY * *aFlags);


void __RPC_STUB IInternalMachineControl_PullGuestProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_PushGuestProperties_Proxy( 
    IInternalMachineControl * This,
    /* [out][in] */ SAFEARRAY * *aName,
    /* [out][in] */ SAFEARRAY * *aValue,
    /* [out][in] */ SAFEARRAY * *aTimestamp,
    /* [out][in] */ SAFEARRAY * *aFlags);


void __RPC_STUB IInternalMachineControl_PushGuestProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_PushGuestProperty_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aValue,
    /* [in] */ ULONG64 aTimestamp,
    /* [in] */ BSTR aFlags);


void __RPC_STUB IInternalMachineControl_PushGuestProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_LockMedia_Proxy( 
    IInternalMachineControl * This);


void __RPC_STUB IInternalMachineControl_LockMedia_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_UnlockMedia_Proxy( 
    IInternalMachineControl * This);


void __RPC_STUB IInternalMachineControl_UnlockMedia_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInternalMachineControl_INTERFACE_DEFINED__ */


#ifndef __IBIOSSettings_INTERFACE_DEFINED__
#define __IBIOSSettings_INTERFACE_DEFINED__

/* interface IBIOSSettings */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IBIOSSettings;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("38b54279-dc35-4f5e-a431-835b867c6b5e")
    IBIOSSettings : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogoFadeIn( 
            /* [retval][out] */ BOOL *aLogoFadeIn) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LogoFadeIn( 
            /* [in] */ BOOL aLogoFadeIn) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogoFadeOut( 
            /* [retval][out] */ BOOL *aLogoFadeOut) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LogoFadeOut( 
            /* [in] */ BOOL aLogoFadeOut) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogoDisplayTime( 
            /* [retval][out] */ ULONG *aLogoDisplayTime) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LogoDisplayTime( 
            /* [in] */ ULONG aLogoDisplayTime) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogoImagePath( 
            /* [retval][out] */ BSTR *aLogoImagePath) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LogoImagePath( 
            /* [in] */ BSTR aLogoImagePath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BootMenuMode( 
            /* [retval][out] */ BIOSBootMenuMode *aBootMenuMode) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BootMenuMode( 
            /* [in] */ BIOSBootMenuMode aBootMenuMode) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ACPIEnabled( 
            /* [retval][out] */ BOOL *aACPIEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ACPIEnabled( 
            /* [in] */ BOOL aACPIEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IOAPICEnabled( 
            /* [retval][out] */ BOOL *aIOAPICEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IOAPICEnabled( 
            /* [in] */ BOOL aIOAPICEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TimeOffset( 
            /* [retval][out] */ LONG64 *aTimeOffset) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TimeOffset( 
            /* [in] */ LONG64 aTimeOffset) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PXEDebugEnabled( 
            /* [retval][out] */ BOOL *aPXEDebugEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PXEDebugEnabled( 
            /* [in] */ BOOL aPXEDebugEnabled) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBIOSSettingsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IBIOSSettings * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IBIOSSettings * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IBIOSSettings * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IBIOSSettings * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IBIOSSettings * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IBIOSSettings * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IBIOSSettings * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogoFadeIn )( 
            IBIOSSettings * This,
            /* [retval][out] */ BOOL *aLogoFadeIn);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LogoFadeIn )( 
            IBIOSSettings * This,
            /* [in] */ BOOL aLogoFadeIn);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogoFadeOut )( 
            IBIOSSettings * This,
            /* [retval][out] */ BOOL *aLogoFadeOut);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LogoFadeOut )( 
            IBIOSSettings * This,
            /* [in] */ BOOL aLogoFadeOut);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogoDisplayTime )( 
            IBIOSSettings * This,
            /* [retval][out] */ ULONG *aLogoDisplayTime);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LogoDisplayTime )( 
            IBIOSSettings * This,
            /* [in] */ ULONG aLogoDisplayTime);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogoImagePath )( 
            IBIOSSettings * This,
            /* [retval][out] */ BSTR *aLogoImagePath);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LogoImagePath )( 
            IBIOSSettings * This,
            /* [in] */ BSTR aLogoImagePath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BootMenuMode )( 
            IBIOSSettings * This,
            /* [retval][out] */ BIOSBootMenuMode *aBootMenuMode);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BootMenuMode )( 
            IBIOSSettings * This,
            /* [in] */ BIOSBootMenuMode aBootMenuMode);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ACPIEnabled )( 
            IBIOSSettings * This,
            /* [retval][out] */ BOOL *aACPIEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ACPIEnabled )( 
            IBIOSSettings * This,
            /* [in] */ BOOL aACPIEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IOAPICEnabled )( 
            IBIOSSettings * This,
            /* [retval][out] */ BOOL *aIOAPICEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IOAPICEnabled )( 
            IBIOSSettings * This,
            /* [in] */ BOOL aIOAPICEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TimeOffset )( 
            IBIOSSettings * This,
            /* [retval][out] */ LONG64 *aTimeOffset);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TimeOffset )( 
            IBIOSSettings * This,
            /* [in] */ LONG64 aTimeOffset);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PXEDebugEnabled )( 
            IBIOSSettings * This,
            /* [retval][out] */ BOOL *aPXEDebugEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PXEDebugEnabled )( 
            IBIOSSettings * This,
            /* [in] */ BOOL aPXEDebugEnabled);
        
        END_INTERFACE
    } IBIOSSettingsVtbl;

    interface IBIOSSettings
    {
        CONST_VTBL struct IBIOSSettingsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBIOSSettings_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBIOSSettings_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBIOSSettings_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBIOSSettings_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBIOSSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBIOSSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBIOSSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBIOSSettings_get_LogoFadeIn(This,aLogoFadeIn)	\
    (This)->lpVtbl -> get_LogoFadeIn(This,aLogoFadeIn)

#define IBIOSSettings_put_LogoFadeIn(This,aLogoFadeIn)	\
    (This)->lpVtbl -> put_LogoFadeIn(This,aLogoFadeIn)

#define IBIOSSettings_get_LogoFadeOut(This,aLogoFadeOut)	\
    (This)->lpVtbl -> get_LogoFadeOut(This,aLogoFadeOut)

#define IBIOSSettings_put_LogoFadeOut(This,aLogoFadeOut)	\
    (This)->lpVtbl -> put_LogoFadeOut(This,aLogoFadeOut)

#define IBIOSSettings_get_LogoDisplayTime(This,aLogoDisplayTime)	\
    (This)->lpVtbl -> get_LogoDisplayTime(This,aLogoDisplayTime)

#define IBIOSSettings_put_LogoDisplayTime(This,aLogoDisplayTime)	\
    (This)->lpVtbl -> put_LogoDisplayTime(This,aLogoDisplayTime)

#define IBIOSSettings_get_LogoImagePath(This,aLogoImagePath)	\
    (This)->lpVtbl -> get_LogoImagePath(This,aLogoImagePath)

#define IBIOSSettings_put_LogoImagePath(This,aLogoImagePath)	\
    (This)->lpVtbl -> put_LogoImagePath(This,aLogoImagePath)

#define IBIOSSettings_get_BootMenuMode(This,aBootMenuMode)	\
    (This)->lpVtbl -> get_BootMenuMode(This,aBootMenuMode)

#define IBIOSSettings_put_BootMenuMode(This,aBootMenuMode)	\
    (This)->lpVtbl -> put_BootMenuMode(This,aBootMenuMode)

#define IBIOSSettings_get_ACPIEnabled(This,aACPIEnabled)	\
    (This)->lpVtbl -> get_ACPIEnabled(This,aACPIEnabled)

#define IBIOSSettings_put_ACPIEnabled(This,aACPIEnabled)	\
    (This)->lpVtbl -> put_ACPIEnabled(This,aACPIEnabled)

#define IBIOSSettings_get_IOAPICEnabled(This,aIOAPICEnabled)	\
    (This)->lpVtbl -> get_IOAPICEnabled(This,aIOAPICEnabled)

#define IBIOSSettings_put_IOAPICEnabled(This,aIOAPICEnabled)	\
    (This)->lpVtbl -> put_IOAPICEnabled(This,aIOAPICEnabled)

#define IBIOSSettings_get_TimeOffset(This,aTimeOffset)	\
    (This)->lpVtbl -> get_TimeOffset(This,aTimeOffset)

#define IBIOSSettings_put_TimeOffset(This,aTimeOffset)	\
    (This)->lpVtbl -> put_TimeOffset(This,aTimeOffset)

#define IBIOSSettings_get_PXEDebugEnabled(This,aPXEDebugEnabled)	\
    (This)->lpVtbl -> get_PXEDebugEnabled(This,aPXEDebugEnabled)

#define IBIOSSettings_put_PXEDebugEnabled(This,aPXEDebugEnabled)	\
    (This)->lpVtbl -> put_PXEDebugEnabled(This,aPXEDebugEnabled)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_LogoFadeIn_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BOOL *aLogoFadeIn);


void __RPC_STUB IBIOSSettings_get_LogoFadeIn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_LogoFadeIn_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BOOL aLogoFadeIn);


void __RPC_STUB IBIOSSettings_put_LogoFadeIn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_LogoFadeOut_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BOOL *aLogoFadeOut);


void __RPC_STUB IBIOSSettings_get_LogoFadeOut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_LogoFadeOut_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BOOL aLogoFadeOut);


void __RPC_STUB IBIOSSettings_put_LogoFadeOut_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_LogoDisplayTime_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ ULONG *aLogoDisplayTime);


void __RPC_STUB IBIOSSettings_get_LogoDisplayTime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_LogoDisplayTime_Proxy( 
    IBIOSSettings * This,
    /* [in] */ ULONG aLogoDisplayTime);


void __RPC_STUB IBIOSSettings_put_LogoDisplayTime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_LogoImagePath_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BSTR *aLogoImagePath);


void __RPC_STUB IBIOSSettings_get_LogoImagePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_LogoImagePath_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BSTR aLogoImagePath);


void __RPC_STUB IBIOSSettings_put_LogoImagePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_BootMenuMode_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BIOSBootMenuMode *aBootMenuMode);


void __RPC_STUB IBIOSSettings_get_BootMenuMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_BootMenuMode_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BIOSBootMenuMode aBootMenuMode);


void __RPC_STUB IBIOSSettings_put_BootMenuMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_ACPIEnabled_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BOOL *aACPIEnabled);


void __RPC_STUB IBIOSSettings_get_ACPIEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_ACPIEnabled_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BOOL aACPIEnabled);


void __RPC_STUB IBIOSSettings_put_ACPIEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_IOAPICEnabled_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BOOL *aIOAPICEnabled);


void __RPC_STUB IBIOSSettings_get_IOAPICEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_IOAPICEnabled_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BOOL aIOAPICEnabled);


void __RPC_STUB IBIOSSettings_put_IOAPICEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_TimeOffset_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ LONG64 *aTimeOffset);


void __RPC_STUB IBIOSSettings_get_TimeOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_TimeOffset_Proxy( 
    IBIOSSettings * This,
    /* [in] */ LONG64 aTimeOffset);


void __RPC_STUB IBIOSSettings_put_TimeOffset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_get_PXEDebugEnabled_Proxy( 
    IBIOSSettings * This,
    /* [retval][out] */ BOOL *aPXEDebugEnabled);


void __RPC_STUB IBIOSSettings_get_PXEDebugEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IBIOSSettings_put_PXEDebugEnabled_Proxy( 
    IBIOSSettings * This,
    /* [in] */ BOOL aPXEDebugEnabled);


void __RPC_STUB IBIOSSettings_put_PXEDebugEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBIOSSettings_INTERFACE_DEFINED__ */


#ifndef __IMachine_INTERFACE_DEFINED__
#define __IMachine_INTERFACE_DEFINED__

/* interface IMachine */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IMachine;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("99404f50-dd10-40d3-889b-dd2f79f1e95e")
    IMachine : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Parent( 
            /* [retval][out] */ IVirtualBox **aParent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Accessible( 
            /* [retval][out] */ BOOL *aAccessible) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AccessError( 
            /* [retval][out] */ IVirtualBoxErrorInfo **aAccessError) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OSTypeId( 
            /* [retval][out] */ BSTR *aOSTypeId) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_OSTypeId( 
            /* [in] */ BSTR aOSTypeId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HardwareVersion( 
            /* [retval][out] */ BSTR *aHardwareVersion) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HardwareVersion( 
            /* [in] */ BSTR aHardwareVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HardwareUUID( 
            /* [retval][out] */ BSTR *aHardwareUUID) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HardwareUUID( 
            /* [in] */ BSTR aHardwareUUID) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CPUCount( 
            /* [retval][out] */ ULONG *aCPUCount) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CPUCount( 
            /* [in] */ ULONG aCPUCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MemorySize( 
            /* [retval][out] */ ULONG *aMemorySize) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MemorySize( 
            /* [in] */ ULONG aMemorySize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MemoryBalloonSize( 
            /* [retval][out] */ ULONG *aMemoryBalloonSize) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MemoryBalloonSize( 
            /* [in] */ ULONG aMemoryBalloonSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StatisticsUpdateInterval( 
            /* [retval][out] */ ULONG *aStatisticsUpdateInterval) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_StatisticsUpdateInterval( 
            /* [in] */ ULONG aStatisticsUpdateInterval) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VRAMSize( 
            /* [retval][out] */ ULONG *aVRAMSize) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_VRAMSize( 
            /* [in] */ ULONG aVRAMSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Accelerate3DEnabled( 
            /* [retval][out] */ BOOL *aAccelerate3DEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Accelerate3DEnabled( 
            /* [in] */ BOOL aAccelerate3DEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Accelerate2DVideoEnabled( 
            /* [retval][out] */ BOOL *aAccelerate2DVideoEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Accelerate2DVideoEnabled( 
            /* [in] */ BOOL aAccelerate2DVideoEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MonitorCount( 
            /* [retval][out] */ ULONG *aMonitorCount) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MonitorCount( 
            /* [in] */ ULONG aMonitorCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BIOSSettings( 
            /* [retval][out] */ IBIOSSettings **aBIOSSettings) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FirmwareType( 
            /* [retval][out] */ FirmwareType *aFirmwareType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FirmwareType( 
            /* [in] */ FirmwareType aFirmwareType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SnapshotFolder( 
            /* [retval][out] */ BSTR *aSnapshotFolder) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_SnapshotFolder( 
            /* [in] */ BSTR aSnapshotFolder) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VRDPServer( 
            /* [retval][out] */ IVRDPServer **aVRDPServer) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumAttachments( 
            /* [retval][out] */ SAFEARRAY * *aMediumAttachments) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_USBController( 
            /* [retval][out] */ IUSBController **aUSBController) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AudioAdapter( 
            /* [retval][out] */ IAudioAdapter **aAudioAdapter) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StorageControllers( 
            /* [retval][out] */ SAFEARRAY * *aStorageControllers) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SettingsFilePath( 
            /* [retval][out] */ BSTR *aSettingsFilePath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SettingsModified( 
            /* [retval][out] */ BOOL *aSettingsModified) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SessionState( 
            /* [retval][out] */ SessionState *aSessionState) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SessionType( 
            /* [retval][out] */ BSTR *aSessionType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SessionPid( 
            /* [retval][out] */ ULONG *aSessionPid) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ MachineState *aState) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LastStateChange( 
            /* [retval][out] */ LONG64 *aLastStateChange) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StateFilePath( 
            /* [retval][out] */ BSTR *aStateFilePath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogFolder( 
            /* [retval][out] */ BSTR *aLogFolder) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CurrentSnapshot( 
            /* [retval][out] */ ISnapshot **aCurrentSnapshot) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SnapshotCount( 
            /* [retval][out] */ ULONG *aSnapshotCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CurrentStateModified( 
            /* [retval][out] */ BOOL *aCurrentStateModified) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SharedFolders( 
            /* [retval][out] */ SAFEARRAY * *aSharedFolders) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ClipboardMode( 
            /* [retval][out] */ ClipboardMode *aClipboardMode) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ClipboardMode( 
            /* [in] */ ClipboardMode aClipboardMode) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_GuestPropertyNotificationPatterns( 
            /* [retval][out] */ BSTR *aGuestPropertyNotificationPatterns) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_GuestPropertyNotificationPatterns( 
            /* [in] */ BSTR aGuestPropertyNotificationPatterns) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TeleporterEnabled( 
            /* [retval][out] */ BOOL *aTeleporterEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TeleporterEnabled( 
            /* [in] */ BOOL aTeleporterEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TeleporterPort( 
            /* [retval][out] */ ULONG *aTeleporterPort) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TeleporterPort( 
            /* [in] */ ULONG aTeleporterPort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TeleporterAddress( 
            /* [retval][out] */ BSTR *aTeleporterAddress) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TeleporterAddress( 
            /* [in] */ BSTR aTeleporterAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TeleporterPassword( 
            /* [retval][out] */ BSTR *aTeleporterPassword) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TeleporterPassword( 
            /* [in] */ BSTR aTeleporterPassword) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetBootOrder( 
            /* [in] */ ULONG aPosition,
            /* [in] */ DeviceType aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetBootOrder( 
            /* [in] */ ULONG aPosition,
            /* [retval][out] */ DeviceType *aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AttachDevice( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ DeviceType aType,
            /* [in] */ BSTR aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DetachDevice( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PassthroughDevice( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BOOL aPassthrough) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MountMedium( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BSTR aMedium,
            /* [in] */ BOOL aForce) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMedium( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMediumAttachmentsOfController( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ SAFEARRAY * *aMediumAttachments) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMediumAttachment( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [retval][out] */ IMediumAttachment **aAttachment) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetNetworkAdapter( 
            /* [in] */ ULONG aSlot,
            /* [retval][out] */ INetworkAdapter **aAdapter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AddStorageController( 
            /* [in] */ BSTR aName,
            /* [in] */ StorageBus aConnectionType,
            /* [retval][out] */ IStorageController **aController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetStorageControllerByName( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IStorageController **aStorageController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetStorageControllerByInstance( 
            /* [in] */ ULONG aInstance,
            /* [retval][out] */ IStorageController **aStorageController) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveStorageController( 
            /* [in] */ BSTR aName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetSerialPort( 
            /* [in] */ ULONG aSlot,
            /* [retval][out] */ ISerialPort **aPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetParallelPort( 
            /* [in] */ ULONG aSlot,
            /* [retval][out] */ IParallelPort **aPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetExtraDataKeys( 
            /* [retval][out] */ SAFEARRAY * *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetExtraData( 
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetExtraData( 
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetCpuProperty( 
            /* [in] */ CpuPropertyType aProperty,
            /* [retval][out] */ BOOL *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCpuProperty( 
            /* [in] */ CpuPropertyType aProperty,
            /* [in] */ BOOL aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetCpuIdLeaf( 
            /* [in] */ ULONG aId,
            /* [out] */ ULONG *aValEax,
            /* [out] */ ULONG *aValEbx,
            /* [out] */ ULONG *aValEcx,
            /* [out] */ ULONG *aValEdx) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCpuIdLeaf( 
            /* [in] */ ULONG aId,
            /* [in] */ ULONG aValEax,
            /* [in] */ ULONG aValEbx,
            /* [in] */ ULONG aValEcx,
            /* [in] */ ULONG aValEdx) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveCpuIdLeaf( 
            /* [in] */ ULONG aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveAllCpuIdLeafs( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetHWVirtExProperty( 
            /* [in] */ HWVirtExPropertyType aProperty,
            /* [retval][out] */ BOOL *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetHWVirtExProperty( 
            /* [in] */ HWVirtExPropertyType aProperty,
            /* [in] */ BOOL aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SaveSettings( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DiscardSettings( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteSettings( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Export( 
            /* [in] */ IAppliance *aAAppliance,
            /* [retval][out] */ IVirtualSystemDescription **aADescription) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetSnapshot( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ ISnapshot **aSnapshot) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindSnapshot( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ ISnapshot **aSnapshot) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCurrentSnapshot( 
            /* [in] */ BSTR aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateSharedFolder( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveSharedFolder( 
            /* [in] */ BSTR aName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CanShowConsoleWindow( 
            /* [retval][out] */ BOOL *aCanShow) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ShowConsoleWindow( 
            /* [retval][out] */ ULONG64 *aWinId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuestProperty( 
            /* [in] */ BSTR aName,
            /* [out] */ BSTR *aValue,
            /* [out] */ ULONG64 *aTimestamp,
            /* [out] */ BSTR *aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuestPropertyValue( 
            /* [in] */ BSTR aProperty,
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuestPropertyTimestamp( 
            /* [in] */ BSTR aProperty,
            /* [retval][out] */ ULONG64 *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetGuestProperty( 
            /* [in] */ BSTR aProperty,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetGuestPropertyValue( 
            /* [in] */ BSTR aProperty,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnumerateGuestProperties( 
            /* [in] */ BSTR aPatterns,
            /* [out] */ SAFEARRAY * *aName,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QuerySavedThumbnailSize( 
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadSavedThumbnailToArray( 
            /* [in] */ BOOL aBGR,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QuerySavedScreenshotPNGSize( 
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadSavedScreenshotPNGToArray( 
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMachineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMachine * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMachine * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMachine * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMachine * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMachine * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMachine * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMachine * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Parent )( 
            IMachine * This,
            /* [retval][out] */ IVirtualBox **aParent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Accessible )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aAccessible);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AccessError )( 
            IMachine * This,
            /* [retval][out] */ IVirtualBoxErrorInfo **aAccessError);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IMachine * This,
            /* [in] */ BSTR aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IMachine * This,
            /* [in] */ BSTR aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OSTypeId )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aOSTypeId);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_OSTypeId )( 
            IMachine * This,
            /* [in] */ BSTR aOSTypeId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HardwareVersion )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aHardwareVersion);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HardwareVersion )( 
            IMachine * This,
            /* [in] */ BSTR aHardwareVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HardwareUUID )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aHardwareUUID);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HardwareUUID )( 
            IMachine * This,
            /* [in] */ BSTR aHardwareUUID);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CPUCount )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aCPUCount);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CPUCount )( 
            IMachine * This,
            /* [in] */ ULONG aCPUCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MemorySize )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aMemorySize);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MemorySize )( 
            IMachine * This,
            /* [in] */ ULONG aMemorySize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MemoryBalloonSize )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aMemoryBalloonSize);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MemoryBalloonSize )( 
            IMachine * This,
            /* [in] */ ULONG aMemoryBalloonSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatisticsUpdateInterval )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aStatisticsUpdateInterval);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_StatisticsUpdateInterval )( 
            IMachine * This,
            /* [in] */ ULONG aStatisticsUpdateInterval);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRAMSize )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aVRAMSize);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_VRAMSize )( 
            IMachine * This,
            /* [in] */ ULONG aVRAMSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Accelerate3DEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aAccelerate3DEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Accelerate3DEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aAccelerate3DEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Accelerate2DVideoEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aAccelerate2DVideoEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Accelerate2DVideoEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aAccelerate2DVideoEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MonitorCount )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aMonitorCount);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MonitorCount )( 
            IMachine * This,
            /* [in] */ ULONG aMonitorCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BIOSSettings )( 
            IMachine * This,
            /* [retval][out] */ IBIOSSettings **aBIOSSettings);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FirmwareType )( 
            IMachine * This,
            /* [retval][out] */ FirmwareType *aFirmwareType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FirmwareType )( 
            IMachine * This,
            /* [in] */ FirmwareType aFirmwareType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapshotFolder )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aSnapshotFolder);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SnapshotFolder )( 
            IMachine * This,
            /* [in] */ BSTR aSnapshotFolder);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDPServer )( 
            IMachine * This,
            /* [retval][out] */ IVRDPServer **aVRDPServer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumAttachments )( 
            IMachine * This,
            /* [retval][out] */ SAFEARRAY * *aMediumAttachments);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_USBController )( 
            IMachine * This,
            /* [retval][out] */ IUSBController **aUSBController);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioAdapter )( 
            IMachine * This,
            /* [retval][out] */ IAudioAdapter **aAudioAdapter);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StorageControllers )( 
            IMachine * This,
            /* [retval][out] */ SAFEARRAY * *aStorageControllers);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SettingsFilePath )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aSettingsFilePath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SettingsModified )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aSettingsModified);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SessionState )( 
            IMachine * This,
            /* [retval][out] */ SessionState *aSessionState);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SessionType )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aSessionType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SessionPid )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aSessionPid);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IMachine * This,
            /* [retval][out] */ MachineState *aState);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastStateChange )( 
            IMachine * This,
            /* [retval][out] */ LONG64 *aLastStateChange);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StateFilePath )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aStateFilePath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogFolder )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aLogFolder);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentSnapshot )( 
            IMachine * This,
            /* [retval][out] */ ISnapshot **aCurrentSnapshot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapshotCount )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aSnapshotCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentStateModified )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aCurrentStateModified);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SharedFolders )( 
            IMachine * This,
            /* [retval][out] */ SAFEARRAY * *aSharedFolders);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClipboardMode )( 
            IMachine * This,
            /* [retval][out] */ ClipboardMode *aClipboardMode);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClipboardMode )( 
            IMachine * This,
            /* [in] */ ClipboardMode aClipboardMode);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_GuestPropertyNotificationPatterns )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aGuestPropertyNotificationPatterns);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_GuestPropertyNotificationPatterns )( 
            IMachine * This,
            /* [in] */ BSTR aGuestPropertyNotificationPatterns);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TeleporterEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aTeleporterEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TeleporterEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aTeleporterEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TeleporterPort )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aTeleporterPort);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TeleporterPort )( 
            IMachine * This,
            /* [in] */ ULONG aTeleporterPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TeleporterAddress )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aTeleporterAddress);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TeleporterAddress )( 
            IMachine * This,
            /* [in] */ BSTR aTeleporterAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TeleporterPassword )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aTeleporterPassword);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TeleporterPassword )( 
            IMachine * This,
            /* [in] */ BSTR aTeleporterPassword);
        
        HRESULT ( STDMETHODCALLTYPE *SetBootOrder )( 
            IMachine * This,
            /* [in] */ ULONG aPosition,
            /* [in] */ DeviceType aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *GetBootOrder )( 
            IMachine * This,
            /* [in] */ ULONG aPosition,
            /* [retval][out] */ DeviceType *aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *AttachDevice )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ DeviceType aType,
            /* [in] */ BSTR aId);
        
        HRESULT ( STDMETHODCALLTYPE *DetachDevice )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *PassthroughDevice )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BOOL aPassthrough);
        
        HRESULT ( STDMETHODCALLTYPE *MountMedium )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BSTR aMedium,
            /* [in] */ BOOL aForce);
        
        HRESULT ( STDMETHODCALLTYPE *GetMedium )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [retval][out] */ IMedium **aMedium);
        
        HRESULT ( STDMETHODCALLTYPE *GetMediumAttachmentsOfController )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ SAFEARRAY * *aMediumAttachments);
        
        HRESULT ( STDMETHODCALLTYPE *GetMediumAttachment )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [retval][out] */ IMediumAttachment **aAttachment);
        
        HRESULT ( STDMETHODCALLTYPE *GetNetworkAdapter )( 
            IMachine * This,
            /* [in] */ ULONG aSlot,
            /* [retval][out] */ INetworkAdapter **aAdapter);
        
        HRESULT ( STDMETHODCALLTYPE *AddStorageController )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ StorageBus aConnectionType,
            /* [retval][out] */ IStorageController **aController);
        
        HRESULT ( STDMETHODCALLTYPE *GetStorageControllerByName )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IStorageController **aStorageController);
        
        HRESULT ( STDMETHODCALLTYPE *GetStorageControllerByInstance )( 
            IMachine * This,
            /* [in] */ ULONG aInstance,
            /* [retval][out] */ IStorageController **aStorageController);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveStorageController )( 
            IMachine * This,
            /* [in] */ BSTR aName);
        
        HRESULT ( STDMETHODCALLTYPE *GetSerialPort )( 
            IMachine * This,
            /* [in] */ ULONG aSlot,
            /* [retval][out] */ ISerialPort **aPort);
        
        HRESULT ( STDMETHODCALLTYPE *GetParallelPort )( 
            IMachine * This,
            /* [in] */ ULONG aSlot,
            /* [retval][out] */ IParallelPort **aPort);
        
        HRESULT ( STDMETHODCALLTYPE *GetExtraDataKeys )( 
            IMachine * This,
            /* [retval][out] */ SAFEARRAY * *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetExtraData )( 
            IMachine * This,
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetExtraData )( 
            IMachine * This,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetCpuProperty )( 
            IMachine * This,
            /* [in] */ CpuPropertyType aProperty,
            /* [retval][out] */ BOOL *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetCpuProperty )( 
            IMachine * This,
            /* [in] */ CpuPropertyType aProperty,
            /* [in] */ BOOL aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetCpuIdLeaf )( 
            IMachine * This,
            /* [in] */ ULONG aId,
            /* [out] */ ULONG *aValEax,
            /* [out] */ ULONG *aValEbx,
            /* [out] */ ULONG *aValEcx,
            /* [out] */ ULONG *aValEdx);
        
        HRESULT ( STDMETHODCALLTYPE *SetCpuIdLeaf )( 
            IMachine * This,
            /* [in] */ ULONG aId,
            /* [in] */ ULONG aValEax,
            /* [in] */ ULONG aValEbx,
            /* [in] */ ULONG aValEcx,
            /* [in] */ ULONG aValEdx);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveCpuIdLeaf )( 
            IMachine * This,
            /* [in] */ ULONG aId);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveAllCpuIdLeafs )( 
            IMachine * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetHWVirtExProperty )( 
            IMachine * This,
            /* [in] */ HWVirtExPropertyType aProperty,
            /* [retval][out] */ BOOL *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetHWVirtExProperty )( 
            IMachine * This,
            /* [in] */ HWVirtExPropertyType aProperty,
            /* [in] */ BOOL aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SaveSettings )( 
            IMachine * This);
        
        HRESULT ( STDMETHODCALLTYPE *DiscardSettings )( 
            IMachine * This);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteSettings )( 
            IMachine * This);
        
        HRESULT ( STDMETHODCALLTYPE *Export )( 
            IMachine * This,
            /* [in] */ IAppliance *aAAppliance,
            /* [retval][out] */ IVirtualSystemDescription **aADescription);
        
        HRESULT ( STDMETHODCALLTYPE *GetSnapshot )( 
            IMachine * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ ISnapshot **aSnapshot);
        
        HRESULT ( STDMETHODCALLTYPE *FindSnapshot )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ ISnapshot **aSnapshot);
        
        HRESULT ( STDMETHODCALLTYPE *SetCurrentSnapshot )( 
            IMachine * This,
            /* [in] */ BSTR aId);
        
        HRESULT ( STDMETHODCALLTYPE *CreateSharedFolder )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveSharedFolder )( 
            IMachine * This,
            /* [in] */ BSTR aName);
        
        HRESULT ( STDMETHODCALLTYPE *CanShowConsoleWindow )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aCanShow);
        
        HRESULT ( STDMETHODCALLTYPE *ShowConsoleWindow )( 
            IMachine * This,
            /* [retval][out] */ ULONG64 *aWinId);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuestProperty )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [out] */ BSTR *aValue,
            /* [out] */ ULONG64 *aTimestamp,
            /* [out] */ BSTR *aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuestPropertyValue )( 
            IMachine * This,
            /* [in] */ BSTR aProperty,
            /* [retval][out] */ BSTR *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuestPropertyTimestamp )( 
            IMachine * This,
            /* [in] */ BSTR aProperty,
            /* [retval][out] */ ULONG64 *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetGuestProperty )( 
            IMachine * This,
            /* [in] */ BSTR aProperty,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *SetGuestPropertyValue )( 
            IMachine * This,
            /* [in] */ BSTR aProperty,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *EnumerateGuestProperties )( 
            IMachine * This,
            /* [in] */ BSTR aPatterns,
            /* [out] */ SAFEARRAY * *aName,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *QuerySavedThumbnailSize )( 
            IMachine * This,
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *ReadSavedThumbnailToArray )( 
            IMachine * This,
            /* [in] */ BOOL aBGR,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        HRESULT ( STDMETHODCALLTYPE *QuerySavedScreenshotPNGSize )( 
            IMachine * This,
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *ReadSavedScreenshotPNGToArray )( 
            IMachine * This,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        END_INTERFACE
    } IMachineVtbl;

    interface IMachine
    {
        CONST_VTBL struct IMachineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMachine_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMachine_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMachine_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMachine_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMachine_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMachine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMachine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMachine_get_Parent(This,aParent)	\
    (This)->lpVtbl -> get_Parent(This,aParent)

#define IMachine_get_Accessible(This,aAccessible)	\
    (This)->lpVtbl -> get_Accessible(This,aAccessible)

#define IMachine_get_AccessError(This,aAccessError)	\
    (This)->lpVtbl -> get_AccessError(This,aAccessError)

#define IMachine_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IMachine_put_Name(This,aName)	\
    (This)->lpVtbl -> put_Name(This,aName)

#define IMachine_get_Description(This,aDescription)	\
    (This)->lpVtbl -> get_Description(This,aDescription)

#define IMachine_put_Description(This,aDescription)	\
    (This)->lpVtbl -> put_Description(This,aDescription)

#define IMachine_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IMachine_get_OSTypeId(This,aOSTypeId)	\
    (This)->lpVtbl -> get_OSTypeId(This,aOSTypeId)

#define IMachine_put_OSTypeId(This,aOSTypeId)	\
    (This)->lpVtbl -> put_OSTypeId(This,aOSTypeId)

#define IMachine_get_HardwareVersion(This,aHardwareVersion)	\
    (This)->lpVtbl -> get_HardwareVersion(This,aHardwareVersion)

#define IMachine_put_HardwareVersion(This,aHardwareVersion)	\
    (This)->lpVtbl -> put_HardwareVersion(This,aHardwareVersion)

#define IMachine_get_HardwareUUID(This,aHardwareUUID)	\
    (This)->lpVtbl -> get_HardwareUUID(This,aHardwareUUID)

#define IMachine_put_HardwareUUID(This,aHardwareUUID)	\
    (This)->lpVtbl -> put_HardwareUUID(This,aHardwareUUID)

#define IMachine_get_CPUCount(This,aCPUCount)	\
    (This)->lpVtbl -> get_CPUCount(This,aCPUCount)

#define IMachine_put_CPUCount(This,aCPUCount)	\
    (This)->lpVtbl -> put_CPUCount(This,aCPUCount)

#define IMachine_get_MemorySize(This,aMemorySize)	\
    (This)->lpVtbl -> get_MemorySize(This,aMemorySize)

#define IMachine_put_MemorySize(This,aMemorySize)	\
    (This)->lpVtbl -> put_MemorySize(This,aMemorySize)

#define IMachine_get_MemoryBalloonSize(This,aMemoryBalloonSize)	\
    (This)->lpVtbl -> get_MemoryBalloonSize(This,aMemoryBalloonSize)

#define IMachine_put_MemoryBalloonSize(This,aMemoryBalloonSize)	\
    (This)->lpVtbl -> put_MemoryBalloonSize(This,aMemoryBalloonSize)

#define IMachine_get_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)	\
    (This)->lpVtbl -> get_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)

#define IMachine_put_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)	\
    (This)->lpVtbl -> put_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)

#define IMachine_get_VRAMSize(This,aVRAMSize)	\
    (This)->lpVtbl -> get_VRAMSize(This,aVRAMSize)

#define IMachine_put_VRAMSize(This,aVRAMSize)	\
    (This)->lpVtbl -> put_VRAMSize(This,aVRAMSize)

#define IMachine_get_Accelerate3DEnabled(This,aAccelerate3DEnabled)	\
    (This)->lpVtbl -> get_Accelerate3DEnabled(This,aAccelerate3DEnabled)

#define IMachine_put_Accelerate3DEnabled(This,aAccelerate3DEnabled)	\
    (This)->lpVtbl -> put_Accelerate3DEnabled(This,aAccelerate3DEnabled)

#define IMachine_get_Accelerate2DVideoEnabled(This,aAccelerate2DVideoEnabled)	\
    (This)->lpVtbl -> get_Accelerate2DVideoEnabled(This,aAccelerate2DVideoEnabled)

#define IMachine_put_Accelerate2DVideoEnabled(This,aAccelerate2DVideoEnabled)	\
    (This)->lpVtbl -> put_Accelerate2DVideoEnabled(This,aAccelerate2DVideoEnabled)

#define IMachine_get_MonitorCount(This,aMonitorCount)	\
    (This)->lpVtbl -> get_MonitorCount(This,aMonitorCount)

#define IMachine_put_MonitorCount(This,aMonitorCount)	\
    (This)->lpVtbl -> put_MonitorCount(This,aMonitorCount)

#define IMachine_get_BIOSSettings(This,aBIOSSettings)	\
    (This)->lpVtbl -> get_BIOSSettings(This,aBIOSSettings)

#define IMachine_get_FirmwareType(This,aFirmwareType)	\
    (This)->lpVtbl -> get_FirmwareType(This,aFirmwareType)

#define IMachine_put_FirmwareType(This,aFirmwareType)	\
    (This)->lpVtbl -> put_FirmwareType(This,aFirmwareType)

#define IMachine_get_SnapshotFolder(This,aSnapshotFolder)	\
    (This)->lpVtbl -> get_SnapshotFolder(This,aSnapshotFolder)

#define IMachine_put_SnapshotFolder(This,aSnapshotFolder)	\
    (This)->lpVtbl -> put_SnapshotFolder(This,aSnapshotFolder)

#define IMachine_get_VRDPServer(This,aVRDPServer)	\
    (This)->lpVtbl -> get_VRDPServer(This,aVRDPServer)

#define IMachine_get_MediumAttachments(This,aMediumAttachments)	\
    (This)->lpVtbl -> get_MediumAttachments(This,aMediumAttachments)

#define IMachine_get_USBController(This,aUSBController)	\
    (This)->lpVtbl -> get_USBController(This,aUSBController)

#define IMachine_get_AudioAdapter(This,aAudioAdapter)	\
    (This)->lpVtbl -> get_AudioAdapter(This,aAudioAdapter)

#define IMachine_get_StorageControllers(This,aStorageControllers)	\
    (This)->lpVtbl -> get_StorageControllers(This,aStorageControllers)

#define IMachine_get_SettingsFilePath(This,aSettingsFilePath)	\
    (This)->lpVtbl -> get_SettingsFilePath(This,aSettingsFilePath)

#define IMachine_get_SettingsModified(This,aSettingsModified)	\
    (This)->lpVtbl -> get_SettingsModified(This,aSettingsModified)

#define IMachine_get_SessionState(This,aSessionState)	\
    (This)->lpVtbl -> get_SessionState(This,aSessionState)

#define IMachine_get_SessionType(This,aSessionType)	\
    (This)->lpVtbl -> get_SessionType(This,aSessionType)

#define IMachine_get_SessionPid(This,aSessionPid)	\
    (This)->lpVtbl -> get_SessionPid(This,aSessionPid)

#define IMachine_get_State(This,aState)	\
    (This)->lpVtbl -> get_State(This,aState)

#define IMachine_get_LastStateChange(This,aLastStateChange)	\
    (This)->lpVtbl -> get_LastStateChange(This,aLastStateChange)

#define IMachine_get_StateFilePath(This,aStateFilePath)	\
    (This)->lpVtbl -> get_StateFilePath(This,aStateFilePath)

#define IMachine_get_LogFolder(This,aLogFolder)	\
    (This)->lpVtbl -> get_LogFolder(This,aLogFolder)

#define IMachine_get_CurrentSnapshot(This,aCurrentSnapshot)	\
    (This)->lpVtbl -> get_CurrentSnapshot(This,aCurrentSnapshot)

#define IMachine_get_SnapshotCount(This,aSnapshotCount)	\
    (This)->lpVtbl -> get_SnapshotCount(This,aSnapshotCount)

#define IMachine_get_CurrentStateModified(This,aCurrentStateModified)	\
    (This)->lpVtbl -> get_CurrentStateModified(This,aCurrentStateModified)

#define IMachine_get_SharedFolders(This,aSharedFolders)	\
    (This)->lpVtbl -> get_SharedFolders(This,aSharedFolders)

#define IMachine_get_ClipboardMode(This,aClipboardMode)	\
    (This)->lpVtbl -> get_ClipboardMode(This,aClipboardMode)

#define IMachine_put_ClipboardMode(This,aClipboardMode)	\
    (This)->lpVtbl -> put_ClipboardMode(This,aClipboardMode)

#define IMachine_get_GuestPropertyNotificationPatterns(This,aGuestPropertyNotificationPatterns)	\
    (This)->lpVtbl -> get_GuestPropertyNotificationPatterns(This,aGuestPropertyNotificationPatterns)

#define IMachine_put_GuestPropertyNotificationPatterns(This,aGuestPropertyNotificationPatterns)	\
    (This)->lpVtbl -> put_GuestPropertyNotificationPatterns(This,aGuestPropertyNotificationPatterns)

#define IMachine_get_TeleporterEnabled(This,aTeleporterEnabled)	\
    (This)->lpVtbl -> get_TeleporterEnabled(This,aTeleporterEnabled)

#define IMachine_put_TeleporterEnabled(This,aTeleporterEnabled)	\
    (This)->lpVtbl -> put_TeleporterEnabled(This,aTeleporterEnabled)

#define IMachine_get_TeleporterPort(This,aTeleporterPort)	\
    (This)->lpVtbl -> get_TeleporterPort(This,aTeleporterPort)

#define IMachine_put_TeleporterPort(This,aTeleporterPort)	\
    (This)->lpVtbl -> put_TeleporterPort(This,aTeleporterPort)

#define IMachine_get_TeleporterAddress(This,aTeleporterAddress)	\
    (This)->lpVtbl -> get_TeleporterAddress(This,aTeleporterAddress)

#define IMachine_put_TeleporterAddress(This,aTeleporterAddress)	\
    (This)->lpVtbl -> put_TeleporterAddress(This,aTeleporterAddress)

#define IMachine_get_TeleporterPassword(This,aTeleporterPassword)	\
    (This)->lpVtbl -> get_TeleporterPassword(This,aTeleporterPassword)

#define IMachine_put_TeleporterPassword(This,aTeleporterPassword)	\
    (This)->lpVtbl -> put_TeleporterPassword(This,aTeleporterPassword)

#define IMachine_SetBootOrder(This,aPosition,aDevice)	\
    (This)->lpVtbl -> SetBootOrder(This,aPosition,aDevice)

#define IMachine_GetBootOrder(This,aPosition,aDevice)	\
    (This)->lpVtbl -> GetBootOrder(This,aPosition,aDevice)

#define IMachine_AttachDevice(This,aName,aControllerPort,aDevice,aType,aId)	\
    (This)->lpVtbl -> AttachDevice(This,aName,aControllerPort,aDevice,aType,aId)

#define IMachine_DetachDevice(This,aName,aControllerPort,aDevice)	\
    (This)->lpVtbl -> DetachDevice(This,aName,aControllerPort,aDevice)

#define IMachine_PassthroughDevice(This,aName,aControllerPort,aDevice,aPassthrough)	\
    (This)->lpVtbl -> PassthroughDevice(This,aName,aControllerPort,aDevice,aPassthrough)

#define IMachine_MountMedium(This,aName,aControllerPort,aDevice,aMedium,aForce)	\
    (This)->lpVtbl -> MountMedium(This,aName,aControllerPort,aDevice,aMedium,aForce)

#define IMachine_GetMedium(This,aName,aControllerPort,aDevice,aMedium)	\
    (This)->lpVtbl -> GetMedium(This,aName,aControllerPort,aDevice,aMedium)

#define IMachine_GetMediumAttachmentsOfController(This,aName,aMediumAttachments)	\
    (This)->lpVtbl -> GetMediumAttachmentsOfController(This,aName,aMediumAttachments)

#define IMachine_GetMediumAttachment(This,aName,aControllerPort,aDevice,aAttachment)	\
    (This)->lpVtbl -> GetMediumAttachment(This,aName,aControllerPort,aDevice,aAttachment)

#define IMachine_GetNetworkAdapter(This,aSlot,aAdapter)	\
    (This)->lpVtbl -> GetNetworkAdapter(This,aSlot,aAdapter)

#define IMachine_AddStorageController(This,aName,aConnectionType,aController)	\
    (This)->lpVtbl -> AddStorageController(This,aName,aConnectionType,aController)

#define IMachine_GetStorageControllerByName(This,aName,aStorageController)	\
    (This)->lpVtbl -> GetStorageControllerByName(This,aName,aStorageController)

#define IMachine_GetStorageControllerByInstance(This,aInstance,aStorageController)	\
    (This)->lpVtbl -> GetStorageControllerByInstance(This,aInstance,aStorageController)

#define IMachine_RemoveStorageController(This,aName)	\
    (This)->lpVtbl -> RemoveStorageController(This,aName)

#define IMachine_GetSerialPort(This,aSlot,aPort)	\
    (This)->lpVtbl -> GetSerialPort(This,aSlot,aPort)

#define IMachine_GetParallelPort(This,aSlot,aPort)	\
    (This)->lpVtbl -> GetParallelPort(This,aSlot,aPort)

#define IMachine_GetExtraDataKeys(This,aValue)	\
    (This)->lpVtbl -> GetExtraDataKeys(This,aValue)

#define IMachine_GetExtraData(This,aKey,aValue)	\
    (This)->lpVtbl -> GetExtraData(This,aKey,aValue)

#define IMachine_SetExtraData(This,aKey,aValue)	\
    (This)->lpVtbl -> SetExtraData(This,aKey,aValue)

#define IMachine_GetCpuProperty(This,aProperty,aValue)	\
    (This)->lpVtbl -> GetCpuProperty(This,aProperty,aValue)

#define IMachine_SetCpuProperty(This,aProperty,aValue)	\
    (This)->lpVtbl -> SetCpuProperty(This,aProperty,aValue)

#define IMachine_GetCpuIdLeaf(This,aId,aValEax,aValEbx,aValEcx,aValEdx)	\
    (This)->lpVtbl -> GetCpuIdLeaf(This,aId,aValEax,aValEbx,aValEcx,aValEdx)

#define IMachine_SetCpuIdLeaf(This,aId,aValEax,aValEbx,aValEcx,aValEdx)	\
    (This)->lpVtbl -> SetCpuIdLeaf(This,aId,aValEax,aValEbx,aValEcx,aValEdx)

#define IMachine_RemoveCpuIdLeaf(This,aId)	\
    (This)->lpVtbl -> RemoveCpuIdLeaf(This,aId)

#define IMachine_RemoveAllCpuIdLeafs(This)	\
    (This)->lpVtbl -> RemoveAllCpuIdLeafs(This)

#define IMachine_GetHWVirtExProperty(This,aProperty,aValue)	\
    (This)->lpVtbl -> GetHWVirtExProperty(This,aProperty,aValue)

#define IMachine_SetHWVirtExProperty(This,aProperty,aValue)	\
    (This)->lpVtbl -> SetHWVirtExProperty(This,aProperty,aValue)

#define IMachine_SaveSettings(This)	\
    (This)->lpVtbl -> SaveSettings(This)

#define IMachine_DiscardSettings(This)	\
    (This)->lpVtbl -> DiscardSettings(This)

#define IMachine_DeleteSettings(This)	\
    (This)->lpVtbl -> DeleteSettings(This)

#define IMachine_Export(This,aAAppliance,aADescription)	\
    (This)->lpVtbl -> Export(This,aAAppliance,aADescription)

#define IMachine_GetSnapshot(This,aId,aSnapshot)	\
    (This)->lpVtbl -> GetSnapshot(This,aId,aSnapshot)

#define IMachine_FindSnapshot(This,aName,aSnapshot)	\
    (This)->lpVtbl -> FindSnapshot(This,aName,aSnapshot)

#define IMachine_SetCurrentSnapshot(This,aId)	\
    (This)->lpVtbl -> SetCurrentSnapshot(This,aId)

#define IMachine_CreateSharedFolder(This,aName,aHostPath,aWritable)	\
    (This)->lpVtbl -> CreateSharedFolder(This,aName,aHostPath,aWritable)

#define IMachine_RemoveSharedFolder(This,aName)	\
    (This)->lpVtbl -> RemoveSharedFolder(This,aName)

#define IMachine_CanShowConsoleWindow(This,aCanShow)	\
    (This)->lpVtbl -> CanShowConsoleWindow(This,aCanShow)

#define IMachine_ShowConsoleWindow(This,aWinId)	\
    (This)->lpVtbl -> ShowConsoleWindow(This,aWinId)

#define IMachine_GetGuestProperty(This,aName,aValue,aTimestamp,aFlags)	\
    (This)->lpVtbl -> GetGuestProperty(This,aName,aValue,aTimestamp,aFlags)

#define IMachine_GetGuestPropertyValue(This,aProperty,aValue)	\
    (This)->lpVtbl -> GetGuestPropertyValue(This,aProperty,aValue)

#define IMachine_GetGuestPropertyTimestamp(This,aProperty,aValue)	\
    (This)->lpVtbl -> GetGuestPropertyTimestamp(This,aProperty,aValue)

#define IMachine_SetGuestProperty(This,aProperty,aValue,aFlags)	\
    (This)->lpVtbl -> SetGuestProperty(This,aProperty,aValue,aFlags)

#define IMachine_SetGuestPropertyValue(This,aProperty,aValue)	\
    (This)->lpVtbl -> SetGuestPropertyValue(This,aProperty,aValue)

#define IMachine_EnumerateGuestProperties(This,aPatterns,aName,aValue,aTimestamp,aFlags)	\
    (This)->lpVtbl -> EnumerateGuestProperties(This,aPatterns,aName,aValue,aTimestamp,aFlags)

#define IMachine_QuerySavedThumbnailSize(This,aSize,aWidth,aHeight)	\
    (This)->lpVtbl -> QuerySavedThumbnailSize(This,aSize,aWidth,aHeight)

#define IMachine_ReadSavedThumbnailToArray(This,aBGR,aWidth,aHeight,aData)	\
    (This)->lpVtbl -> ReadSavedThumbnailToArray(This,aBGR,aWidth,aHeight,aData)

#define IMachine_QuerySavedScreenshotPNGSize(This,aSize,aWidth,aHeight)	\
    (This)->lpVtbl -> QuerySavedScreenshotPNGSize(This,aSize,aWidth,aHeight)

#define IMachine_ReadSavedScreenshotPNGToArray(This,aWidth,aHeight,aData)	\
    (This)->lpVtbl -> ReadSavedScreenshotPNGToArray(This,aWidth,aHeight,aData)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Parent_Proxy( 
    IMachine * This,
    /* [retval][out] */ IVirtualBox **aParent);


void __RPC_STUB IMachine_get_Parent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Accessible_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aAccessible);


void __RPC_STUB IMachine_get_Accessible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_AccessError_Proxy( 
    IMachine * This,
    /* [retval][out] */ IVirtualBoxErrorInfo **aAccessError);


void __RPC_STUB IMachine_get_AccessError_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Name_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB IMachine_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_Name_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName);


void __RPC_STUB IMachine_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Description_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB IMachine_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_Description_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aDescription);


void __RPC_STUB IMachine_put_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Id_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IMachine_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_OSTypeId_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aOSTypeId);


void __RPC_STUB IMachine_get_OSTypeId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_OSTypeId_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aOSTypeId);


void __RPC_STUB IMachine_put_OSTypeId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_HardwareVersion_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aHardwareVersion);


void __RPC_STUB IMachine_get_HardwareVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_HardwareVersion_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aHardwareVersion);


void __RPC_STUB IMachine_put_HardwareVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_HardwareUUID_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aHardwareUUID);


void __RPC_STUB IMachine_get_HardwareUUID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_HardwareUUID_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aHardwareUUID);


void __RPC_STUB IMachine_put_HardwareUUID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_CPUCount_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aCPUCount);


void __RPC_STUB IMachine_get_CPUCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_CPUCount_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aCPUCount);


void __RPC_STUB IMachine_put_CPUCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_MemorySize_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aMemorySize);


void __RPC_STUB IMachine_get_MemorySize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_MemorySize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aMemorySize);


void __RPC_STUB IMachine_put_MemorySize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_MemoryBalloonSize_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aMemoryBalloonSize);


void __RPC_STUB IMachine_get_MemoryBalloonSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_MemoryBalloonSize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aMemoryBalloonSize);


void __RPC_STUB IMachine_put_MemoryBalloonSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_StatisticsUpdateInterval_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aStatisticsUpdateInterval);


void __RPC_STUB IMachine_get_StatisticsUpdateInterval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_StatisticsUpdateInterval_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aStatisticsUpdateInterval);


void __RPC_STUB IMachine_put_StatisticsUpdateInterval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_VRAMSize_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aVRAMSize);


void __RPC_STUB IMachine_get_VRAMSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_VRAMSize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aVRAMSize);


void __RPC_STUB IMachine_put_VRAMSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Accelerate3DEnabled_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aAccelerate3DEnabled);


void __RPC_STUB IMachine_get_Accelerate3DEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_Accelerate3DEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aAccelerate3DEnabled);


void __RPC_STUB IMachine_put_Accelerate3DEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_Accelerate2DVideoEnabled_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aAccelerate2DVideoEnabled);


void __RPC_STUB IMachine_get_Accelerate2DVideoEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_Accelerate2DVideoEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aAccelerate2DVideoEnabled);


void __RPC_STUB IMachine_put_Accelerate2DVideoEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_MonitorCount_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aMonitorCount);


void __RPC_STUB IMachine_get_MonitorCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_MonitorCount_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aMonitorCount);


void __RPC_STUB IMachine_put_MonitorCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_BIOSSettings_Proxy( 
    IMachine * This,
    /* [retval][out] */ IBIOSSettings **aBIOSSettings);


void __RPC_STUB IMachine_get_BIOSSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_FirmwareType_Proxy( 
    IMachine * This,
    /* [retval][out] */ FirmwareType *aFirmwareType);


void __RPC_STUB IMachine_get_FirmwareType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_FirmwareType_Proxy( 
    IMachine * This,
    /* [in] */ FirmwareType aFirmwareType);


void __RPC_STUB IMachine_put_FirmwareType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SnapshotFolder_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aSnapshotFolder);


void __RPC_STUB IMachine_get_SnapshotFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_SnapshotFolder_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aSnapshotFolder);


void __RPC_STUB IMachine_put_SnapshotFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_VRDPServer_Proxy( 
    IMachine * This,
    /* [retval][out] */ IVRDPServer **aVRDPServer);


void __RPC_STUB IMachine_get_VRDPServer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_MediumAttachments_Proxy( 
    IMachine * This,
    /* [retval][out] */ SAFEARRAY * *aMediumAttachments);


void __RPC_STUB IMachine_get_MediumAttachments_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_USBController_Proxy( 
    IMachine * This,
    /* [retval][out] */ IUSBController **aUSBController);


void __RPC_STUB IMachine_get_USBController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_AudioAdapter_Proxy( 
    IMachine * This,
    /* [retval][out] */ IAudioAdapter **aAudioAdapter);


void __RPC_STUB IMachine_get_AudioAdapter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_StorageControllers_Proxy( 
    IMachine * This,
    /* [retval][out] */ SAFEARRAY * *aStorageControllers);


void __RPC_STUB IMachine_get_StorageControllers_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SettingsFilePath_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aSettingsFilePath);


void __RPC_STUB IMachine_get_SettingsFilePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SettingsModified_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aSettingsModified);


void __RPC_STUB IMachine_get_SettingsModified_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SessionState_Proxy( 
    IMachine * This,
    /* [retval][out] */ SessionState *aSessionState);


void __RPC_STUB IMachine_get_SessionState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SessionType_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aSessionType);


void __RPC_STUB IMachine_get_SessionType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SessionPid_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aSessionPid);


void __RPC_STUB IMachine_get_SessionPid_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_State_Proxy( 
    IMachine * This,
    /* [retval][out] */ MachineState *aState);


void __RPC_STUB IMachine_get_State_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_LastStateChange_Proxy( 
    IMachine * This,
    /* [retval][out] */ LONG64 *aLastStateChange);


void __RPC_STUB IMachine_get_LastStateChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_StateFilePath_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aStateFilePath);


void __RPC_STUB IMachine_get_StateFilePath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_LogFolder_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aLogFolder);


void __RPC_STUB IMachine_get_LogFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_CurrentSnapshot_Proxy( 
    IMachine * This,
    /* [retval][out] */ ISnapshot **aCurrentSnapshot);


void __RPC_STUB IMachine_get_CurrentSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SnapshotCount_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aSnapshotCount);


void __RPC_STUB IMachine_get_SnapshotCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_CurrentStateModified_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aCurrentStateModified);


void __RPC_STUB IMachine_get_CurrentStateModified_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_SharedFolders_Proxy( 
    IMachine * This,
    /* [retval][out] */ SAFEARRAY * *aSharedFolders);


void __RPC_STUB IMachine_get_SharedFolders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_ClipboardMode_Proxy( 
    IMachine * This,
    /* [retval][out] */ ClipboardMode *aClipboardMode);


void __RPC_STUB IMachine_get_ClipboardMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_ClipboardMode_Proxy( 
    IMachine * This,
    /* [in] */ ClipboardMode aClipboardMode);


void __RPC_STUB IMachine_put_ClipboardMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_GuestPropertyNotificationPatterns_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aGuestPropertyNotificationPatterns);


void __RPC_STUB IMachine_get_GuestPropertyNotificationPatterns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_GuestPropertyNotificationPatterns_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aGuestPropertyNotificationPatterns);


void __RPC_STUB IMachine_put_GuestPropertyNotificationPatterns_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_TeleporterEnabled_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aTeleporterEnabled);


void __RPC_STUB IMachine_get_TeleporterEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_TeleporterEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aTeleporterEnabled);


void __RPC_STUB IMachine_put_TeleporterEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_TeleporterPort_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG *aTeleporterPort);


void __RPC_STUB IMachine_get_TeleporterPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_TeleporterPort_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aTeleporterPort);


void __RPC_STUB IMachine_put_TeleporterPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_TeleporterAddress_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aTeleporterAddress);


void __RPC_STUB IMachine_get_TeleporterAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_TeleporterAddress_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aTeleporterAddress);


void __RPC_STUB IMachine_put_TeleporterAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_TeleporterPassword_Proxy( 
    IMachine * This,
    /* [retval][out] */ BSTR *aTeleporterPassword);


void __RPC_STUB IMachine_get_TeleporterPassword_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_TeleporterPassword_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aTeleporterPassword);


void __RPC_STUB IMachine_put_TeleporterPassword_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetBootOrder_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aPosition,
    /* [in] */ DeviceType aDevice);


void __RPC_STUB IMachine_SetBootOrder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetBootOrder_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aPosition,
    /* [retval][out] */ DeviceType *aDevice);


void __RPC_STUB IMachine_GetBootOrder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_AttachDevice_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [in] */ DeviceType aType,
    /* [in] */ BSTR aId);


void __RPC_STUB IMachine_AttachDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_DetachDevice_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice);


void __RPC_STUB IMachine_DetachDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_PassthroughDevice_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [in] */ BOOL aPassthrough);


void __RPC_STUB IMachine_PassthroughDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_MountMedium_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [in] */ BSTR aMedium,
    /* [in] */ BOOL aForce);


void __RPC_STUB IMachine_MountMedium_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetMedium_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [retval][out] */ IMedium **aMedium);


void __RPC_STUB IMachine_GetMedium_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetMediumAttachmentsOfController_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ SAFEARRAY * *aMediumAttachments);


void __RPC_STUB IMachine_GetMediumAttachmentsOfController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetMediumAttachment_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [retval][out] */ IMediumAttachment **aAttachment);


void __RPC_STUB IMachine_GetMediumAttachment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetNetworkAdapter_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aSlot,
    /* [retval][out] */ INetworkAdapter **aAdapter);


void __RPC_STUB IMachine_GetNetworkAdapter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_AddStorageController_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ StorageBus aConnectionType,
    /* [retval][out] */ IStorageController **aController);


void __RPC_STUB IMachine_AddStorageController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetStorageControllerByName_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IStorageController **aStorageController);


void __RPC_STUB IMachine_GetStorageControllerByName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetStorageControllerByInstance_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aInstance,
    /* [retval][out] */ IStorageController **aStorageController);


void __RPC_STUB IMachine_GetStorageControllerByInstance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_RemoveStorageController_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName);


void __RPC_STUB IMachine_RemoveStorageController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetSerialPort_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aSlot,
    /* [retval][out] */ ISerialPort **aPort);


void __RPC_STUB IMachine_GetSerialPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetParallelPort_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aSlot,
    /* [retval][out] */ IParallelPort **aPort);


void __RPC_STUB IMachine_GetParallelPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetExtraDataKeys_Proxy( 
    IMachine * This,
    /* [retval][out] */ SAFEARRAY * *aValue);


void __RPC_STUB IMachine_GetExtraDataKeys_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetExtraData_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aKey,
    /* [retval][out] */ BSTR *aValue);


void __RPC_STUB IMachine_GetExtraData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetExtraData_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aKey,
    /* [in] */ BSTR aValue);


void __RPC_STUB IMachine_SetExtraData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetCpuProperty_Proxy( 
    IMachine * This,
    /* [in] */ CpuPropertyType aProperty,
    /* [retval][out] */ BOOL *aValue);


void __RPC_STUB IMachine_GetCpuProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetCpuProperty_Proxy( 
    IMachine * This,
    /* [in] */ CpuPropertyType aProperty,
    /* [in] */ BOOL aValue);


void __RPC_STUB IMachine_SetCpuProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetCpuIdLeaf_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aId,
    /* [out] */ ULONG *aValEax,
    /* [out] */ ULONG *aValEbx,
    /* [out] */ ULONG *aValEcx,
    /* [out] */ ULONG *aValEdx);


void __RPC_STUB IMachine_GetCpuIdLeaf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetCpuIdLeaf_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aId,
    /* [in] */ ULONG aValEax,
    /* [in] */ ULONG aValEbx,
    /* [in] */ ULONG aValEcx,
    /* [in] */ ULONG aValEdx);


void __RPC_STUB IMachine_SetCpuIdLeaf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_RemoveCpuIdLeaf_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aId);


void __RPC_STUB IMachine_RemoveCpuIdLeaf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_RemoveAllCpuIdLeafs_Proxy( 
    IMachine * This);


void __RPC_STUB IMachine_RemoveAllCpuIdLeafs_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetHWVirtExProperty_Proxy( 
    IMachine * This,
    /* [in] */ HWVirtExPropertyType aProperty,
    /* [retval][out] */ BOOL *aValue);


void __RPC_STUB IMachine_GetHWVirtExProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetHWVirtExProperty_Proxy( 
    IMachine * This,
    /* [in] */ HWVirtExPropertyType aProperty,
    /* [in] */ BOOL aValue);


void __RPC_STUB IMachine_SetHWVirtExProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SaveSettings_Proxy( 
    IMachine * This);


void __RPC_STUB IMachine_SaveSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_DiscardSettings_Proxy( 
    IMachine * This);


void __RPC_STUB IMachine_DiscardSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_DeleteSettings_Proxy( 
    IMachine * This);


void __RPC_STUB IMachine_DeleteSettings_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_Export_Proxy( 
    IMachine * This,
    /* [in] */ IAppliance *aAAppliance,
    /* [retval][out] */ IVirtualSystemDescription **aADescription);


void __RPC_STUB IMachine_Export_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetSnapshot_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ ISnapshot **aSnapshot);


void __RPC_STUB IMachine_GetSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_FindSnapshot_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ ISnapshot **aSnapshot);


void __RPC_STUB IMachine_FindSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetCurrentSnapshot_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aId);


void __RPC_STUB IMachine_SetCurrentSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_CreateSharedFolder_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aHostPath,
    /* [in] */ BOOL aWritable);


void __RPC_STUB IMachine_CreateSharedFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_RemoveSharedFolder_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName);


void __RPC_STUB IMachine_RemoveSharedFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_CanShowConsoleWindow_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aCanShow);


void __RPC_STUB IMachine_CanShowConsoleWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_ShowConsoleWindow_Proxy( 
    IMachine * This,
    /* [retval][out] */ ULONG64 *aWinId);


void __RPC_STUB IMachine_ShowConsoleWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetGuestProperty_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [out] */ BSTR *aValue,
    /* [out] */ ULONG64 *aTimestamp,
    /* [out] */ BSTR *aFlags);


void __RPC_STUB IMachine_GetGuestProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetGuestPropertyValue_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aProperty,
    /* [retval][out] */ BSTR *aValue);


void __RPC_STUB IMachine_GetGuestPropertyValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_GetGuestPropertyTimestamp_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aProperty,
    /* [retval][out] */ ULONG64 *aValue);


void __RPC_STUB IMachine_GetGuestPropertyTimestamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetGuestProperty_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aProperty,
    /* [in] */ BSTR aValue,
    /* [in] */ BSTR aFlags);


void __RPC_STUB IMachine_SetGuestProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_SetGuestPropertyValue_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aProperty,
    /* [in] */ BSTR aValue);


void __RPC_STUB IMachine_SetGuestPropertyValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_EnumerateGuestProperties_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aPatterns,
    /* [out] */ SAFEARRAY * *aName,
    /* [out] */ SAFEARRAY * *aValue,
    /* [out] */ SAFEARRAY * *aTimestamp,
    /* [out] */ SAFEARRAY * *aFlags);


void __RPC_STUB IMachine_EnumerateGuestProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_QuerySavedThumbnailSize_Proxy( 
    IMachine * This,
    /* [out] */ ULONG *aSize,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight);


void __RPC_STUB IMachine_QuerySavedThumbnailSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_ReadSavedThumbnailToArray_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aBGR,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight,
    /* [retval][out] */ SAFEARRAY * *aData);


void __RPC_STUB IMachine_ReadSavedThumbnailToArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_QuerySavedScreenshotPNGSize_Proxy( 
    IMachine * This,
    /* [out] */ ULONG *aSize,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight);


void __RPC_STUB IMachine_QuerySavedScreenshotPNGSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachine_ReadSavedScreenshotPNGToArray_Proxy( 
    IMachine * This,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight,
    /* [retval][out] */ SAFEARRAY * *aData);


void __RPC_STUB IMachine_ReadSavedScreenshotPNGToArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMachine_INTERFACE_DEFINED__ */


#ifndef __IConsoleCallback_INTERFACE_DEFINED__
#define __IConsoleCallback_INTERFACE_DEFINED__

/* interface IConsoleCallback */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IConsoleCallback;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d6239535-bda2-4ef7-83f4-f4722e4a3b2c")
    IConsoleCallback : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE OnMousePointerShapeChange( 
            /* [in] */ BOOL aVisible,
            /* [in] */ BOOL aAlpha,
            /* [in] */ ULONG aXHot,
            /* [in] */ ULONG aYHot,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ BYTE *aShape) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnMouseCapabilityChange( 
            /* [in] */ BOOL aSupportsAbsolute,
            /* [in] */ BOOL aNeedsHostCursor) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnKeyboardLedsChange( 
            /* [in] */ BOOL aNumLock,
            /* [in] */ BOOL aCapsLock,
            /* [in] */ BOOL aScrollLock) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnStateChange( 
            /* [in] */ MachineState aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnAdditionsStateChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnNetworkAdapterChange( 
            /* [in] */ INetworkAdapter *aNetworkAdapter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSerialPortChange( 
            /* [in] */ ISerialPort *aSerialPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnParallelPortChange( 
            /* [in] */ IParallelPort *aParallelPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnStorageControllerChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnMediumChange( 
            /* [in] */ IMediumAttachment *aMediumAttachment) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnVRDPServerChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnRemoteDisplayInfoChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnUSBControllerChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnUSBDeviceStateChange( 
            /* [in] */ IUSBDevice *aDevice,
            /* [in] */ BOOL aAttached,
            /* [in] */ IVirtualBoxErrorInfo *aError) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSharedFolderChange( 
            /* [in] */ Scope aScope) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnRuntimeError( 
            /* [in] */ BOOL aFatal,
            /* [in] */ BSTR aId,
            /* [in] */ BSTR aMessage) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnCanShowWindow( 
            /* [retval][out] */ BOOL *aCanShow) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnShowWindow( 
            /* [retval][out] */ ULONG64 *aWinId) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IConsoleCallbackVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IConsoleCallback * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IConsoleCallback * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IConsoleCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IConsoleCallback * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IConsoleCallback * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IConsoleCallback * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IConsoleCallback * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        HRESULT ( STDMETHODCALLTYPE *OnMousePointerShapeChange )( 
            IConsoleCallback * This,
            /* [in] */ BOOL aVisible,
            /* [in] */ BOOL aAlpha,
            /* [in] */ ULONG aXHot,
            /* [in] */ ULONG aYHot,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ BYTE *aShape);
        
        HRESULT ( STDMETHODCALLTYPE *OnMouseCapabilityChange )( 
            IConsoleCallback * This,
            /* [in] */ BOOL aSupportsAbsolute,
            /* [in] */ BOOL aNeedsHostCursor);
        
        HRESULT ( STDMETHODCALLTYPE *OnKeyboardLedsChange )( 
            IConsoleCallback * This,
            /* [in] */ BOOL aNumLock,
            /* [in] */ BOOL aCapsLock,
            /* [in] */ BOOL aScrollLock);
        
        HRESULT ( STDMETHODCALLTYPE *OnStateChange )( 
            IConsoleCallback * This,
            /* [in] */ MachineState aState);
        
        HRESULT ( STDMETHODCALLTYPE *OnAdditionsStateChange )( 
            IConsoleCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnNetworkAdapterChange )( 
            IConsoleCallback * This,
            /* [in] */ INetworkAdapter *aNetworkAdapter);
        
        HRESULT ( STDMETHODCALLTYPE *OnSerialPortChange )( 
            IConsoleCallback * This,
            /* [in] */ ISerialPort *aSerialPort);
        
        HRESULT ( STDMETHODCALLTYPE *OnParallelPortChange )( 
            IConsoleCallback * This,
            /* [in] */ IParallelPort *aParallelPort);
        
        HRESULT ( STDMETHODCALLTYPE *OnStorageControllerChange )( 
            IConsoleCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnMediumChange )( 
            IConsoleCallback * This,
            /* [in] */ IMediumAttachment *aMediumAttachment);
        
        HRESULT ( STDMETHODCALLTYPE *OnVRDPServerChange )( 
            IConsoleCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnRemoteDisplayInfoChange )( 
            IConsoleCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnUSBControllerChange )( 
            IConsoleCallback * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnUSBDeviceStateChange )( 
            IConsoleCallback * This,
            /* [in] */ IUSBDevice *aDevice,
            /* [in] */ BOOL aAttached,
            /* [in] */ IVirtualBoxErrorInfo *aError);
        
        HRESULT ( STDMETHODCALLTYPE *OnSharedFolderChange )( 
            IConsoleCallback * This,
            /* [in] */ Scope aScope);
        
        HRESULT ( STDMETHODCALLTYPE *OnRuntimeError )( 
            IConsoleCallback * This,
            /* [in] */ BOOL aFatal,
            /* [in] */ BSTR aId,
            /* [in] */ BSTR aMessage);
        
        HRESULT ( STDMETHODCALLTYPE *OnCanShowWindow )( 
            IConsoleCallback * This,
            /* [retval][out] */ BOOL *aCanShow);
        
        HRESULT ( STDMETHODCALLTYPE *OnShowWindow )( 
            IConsoleCallback * This,
            /* [retval][out] */ ULONG64 *aWinId);
        
        END_INTERFACE
    } IConsoleCallbackVtbl;

    interface IConsoleCallback
    {
        CONST_VTBL struct IConsoleCallbackVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IConsoleCallback_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IConsoleCallback_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IConsoleCallback_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IConsoleCallback_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IConsoleCallback_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IConsoleCallback_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IConsoleCallback_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IConsoleCallback_OnMousePointerShapeChange(This,aVisible,aAlpha,aXHot,aYHot,aWidth,aHeight,aShape)	\
    (This)->lpVtbl -> OnMousePointerShapeChange(This,aVisible,aAlpha,aXHot,aYHot,aWidth,aHeight,aShape)

#define IConsoleCallback_OnMouseCapabilityChange(This,aSupportsAbsolute,aNeedsHostCursor)	\
    (This)->lpVtbl -> OnMouseCapabilityChange(This,aSupportsAbsolute,aNeedsHostCursor)

#define IConsoleCallback_OnKeyboardLedsChange(This,aNumLock,aCapsLock,aScrollLock)	\
    (This)->lpVtbl -> OnKeyboardLedsChange(This,aNumLock,aCapsLock,aScrollLock)

#define IConsoleCallback_OnStateChange(This,aState)	\
    (This)->lpVtbl -> OnStateChange(This,aState)

#define IConsoleCallback_OnAdditionsStateChange(This)	\
    (This)->lpVtbl -> OnAdditionsStateChange(This)

#define IConsoleCallback_OnNetworkAdapterChange(This,aNetworkAdapter)	\
    (This)->lpVtbl -> OnNetworkAdapterChange(This,aNetworkAdapter)

#define IConsoleCallback_OnSerialPortChange(This,aSerialPort)	\
    (This)->lpVtbl -> OnSerialPortChange(This,aSerialPort)

#define IConsoleCallback_OnParallelPortChange(This,aParallelPort)	\
    (This)->lpVtbl -> OnParallelPortChange(This,aParallelPort)

#define IConsoleCallback_OnStorageControllerChange(This)	\
    (This)->lpVtbl -> OnStorageControllerChange(This)

#define IConsoleCallback_OnMediumChange(This,aMediumAttachment)	\
    (This)->lpVtbl -> OnMediumChange(This,aMediumAttachment)

#define IConsoleCallback_OnVRDPServerChange(This)	\
    (This)->lpVtbl -> OnVRDPServerChange(This)

#define IConsoleCallback_OnRemoteDisplayInfoChange(This)	\
    (This)->lpVtbl -> OnRemoteDisplayInfoChange(This)

#define IConsoleCallback_OnUSBControllerChange(This)	\
    (This)->lpVtbl -> OnUSBControllerChange(This)

#define IConsoleCallback_OnUSBDeviceStateChange(This,aDevice,aAttached,aError)	\
    (This)->lpVtbl -> OnUSBDeviceStateChange(This,aDevice,aAttached,aError)

#define IConsoleCallback_OnSharedFolderChange(This,aScope)	\
    (This)->lpVtbl -> OnSharedFolderChange(This,aScope)

#define IConsoleCallback_OnRuntimeError(This,aFatal,aId,aMessage)	\
    (This)->lpVtbl -> OnRuntimeError(This,aFatal,aId,aMessage)

#define IConsoleCallback_OnCanShowWindow(This,aCanShow)	\
    (This)->lpVtbl -> OnCanShowWindow(This,aCanShow)

#define IConsoleCallback_OnShowWindow(This,aWinId)	\
    (This)->lpVtbl -> OnShowWindow(This,aWinId)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IConsoleCallback_OnMousePointerShapeChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ BOOL aVisible,
    /* [in] */ BOOL aAlpha,
    /* [in] */ ULONG aXHot,
    /* [in] */ ULONG aYHot,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [in] */ BYTE *aShape);


void __RPC_STUB IConsoleCallback_OnMousePointerShapeChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnMouseCapabilityChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ BOOL aSupportsAbsolute,
    /* [in] */ BOOL aNeedsHostCursor);


void __RPC_STUB IConsoleCallback_OnMouseCapabilityChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnKeyboardLedsChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ BOOL aNumLock,
    /* [in] */ BOOL aCapsLock,
    /* [in] */ BOOL aScrollLock);


void __RPC_STUB IConsoleCallback_OnKeyboardLedsChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnStateChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ MachineState aState);


void __RPC_STUB IConsoleCallback_OnStateChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnAdditionsStateChange_Proxy( 
    IConsoleCallback * This);


void __RPC_STUB IConsoleCallback_OnAdditionsStateChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnNetworkAdapterChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ INetworkAdapter *aNetworkAdapter);


void __RPC_STUB IConsoleCallback_OnNetworkAdapterChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnSerialPortChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ ISerialPort *aSerialPort);


void __RPC_STUB IConsoleCallback_OnSerialPortChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnParallelPortChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ IParallelPort *aParallelPort);


void __RPC_STUB IConsoleCallback_OnParallelPortChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnStorageControllerChange_Proxy( 
    IConsoleCallback * This);


void __RPC_STUB IConsoleCallback_OnStorageControllerChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnMediumChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ IMediumAttachment *aMediumAttachment);


void __RPC_STUB IConsoleCallback_OnMediumChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnVRDPServerChange_Proxy( 
    IConsoleCallback * This);


void __RPC_STUB IConsoleCallback_OnVRDPServerChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnRemoteDisplayInfoChange_Proxy( 
    IConsoleCallback * This);


void __RPC_STUB IConsoleCallback_OnRemoteDisplayInfoChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnUSBControllerChange_Proxy( 
    IConsoleCallback * This);


void __RPC_STUB IConsoleCallback_OnUSBControllerChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnUSBDeviceStateChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ IUSBDevice *aDevice,
    /* [in] */ BOOL aAttached,
    /* [in] */ IVirtualBoxErrorInfo *aError);


void __RPC_STUB IConsoleCallback_OnUSBDeviceStateChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnSharedFolderChange_Proxy( 
    IConsoleCallback * This,
    /* [in] */ Scope aScope);


void __RPC_STUB IConsoleCallback_OnSharedFolderChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnRuntimeError_Proxy( 
    IConsoleCallback * This,
    /* [in] */ BOOL aFatal,
    /* [in] */ BSTR aId,
    /* [in] */ BSTR aMessage);


void __RPC_STUB IConsoleCallback_OnRuntimeError_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnCanShowWindow_Proxy( 
    IConsoleCallback * This,
    /* [retval][out] */ BOOL *aCanShow);


void __RPC_STUB IConsoleCallback_OnCanShowWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsoleCallback_OnShowWindow_Proxy( 
    IConsoleCallback * This,
    /* [retval][out] */ ULONG64 *aWinId);


void __RPC_STUB IConsoleCallback_OnShowWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IConsoleCallback_INTERFACE_DEFINED__ */


#ifndef __IRemoteDisplayInfo_INTERFACE_DEFINED__
#define __IRemoteDisplayInfo_INTERFACE_DEFINED__

/* interface IRemoteDisplayInfo */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IRemoteDisplayInfo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("b3741084-806f-4c3b-8c42-ebad1a81e45a")
    IRemoteDisplayInfo : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ BOOL *aActive) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Port( 
            /* [retval][out] */ LONG *aPort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NumberOfClients( 
            /* [retval][out] */ ULONG *aNumberOfClients) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BeginTime( 
            /* [retval][out] */ LONG64 *aBeginTime) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EndTime( 
            /* [retval][out] */ LONG64 *aEndTime) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesSent( 
            /* [retval][out] */ ULONG64 *aBytesSent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesSentTotal( 
            /* [retval][out] */ ULONG64 *aBytesSentTotal) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesReceived( 
            /* [retval][out] */ ULONG64 *aBytesReceived) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesReceivedTotal( 
            /* [retval][out] */ ULONG64 *aBytesReceivedTotal) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_User( 
            /* [retval][out] */ BSTR *aUser) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Domain( 
            /* [retval][out] */ BSTR *aDomain) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ClientName( 
            /* [retval][out] */ BSTR *aClientName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ClientIP( 
            /* [retval][out] */ BSTR *aClientIP) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ClientVersion( 
            /* [retval][out] */ ULONG *aClientVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EncryptionStyle( 
            /* [retval][out] */ ULONG *aEncryptionStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRemoteDisplayInfoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRemoteDisplayInfo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRemoteDisplayInfo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRemoteDisplayInfo * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRemoteDisplayInfo * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRemoteDisplayInfo * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRemoteDisplayInfo * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRemoteDisplayInfo * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Active )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ BOOL *aActive);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ LONG *aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfClients )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG *aNumberOfClients);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BeginTime )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ LONG64 *aBeginTime);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndTime )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ LONG64 *aEndTime);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesSent )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG64 *aBytesSent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesSentTotal )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG64 *aBytesSentTotal);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesReceived )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG64 *aBytesReceived);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesReceivedTotal )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG64 *aBytesReceivedTotal);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_User )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ BSTR *aUser);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ BSTR *aDomain);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ BSTR *aClientName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientIP )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ BSTR *aClientIP);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientVersion )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG *aClientVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionStyle )( 
            IRemoteDisplayInfo * This,
            /* [retval][out] */ ULONG *aEncryptionStyle);
        
        END_INTERFACE
    } IRemoteDisplayInfoVtbl;

    interface IRemoteDisplayInfo
    {
        CONST_VTBL struct IRemoteDisplayInfoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRemoteDisplayInfo_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRemoteDisplayInfo_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRemoteDisplayInfo_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRemoteDisplayInfo_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRemoteDisplayInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRemoteDisplayInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRemoteDisplayInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRemoteDisplayInfo_get_Active(This,aActive)	\
    (This)->lpVtbl -> get_Active(This,aActive)

#define IRemoteDisplayInfo_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IRemoteDisplayInfo_get_NumberOfClients(This,aNumberOfClients)	\
    (This)->lpVtbl -> get_NumberOfClients(This,aNumberOfClients)

#define IRemoteDisplayInfo_get_BeginTime(This,aBeginTime)	\
    (This)->lpVtbl -> get_BeginTime(This,aBeginTime)

#define IRemoteDisplayInfo_get_EndTime(This,aEndTime)	\
    (This)->lpVtbl -> get_EndTime(This,aEndTime)

#define IRemoteDisplayInfo_get_BytesSent(This,aBytesSent)	\
    (This)->lpVtbl -> get_BytesSent(This,aBytesSent)

#define IRemoteDisplayInfo_get_BytesSentTotal(This,aBytesSentTotal)	\
    (This)->lpVtbl -> get_BytesSentTotal(This,aBytesSentTotal)

#define IRemoteDisplayInfo_get_BytesReceived(This,aBytesReceived)	\
    (This)->lpVtbl -> get_BytesReceived(This,aBytesReceived)

#define IRemoteDisplayInfo_get_BytesReceivedTotal(This,aBytesReceivedTotal)	\
    (This)->lpVtbl -> get_BytesReceivedTotal(This,aBytesReceivedTotal)

#define IRemoteDisplayInfo_get_User(This,aUser)	\
    (This)->lpVtbl -> get_User(This,aUser)

#define IRemoteDisplayInfo_get_Domain(This,aDomain)	\
    (This)->lpVtbl -> get_Domain(This,aDomain)

#define IRemoteDisplayInfo_get_ClientName(This,aClientName)	\
    (This)->lpVtbl -> get_ClientName(This,aClientName)

#define IRemoteDisplayInfo_get_ClientIP(This,aClientIP)	\
    (This)->lpVtbl -> get_ClientIP(This,aClientIP)

#define IRemoteDisplayInfo_get_ClientVersion(This,aClientVersion)	\
    (This)->lpVtbl -> get_ClientVersion(This,aClientVersion)

#define IRemoteDisplayInfo_get_EncryptionStyle(This,aEncryptionStyle)	\
    (This)->lpVtbl -> get_EncryptionStyle(This,aEncryptionStyle)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_Active_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ BOOL *aActive);


void __RPC_STUB IRemoteDisplayInfo_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_Port_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ LONG *aPort);


void __RPC_STUB IRemoteDisplayInfo_get_Port_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_NumberOfClients_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG *aNumberOfClients);


void __RPC_STUB IRemoteDisplayInfo_get_NumberOfClients_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_BeginTime_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ LONG64 *aBeginTime);


void __RPC_STUB IRemoteDisplayInfo_get_BeginTime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_EndTime_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ LONG64 *aEndTime);


void __RPC_STUB IRemoteDisplayInfo_get_EndTime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_BytesSent_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG64 *aBytesSent);


void __RPC_STUB IRemoteDisplayInfo_get_BytesSent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_BytesSentTotal_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG64 *aBytesSentTotal);


void __RPC_STUB IRemoteDisplayInfo_get_BytesSentTotal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_BytesReceived_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG64 *aBytesReceived);


void __RPC_STUB IRemoteDisplayInfo_get_BytesReceived_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_BytesReceivedTotal_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG64 *aBytesReceivedTotal);


void __RPC_STUB IRemoteDisplayInfo_get_BytesReceivedTotal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_User_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ BSTR *aUser);


void __RPC_STUB IRemoteDisplayInfo_get_User_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_Domain_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ BSTR *aDomain);


void __RPC_STUB IRemoteDisplayInfo_get_Domain_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_ClientName_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ BSTR *aClientName);


void __RPC_STUB IRemoteDisplayInfo_get_ClientName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_ClientIP_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ BSTR *aClientIP);


void __RPC_STUB IRemoteDisplayInfo_get_ClientIP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_ClientVersion_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG *aClientVersion);


void __RPC_STUB IRemoteDisplayInfo_get_ClientVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRemoteDisplayInfo_get_EncryptionStyle_Proxy( 
    IRemoteDisplayInfo * This,
    /* [retval][out] */ ULONG *aEncryptionStyle);


void __RPC_STUB IRemoteDisplayInfo_get_EncryptionStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRemoteDisplayInfo_INTERFACE_DEFINED__ */


#ifndef __IConsole_INTERFACE_DEFINED__
#define __IConsole_INTERFACE_DEFINED__

/* interface IConsole */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IConsole;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6375231a-c17c-464b-92cb-ae9e128d71c3")
    IConsole : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Machine( 
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ MachineState *aState) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Guest( 
            /* [retval][out] */ IGuest **aGuest) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Keyboard( 
            /* [retval][out] */ IKeyboard **aKeyboard) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Mouse( 
            /* [retval][out] */ IMouse **aMouse) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Display( 
            /* [retval][out] */ IDisplay **aDisplay) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Debugger( 
            /* [retval][out] */ IMachineDebugger **aDebugger) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_USBDevices( 
            /* [retval][out] */ SAFEARRAY * *aUSBDevices) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RemoteUSBDevices( 
            /* [retval][out] */ SAFEARRAY * *aRemoteUSBDevices) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SharedFolders( 
            /* [retval][out] */ SAFEARRAY * *aSharedFolders) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RemoteDisplayInfo( 
            /* [retval][out] */ IRemoteDisplayInfo **aRemoteDisplayInfo) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PowerUp( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PowerUpPaused( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PowerDown( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Pause( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Resume( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PowerButton( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SleepButton( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetPowerButtonHandled( 
            /* [retval][out] */ BOOL *aHandled) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuestEnteredACPIMode( 
            /* [retval][out] */ BOOL *aEntered) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SaveState( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AdoptSavedState( 
            /* [in] */ BSTR aSavedStateFile) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ForgetSavedState( 
            /* [in] */ BOOL aRemove) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDeviceActivity( 
            /* [in] */ DeviceType aType,
            /* [retval][out] */ DeviceActivity *aActivity) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AttachUSBDevice( 
            /* [in] */ BSTR aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DetachUSBDevice( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IUSBDevice **aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindUSBDeviceByAddress( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IUSBDevice **aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindUSBDeviceById( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IUSBDevice **aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateSharedFolder( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveSharedFolder( 
            /* [in] */ BSTR aName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE TakeSnapshot( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aDescription,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteSnapshot( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RestoreSnapshot( 
            /* [in] */ ISnapshot *aSnapshot,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Teleport( 
            /* [in] */ BSTR aHostname,
            /* [in] */ ULONG aTcpport,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aMaxDowntime,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RegisterCallback( 
            /* [in] */ IConsoleCallback *aCallback) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnregisterCallback( 
            /* [in] */ IConsoleCallback *aCallback) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IConsoleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IConsole * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IConsole * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IConsole * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IConsole * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IConsole * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IConsole * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IConsole * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Machine )( 
            IConsole * This,
            /* [retval][out] */ IMachine **aMachine);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IConsole * This,
            /* [retval][out] */ MachineState *aState);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Guest )( 
            IConsole * This,
            /* [retval][out] */ IGuest **aGuest);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Keyboard )( 
            IConsole * This,
            /* [retval][out] */ IKeyboard **aKeyboard);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Mouse )( 
            IConsole * This,
            /* [retval][out] */ IMouse **aMouse);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Display )( 
            IConsole * This,
            /* [retval][out] */ IDisplay **aDisplay);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( 
            IConsole * This,
            /* [retval][out] */ IMachineDebugger **aDebugger);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_USBDevices )( 
            IConsole * This,
            /* [retval][out] */ SAFEARRAY * *aUSBDevices);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemoteUSBDevices )( 
            IConsole * This,
            /* [retval][out] */ SAFEARRAY * *aRemoteUSBDevices);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SharedFolders )( 
            IConsole * This,
            /* [retval][out] */ SAFEARRAY * *aSharedFolders);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemoteDisplayInfo )( 
            IConsole * This,
            /* [retval][out] */ IRemoteDisplayInfo **aRemoteDisplayInfo);
        
        HRESULT ( STDMETHODCALLTYPE *PowerUp )( 
            IConsole * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *PowerUpPaused )( 
            IConsole * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *PowerDown )( 
            IConsole * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Reset )( 
            IConsole * This);
        
        HRESULT ( STDMETHODCALLTYPE *Pause )( 
            IConsole * This);
        
        HRESULT ( STDMETHODCALLTYPE *Resume )( 
            IConsole * This);
        
        HRESULT ( STDMETHODCALLTYPE *PowerButton )( 
            IConsole * This);
        
        HRESULT ( STDMETHODCALLTYPE *SleepButton )( 
            IConsole * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetPowerButtonHandled )( 
            IConsole * This,
            /* [retval][out] */ BOOL *aHandled);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuestEnteredACPIMode )( 
            IConsole * This,
            /* [retval][out] */ BOOL *aEntered);
        
        HRESULT ( STDMETHODCALLTYPE *SaveState )( 
            IConsole * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *AdoptSavedState )( 
            IConsole * This,
            /* [in] */ BSTR aSavedStateFile);
        
        HRESULT ( STDMETHODCALLTYPE *ForgetSavedState )( 
            IConsole * This,
            /* [in] */ BOOL aRemove);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeviceActivity )( 
            IConsole * This,
            /* [in] */ DeviceType aType,
            /* [retval][out] */ DeviceActivity *aActivity);
        
        HRESULT ( STDMETHODCALLTYPE *AttachUSBDevice )( 
            IConsole * This,
            /* [in] */ BSTR aId);
        
        HRESULT ( STDMETHODCALLTYPE *DetachUSBDevice )( 
            IConsole * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IUSBDevice **aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *FindUSBDeviceByAddress )( 
            IConsole * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IUSBDevice **aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *FindUSBDeviceById )( 
            IConsole * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IUSBDevice **aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *CreateSharedFolder )( 
            IConsole * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveSharedFolder )( 
            IConsole * This,
            /* [in] */ BSTR aName);
        
        HRESULT ( STDMETHODCALLTYPE *TakeSnapshot )( 
            IConsole * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aDescription,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteSnapshot )( 
            IConsole * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *RestoreSnapshot )( 
            IConsole * This,
            /* [in] */ ISnapshot *aSnapshot,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Teleport )( 
            IConsole * This,
            /* [in] */ BSTR aHostname,
            /* [in] */ ULONG aTcpport,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aMaxDowntime,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *RegisterCallback )( 
            IConsole * This,
            /* [in] */ IConsoleCallback *aCallback);
        
        HRESULT ( STDMETHODCALLTYPE *UnregisterCallback )( 
            IConsole * This,
            /* [in] */ IConsoleCallback *aCallback);
        
        END_INTERFACE
    } IConsoleVtbl;

    interface IConsole
    {
        CONST_VTBL struct IConsoleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IConsole_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IConsole_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IConsole_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IConsole_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IConsole_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IConsole_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IConsole_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IConsole_get_Machine(This,aMachine)	\
    (This)->lpVtbl -> get_Machine(This,aMachine)

#define IConsole_get_State(This,aState)	\
    (This)->lpVtbl -> get_State(This,aState)

#define IConsole_get_Guest(This,aGuest)	\
    (This)->lpVtbl -> get_Guest(This,aGuest)

#define IConsole_get_Keyboard(This,aKeyboard)	\
    (This)->lpVtbl -> get_Keyboard(This,aKeyboard)

#define IConsole_get_Mouse(This,aMouse)	\
    (This)->lpVtbl -> get_Mouse(This,aMouse)

#define IConsole_get_Display(This,aDisplay)	\
    (This)->lpVtbl -> get_Display(This,aDisplay)

#define IConsole_get_Debugger(This,aDebugger)	\
    (This)->lpVtbl -> get_Debugger(This,aDebugger)

#define IConsole_get_USBDevices(This,aUSBDevices)	\
    (This)->lpVtbl -> get_USBDevices(This,aUSBDevices)

#define IConsole_get_RemoteUSBDevices(This,aRemoteUSBDevices)	\
    (This)->lpVtbl -> get_RemoteUSBDevices(This,aRemoteUSBDevices)

#define IConsole_get_SharedFolders(This,aSharedFolders)	\
    (This)->lpVtbl -> get_SharedFolders(This,aSharedFolders)

#define IConsole_get_RemoteDisplayInfo(This,aRemoteDisplayInfo)	\
    (This)->lpVtbl -> get_RemoteDisplayInfo(This,aRemoteDisplayInfo)

#define IConsole_PowerUp(This,aProgress)	\
    (This)->lpVtbl -> PowerUp(This,aProgress)

#define IConsole_PowerUpPaused(This,aProgress)	\
    (This)->lpVtbl -> PowerUpPaused(This,aProgress)

#define IConsole_PowerDown(This,aProgress)	\
    (This)->lpVtbl -> PowerDown(This,aProgress)

#define IConsole_Reset(This)	\
    (This)->lpVtbl -> Reset(This)

#define IConsole_Pause(This)	\
    (This)->lpVtbl -> Pause(This)

#define IConsole_Resume(This)	\
    (This)->lpVtbl -> Resume(This)

#define IConsole_PowerButton(This)	\
    (This)->lpVtbl -> PowerButton(This)

#define IConsole_SleepButton(This)	\
    (This)->lpVtbl -> SleepButton(This)

#define IConsole_GetPowerButtonHandled(This,aHandled)	\
    (This)->lpVtbl -> GetPowerButtonHandled(This,aHandled)

#define IConsole_GetGuestEnteredACPIMode(This,aEntered)	\
    (This)->lpVtbl -> GetGuestEnteredACPIMode(This,aEntered)

#define IConsole_SaveState(This,aProgress)	\
    (This)->lpVtbl -> SaveState(This,aProgress)

#define IConsole_AdoptSavedState(This,aSavedStateFile)	\
    (This)->lpVtbl -> AdoptSavedState(This,aSavedStateFile)

#define IConsole_ForgetSavedState(This,aRemove)	\
    (This)->lpVtbl -> ForgetSavedState(This,aRemove)

#define IConsole_GetDeviceActivity(This,aType,aActivity)	\
    (This)->lpVtbl -> GetDeviceActivity(This,aType,aActivity)

#define IConsole_AttachUSBDevice(This,aId)	\
    (This)->lpVtbl -> AttachUSBDevice(This,aId)

#define IConsole_DetachUSBDevice(This,aId,aDevice)	\
    (This)->lpVtbl -> DetachUSBDevice(This,aId,aDevice)

#define IConsole_FindUSBDeviceByAddress(This,aName,aDevice)	\
    (This)->lpVtbl -> FindUSBDeviceByAddress(This,aName,aDevice)

#define IConsole_FindUSBDeviceById(This,aId,aDevice)	\
    (This)->lpVtbl -> FindUSBDeviceById(This,aId,aDevice)

#define IConsole_CreateSharedFolder(This,aName,aHostPath,aWritable)	\
    (This)->lpVtbl -> CreateSharedFolder(This,aName,aHostPath,aWritable)

#define IConsole_RemoveSharedFolder(This,aName)	\
    (This)->lpVtbl -> RemoveSharedFolder(This,aName)

#define IConsole_TakeSnapshot(This,aName,aDescription,aProgress)	\
    (This)->lpVtbl -> TakeSnapshot(This,aName,aDescription,aProgress)

#define IConsole_DeleteSnapshot(This,aId,aProgress)	\
    (This)->lpVtbl -> DeleteSnapshot(This,aId,aProgress)

#define IConsole_RestoreSnapshot(This,aSnapshot,aProgress)	\
    (This)->lpVtbl -> RestoreSnapshot(This,aSnapshot,aProgress)

#define IConsole_Teleport(This,aHostname,aTcpport,aPassword,aMaxDowntime,aProgress)	\
    (This)->lpVtbl -> Teleport(This,aHostname,aTcpport,aPassword,aMaxDowntime,aProgress)

#define IConsole_RegisterCallback(This,aCallback)	\
    (This)->lpVtbl -> RegisterCallback(This,aCallback)

#define IConsole_UnregisterCallback(This,aCallback)	\
    (This)->lpVtbl -> UnregisterCallback(This,aCallback)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_Machine_Proxy( 
    IConsole * This,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IConsole_get_Machine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_State_Proxy( 
    IConsole * This,
    /* [retval][out] */ MachineState *aState);


void __RPC_STUB IConsole_get_State_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_Guest_Proxy( 
    IConsole * This,
    /* [retval][out] */ IGuest **aGuest);


void __RPC_STUB IConsole_get_Guest_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_Keyboard_Proxy( 
    IConsole * This,
    /* [retval][out] */ IKeyboard **aKeyboard);


void __RPC_STUB IConsole_get_Keyboard_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_Mouse_Proxy( 
    IConsole * This,
    /* [retval][out] */ IMouse **aMouse);


void __RPC_STUB IConsole_get_Mouse_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_Display_Proxy( 
    IConsole * This,
    /* [retval][out] */ IDisplay **aDisplay);


void __RPC_STUB IConsole_get_Display_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_Debugger_Proxy( 
    IConsole * This,
    /* [retval][out] */ IMachineDebugger **aDebugger);


void __RPC_STUB IConsole_get_Debugger_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_USBDevices_Proxy( 
    IConsole * This,
    /* [retval][out] */ SAFEARRAY * *aUSBDevices);


void __RPC_STUB IConsole_get_USBDevices_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_RemoteUSBDevices_Proxy( 
    IConsole * This,
    /* [retval][out] */ SAFEARRAY * *aRemoteUSBDevices);


void __RPC_STUB IConsole_get_RemoteUSBDevices_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_SharedFolders_Proxy( 
    IConsole * This,
    /* [retval][out] */ SAFEARRAY * *aSharedFolders);


void __RPC_STUB IConsole_get_SharedFolders_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_RemoteDisplayInfo_Proxy( 
    IConsole * This,
    /* [retval][out] */ IRemoteDisplayInfo **aRemoteDisplayInfo);


void __RPC_STUB IConsole_get_RemoteDisplayInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_PowerUp_Proxy( 
    IConsole * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_PowerUp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_PowerUpPaused_Proxy( 
    IConsole * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_PowerUpPaused_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_PowerDown_Proxy( 
    IConsole * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_PowerDown_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_Reset_Proxy( 
    IConsole * This);


void __RPC_STUB IConsole_Reset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_Pause_Proxy( 
    IConsole * This);


void __RPC_STUB IConsole_Pause_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_Resume_Proxy( 
    IConsole * This);


void __RPC_STUB IConsole_Resume_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_PowerButton_Proxy( 
    IConsole * This);


void __RPC_STUB IConsole_PowerButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_SleepButton_Proxy( 
    IConsole * This);


void __RPC_STUB IConsole_SleepButton_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_GetPowerButtonHandled_Proxy( 
    IConsole * This,
    /* [retval][out] */ BOOL *aHandled);


void __RPC_STUB IConsole_GetPowerButtonHandled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_GetGuestEnteredACPIMode_Proxy( 
    IConsole * This,
    /* [retval][out] */ BOOL *aEntered);


void __RPC_STUB IConsole_GetGuestEnteredACPIMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_SaveState_Proxy( 
    IConsole * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_SaveState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_AdoptSavedState_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aSavedStateFile);


void __RPC_STUB IConsole_AdoptSavedState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_ForgetSavedState_Proxy( 
    IConsole * This,
    /* [in] */ BOOL aRemove);


void __RPC_STUB IConsole_ForgetSavedState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_GetDeviceActivity_Proxy( 
    IConsole * This,
    /* [in] */ DeviceType aType,
    /* [retval][out] */ DeviceActivity *aActivity);


void __RPC_STUB IConsole_GetDeviceActivity_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_AttachUSBDevice_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aId);


void __RPC_STUB IConsole_AttachUSBDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_DetachUSBDevice_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IUSBDevice **aDevice);


void __RPC_STUB IConsole_DetachUSBDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_FindUSBDeviceByAddress_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IUSBDevice **aDevice);


void __RPC_STUB IConsole_FindUSBDeviceByAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_FindUSBDeviceById_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IUSBDevice **aDevice);


void __RPC_STUB IConsole_FindUSBDeviceById_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_CreateSharedFolder_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aHostPath,
    /* [in] */ BOOL aWritable);


void __RPC_STUB IConsole_CreateSharedFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_RemoveSharedFolder_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aName);


void __RPC_STUB IConsole_RemoveSharedFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_TakeSnapshot_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aDescription,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_TakeSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_DeleteSnapshot_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_DeleteSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_RestoreSnapshot_Proxy( 
    IConsole * This,
    /* [in] */ ISnapshot *aSnapshot,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_RestoreSnapshot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_Teleport_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aHostname,
    /* [in] */ ULONG aTcpport,
    /* [in] */ BSTR aPassword,
    /* [in] */ ULONG aMaxDowntime,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_Teleport_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_RegisterCallback_Proxy( 
    IConsole * This,
    /* [in] */ IConsoleCallback *aCallback);


void __RPC_STUB IConsole_RegisterCallback_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IConsole_UnregisterCallback_Proxy( 
    IConsole * This,
    /* [in] */ IConsoleCallback *aCallback);


void __RPC_STUB IConsole_UnregisterCallback_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IConsole_INTERFACE_DEFINED__ */


#ifndef __IHostNetworkInterface_INTERFACE_DEFINED__
#define __IHostNetworkInterface_INTERFACE_DEFINED__

/* interface IHostNetworkInterface */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IHostNetworkInterface;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("ce6fae58-7642-4102-b5db-c9005c2320a8")
    IHostNetworkInterface : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkName( 
            /* [retval][out] */ BSTR *aNetworkName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DhcpEnabled( 
            /* [retval][out] */ BOOL *aDhcpEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IPAddress( 
            /* [retval][out] */ BSTR *aIPAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkMask( 
            /* [retval][out] */ BSTR *aNetworkMask) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IPV6Supported( 
            /* [retval][out] */ BOOL *aIPV6Supported) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IPV6Address( 
            /* [retval][out] */ BSTR *aIPV6Address) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IPV6NetworkMaskPrefixLength( 
            /* [retval][out] */ ULONG *aIPV6NetworkMaskPrefixLength) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HardwareAddress( 
            /* [retval][out] */ BSTR *aHardwareAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumType( 
            /* [retval][out] */ HostNetworkInterfaceMediumType *aMediumType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
            /* [retval][out] */ HostNetworkInterfaceStatus *aStatus) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_InterfaceType( 
            /* [retval][out] */ HostNetworkInterfaceType *aInterfaceType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableStaticIpConfig( 
            /* [in] */ BSTR aIPAddress,
            /* [in] */ BSTR aNetworkMask) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableStaticIpConfigV6( 
            /* [in] */ BSTR aIPV6Address,
            /* [in] */ ULONG aIPV6NetworkMaskPrefixLength) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableDynamicIpConfig( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DhcpRediscover( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHostNetworkInterfaceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IHostNetworkInterface * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IHostNetworkInterface * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IHostNetworkInterface * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IHostNetworkInterface * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IHostNetworkInterface * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IHostNetworkInterface * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IHostNetworkInterface * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkName )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aNetworkName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DhcpEnabled )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BOOL *aDhcpEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IPAddress )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aIPAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkMask )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aNetworkMask);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IPV6Supported )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BOOL *aIPV6Supported);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IPV6Address )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aIPV6Address);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IPV6NetworkMaskPrefixLength )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ ULONG *aIPV6NetworkMaskPrefixLength);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HardwareAddress )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ BSTR *aHardwareAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumType )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ HostNetworkInterfaceMediumType *aMediumType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ HostNetworkInterfaceStatus *aStatus);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_InterfaceType )( 
            IHostNetworkInterface * This,
            /* [retval][out] */ HostNetworkInterfaceType *aInterfaceType);
        
        HRESULT ( STDMETHODCALLTYPE *EnableStaticIpConfig )( 
            IHostNetworkInterface * This,
            /* [in] */ BSTR aIPAddress,
            /* [in] */ BSTR aNetworkMask);
        
        HRESULT ( STDMETHODCALLTYPE *EnableStaticIpConfigV6 )( 
            IHostNetworkInterface * This,
            /* [in] */ BSTR aIPV6Address,
            /* [in] */ ULONG aIPV6NetworkMaskPrefixLength);
        
        HRESULT ( STDMETHODCALLTYPE *EnableDynamicIpConfig )( 
            IHostNetworkInterface * This);
        
        HRESULT ( STDMETHODCALLTYPE *DhcpRediscover )( 
            IHostNetworkInterface * This);
        
        END_INTERFACE
    } IHostNetworkInterfaceVtbl;

    interface IHostNetworkInterface
    {
        CONST_VTBL struct IHostNetworkInterfaceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHostNetworkInterface_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHostNetworkInterface_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHostNetworkInterface_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHostNetworkInterface_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHostNetworkInterface_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHostNetworkInterface_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHostNetworkInterface_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHostNetworkInterface_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IHostNetworkInterface_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IHostNetworkInterface_get_NetworkName(This,aNetworkName)	\
    (This)->lpVtbl -> get_NetworkName(This,aNetworkName)

#define IHostNetworkInterface_get_DhcpEnabled(This,aDhcpEnabled)	\
    (This)->lpVtbl -> get_DhcpEnabled(This,aDhcpEnabled)

#define IHostNetworkInterface_get_IPAddress(This,aIPAddress)	\
    (This)->lpVtbl -> get_IPAddress(This,aIPAddress)

#define IHostNetworkInterface_get_NetworkMask(This,aNetworkMask)	\
    (This)->lpVtbl -> get_NetworkMask(This,aNetworkMask)

#define IHostNetworkInterface_get_IPV6Supported(This,aIPV6Supported)	\
    (This)->lpVtbl -> get_IPV6Supported(This,aIPV6Supported)

#define IHostNetworkInterface_get_IPV6Address(This,aIPV6Address)	\
    (This)->lpVtbl -> get_IPV6Address(This,aIPV6Address)

#define IHostNetworkInterface_get_IPV6NetworkMaskPrefixLength(This,aIPV6NetworkMaskPrefixLength)	\
    (This)->lpVtbl -> get_IPV6NetworkMaskPrefixLength(This,aIPV6NetworkMaskPrefixLength)

#define IHostNetworkInterface_get_HardwareAddress(This,aHardwareAddress)	\
    (This)->lpVtbl -> get_HardwareAddress(This,aHardwareAddress)

#define IHostNetworkInterface_get_MediumType(This,aMediumType)	\
    (This)->lpVtbl -> get_MediumType(This,aMediumType)

#define IHostNetworkInterface_get_Status(This,aStatus)	\
    (This)->lpVtbl -> get_Status(This,aStatus)

#define IHostNetworkInterface_get_InterfaceType(This,aInterfaceType)	\
    (This)->lpVtbl -> get_InterfaceType(This,aInterfaceType)

#define IHostNetworkInterface_EnableStaticIpConfig(This,aIPAddress,aNetworkMask)	\
    (This)->lpVtbl -> EnableStaticIpConfig(This,aIPAddress,aNetworkMask)

#define IHostNetworkInterface_EnableStaticIpConfigV6(This,aIPV6Address,aIPV6NetworkMaskPrefixLength)	\
    (This)->lpVtbl -> EnableStaticIpConfigV6(This,aIPV6Address,aIPV6NetworkMaskPrefixLength)

#define IHostNetworkInterface_EnableDynamicIpConfig(This)	\
    (This)->lpVtbl -> EnableDynamicIpConfig(This)

#define IHostNetworkInterface_DhcpRediscover(This)	\
    (This)->lpVtbl -> DhcpRediscover(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_Name_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB IHostNetworkInterface_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_Id_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IHostNetworkInterface_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_NetworkName_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aNetworkName);


void __RPC_STUB IHostNetworkInterface_get_NetworkName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_DhcpEnabled_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BOOL *aDhcpEnabled);


void __RPC_STUB IHostNetworkInterface_get_DhcpEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_IPAddress_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aIPAddress);


void __RPC_STUB IHostNetworkInterface_get_IPAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_NetworkMask_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aNetworkMask);


void __RPC_STUB IHostNetworkInterface_get_NetworkMask_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_IPV6Supported_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BOOL *aIPV6Supported);


void __RPC_STUB IHostNetworkInterface_get_IPV6Supported_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_IPV6Address_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aIPV6Address);


void __RPC_STUB IHostNetworkInterface_get_IPV6Address_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_IPV6NetworkMaskPrefixLength_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ ULONG *aIPV6NetworkMaskPrefixLength);


void __RPC_STUB IHostNetworkInterface_get_IPV6NetworkMaskPrefixLength_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_HardwareAddress_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ BSTR *aHardwareAddress);


void __RPC_STUB IHostNetworkInterface_get_HardwareAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_MediumType_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ HostNetworkInterfaceMediumType *aMediumType);


void __RPC_STUB IHostNetworkInterface_get_MediumType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_Status_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ HostNetworkInterfaceStatus *aStatus);


void __RPC_STUB IHostNetworkInterface_get_Status_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostNetworkInterface_get_InterfaceType_Proxy( 
    IHostNetworkInterface * This,
    /* [retval][out] */ HostNetworkInterfaceType *aInterfaceType);


void __RPC_STUB IHostNetworkInterface_get_InterfaceType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHostNetworkInterface_EnableStaticIpConfig_Proxy( 
    IHostNetworkInterface * This,
    /* [in] */ BSTR aIPAddress,
    /* [in] */ BSTR aNetworkMask);


void __RPC_STUB IHostNetworkInterface_EnableStaticIpConfig_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHostNetworkInterface_EnableStaticIpConfigV6_Proxy( 
    IHostNetworkInterface * This,
    /* [in] */ BSTR aIPV6Address,
    /* [in] */ ULONG aIPV6NetworkMaskPrefixLength);


void __RPC_STUB IHostNetworkInterface_EnableStaticIpConfigV6_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHostNetworkInterface_EnableDynamicIpConfig_Proxy( 
    IHostNetworkInterface * This);


void __RPC_STUB IHostNetworkInterface_EnableDynamicIpConfig_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHostNetworkInterface_DhcpRediscover_Proxy( 
    IHostNetworkInterface * This);


void __RPC_STUB IHostNetworkInterface_DhcpRediscover_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHostNetworkInterface_INTERFACE_DEFINED__ */


#ifndef __IHost_INTERFACE_DEFINED__
#define __IHost_INTERFACE_DEFINED__

/* interface IHost */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IHost;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e380cbfc-ae65-4fa6-899e-45ded6b3132a")
    IHost : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DVDDrives( 
            /* [retval][out] */ SAFEARRAY * *aDVDDrives) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FloppyDrives( 
            /* [retval][out] */ SAFEARRAY * *aFloppyDrives) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_USBDevices( 
            /* [retval][out] */ SAFEARRAY * *aUSBDevices) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_USBDeviceFilters( 
            /* [retval][out] */ SAFEARRAY * *aUSBDeviceFilters) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkInterfaces( 
            /* [retval][out] */ SAFEARRAY * *aNetworkInterfaces) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ProcessorCount( 
            /* [retval][out] */ ULONG *aProcessorCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ProcessorOnlineCount( 
            /* [retval][out] */ ULONG *aProcessorOnlineCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MemorySize( 
            /* [retval][out] */ ULONG *aMemorySize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MemoryAvailable( 
            /* [retval][out] */ ULONG *aMemoryAvailable) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OperatingSystem( 
            /* [retval][out] */ BSTR *aOperatingSystem) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OSVersion( 
            /* [retval][out] */ BSTR *aOSVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UTCTime( 
            /* [retval][out] */ LONG64 *aUTCTime) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Acceleration3DAvailable( 
            /* [retval][out] */ BOOL *aAcceleration3DAvailable) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProcessorSpeed( 
            /* [in] */ ULONG aCpuId,
            /* [retval][out] */ ULONG *aSpeed) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProcessorFeature( 
            /* [in] */ ProcessorFeature aFeature,
            /* [retval][out] */ BOOL *aSupported) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProcessorDescription( 
            /* [in] */ ULONG aCpuId,
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProcessorCpuIdLeaf( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ ULONG aLeaf,
            /* [in] */ ULONG aSubLeaf,
            /* [out] */ ULONG *aValEax,
            /* [out] */ ULONG *aValEbx,
            /* [out] */ ULONG *aValEcx,
            /* [out] */ ULONG *aValEdx) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateHostOnlyNetworkInterface( 
            /* [out] */ IHostNetworkInterface **aHostInterface,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveHostOnlyNetworkInterface( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateUSBDeviceFilter( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IHostUSBDeviceFilter **aFilter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE InsertUSBDeviceFilter( 
            /* [in] */ ULONG aPosition,
            /* [in] */ IHostUSBDeviceFilter *aFilter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveUSBDeviceFilter( 
            /* [in] */ ULONG aPosition) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindHostDVDDrive( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IMedium **aDrive) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindHostFloppyDrive( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IMedium **aDrive) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindHostNetworkInterfaceByName( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IHostNetworkInterface **aNetworkInterface) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindHostNetworkInterfaceById( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IHostNetworkInterface **aNetworkInterface) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindHostNetworkInterfacesOfType( 
            /* [in] */ HostNetworkInterfaceType aType,
            /* [retval][out] */ SAFEARRAY * *aNetworkInterfaces) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindUSBDeviceById( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IHostUSBDevice **aDevice) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindUSBDeviceByAddress( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IHostUSBDevice **aDevice) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHostVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IHost * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IHost * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IHost * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IHost * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IHost * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IHost * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IHost * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DVDDrives )( 
            IHost * This,
            /* [retval][out] */ SAFEARRAY * *aDVDDrives);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FloppyDrives )( 
            IHost * This,
            /* [retval][out] */ SAFEARRAY * *aFloppyDrives);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_USBDevices )( 
            IHost * This,
            /* [retval][out] */ SAFEARRAY * *aUSBDevices);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_USBDeviceFilters )( 
            IHost * This,
            /* [retval][out] */ SAFEARRAY * *aUSBDeviceFilters);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkInterfaces )( 
            IHost * This,
            /* [retval][out] */ SAFEARRAY * *aNetworkInterfaces);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProcessorCount )( 
            IHost * This,
            /* [retval][out] */ ULONG *aProcessorCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProcessorOnlineCount )( 
            IHost * This,
            /* [retval][out] */ ULONG *aProcessorOnlineCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MemorySize )( 
            IHost * This,
            /* [retval][out] */ ULONG *aMemorySize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MemoryAvailable )( 
            IHost * This,
            /* [retval][out] */ ULONG *aMemoryAvailable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OperatingSystem )( 
            IHost * This,
            /* [retval][out] */ BSTR *aOperatingSystem);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OSVersion )( 
            IHost * This,
            /* [retval][out] */ BSTR *aOSVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UTCTime )( 
            IHost * This,
            /* [retval][out] */ LONG64 *aUTCTime);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Acceleration3DAvailable )( 
            IHost * This,
            /* [retval][out] */ BOOL *aAcceleration3DAvailable);
        
        HRESULT ( STDMETHODCALLTYPE *GetProcessorSpeed )( 
            IHost * This,
            /* [in] */ ULONG aCpuId,
            /* [retval][out] */ ULONG *aSpeed);
        
        HRESULT ( STDMETHODCALLTYPE *GetProcessorFeature )( 
            IHost * This,
            /* [in] */ ProcessorFeature aFeature,
            /* [retval][out] */ BOOL *aSupported);
        
        HRESULT ( STDMETHODCALLTYPE *GetProcessorDescription )( 
            IHost * This,
            /* [in] */ ULONG aCpuId,
            /* [retval][out] */ BSTR *aDescription);
        
        HRESULT ( STDMETHODCALLTYPE *GetProcessorCpuIdLeaf )( 
            IHost * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ ULONG aLeaf,
            /* [in] */ ULONG aSubLeaf,
            /* [out] */ ULONG *aValEax,
            /* [out] */ ULONG *aValEbx,
            /* [out] */ ULONG *aValEcx,
            /* [out] */ ULONG *aValEdx);
        
        HRESULT ( STDMETHODCALLTYPE *CreateHostOnlyNetworkInterface )( 
            IHost * This,
            /* [out] */ IHostNetworkInterface **aHostInterface,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveHostOnlyNetworkInterface )( 
            IHost * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CreateUSBDeviceFilter )( 
            IHost * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IHostUSBDeviceFilter **aFilter);
        
        HRESULT ( STDMETHODCALLTYPE *InsertUSBDeviceFilter )( 
            IHost * This,
            /* [in] */ ULONG aPosition,
            /* [in] */ IHostUSBDeviceFilter *aFilter);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveUSBDeviceFilter )( 
            IHost * This,
            /* [in] */ ULONG aPosition);
        
        HRESULT ( STDMETHODCALLTYPE *FindHostDVDDrive )( 
            IHost * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IMedium **aDrive);
        
        HRESULT ( STDMETHODCALLTYPE *FindHostFloppyDrive )( 
            IHost * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IMedium **aDrive);
        
        HRESULT ( STDMETHODCALLTYPE *FindHostNetworkInterfaceByName )( 
            IHost * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IHostNetworkInterface **aNetworkInterface);
        
        HRESULT ( STDMETHODCALLTYPE *FindHostNetworkInterfaceById )( 
            IHost * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IHostNetworkInterface **aNetworkInterface);
        
        HRESULT ( STDMETHODCALLTYPE *FindHostNetworkInterfacesOfType )( 
            IHost * This,
            /* [in] */ HostNetworkInterfaceType aType,
            /* [retval][out] */ SAFEARRAY * *aNetworkInterfaces);
        
        HRESULT ( STDMETHODCALLTYPE *FindUSBDeviceById )( 
            IHost * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IHostUSBDevice **aDevice);
        
        HRESULT ( STDMETHODCALLTYPE *FindUSBDeviceByAddress )( 
            IHost * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IHostUSBDevice **aDevice);
        
        END_INTERFACE
    } IHostVtbl;

    interface IHost
    {
        CONST_VTBL struct IHostVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHost_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHost_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHost_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHost_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHost_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHost_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHost_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHost_get_DVDDrives(This,aDVDDrives)	\
    (This)->lpVtbl -> get_DVDDrives(This,aDVDDrives)

#define IHost_get_FloppyDrives(This,aFloppyDrives)	\
    (This)->lpVtbl -> get_FloppyDrives(This,aFloppyDrives)

#define IHost_get_USBDevices(This,aUSBDevices)	\
    (This)->lpVtbl -> get_USBDevices(This,aUSBDevices)

#define IHost_get_USBDeviceFilters(This,aUSBDeviceFilters)	\
    (This)->lpVtbl -> get_USBDeviceFilters(This,aUSBDeviceFilters)

#define IHost_get_NetworkInterfaces(This,aNetworkInterfaces)	\
    (This)->lpVtbl -> get_NetworkInterfaces(This,aNetworkInterfaces)

#define IHost_get_ProcessorCount(This,aProcessorCount)	\
    (This)->lpVtbl -> get_ProcessorCount(This,aProcessorCount)

#define IHost_get_ProcessorOnlineCount(This,aProcessorOnlineCount)	\
    (This)->lpVtbl -> get_ProcessorOnlineCount(This,aProcessorOnlineCount)

#define IHost_get_MemorySize(This,aMemorySize)	\
    (This)->lpVtbl -> get_MemorySize(This,aMemorySize)

#define IHost_get_MemoryAvailable(This,aMemoryAvailable)	\
    (This)->lpVtbl -> get_MemoryAvailable(This,aMemoryAvailable)

#define IHost_get_OperatingSystem(This,aOperatingSystem)	\
    (This)->lpVtbl -> get_OperatingSystem(This,aOperatingSystem)

#define IHost_get_OSVersion(This,aOSVersion)	\
    (This)->lpVtbl -> get_OSVersion(This,aOSVersion)

#define IHost_get_UTCTime(This,aUTCTime)	\
    (This)->lpVtbl -> get_UTCTime(This,aUTCTime)

#define IHost_get_Acceleration3DAvailable(This,aAcceleration3DAvailable)	\
    (This)->lpVtbl -> get_Acceleration3DAvailable(This,aAcceleration3DAvailable)

#define IHost_GetProcessorSpeed(This,aCpuId,aSpeed)	\
    (This)->lpVtbl -> GetProcessorSpeed(This,aCpuId,aSpeed)

#define IHost_GetProcessorFeature(This,aFeature,aSupported)	\
    (This)->lpVtbl -> GetProcessorFeature(This,aFeature,aSupported)

#define IHost_GetProcessorDescription(This,aCpuId,aDescription)	\
    (This)->lpVtbl -> GetProcessorDescription(This,aCpuId,aDescription)

#define IHost_GetProcessorCpuIdLeaf(This,aCpuId,aLeaf,aSubLeaf,aValEax,aValEbx,aValEcx,aValEdx)	\
    (This)->lpVtbl -> GetProcessorCpuIdLeaf(This,aCpuId,aLeaf,aSubLeaf,aValEax,aValEbx,aValEcx,aValEdx)

#define IHost_CreateHostOnlyNetworkInterface(This,aHostInterface,aProgress)	\
    (This)->lpVtbl -> CreateHostOnlyNetworkInterface(This,aHostInterface,aProgress)

#define IHost_RemoveHostOnlyNetworkInterface(This,aId,aProgress)	\
    (This)->lpVtbl -> RemoveHostOnlyNetworkInterface(This,aId,aProgress)

#define IHost_CreateUSBDeviceFilter(This,aName,aFilter)	\
    (This)->lpVtbl -> CreateUSBDeviceFilter(This,aName,aFilter)

#define IHost_InsertUSBDeviceFilter(This,aPosition,aFilter)	\
    (This)->lpVtbl -> InsertUSBDeviceFilter(This,aPosition,aFilter)

#define IHost_RemoveUSBDeviceFilter(This,aPosition)	\
    (This)->lpVtbl -> RemoveUSBDeviceFilter(This,aPosition)

#define IHost_FindHostDVDDrive(This,aName,aDrive)	\
    (This)->lpVtbl -> FindHostDVDDrive(This,aName,aDrive)

#define IHost_FindHostFloppyDrive(This,aName,aDrive)	\
    (This)->lpVtbl -> FindHostFloppyDrive(This,aName,aDrive)

#define IHost_FindHostNetworkInterfaceByName(This,aName,aNetworkInterface)	\
    (This)->lpVtbl -> FindHostNetworkInterfaceByName(This,aName,aNetworkInterface)

#define IHost_FindHostNetworkInterfaceById(This,aId,aNetworkInterface)	\
    (This)->lpVtbl -> FindHostNetworkInterfaceById(This,aId,aNetworkInterface)

#define IHost_FindHostNetworkInterfacesOfType(This,aType,aNetworkInterfaces)	\
    (This)->lpVtbl -> FindHostNetworkInterfacesOfType(This,aType,aNetworkInterfaces)

#define IHost_FindUSBDeviceById(This,aId,aDevice)	\
    (This)->lpVtbl -> FindUSBDeviceById(This,aId,aDevice)

#define IHost_FindUSBDeviceByAddress(This,aName,aDevice)	\
    (This)->lpVtbl -> FindUSBDeviceByAddress(This,aName,aDevice)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_DVDDrives_Proxy( 
    IHost * This,
    /* [retval][out] */ SAFEARRAY * *aDVDDrives);


void __RPC_STUB IHost_get_DVDDrives_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_FloppyDrives_Proxy( 
    IHost * This,
    /* [retval][out] */ SAFEARRAY * *aFloppyDrives);


void __RPC_STUB IHost_get_FloppyDrives_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_USBDevices_Proxy( 
    IHost * This,
    /* [retval][out] */ SAFEARRAY * *aUSBDevices);


void __RPC_STUB IHost_get_USBDevices_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_USBDeviceFilters_Proxy( 
    IHost * This,
    /* [retval][out] */ SAFEARRAY * *aUSBDeviceFilters);


void __RPC_STUB IHost_get_USBDeviceFilters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_NetworkInterfaces_Proxy( 
    IHost * This,
    /* [retval][out] */ SAFEARRAY * *aNetworkInterfaces);


void __RPC_STUB IHost_get_NetworkInterfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_ProcessorCount_Proxy( 
    IHost * This,
    /* [retval][out] */ ULONG *aProcessorCount);


void __RPC_STUB IHost_get_ProcessorCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_ProcessorOnlineCount_Proxy( 
    IHost * This,
    /* [retval][out] */ ULONG *aProcessorOnlineCount);


void __RPC_STUB IHost_get_ProcessorOnlineCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_MemorySize_Proxy( 
    IHost * This,
    /* [retval][out] */ ULONG *aMemorySize);


void __RPC_STUB IHost_get_MemorySize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_MemoryAvailable_Proxy( 
    IHost * This,
    /* [retval][out] */ ULONG *aMemoryAvailable);


void __RPC_STUB IHost_get_MemoryAvailable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_OperatingSystem_Proxy( 
    IHost * This,
    /* [retval][out] */ BSTR *aOperatingSystem);


void __RPC_STUB IHost_get_OperatingSystem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_OSVersion_Proxy( 
    IHost * This,
    /* [retval][out] */ BSTR *aOSVersion);


void __RPC_STUB IHost_get_OSVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_UTCTime_Proxy( 
    IHost * This,
    /* [retval][out] */ LONG64 *aUTCTime);


void __RPC_STUB IHost_get_UTCTime_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHost_get_Acceleration3DAvailable_Proxy( 
    IHost * This,
    /* [retval][out] */ BOOL *aAcceleration3DAvailable);


void __RPC_STUB IHost_get_Acceleration3DAvailable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_GetProcessorSpeed_Proxy( 
    IHost * This,
    /* [in] */ ULONG aCpuId,
    /* [retval][out] */ ULONG *aSpeed);


void __RPC_STUB IHost_GetProcessorSpeed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_GetProcessorFeature_Proxy( 
    IHost * This,
    /* [in] */ ProcessorFeature aFeature,
    /* [retval][out] */ BOOL *aSupported);


void __RPC_STUB IHost_GetProcessorFeature_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_GetProcessorDescription_Proxy( 
    IHost * This,
    /* [in] */ ULONG aCpuId,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB IHost_GetProcessorDescription_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_GetProcessorCpuIdLeaf_Proxy( 
    IHost * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ ULONG aLeaf,
    /* [in] */ ULONG aSubLeaf,
    /* [out] */ ULONG *aValEax,
    /* [out] */ ULONG *aValEbx,
    /* [out] */ ULONG *aValEcx,
    /* [out] */ ULONG *aValEdx);


void __RPC_STUB IHost_GetProcessorCpuIdLeaf_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_CreateHostOnlyNetworkInterface_Proxy( 
    IHost * This,
    /* [out] */ IHostNetworkInterface **aHostInterface,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IHost_CreateHostOnlyNetworkInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_RemoveHostOnlyNetworkInterface_Proxy( 
    IHost * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IHost_RemoveHostOnlyNetworkInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_CreateUSBDeviceFilter_Proxy( 
    IHost * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IHostUSBDeviceFilter **aFilter);


void __RPC_STUB IHost_CreateUSBDeviceFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_InsertUSBDeviceFilter_Proxy( 
    IHost * This,
    /* [in] */ ULONG aPosition,
    /* [in] */ IHostUSBDeviceFilter *aFilter);


void __RPC_STUB IHost_InsertUSBDeviceFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_RemoveUSBDeviceFilter_Proxy( 
    IHost * This,
    /* [in] */ ULONG aPosition);


void __RPC_STUB IHost_RemoveUSBDeviceFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindHostDVDDrive_Proxy( 
    IHost * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IMedium **aDrive);


void __RPC_STUB IHost_FindHostDVDDrive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindHostFloppyDrive_Proxy( 
    IHost * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IMedium **aDrive);


void __RPC_STUB IHost_FindHostFloppyDrive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindHostNetworkInterfaceByName_Proxy( 
    IHost * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IHostNetworkInterface **aNetworkInterface);


void __RPC_STUB IHost_FindHostNetworkInterfaceByName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindHostNetworkInterfaceById_Proxy( 
    IHost * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IHostNetworkInterface **aNetworkInterface);


void __RPC_STUB IHost_FindHostNetworkInterfaceById_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindHostNetworkInterfacesOfType_Proxy( 
    IHost * This,
    /* [in] */ HostNetworkInterfaceType aType,
    /* [retval][out] */ SAFEARRAY * *aNetworkInterfaces);


void __RPC_STUB IHost_FindHostNetworkInterfacesOfType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindUSBDeviceById_Proxy( 
    IHost * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IHostUSBDevice **aDevice);


void __RPC_STUB IHost_FindUSBDeviceById_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IHost_FindUSBDeviceByAddress_Proxy( 
    IHost * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IHostUSBDevice **aDevice);


void __RPC_STUB IHost_FindUSBDeviceByAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHost_INTERFACE_DEFINED__ */


#ifndef __ISystemProperties_INTERFACE_DEFINED__
#define __ISystemProperties_INTERFACE_DEFINED__

/* interface ISystemProperties */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ISystemProperties;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8030645c-8fef-4320-bb7b-c829f00069dc")
    ISystemProperties : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MinGuestRAM( 
            /* [retval][out] */ ULONG *aMinGuestRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxGuestRAM( 
            /* [retval][out] */ ULONG *aMaxGuestRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MinGuestVRAM( 
            /* [retval][out] */ ULONG *aMinGuestVRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxGuestVRAM( 
            /* [retval][out] */ ULONG *aMaxGuestVRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MinGuestCPUCount( 
            /* [retval][out] */ ULONG *aMinGuestCPUCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxGuestCPUCount( 
            /* [retval][out] */ ULONG *aMaxGuestCPUCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxVDISize( 
            /* [retval][out] */ ULONG64 *aMaxVDISize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkAdapterCount( 
            /* [retval][out] */ ULONG *aNetworkAdapterCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SerialPortCount( 
            /* [retval][out] */ ULONG *aSerialPortCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ParallelPortCount( 
            /* [retval][out] */ ULONG *aParallelPortCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxBootPosition( 
            /* [retval][out] */ ULONG *aMaxBootPosition) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DefaultMachineFolder( 
            /* [retval][out] */ BSTR *aDefaultMachineFolder) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DefaultMachineFolder( 
            /* [in] */ BSTR aDefaultMachineFolder) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DefaultHardDiskFolder( 
            /* [retval][out] */ BSTR *aDefaultHardDiskFolder) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DefaultHardDiskFolder( 
            /* [in] */ BSTR aDefaultHardDiskFolder) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumFormats( 
            /* [retval][out] */ SAFEARRAY * *aMediumFormats) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DefaultHardDiskFormat( 
            /* [retval][out] */ BSTR *aDefaultHardDiskFormat) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DefaultHardDiskFormat( 
            /* [in] */ BSTR aDefaultHardDiskFormat) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RemoteDisplayAuthLibrary( 
            /* [retval][out] */ BSTR *aRemoteDisplayAuthLibrary) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RemoteDisplayAuthLibrary( 
            /* [in] */ BSTR aRemoteDisplayAuthLibrary) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_WebServiceAuthLibrary( 
            /* [retval][out] */ BSTR *aWebServiceAuthLibrary) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_WebServiceAuthLibrary( 
            /* [in] */ BSTR aWebServiceAuthLibrary) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogHistoryCount( 
            /* [retval][out] */ ULONG *aLogHistoryCount) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LogHistoryCount( 
            /* [in] */ ULONG aLogHistoryCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DefaultAudioDriver( 
            /* [retval][out] */ AudioDriverType *aDefaultAudioDriver) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMaxDevicesPerPortForStorageBus( 
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxDevicesPerPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMinPortCountForStorageBus( 
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMinPortCount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMaxPortCountForStorageBus( 
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxPortCount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMaxInstancesOfStorageBus( 
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxInstances) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDeviceTypesForStorageBus( 
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ SAFEARRAY * *aDeviceTypes) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISystemPropertiesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISystemProperties * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISystemProperties * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISystemProperties * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISystemProperties * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISystemProperties * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISystemProperties * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISystemProperties * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinGuestRAM )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMinGuestRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxGuestRAM )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMaxGuestRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinGuestVRAM )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMinGuestVRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxGuestVRAM )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMaxGuestVRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinGuestCPUCount )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMinGuestCPUCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxGuestCPUCount )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMaxGuestCPUCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxVDISize )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG64 *aMaxVDISize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkAdapterCount )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aNetworkAdapterCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialPortCount )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aSerialPortCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ParallelPortCount )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aParallelPortCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxBootPosition )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMaxBootPosition);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultMachineFolder )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aDefaultMachineFolder);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DefaultMachineFolder )( 
            ISystemProperties * This,
            /* [in] */ BSTR aDefaultMachineFolder);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultHardDiskFolder )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aDefaultHardDiskFolder);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DefaultHardDiskFolder )( 
            ISystemProperties * This,
            /* [in] */ BSTR aDefaultHardDiskFolder);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumFormats )( 
            ISystemProperties * This,
            /* [retval][out] */ SAFEARRAY * *aMediumFormats);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultHardDiskFormat )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aDefaultHardDiskFormat);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DefaultHardDiskFormat )( 
            ISystemProperties * This,
            /* [in] */ BSTR aDefaultHardDiskFormat);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RemoteDisplayAuthLibrary )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aRemoteDisplayAuthLibrary);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RemoteDisplayAuthLibrary )( 
            ISystemProperties * This,
            /* [in] */ BSTR aRemoteDisplayAuthLibrary);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WebServiceAuthLibrary )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aWebServiceAuthLibrary);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_WebServiceAuthLibrary )( 
            ISystemProperties * This,
            /* [in] */ BSTR aWebServiceAuthLibrary);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogHistoryCount )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aLogHistoryCount);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LogHistoryCount )( 
            ISystemProperties * This,
            /* [in] */ ULONG aLogHistoryCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultAudioDriver )( 
            ISystemProperties * This,
            /* [retval][out] */ AudioDriverType *aDefaultAudioDriver);
        
        HRESULT ( STDMETHODCALLTYPE *GetMaxDevicesPerPortForStorageBus )( 
            ISystemProperties * This,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxDevicesPerPort);
        
        HRESULT ( STDMETHODCALLTYPE *GetMinPortCountForStorageBus )( 
            ISystemProperties * This,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMinPortCount);
        
        HRESULT ( STDMETHODCALLTYPE *GetMaxPortCountForStorageBus )( 
            ISystemProperties * This,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxPortCount);
        
        HRESULT ( STDMETHODCALLTYPE *GetMaxInstancesOfStorageBus )( 
            ISystemProperties * This,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxInstances);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeviceTypesForStorageBus )( 
            ISystemProperties * This,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ SAFEARRAY * *aDeviceTypes);
        
        END_INTERFACE
    } ISystemPropertiesVtbl;

    interface ISystemProperties
    {
        CONST_VTBL struct ISystemPropertiesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISystemProperties_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISystemProperties_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISystemProperties_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISystemProperties_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISystemProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISystemProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISystemProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISystemProperties_get_MinGuestRAM(This,aMinGuestRAM)	\
    (This)->lpVtbl -> get_MinGuestRAM(This,aMinGuestRAM)

#define ISystemProperties_get_MaxGuestRAM(This,aMaxGuestRAM)	\
    (This)->lpVtbl -> get_MaxGuestRAM(This,aMaxGuestRAM)

#define ISystemProperties_get_MinGuestVRAM(This,aMinGuestVRAM)	\
    (This)->lpVtbl -> get_MinGuestVRAM(This,aMinGuestVRAM)

#define ISystemProperties_get_MaxGuestVRAM(This,aMaxGuestVRAM)	\
    (This)->lpVtbl -> get_MaxGuestVRAM(This,aMaxGuestVRAM)

#define ISystemProperties_get_MinGuestCPUCount(This,aMinGuestCPUCount)	\
    (This)->lpVtbl -> get_MinGuestCPUCount(This,aMinGuestCPUCount)

#define ISystemProperties_get_MaxGuestCPUCount(This,aMaxGuestCPUCount)	\
    (This)->lpVtbl -> get_MaxGuestCPUCount(This,aMaxGuestCPUCount)

#define ISystemProperties_get_MaxVDISize(This,aMaxVDISize)	\
    (This)->lpVtbl -> get_MaxVDISize(This,aMaxVDISize)

#define ISystemProperties_get_NetworkAdapterCount(This,aNetworkAdapterCount)	\
    (This)->lpVtbl -> get_NetworkAdapterCount(This,aNetworkAdapterCount)

#define ISystemProperties_get_SerialPortCount(This,aSerialPortCount)	\
    (This)->lpVtbl -> get_SerialPortCount(This,aSerialPortCount)

#define ISystemProperties_get_ParallelPortCount(This,aParallelPortCount)	\
    (This)->lpVtbl -> get_ParallelPortCount(This,aParallelPortCount)

#define ISystemProperties_get_MaxBootPosition(This,aMaxBootPosition)	\
    (This)->lpVtbl -> get_MaxBootPosition(This,aMaxBootPosition)

#define ISystemProperties_get_DefaultMachineFolder(This,aDefaultMachineFolder)	\
    (This)->lpVtbl -> get_DefaultMachineFolder(This,aDefaultMachineFolder)

#define ISystemProperties_put_DefaultMachineFolder(This,aDefaultMachineFolder)	\
    (This)->lpVtbl -> put_DefaultMachineFolder(This,aDefaultMachineFolder)

#define ISystemProperties_get_DefaultHardDiskFolder(This,aDefaultHardDiskFolder)	\
    (This)->lpVtbl -> get_DefaultHardDiskFolder(This,aDefaultHardDiskFolder)

#define ISystemProperties_put_DefaultHardDiskFolder(This,aDefaultHardDiskFolder)	\
    (This)->lpVtbl -> put_DefaultHardDiskFolder(This,aDefaultHardDiskFolder)

#define ISystemProperties_get_MediumFormats(This,aMediumFormats)	\
    (This)->lpVtbl -> get_MediumFormats(This,aMediumFormats)

#define ISystemProperties_get_DefaultHardDiskFormat(This,aDefaultHardDiskFormat)	\
    (This)->lpVtbl -> get_DefaultHardDiskFormat(This,aDefaultHardDiskFormat)

#define ISystemProperties_put_DefaultHardDiskFormat(This,aDefaultHardDiskFormat)	\
    (This)->lpVtbl -> put_DefaultHardDiskFormat(This,aDefaultHardDiskFormat)

#define ISystemProperties_get_RemoteDisplayAuthLibrary(This,aRemoteDisplayAuthLibrary)	\
    (This)->lpVtbl -> get_RemoteDisplayAuthLibrary(This,aRemoteDisplayAuthLibrary)

#define ISystemProperties_put_RemoteDisplayAuthLibrary(This,aRemoteDisplayAuthLibrary)	\
    (This)->lpVtbl -> put_RemoteDisplayAuthLibrary(This,aRemoteDisplayAuthLibrary)

#define ISystemProperties_get_WebServiceAuthLibrary(This,aWebServiceAuthLibrary)	\
    (This)->lpVtbl -> get_WebServiceAuthLibrary(This,aWebServiceAuthLibrary)

#define ISystemProperties_put_WebServiceAuthLibrary(This,aWebServiceAuthLibrary)	\
    (This)->lpVtbl -> put_WebServiceAuthLibrary(This,aWebServiceAuthLibrary)

#define ISystemProperties_get_LogHistoryCount(This,aLogHistoryCount)	\
    (This)->lpVtbl -> get_LogHistoryCount(This,aLogHistoryCount)

#define ISystemProperties_put_LogHistoryCount(This,aLogHistoryCount)	\
    (This)->lpVtbl -> put_LogHistoryCount(This,aLogHistoryCount)

#define ISystemProperties_get_DefaultAudioDriver(This,aDefaultAudioDriver)	\
    (This)->lpVtbl -> get_DefaultAudioDriver(This,aDefaultAudioDriver)

#define ISystemProperties_GetMaxDevicesPerPortForStorageBus(This,aBus,aMaxDevicesPerPort)	\
    (This)->lpVtbl -> GetMaxDevicesPerPortForStorageBus(This,aBus,aMaxDevicesPerPort)

#define ISystemProperties_GetMinPortCountForStorageBus(This,aBus,aMinPortCount)	\
    (This)->lpVtbl -> GetMinPortCountForStorageBus(This,aBus,aMinPortCount)

#define ISystemProperties_GetMaxPortCountForStorageBus(This,aBus,aMaxPortCount)	\
    (This)->lpVtbl -> GetMaxPortCountForStorageBus(This,aBus,aMaxPortCount)

#define ISystemProperties_GetMaxInstancesOfStorageBus(This,aBus,aMaxInstances)	\
    (This)->lpVtbl -> GetMaxInstancesOfStorageBus(This,aBus,aMaxInstances)

#define ISystemProperties_GetDeviceTypesForStorageBus(This,aBus,aDeviceTypes)	\
    (This)->lpVtbl -> GetDeviceTypesForStorageBus(This,aBus,aDeviceTypes)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MinGuestRAM_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMinGuestRAM);


void __RPC_STUB ISystemProperties_get_MinGuestRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MaxGuestRAM_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMaxGuestRAM);


void __RPC_STUB ISystemProperties_get_MaxGuestRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MinGuestVRAM_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMinGuestVRAM);


void __RPC_STUB ISystemProperties_get_MinGuestVRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MaxGuestVRAM_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMaxGuestVRAM);


void __RPC_STUB ISystemProperties_get_MaxGuestVRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MinGuestCPUCount_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMinGuestCPUCount);


void __RPC_STUB ISystemProperties_get_MinGuestCPUCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MaxGuestCPUCount_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMaxGuestCPUCount);


void __RPC_STUB ISystemProperties_get_MaxGuestCPUCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MaxVDISize_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG64 *aMaxVDISize);


void __RPC_STUB ISystemProperties_get_MaxVDISize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_NetworkAdapterCount_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aNetworkAdapterCount);


void __RPC_STUB ISystemProperties_get_NetworkAdapterCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_SerialPortCount_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aSerialPortCount);


void __RPC_STUB ISystemProperties_get_SerialPortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_ParallelPortCount_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aParallelPortCount);


void __RPC_STUB ISystemProperties_get_ParallelPortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MaxBootPosition_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMaxBootPosition);


void __RPC_STUB ISystemProperties_get_MaxBootPosition_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_DefaultMachineFolder_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aDefaultMachineFolder);


void __RPC_STUB ISystemProperties_get_DefaultMachineFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_DefaultMachineFolder_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aDefaultMachineFolder);


void __RPC_STUB ISystemProperties_put_DefaultMachineFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_DefaultHardDiskFolder_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aDefaultHardDiskFolder);


void __RPC_STUB ISystemProperties_get_DefaultHardDiskFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_DefaultHardDiskFolder_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aDefaultHardDiskFolder);


void __RPC_STUB ISystemProperties_put_DefaultHardDiskFolder_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_MediumFormats_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ SAFEARRAY * *aMediumFormats);


void __RPC_STUB ISystemProperties_get_MediumFormats_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_DefaultHardDiskFormat_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aDefaultHardDiskFormat);


void __RPC_STUB ISystemProperties_get_DefaultHardDiskFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_DefaultHardDiskFormat_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aDefaultHardDiskFormat);


void __RPC_STUB ISystemProperties_put_DefaultHardDiskFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_RemoteDisplayAuthLibrary_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aRemoteDisplayAuthLibrary);


void __RPC_STUB ISystemProperties_get_RemoteDisplayAuthLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_RemoteDisplayAuthLibrary_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aRemoteDisplayAuthLibrary);


void __RPC_STUB ISystemProperties_put_RemoteDisplayAuthLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_WebServiceAuthLibrary_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aWebServiceAuthLibrary);


void __RPC_STUB ISystemProperties_get_WebServiceAuthLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_WebServiceAuthLibrary_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aWebServiceAuthLibrary);


void __RPC_STUB ISystemProperties_put_WebServiceAuthLibrary_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_LogHistoryCount_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aLogHistoryCount);


void __RPC_STUB ISystemProperties_get_LogHistoryCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_LogHistoryCount_Proxy( 
    ISystemProperties * This,
    /* [in] */ ULONG aLogHistoryCount);


void __RPC_STUB ISystemProperties_put_LogHistoryCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_DefaultAudioDriver_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ AudioDriverType *aDefaultAudioDriver);


void __RPC_STUB ISystemProperties_get_DefaultAudioDriver_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE ISystemProperties_GetMaxDevicesPerPortForStorageBus_Proxy( 
    ISystemProperties * This,
    /* [in] */ StorageBus aBus,
    /* [retval][out] */ ULONG *aMaxDevicesPerPort);


void __RPC_STUB ISystemProperties_GetMaxDevicesPerPortForStorageBus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE ISystemProperties_GetMinPortCountForStorageBus_Proxy( 
    ISystemProperties * This,
    /* [in] */ StorageBus aBus,
    /* [retval][out] */ ULONG *aMinPortCount);


void __RPC_STUB ISystemProperties_GetMinPortCountForStorageBus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE ISystemProperties_GetMaxPortCountForStorageBus_Proxy( 
    ISystemProperties * This,
    /* [in] */ StorageBus aBus,
    /* [retval][out] */ ULONG *aMaxPortCount);


void __RPC_STUB ISystemProperties_GetMaxPortCountForStorageBus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE ISystemProperties_GetMaxInstancesOfStorageBus_Proxy( 
    ISystemProperties * This,
    /* [in] */ StorageBus aBus,
    /* [retval][out] */ ULONG *aMaxInstances);


void __RPC_STUB ISystemProperties_GetMaxInstancesOfStorageBus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE ISystemProperties_GetDeviceTypesForStorageBus_Proxy( 
    ISystemProperties * This,
    /* [in] */ StorageBus aBus,
    /* [retval][out] */ SAFEARRAY * *aDeviceTypes);


void __RPC_STUB ISystemProperties_GetDeviceTypesForStorageBus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISystemProperties_INTERFACE_DEFINED__ */


#ifndef __IGuestOSType_INTERFACE_DEFINED__
#define __IGuestOSType_INTERFACE_DEFINED__

/* interface IGuestOSType */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IGuestOSType;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("cfe9e64c-4430-435b-9e7c-e3d8e417bd58")
    IGuestOSType : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FamilyId( 
            /* [retval][out] */ BSTR *aFamilyId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FamilyDescription( 
            /* [retval][out] */ BSTR *aFamilyDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Is64Bit( 
            /* [retval][out] */ BOOL *aIs64Bit) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedIOAPIC( 
            /* [retval][out] */ BOOL *aRecommendedIOAPIC) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedVirtEx( 
            /* [retval][out] */ BOOL *aRecommendedVirtEx) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedRAM( 
            /* [retval][out] */ ULONG *aRecommendedRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedVRAM( 
            /* [retval][out] */ ULONG *aRecommendedVRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedHDD( 
            /* [retval][out] */ ULONG *aRecommendedHDD) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdapterType( 
            /* [retval][out] */ NetworkAdapterType *aAdapterType) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestOSTypeVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuestOSType * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuestOSType * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuestOSType * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuestOSType * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuestOSType * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuestOSType * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuestOSType * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FamilyId )( 
            IGuestOSType * This,
            /* [retval][out] */ BSTR *aFamilyId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FamilyDescription )( 
            IGuestOSType * This,
            /* [retval][out] */ BSTR *aFamilyDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IGuestOSType * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IGuestOSType * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Is64Bit )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aIs64Bit);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedIOAPIC )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedIOAPIC);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedVirtEx )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedVirtEx);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedRAM )( 
            IGuestOSType * This,
            /* [retval][out] */ ULONG *aRecommendedRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedVRAM )( 
            IGuestOSType * This,
            /* [retval][out] */ ULONG *aRecommendedVRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedHDD )( 
            IGuestOSType * This,
            /* [retval][out] */ ULONG *aRecommendedHDD);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdapterType )( 
            IGuestOSType * This,
            /* [retval][out] */ NetworkAdapterType *aAdapterType);
        
        END_INTERFACE
    } IGuestOSTypeVtbl;

    interface IGuestOSType
    {
        CONST_VTBL struct IGuestOSTypeVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IGuestOSType_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IGuestOSType_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IGuestOSType_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IGuestOSType_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IGuestOSType_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IGuestOSType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IGuestOSType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IGuestOSType_get_FamilyId(This,aFamilyId)	\
    (This)->lpVtbl -> get_FamilyId(This,aFamilyId)

#define IGuestOSType_get_FamilyDescription(This,aFamilyDescription)	\
    (This)->lpVtbl -> get_FamilyDescription(This,aFamilyDescription)

#define IGuestOSType_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IGuestOSType_get_Description(This,aDescription)	\
    (This)->lpVtbl -> get_Description(This,aDescription)

#define IGuestOSType_get_Is64Bit(This,aIs64Bit)	\
    (This)->lpVtbl -> get_Is64Bit(This,aIs64Bit)

#define IGuestOSType_get_RecommendedIOAPIC(This,aRecommendedIOAPIC)	\
    (This)->lpVtbl -> get_RecommendedIOAPIC(This,aRecommendedIOAPIC)

#define IGuestOSType_get_RecommendedVirtEx(This,aRecommendedVirtEx)	\
    (This)->lpVtbl -> get_RecommendedVirtEx(This,aRecommendedVirtEx)

#define IGuestOSType_get_RecommendedRAM(This,aRecommendedRAM)	\
    (This)->lpVtbl -> get_RecommendedRAM(This,aRecommendedRAM)

#define IGuestOSType_get_RecommendedVRAM(This,aRecommendedVRAM)	\
    (This)->lpVtbl -> get_RecommendedVRAM(This,aRecommendedVRAM)

#define IGuestOSType_get_RecommendedHDD(This,aRecommendedHDD)	\
    (This)->lpVtbl -> get_RecommendedHDD(This,aRecommendedHDD)

#define IGuestOSType_get_AdapterType(This,aAdapterType)	\
    (This)->lpVtbl -> get_AdapterType(This,aAdapterType)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_FamilyId_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BSTR *aFamilyId);


void __RPC_STUB IGuestOSType_get_FamilyId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_FamilyDescription_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BSTR *aFamilyDescription);


void __RPC_STUB IGuestOSType_get_FamilyDescription_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_Id_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IGuestOSType_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_Description_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB IGuestOSType_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_Is64Bit_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aIs64Bit);


void __RPC_STUB IGuestOSType_get_Is64Bit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedIOAPIC_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedIOAPIC);


void __RPC_STUB IGuestOSType_get_RecommendedIOAPIC_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedVirtEx_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedVirtEx);


void __RPC_STUB IGuestOSType_get_RecommendedVirtEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedRAM_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ ULONG *aRecommendedRAM);


void __RPC_STUB IGuestOSType_get_RecommendedRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedVRAM_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ ULONG *aRecommendedVRAM);


void __RPC_STUB IGuestOSType_get_RecommendedVRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedHDD_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ ULONG *aRecommendedHDD);


void __RPC_STUB IGuestOSType_get_RecommendedHDD_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_AdapterType_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ NetworkAdapterType *aAdapterType);


void __RPC_STUB IGuestOSType_get_AdapterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IGuestOSType_INTERFACE_DEFINED__ */


#ifndef __IGuest_INTERFACE_DEFINED__
#define __IGuest_INTERFACE_DEFINED__

/* interface IGuest */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IGuest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d8556fca-81bc-12af-fca3-365528fa38ca")
    IGuest : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OSTypeId( 
            /* [retval][out] */ BSTR *aOSTypeId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdditionsActive( 
            /* [retval][out] */ BOOL *aAdditionsActive) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdditionsVersion( 
            /* [retval][out] */ BSTR *aAdditionsVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SupportsSeamless( 
            /* [retval][out] */ BOOL *aSupportsSeamless) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SupportsGraphics( 
            /* [retval][out] */ BOOL *aSupportsGraphics) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MemoryBalloonSize( 
            /* [retval][out] */ ULONG *aMemoryBalloonSize) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MemoryBalloonSize( 
            /* [in] */ ULONG aMemoryBalloonSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StatisticsUpdateInterval( 
            /* [retval][out] */ ULONG *aStatisticsUpdateInterval) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_StatisticsUpdateInterval( 
            /* [in] */ ULONG aStatisticsUpdateInterval) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCredentials( 
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ BSTR aDomain,
            /* [in] */ BOOL aAllowInteractiveLogon) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetStatistic( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ GuestStatisticType aStatistic,
            /* [retval][out] */ ULONG *aStatVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuest * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuest * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuest * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuest * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuest * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OSTypeId )( 
            IGuest * This,
            /* [retval][out] */ BSTR *aOSTypeId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdditionsActive )( 
            IGuest * This,
            /* [retval][out] */ BOOL *aAdditionsActive);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdditionsVersion )( 
            IGuest * This,
            /* [retval][out] */ BSTR *aAdditionsVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportsSeamless )( 
            IGuest * This,
            /* [retval][out] */ BOOL *aSupportsSeamless);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportsGraphics )( 
            IGuest * This,
            /* [retval][out] */ BOOL *aSupportsGraphics);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MemoryBalloonSize )( 
            IGuest * This,
            /* [retval][out] */ ULONG *aMemoryBalloonSize);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MemoryBalloonSize )( 
            IGuest * This,
            /* [in] */ ULONG aMemoryBalloonSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StatisticsUpdateInterval )( 
            IGuest * This,
            /* [retval][out] */ ULONG *aStatisticsUpdateInterval);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_StatisticsUpdateInterval )( 
            IGuest * This,
            /* [in] */ ULONG aStatisticsUpdateInterval);
        
        HRESULT ( STDMETHODCALLTYPE *SetCredentials )( 
            IGuest * This,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ BSTR aDomain,
            /* [in] */ BOOL aAllowInteractiveLogon);
        
        HRESULT ( STDMETHODCALLTYPE *GetStatistic )( 
            IGuest * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ GuestStatisticType aStatistic,
            /* [retval][out] */ ULONG *aStatVal);
        
        END_INTERFACE
    } IGuestVtbl;

    interface IGuest
    {
        CONST_VTBL struct IGuestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IGuest_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IGuest_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IGuest_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IGuest_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IGuest_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IGuest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IGuest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IGuest_get_OSTypeId(This,aOSTypeId)	\
    (This)->lpVtbl -> get_OSTypeId(This,aOSTypeId)

#define IGuest_get_AdditionsActive(This,aAdditionsActive)	\
    (This)->lpVtbl -> get_AdditionsActive(This,aAdditionsActive)

#define IGuest_get_AdditionsVersion(This,aAdditionsVersion)	\
    (This)->lpVtbl -> get_AdditionsVersion(This,aAdditionsVersion)

#define IGuest_get_SupportsSeamless(This,aSupportsSeamless)	\
    (This)->lpVtbl -> get_SupportsSeamless(This,aSupportsSeamless)

#define IGuest_get_SupportsGraphics(This,aSupportsGraphics)	\
    (This)->lpVtbl -> get_SupportsGraphics(This,aSupportsGraphics)

#define IGuest_get_MemoryBalloonSize(This,aMemoryBalloonSize)	\
    (This)->lpVtbl -> get_MemoryBalloonSize(This,aMemoryBalloonSize)

#define IGuest_put_MemoryBalloonSize(This,aMemoryBalloonSize)	\
    (This)->lpVtbl -> put_MemoryBalloonSize(This,aMemoryBalloonSize)

#define IGuest_get_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)	\
    (This)->lpVtbl -> get_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)

#define IGuest_put_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)	\
    (This)->lpVtbl -> put_StatisticsUpdateInterval(This,aStatisticsUpdateInterval)

#define IGuest_SetCredentials(This,aUserName,aPassword,aDomain,aAllowInteractiveLogon)	\
    (This)->lpVtbl -> SetCredentials(This,aUserName,aPassword,aDomain,aAllowInteractiveLogon)

#define IGuest_GetStatistic(This,aCpuId,aStatistic,aStatVal)	\
    (This)->lpVtbl -> GetStatistic(This,aCpuId,aStatistic,aStatVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_OSTypeId_Proxy( 
    IGuest * This,
    /* [retval][out] */ BSTR *aOSTypeId);


void __RPC_STUB IGuest_get_OSTypeId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_AdditionsActive_Proxy( 
    IGuest * This,
    /* [retval][out] */ BOOL *aAdditionsActive);


void __RPC_STUB IGuest_get_AdditionsActive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_AdditionsVersion_Proxy( 
    IGuest * This,
    /* [retval][out] */ BSTR *aAdditionsVersion);


void __RPC_STUB IGuest_get_AdditionsVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_SupportsSeamless_Proxy( 
    IGuest * This,
    /* [retval][out] */ BOOL *aSupportsSeamless);


void __RPC_STUB IGuest_get_SupportsSeamless_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_SupportsGraphics_Proxy( 
    IGuest * This,
    /* [retval][out] */ BOOL *aSupportsGraphics);


void __RPC_STUB IGuest_get_SupportsGraphics_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_MemoryBalloonSize_Proxy( 
    IGuest * This,
    /* [retval][out] */ ULONG *aMemoryBalloonSize);


void __RPC_STUB IGuest_get_MemoryBalloonSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IGuest_put_MemoryBalloonSize_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aMemoryBalloonSize);


void __RPC_STUB IGuest_put_MemoryBalloonSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuest_get_StatisticsUpdateInterval_Proxy( 
    IGuest * This,
    /* [retval][out] */ ULONG *aStatisticsUpdateInterval);


void __RPC_STUB IGuest_get_StatisticsUpdateInterval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IGuest_put_StatisticsUpdateInterval_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aStatisticsUpdateInterval);


void __RPC_STUB IGuest_put_StatisticsUpdateInterval_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IGuest_SetCredentials_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [in] */ BSTR aDomain,
    /* [in] */ BOOL aAllowInteractiveLogon);


void __RPC_STUB IGuest_SetCredentials_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IGuest_GetStatistic_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ GuestStatisticType aStatistic,
    /* [retval][out] */ ULONG *aStatVal);


void __RPC_STUB IGuest_GetStatistic_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IGuest_INTERFACE_DEFINED__ */


#ifndef __IProgress_INTERFACE_DEFINED__
#define __IProgress_INTERFACE_DEFINED__

/* interface IProgress */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IProgress;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("856aa038-853f-42e2-acf7-6e7b02dbe294")
    IProgress : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Initiator( 
            /* [retval][out] */ IUnknown **aInitiator) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Cancelable( 
            /* [retval][out] */ BOOL *aCancelable) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Percent( 
            /* [retval][out] */ ULONG *aPercent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TimeRemaining( 
            /* [retval][out] */ LONG *aTimeRemaining) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ BOOL *aCompleted) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Canceled( 
            /* [retval][out] */ BOOL *aCanceled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ResultCode( 
            /* [retval][out] */ LONG *aResultCode) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ErrorInfo( 
            /* [retval][out] */ IVirtualBoxErrorInfo **aErrorInfo) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OperationCount( 
            /* [retval][out] */ ULONG *aOperationCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Operation( 
            /* [retval][out] */ ULONG *aOperation) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OperationDescription( 
            /* [retval][out] */ BSTR *aOperationDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OperationPercent( 
            /* [retval][out] */ ULONG *aOperationPercent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Timeout( 
            /* [retval][out] */ ULONG *aTimeout) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Timeout( 
            /* [in] */ ULONG aTimeout) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCurrentOperationProgress( 
            /* [in] */ ULONG aPercent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetNextOperation( 
            /* [in] */ BSTR aNextOperationDescription,
            /* [in] */ ULONG aNextOperationsWeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE WaitForCompletion( 
            /* [in] */ LONG aTimeout) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE WaitForOperationCompletion( 
            /* [in] */ ULONG aOperation,
            /* [in] */ LONG aTimeout) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Cancel( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IProgressVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IProgress * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IProgress * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IProgress * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IProgress * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IProgress * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IProgress * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IProgress * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IProgress * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IProgress * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Initiator )( 
            IProgress * This,
            /* [retval][out] */ IUnknown **aInitiator);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Cancelable )( 
            IProgress * This,
            /* [retval][out] */ BOOL *aCancelable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Percent )( 
            IProgress * This,
            /* [retval][out] */ ULONG *aPercent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TimeRemaining )( 
            IProgress * This,
            /* [retval][out] */ LONG *aTimeRemaining);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            IProgress * This,
            /* [retval][out] */ BOOL *aCompleted);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Canceled )( 
            IProgress * This,
            /* [retval][out] */ BOOL *aCanceled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ResultCode )( 
            IProgress * This,
            /* [retval][out] */ LONG *aResultCode);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ErrorInfo )( 
            IProgress * This,
            /* [retval][out] */ IVirtualBoxErrorInfo **aErrorInfo);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OperationCount )( 
            IProgress * This,
            /* [retval][out] */ ULONG *aOperationCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Operation )( 
            IProgress * This,
            /* [retval][out] */ ULONG *aOperation);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OperationDescription )( 
            IProgress * This,
            /* [retval][out] */ BSTR *aOperationDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OperationPercent )( 
            IProgress * This,
            /* [retval][out] */ ULONG *aOperationPercent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Timeout )( 
            IProgress * This,
            /* [retval][out] */ ULONG *aTimeout);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Timeout )( 
            IProgress * This,
            /* [in] */ ULONG aTimeout);
        
        HRESULT ( STDMETHODCALLTYPE *SetCurrentOperationProgress )( 
            IProgress * This,
            /* [in] */ ULONG aPercent);
        
        HRESULT ( STDMETHODCALLTYPE *SetNextOperation )( 
            IProgress * This,
            /* [in] */ BSTR aNextOperationDescription,
            /* [in] */ ULONG aNextOperationsWeight);
        
        HRESULT ( STDMETHODCALLTYPE *WaitForCompletion )( 
            IProgress * This,
            /* [in] */ LONG aTimeout);
        
        HRESULT ( STDMETHODCALLTYPE *WaitForOperationCompletion )( 
            IProgress * This,
            /* [in] */ ULONG aOperation,
            /* [in] */ LONG aTimeout);
        
        HRESULT ( STDMETHODCALLTYPE *Cancel )( 
            IProgress * This);
        
        END_INTERFACE
    } IProgressVtbl;

    interface IProgress
    {
        CONST_VTBL struct IProgressVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IProgress_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IProgress_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IProgress_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IProgress_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IProgress_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IProgress_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IProgress_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IProgress_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IProgress_get_Description(This,aDescription)	\
    (This)->lpVtbl -> get_Description(This,aDescription)

#define IProgress_get_Initiator(This,aInitiator)	\
    (This)->lpVtbl -> get_Initiator(This,aInitiator)

#define IProgress_get_Cancelable(This,aCancelable)	\
    (This)->lpVtbl -> get_Cancelable(This,aCancelable)

#define IProgress_get_Percent(This,aPercent)	\
    (This)->lpVtbl -> get_Percent(This,aPercent)

#define IProgress_get_TimeRemaining(This,aTimeRemaining)	\
    (This)->lpVtbl -> get_TimeRemaining(This,aTimeRemaining)

#define IProgress_get_Completed(This,aCompleted)	\
    (This)->lpVtbl -> get_Completed(This,aCompleted)

#define IProgress_get_Canceled(This,aCanceled)	\
    (This)->lpVtbl -> get_Canceled(This,aCanceled)

#define IProgress_get_ResultCode(This,aResultCode)	\
    (This)->lpVtbl -> get_ResultCode(This,aResultCode)

#define IProgress_get_ErrorInfo(This,aErrorInfo)	\
    (This)->lpVtbl -> get_ErrorInfo(This,aErrorInfo)

#define IProgress_get_OperationCount(This,aOperationCount)	\
    (This)->lpVtbl -> get_OperationCount(This,aOperationCount)

#define IProgress_get_Operation(This,aOperation)	\
    (This)->lpVtbl -> get_Operation(This,aOperation)

#define IProgress_get_OperationDescription(This,aOperationDescription)	\
    (This)->lpVtbl -> get_OperationDescription(This,aOperationDescription)

#define IProgress_get_OperationPercent(This,aOperationPercent)	\
    (This)->lpVtbl -> get_OperationPercent(This,aOperationPercent)

#define IProgress_get_Timeout(This,aTimeout)	\
    (This)->lpVtbl -> get_Timeout(This,aTimeout)

#define IProgress_put_Timeout(This,aTimeout)	\
    (This)->lpVtbl -> put_Timeout(This,aTimeout)

#define IProgress_SetCurrentOperationProgress(This,aPercent)	\
    (This)->lpVtbl -> SetCurrentOperationProgress(This,aPercent)

#define IProgress_SetNextOperation(This,aNextOperationDescription,aNextOperationsWeight)	\
    (This)->lpVtbl -> SetNextOperation(This,aNextOperationDescription,aNextOperationsWeight)

#define IProgress_WaitForCompletion(This,aTimeout)	\
    (This)->lpVtbl -> WaitForCompletion(This,aTimeout)

#define IProgress_WaitForOperationCompletion(This,aOperation,aTimeout)	\
    (This)->lpVtbl -> WaitForOperationCompletion(This,aOperation,aTimeout)

#define IProgress_Cancel(This)	\
    (This)->lpVtbl -> Cancel(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Id_Proxy( 
    IProgress * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IProgress_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Description_Proxy( 
    IProgress * This,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB IProgress_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Initiator_Proxy( 
    IProgress * This,
    /* [retval][out] */ IUnknown **aInitiator);


void __RPC_STUB IProgress_get_Initiator_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Cancelable_Proxy( 
    IProgress * This,
    /* [retval][out] */ BOOL *aCancelable);


void __RPC_STUB IProgress_get_Cancelable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Percent_Proxy( 
    IProgress * This,
    /* [retval][out] */ ULONG *aPercent);


void __RPC_STUB IProgress_get_Percent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_TimeRemaining_Proxy( 
    IProgress * This,
    /* [retval][out] */ LONG *aTimeRemaining);


void __RPC_STUB IProgress_get_TimeRemaining_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Completed_Proxy( 
    IProgress * This,
    /* [retval][out] */ BOOL *aCompleted);


void __RPC_STUB IProgress_get_Completed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Canceled_Proxy( 
    IProgress * This,
    /* [retval][out] */ BOOL *aCanceled);


void __RPC_STUB IProgress_get_Canceled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_ResultCode_Proxy( 
    IProgress * This,
    /* [retval][out] */ LONG *aResultCode);


void __RPC_STUB IProgress_get_ResultCode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_ErrorInfo_Proxy( 
    IProgress * This,
    /* [retval][out] */ IVirtualBoxErrorInfo **aErrorInfo);


void __RPC_STUB IProgress_get_ErrorInfo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_OperationCount_Proxy( 
    IProgress * This,
    /* [retval][out] */ ULONG *aOperationCount);


void __RPC_STUB IProgress_get_OperationCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Operation_Proxy( 
    IProgress * This,
    /* [retval][out] */ ULONG *aOperation);


void __RPC_STUB IProgress_get_Operation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_OperationDescription_Proxy( 
    IProgress * This,
    /* [retval][out] */ BSTR *aOperationDescription);


void __RPC_STUB IProgress_get_OperationDescription_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_OperationPercent_Proxy( 
    IProgress * This,
    /* [retval][out] */ ULONG *aOperationPercent);


void __RPC_STUB IProgress_get_OperationPercent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IProgress_get_Timeout_Proxy( 
    IProgress * This,
    /* [retval][out] */ ULONG *aTimeout);


void __RPC_STUB IProgress_get_Timeout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IProgress_put_Timeout_Proxy( 
    IProgress * This,
    /* [in] */ ULONG aTimeout);


void __RPC_STUB IProgress_put_Timeout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IProgress_SetCurrentOperationProgress_Proxy( 
    IProgress * This,
    /* [in] */ ULONG aPercent);


void __RPC_STUB IProgress_SetCurrentOperationProgress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IProgress_SetNextOperation_Proxy( 
    IProgress * This,
    /* [in] */ BSTR aNextOperationDescription,
    /* [in] */ ULONG aNextOperationsWeight);


void __RPC_STUB IProgress_SetNextOperation_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IProgress_WaitForCompletion_Proxy( 
    IProgress * This,
    /* [in] */ LONG aTimeout);


void __RPC_STUB IProgress_WaitForCompletion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IProgress_WaitForOperationCompletion_Proxy( 
    IProgress * This,
    /* [in] */ ULONG aOperation,
    /* [in] */ LONG aTimeout);


void __RPC_STUB IProgress_WaitForOperationCompletion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IProgress_Cancel_Proxy( 
    IProgress * This);


void __RPC_STUB IProgress_Cancel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IProgress_INTERFACE_DEFINED__ */


#ifndef __ISnapshot_INTERFACE_DEFINED__
#define __ISnapshot_INTERFACE_DEFINED__

/* interface ISnapshot */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ISnapshot;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1a2d0551-58a4-4107-857e-ef414fc42ffc")
    ISnapshot : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TimeStamp( 
            /* [retval][out] */ LONG64 *aTimeStamp) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Online( 
            /* [retval][out] */ BOOL *aOnline) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Machine( 
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Parent( 
            /* [retval][out] */ ISnapshot **aParent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Children( 
            /* [retval][out] */ SAFEARRAY * *aChildren) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISnapshotVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISnapshot * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISnapshot * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISnapshot * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISnapshot * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISnapshot * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISnapshot * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISnapshot * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            ISnapshot * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            ISnapshot * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            ISnapshot * This,
            /* [in] */ BSTR aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            ISnapshot * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            ISnapshot * This,
            /* [in] */ BSTR aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TimeStamp )( 
            ISnapshot * This,
            /* [retval][out] */ LONG64 *aTimeStamp);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Online )( 
            ISnapshot * This,
            /* [retval][out] */ BOOL *aOnline);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Machine )( 
            ISnapshot * This,
            /* [retval][out] */ IMachine **aMachine);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Parent )( 
            ISnapshot * This,
            /* [retval][out] */ ISnapshot **aParent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Children )( 
            ISnapshot * This,
            /* [retval][out] */ SAFEARRAY * *aChildren);
        
        END_INTERFACE
    } ISnapshotVtbl;

    interface ISnapshot
    {
        CONST_VTBL struct ISnapshotVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISnapshot_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISnapshot_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISnapshot_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISnapshot_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISnapshot_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISnapshot_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISnapshot_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISnapshot_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define ISnapshot_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define ISnapshot_put_Name(This,aName)	\
    (This)->lpVtbl -> put_Name(This,aName)

#define ISnapshot_get_Description(This,aDescription)	\
    (This)->lpVtbl -> get_Description(This,aDescription)

#define ISnapshot_put_Description(This,aDescription)	\
    (This)->lpVtbl -> put_Description(This,aDescription)

#define ISnapshot_get_TimeStamp(This,aTimeStamp)	\
    (This)->lpVtbl -> get_TimeStamp(This,aTimeStamp)

#define ISnapshot_get_Online(This,aOnline)	\
    (This)->lpVtbl -> get_Online(This,aOnline)

#define ISnapshot_get_Machine(This,aMachine)	\
    (This)->lpVtbl -> get_Machine(This,aMachine)

#define ISnapshot_get_Parent(This,aParent)	\
    (This)->lpVtbl -> get_Parent(This,aParent)

#define ISnapshot_get_Children(This,aChildren)	\
    (This)->lpVtbl -> get_Children(This,aChildren)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Id_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB ISnapshot_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Name_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB ISnapshot_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISnapshot_put_Name_Proxy( 
    ISnapshot * This,
    /* [in] */ BSTR aName);


void __RPC_STUB ISnapshot_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Description_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB ISnapshot_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISnapshot_put_Description_Proxy( 
    ISnapshot * This,
    /* [in] */ BSTR aDescription);


void __RPC_STUB ISnapshot_put_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_TimeStamp_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ LONG64 *aTimeStamp);


void __RPC_STUB ISnapshot_get_TimeStamp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Online_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ BOOL *aOnline);


void __RPC_STUB ISnapshot_get_Online_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Machine_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB ISnapshot_get_Machine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Parent_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ ISnapshot **aParent);


void __RPC_STUB ISnapshot_get_Parent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshot_get_Children_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ SAFEARRAY * *aChildren);


void __RPC_STUB ISnapshot_get_Children_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISnapshot_INTERFACE_DEFINED__ */


#ifndef __IMediumAttachment_INTERFACE_DEFINED__
#define __IMediumAttachment_INTERFACE_DEFINED__

/* interface IMediumAttachment */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IMediumAttachment;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e58eb3eb-8627-428b-bdf8-34487c848de5")
    IMediumAttachment : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Medium( 
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Controller( 
            /* [retval][out] */ BSTR *aController) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Port( 
            /* [retval][out] */ LONG *aPort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Device( 
            /* [retval][out] */ LONG *aDevice) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ DeviceType *aType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Passthrough( 
            /* [retval][out] */ BOOL *aPassthrough) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMediumAttachmentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMediumAttachment * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMediumAttachment * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMediumAttachment * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMediumAttachment * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMediumAttachment * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMediumAttachment * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMediumAttachment * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Medium )( 
            IMediumAttachment * This,
            /* [retval][out] */ IMedium **aMedium);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Controller )( 
            IMediumAttachment * This,
            /* [retval][out] */ BSTR *aController);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IMediumAttachment * This,
            /* [retval][out] */ LONG *aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Device )( 
            IMediumAttachment * This,
            /* [retval][out] */ LONG *aDevice);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IMediumAttachment * This,
            /* [retval][out] */ DeviceType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Passthrough )( 
            IMediumAttachment * This,
            /* [retval][out] */ BOOL *aPassthrough);
        
        END_INTERFACE
    } IMediumAttachmentVtbl;

    interface IMediumAttachment
    {
        CONST_VTBL struct IMediumAttachmentVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMediumAttachment_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMediumAttachment_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMediumAttachment_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMediumAttachment_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMediumAttachment_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMediumAttachment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMediumAttachment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMediumAttachment_get_Medium(This,aMedium)	\
    (This)->lpVtbl -> get_Medium(This,aMedium)

#define IMediumAttachment_get_Controller(This,aController)	\
    (This)->lpVtbl -> get_Controller(This,aController)

#define IMediumAttachment_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IMediumAttachment_get_Device(This,aDevice)	\
    (This)->lpVtbl -> get_Device(This,aDevice)

#define IMediumAttachment_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IMediumAttachment_get_Passthrough(This,aPassthrough)	\
    (This)->lpVtbl -> get_Passthrough(This,aPassthrough)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_Medium_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ IMedium **aMedium);


void __RPC_STUB IMediumAttachment_get_Medium_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_Controller_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ BSTR *aController);


void __RPC_STUB IMediumAttachment_get_Controller_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_Port_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ LONG *aPort);


void __RPC_STUB IMediumAttachment_get_Port_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_Device_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ LONG *aDevice);


void __RPC_STUB IMediumAttachment_get_Device_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_Type_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ DeviceType *aType);


void __RPC_STUB IMediumAttachment_get_Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_Passthrough_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ BOOL *aPassthrough);


void __RPC_STUB IMediumAttachment_get_Passthrough_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMediumAttachment_INTERFACE_DEFINED__ */


#ifndef __IMedium_INTERFACE_DEFINED__
#define __IMedium_INTERFACE_DEFINED__

/* interface IMedium */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IMedium;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("aa8167ba-df72-4738-b740-9b84377ba9f1")
    IMedium : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ BSTR aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ MediumState *aState) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Location( 
            /* [retval][out] */ BSTR *aLocation) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Location( 
            /* [in] */ BSTR aLocation) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DeviceType( 
            /* [retval][out] */ DeviceType *aDeviceType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostDrive( 
            /* [retval][out] */ BOOL *aHostDrive) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ ULONG64 *aSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Format( 
            /* [retval][out] */ BSTR *aFormat) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ MediumType *aType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Type( 
            /* [in] */ MediumType aType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Parent( 
            /* [retval][out] */ IMedium **aParent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Children( 
            /* [retval][out] */ SAFEARRAY * *aChildren) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Base( 
            /* [retval][out] */ IMedium **aBase) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ReadOnly( 
            /* [retval][out] */ BOOL *aReadOnly) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogicalSize( 
            /* [retval][out] */ ULONG64 *aLogicalSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AutoReset( 
            /* [retval][out] */ BOOL *aAutoReset) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AutoReset( 
            /* [in] */ BOOL aAutoReset) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LastAccessError( 
            /* [retval][out] */ BSTR *aLastAccessError) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MachineIds( 
            /* [retval][out] */ SAFEARRAY * *aMachineIds) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RefreshState( 
            /* [retval][out] */ MediumState *aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetSnapshotIds( 
            /* [in] */ BSTR aMachineId,
            /* [retval][out] */ SAFEARRAY * *aSnapshotIds) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE LockRead( 
            /* [retval][out] */ MediumState *aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnlockRead( 
            /* [retval][out] */ MediumState *aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE LockWrite( 
            /* [retval][out] */ MediumState *aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnlockWrite( 
            /* [retval][out] */ MediumState *aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProperty( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetProperty( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProperties( 
            /* [in] */ BSTR aNames,
            /* [out] */ SAFEARRAY * *aReturnNames,
            /* [retval][out] */ SAFEARRAY * *aReturnValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetProperties( 
            /* [out][in] */ SAFEARRAY * *aNames,
            /* [out][in] */ SAFEARRAY * *aValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateBaseStorage( 
            /* [in] */ ULONG64 aLogicalSize,
            /* [in] */ MediumVariant aVariant,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteStorage( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateDiffStorage( 
            /* [in] */ IMedium *aTarget,
            /* [in] */ MediumVariant aVariant,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MergeTo( 
            /* [in] */ BSTR aTargetId,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CloneTo( 
            /* [in] */ IMedium *aTarget,
            /* [in] */ MediumVariant aVariant,
            /* [in] */ IMedium *aParent,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Compact( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Resize( 
            /* [in] */ ULONG64 aLogicalSize,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Reset( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMediumVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMedium * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMedium * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMedium * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMedium * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMedium * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMedium * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMedium * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Description )( 
            IMedium * This,
            /* [in] */ BSTR aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IMedium * This,
            /* [retval][out] */ MediumState *aState);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Location )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aLocation);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Location )( 
            IMedium * This,
            /* [in] */ BSTR aLocation);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DeviceType )( 
            IMedium * This,
            /* [retval][out] */ DeviceType *aDeviceType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostDrive )( 
            IMedium * This,
            /* [retval][out] */ BOOL *aHostDrive);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            IMedium * This,
            /* [retval][out] */ ULONG64 *aSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Format )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aFormat);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IMedium * This,
            /* [retval][out] */ MediumType *aType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Type )( 
            IMedium * This,
            /* [in] */ MediumType aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Parent )( 
            IMedium * This,
            /* [retval][out] */ IMedium **aParent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Children )( 
            IMedium * This,
            /* [retval][out] */ SAFEARRAY * *aChildren);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Base )( 
            IMedium * This,
            /* [retval][out] */ IMedium **aBase);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ReadOnly )( 
            IMedium * This,
            /* [retval][out] */ BOOL *aReadOnly);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogicalSize )( 
            IMedium * This,
            /* [retval][out] */ ULONG64 *aLogicalSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AutoReset )( 
            IMedium * This,
            /* [retval][out] */ BOOL *aAutoReset);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AutoReset )( 
            IMedium * This,
            /* [in] */ BOOL aAutoReset);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastAccessError )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aLastAccessError);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineIds )( 
            IMedium * This,
            /* [retval][out] */ SAFEARRAY * *aMachineIds);
        
        HRESULT ( STDMETHODCALLTYPE *RefreshState )( 
            IMedium * This,
            /* [retval][out] */ MediumState *aState);
        
        HRESULT ( STDMETHODCALLTYPE *GetSnapshotIds )( 
            IMedium * This,
            /* [in] */ BSTR aMachineId,
            /* [retval][out] */ SAFEARRAY * *aSnapshotIds);
        
        HRESULT ( STDMETHODCALLTYPE *LockRead )( 
            IMedium * This,
            /* [retval][out] */ MediumState *aState);
        
        HRESULT ( STDMETHODCALLTYPE *UnlockRead )( 
            IMedium * This,
            /* [retval][out] */ MediumState *aState);
        
        HRESULT ( STDMETHODCALLTYPE *LockWrite )( 
            IMedium * This,
            /* [retval][out] */ MediumState *aState);
        
        HRESULT ( STDMETHODCALLTYPE *UnlockWrite )( 
            IMedium * This,
            /* [retval][out] */ MediumState *aState);
        
        HRESULT ( STDMETHODCALLTYPE *Close )( 
            IMedium * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetProperty )( 
            IMedium * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ BSTR *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetProperty )( 
            IMedium * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetProperties )( 
            IMedium * This,
            /* [in] */ BSTR aNames,
            /* [out] */ SAFEARRAY * *aReturnNames,
            /* [retval][out] */ SAFEARRAY * *aReturnValues);
        
        HRESULT ( STDMETHODCALLTYPE *SetProperties )( 
            IMedium * This,
            /* [out][in] */ SAFEARRAY * *aNames,
            /* [out][in] */ SAFEARRAY * *aValues);
        
        HRESULT ( STDMETHODCALLTYPE *CreateBaseStorage )( 
            IMedium * This,
            /* [in] */ ULONG64 aLogicalSize,
            /* [in] */ MediumVariant aVariant,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteStorage )( 
            IMedium * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CreateDiffStorage )( 
            IMedium * This,
            /* [in] */ IMedium *aTarget,
            /* [in] */ MediumVariant aVariant,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *MergeTo )( 
            IMedium * This,
            /* [in] */ BSTR aTargetId,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CloneTo )( 
            IMedium * This,
            /* [in] */ IMedium *aTarget,
            /* [in] */ MediumVariant aVariant,
            /* [in] */ IMedium *aParent,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Compact )( 
            IMedium * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Resize )( 
            IMedium * This,
            /* [in] */ ULONG64 aLogicalSize,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Reset )( 
            IMedium * This,
            /* [retval][out] */ IProgress **aProgress);
        
        END_INTERFACE
    } IMediumVtbl;

    interface IMedium
    {
        CONST_VTBL struct IMediumVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMedium_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMedium_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMedium_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMedium_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMedium_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMedium_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMedium_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMedium_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IMedium_get_Description(This,aDescription)	\
    (This)->lpVtbl -> get_Description(This,aDescription)

#define IMedium_put_Description(This,aDescription)	\
    (This)->lpVtbl -> put_Description(This,aDescription)

#define IMedium_get_State(This,aState)	\
    (This)->lpVtbl -> get_State(This,aState)

#define IMedium_get_Location(This,aLocation)	\
    (This)->lpVtbl -> get_Location(This,aLocation)

#define IMedium_put_Location(This,aLocation)	\
    (This)->lpVtbl -> put_Location(This,aLocation)

#define IMedium_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IMedium_get_DeviceType(This,aDeviceType)	\
    (This)->lpVtbl -> get_DeviceType(This,aDeviceType)

#define IMedium_get_HostDrive(This,aHostDrive)	\
    (This)->lpVtbl -> get_HostDrive(This,aHostDrive)

#define IMedium_get_Size(This,aSize)	\
    (This)->lpVtbl -> get_Size(This,aSize)

#define IMedium_get_Format(This,aFormat)	\
    (This)->lpVtbl -> get_Format(This,aFormat)

#define IMedium_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IMedium_put_Type(This,aType)	\
    (This)->lpVtbl -> put_Type(This,aType)

#define IMedium_get_Parent(This,aParent)	\
    (This)->lpVtbl -> get_Parent(This,aParent)

#define IMedium_get_Children(This,aChildren)	\
    (This)->lpVtbl -> get_Children(This,aChildren)

#define IMedium_get_Base(This,aBase)	\
    (This)->lpVtbl -> get_Base(This,aBase)

#define IMedium_get_ReadOnly(This,aReadOnly)	\
    (This)->lpVtbl -> get_ReadOnly(This,aReadOnly)

#define IMedium_get_LogicalSize(This,aLogicalSize)	\
    (This)->lpVtbl -> get_LogicalSize(This,aLogicalSize)

#define IMedium_get_AutoReset(This,aAutoReset)	\
    (This)->lpVtbl -> get_AutoReset(This,aAutoReset)

#define IMedium_put_AutoReset(This,aAutoReset)	\
    (This)->lpVtbl -> put_AutoReset(This,aAutoReset)

#define IMedium_get_LastAccessError(This,aLastAccessError)	\
    (This)->lpVtbl -> get_LastAccessError(This,aLastAccessError)

#define IMedium_get_MachineIds(This,aMachineIds)	\
    (This)->lpVtbl -> get_MachineIds(This,aMachineIds)

#define IMedium_RefreshState(This,aState)	\
    (This)->lpVtbl -> RefreshState(This,aState)

#define IMedium_GetSnapshotIds(This,aMachineId,aSnapshotIds)	\
    (This)->lpVtbl -> GetSnapshotIds(This,aMachineId,aSnapshotIds)

#define IMedium_LockRead(This,aState)	\
    (This)->lpVtbl -> LockRead(This,aState)

#define IMedium_UnlockRead(This,aState)	\
    (This)->lpVtbl -> UnlockRead(This,aState)

#define IMedium_LockWrite(This,aState)	\
    (This)->lpVtbl -> LockWrite(This,aState)

#define IMedium_UnlockWrite(This,aState)	\
    (This)->lpVtbl -> UnlockWrite(This,aState)

#define IMedium_Close(This)	\
    (This)->lpVtbl -> Close(This)

#define IMedium_GetProperty(This,aName,aValue)	\
    (This)->lpVtbl -> GetProperty(This,aName,aValue)

#define IMedium_SetProperty(This,aName,aValue)	\
    (This)->lpVtbl -> SetProperty(This,aName,aValue)

#define IMedium_GetProperties(This,aNames,aReturnNames,aReturnValues)	\
    (This)->lpVtbl -> GetProperties(This,aNames,aReturnNames,aReturnValues)

#define IMedium_SetProperties(This,aNames,aValues)	\
    (This)->lpVtbl -> SetProperties(This,aNames,aValues)

#define IMedium_CreateBaseStorage(This,aLogicalSize,aVariant,aProgress)	\
    (This)->lpVtbl -> CreateBaseStorage(This,aLogicalSize,aVariant,aProgress)

#define IMedium_DeleteStorage(This,aProgress)	\
    (This)->lpVtbl -> DeleteStorage(This,aProgress)

#define IMedium_CreateDiffStorage(This,aTarget,aVariant,aProgress)	\
    (This)->lpVtbl -> CreateDiffStorage(This,aTarget,aVariant,aProgress)

#define IMedium_MergeTo(This,aTargetId,aProgress)	\
    (This)->lpVtbl -> MergeTo(This,aTargetId,aProgress)

#define IMedium_CloneTo(This,aTarget,aVariant,aParent,aProgress)	\
    (This)->lpVtbl -> CloneTo(This,aTarget,aVariant,aParent,aProgress)

#define IMedium_Compact(This,aProgress)	\
    (This)->lpVtbl -> Compact(This,aProgress)

#define IMedium_Resize(This,aLogicalSize,aProgress)	\
    (This)->lpVtbl -> Resize(This,aLogicalSize,aProgress)

#define IMedium_Reset(This,aProgress)	\
    (This)->lpVtbl -> Reset(This,aProgress)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Id_Proxy( 
    IMedium * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IMedium_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Description_Proxy( 
    IMedium * This,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB IMedium_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMedium_put_Description_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aDescription);


void __RPC_STUB IMedium_put_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_State_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumState *aState);


void __RPC_STUB IMedium_get_State_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Location_Proxy( 
    IMedium * This,
    /* [retval][out] */ BSTR *aLocation);


void __RPC_STUB IMedium_get_Location_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMedium_put_Location_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aLocation);


void __RPC_STUB IMedium_put_Location_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Name_Proxy( 
    IMedium * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB IMedium_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_DeviceType_Proxy( 
    IMedium * This,
    /* [retval][out] */ DeviceType *aDeviceType);


void __RPC_STUB IMedium_get_DeviceType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_HostDrive_Proxy( 
    IMedium * This,
    /* [retval][out] */ BOOL *aHostDrive);


void __RPC_STUB IMedium_get_HostDrive_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Size_Proxy( 
    IMedium * This,
    /* [retval][out] */ ULONG64 *aSize);


void __RPC_STUB IMedium_get_Size_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Format_Proxy( 
    IMedium * This,
    /* [retval][out] */ BSTR *aFormat);


void __RPC_STUB IMedium_get_Format_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Type_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumType *aType);


void __RPC_STUB IMedium_get_Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMedium_put_Type_Proxy( 
    IMedium * This,
    /* [in] */ MediumType aType);


void __RPC_STUB IMedium_put_Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Parent_Proxy( 
    IMedium * This,
    /* [retval][out] */ IMedium **aParent);


void __RPC_STUB IMedium_get_Parent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Children_Proxy( 
    IMedium * This,
    /* [retval][out] */ SAFEARRAY * *aChildren);


void __RPC_STUB IMedium_get_Children_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_Base_Proxy( 
    IMedium * This,
    /* [retval][out] */ IMedium **aBase);


void __RPC_STUB IMedium_get_Base_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_ReadOnly_Proxy( 
    IMedium * This,
    /* [retval][out] */ BOOL *aReadOnly);


void __RPC_STUB IMedium_get_ReadOnly_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_LogicalSize_Proxy( 
    IMedium * This,
    /* [retval][out] */ ULONG64 *aLogicalSize);


void __RPC_STUB IMedium_get_LogicalSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_AutoReset_Proxy( 
    IMedium * This,
    /* [retval][out] */ BOOL *aAutoReset);


void __RPC_STUB IMedium_get_AutoReset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMedium_put_AutoReset_Proxy( 
    IMedium * This,
    /* [in] */ BOOL aAutoReset);


void __RPC_STUB IMedium_put_AutoReset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_LastAccessError_Proxy( 
    IMedium * This,
    /* [retval][out] */ BSTR *aLastAccessError);


void __RPC_STUB IMedium_get_LastAccessError_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMedium_get_MachineIds_Proxy( 
    IMedium * This,
    /* [retval][out] */ SAFEARRAY * *aMachineIds);


void __RPC_STUB IMedium_get_MachineIds_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_RefreshState_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumState *aState);


void __RPC_STUB IMedium_RefreshState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_GetSnapshotIds_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aMachineId,
    /* [retval][out] */ SAFEARRAY * *aSnapshotIds);


void __RPC_STUB IMedium_GetSnapshotIds_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_LockRead_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumState *aState);


void __RPC_STUB IMedium_LockRead_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_UnlockRead_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumState *aState);


void __RPC_STUB IMedium_UnlockRead_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_LockWrite_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumState *aState);


void __RPC_STUB IMedium_LockWrite_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_UnlockWrite_Proxy( 
    IMedium * This,
    /* [retval][out] */ MediumState *aState);


void __RPC_STUB IMedium_UnlockWrite_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_Close_Proxy( 
    IMedium * This);


void __RPC_STUB IMedium_Close_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_GetProperty_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ BSTR *aValue);


void __RPC_STUB IMedium_GetProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_SetProperty_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aValue);


void __RPC_STUB IMedium_SetProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_GetProperties_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aNames,
    /* [out] */ SAFEARRAY * *aReturnNames,
    /* [retval][out] */ SAFEARRAY * *aReturnValues);


void __RPC_STUB IMedium_GetProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_SetProperties_Proxy( 
    IMedium * This,
    /* [out][in] */ SAFEARRAY * *aNames,
    /* [out][in] */ SAFEARRAY * *aValues);


void __RPC_STUB IMedium_SetProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_CreateBaseStorage_Proxy( 
    IMedium * This,
    /* [in] */ ULONG64 aLogicalSize,
    /* [in] */ MediumVariant aVariant,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_CreateBaseStorage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_DeleteStorage_Proxy( 
    IMedium * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_DeleteStorage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_CreateDiffStorage_Proxy( 
    IMedium * This,
    /* [in] */ IMedium *aTarget,
    /* [in] */ MediumVariant aVariant,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_CreateDiffStorage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_MergeTo_Proxy( 
    IMedium * This,
    /* [in] */ BSTR aTargetId,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_MergeTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_CloneTo_Proxy( 
    IMedium * This,
    /* [in] */ IMedium *aTarget,
    /* [in] */ MediumVariant aVariant,
    /* [in] */ IMedium *aParent,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_CloneTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_Compact_Proxy( 
    IMedium * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_Compact_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_Resize_Proxy( 
    IMedium * This,
    /* [in] */ ULONG64 aLogicalSize,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_Resize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMedium_Reset_Proxy( 
    IMedium * This,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IMedium_Reset_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMedium_INTERFACE_DEFINED__ */


#ifndef __IMediumFormat_INTERFACE_DEFINED__
#define __IMediumFormat_INTERFACE_DEFINED__

/* interface IMediumFormat */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IMediumFormat;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("89f52554-d469-4799-9fad-1705e86a08b1")
    IMediumFormat : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FileExtensions( 
            /* [retval][out] */ SAFEARRAY * *aFileExtensions) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Capabilities( 
            /* [retval][out] */ ULONG *aCapabilities) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DescribeProperties( 
            /* [out] */ SAFEARRAY * *aNames,
            /* [out] */ SAFEARRAY * *aDescription,
            /* [out] */ SAFEARRAY * *aTypes,
            /* [out] */ SAFEARRAY * *aFlags,
            /* [out] */ SAFEARRAY * *aDefaults) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMediumFormatVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMediumFormat * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMediumFormat * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMediumFormat * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMediumFormat * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMediumFormat * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMediumFormat * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMediumFormat * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IMediumFormat * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IMediumFormat * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FileExtensions )( 
            IMediumFormat * This,
            /* [retval][out] */ SAFEARRAY * *aFileExtensions);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Capabilities )( 
            IMediumFormat * This,
            /* [retval][out] */ ULONG *aCapabilities);
        
        HRESULT ( STDMETHODCALLTYPE *DescribeProperties )( 
            IMediumFormat * This,
            /* [out] */ SAFEARRAY * *aNames,
            /* [out] */ SAFEARRAY * *aDescription,
            /* [out] */ SAFEARRAY * *aTypes,
            /* [out] */ SAFEARRAY * *aFlags,
            /* [out] */ SAFEARRAY * *aDefaults);
        
        END_INTERFACE
    } IMediumFormatVtbl;

    interface IMediumFormat
    {
        CONST_VTBL struct IMediumFormatVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMediumFormat_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMediumFormat_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMediumFormat_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMediumFormat_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMediumFormat_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMediumFormat_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMediumFormat_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMediumFormat_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IMediumFormat_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IMediumFormat_get_FileExtensions(This,aFileExtensions)	\
    (This)->lpVtbl -> get_FileExtensions(This,aFileExtensions)

#define IMediumFormat_get_Capabilities(This,aCapabilities)	\
    (This)->lpVtbl -> get_Capabilities(This,aCapabilities)

#define IMediumFormat_DescribeProperties(This,aNames,aDescription,aTypes,aFlags,aDefaults)	\
    (This)->lpVtbl -> DescribeProperties(This,aNames,aDescription,aTypes,aFlags,aDefaults)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumFormat_get_Id_Proxy( 
    IMediumFormat * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IMediumFormat_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumFormat_get_Name_Proxy( 
    IMediumFormat * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB IMediumFormat_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumFormat_get_FileExtensions_Proxy( 
    IMediumFormat * This,
    /* [retval][out] */ SAFEARRAY * *aFileExtensions);


void __RPC_STUB IMediumFormat_get_FileExtensions_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumFormat_get_Capabilities_Proxy( 
    IMediumFormat * This,
    /* [retval][out] */ ULONG *aCapabilities);


void __RPC_STUB IMediumFormat_get_Capabilities_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMediumFormat_DescribeProperties_Proxy( 
    IMediumFormat * This,
    /* [out] */ SAFEARRAY * *aNames,
    /* [out] */ SAFEARRAY * *aDescription,
    /* [out] */ SAFEARRAY * *aTypes,
    /* [out] */ SAFEARRAY * *aFlags,
    /* [out] */ SAFEARRAY * *aDefaults);


void __RPC_STUB IMediumFormat_DescribeProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMediumFormat_INTERFACE_DEFINED__ */


#ifndef __IKeyboard_INTERFACE_DEFINED__
#define __IKeyboard_INTERFACE_DEFINED__

/* interface IKeyboard */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IKeyboard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2d1a531b-4c6e-49cc-8af6-5c857b78b5d7")
    IKeyboard : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE PutScancode( 
            /* [in] */ LONG aScancode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PutScancodes( 
            /* [out][in] */ SAFEARRAY * *aScancodes,
            /* [retval][out] */ ULONG *aCodesStored) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PutCAD( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKeyboardVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IKeyboard * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IKeyboard * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IKeyboard * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IKeyboard * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IKeyboard * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IKeyboard * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IKeyboard * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        HRESULT ( STDMETHODCALLTYPE *PutScancode )( 
            IKeyboard * This,
            /* [in] */ LONG aScancode);
        
        HRESULT ( STDMETHODCALLTYPE *PutScancodes )( 
            IKeyboard * This,
            /* [out][in] */ SAFEARRAY * *aScancodes,
            /* [retval][out] */ ULONG *aCodesStored);
        
        HRESULT ( STDMETHODCALLTYPE *PutCAD )( 
            IKeyboard * This);
        
        END_INTERFACE
    } IKeyboardVtbl;

    interface IKeyboard
    {
        CONST_VTBL struct IKeyboardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IKeyboard_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IKeyboard_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IKeyboard_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IKeyboard_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IKeyboard_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IKeyboard_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IKeyboard_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IKeyboard_PutScancode(This,aScancode)	\
    (This)->lpVtbl -> PutScancode(This,aScancode)

#define IKeyboard_PutScancodes(This,aScancodes,aCodesStored)	\
    (This)->lpVtbl -> PutScancodes(This,aScancodes,aCodesStored)

#define IKeyboard_PutCAD(This)	\
    (This)->lpVtbl -> PutCAD(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IKeyboard_PutScancode_Proxy( 
    IKeyboard * This,
    /* [in] */ LONG aScancode);


void __RPC_STUB IKeyboard_PutScancode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IKeyboard_PutScancodes_Proxy( 
    IKeyboard * This,
    /* [out][in] */ SAFEARRAY * *aScancodes,
    /* [retval][out] */ ULONG *aCodesStored);


void __RPC_STUB IKeyboard_PutScancodes_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IKeyboard_PutCAD_Proxy( 
    IKeyboard * This);


void __RPC_STUB IKeyboard_PutCAD_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IKeyboard_INTERFACE_DEFINED__ */


#ifndef __IMouse_INTERFACE_DEFINED__
#define __IMouse_INTERFACE_DEFINED__

/* interface IMouse */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IMouse;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7c0f2eae-f92d-498c-b802-e1a3763774dc")
    IMouse : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AbsoluteSupported( 
            /* [retval][out] */ BOOL *aAbsoluteSupported) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PutMouseEvent( 
            /* [in] */ LONG aDx,
            /* [in] */ LONG aDy,
            /* [in] */ LONG aDz,
            /* [in] */ LONG aDw,
            /* [in] */ LONG aButtonState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PutMouseEventAbsolute( 
            /* [in] */ LONG aX,
            /* [in] */ LONG aY,
            /* [in] */ LONG aDz,
            /* [in] */ LONG aDw,
            /* [in] */ LONG aButtonState) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMouseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMouse * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMouse * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMouse * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMouse * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMouse * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMouse * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMouse * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AbsoluteSupported )( 
            IMouse * This,
            /* [retval][out] */ BOOL *aAbsoluteSupported);
        
        HRESULT ( STDMETHODCALLTYPE *PutMouseEvent )( 
            IMouse * This,
            /* [in] */ LONG aDx,
            /* [in] */ LONG aDy,
            /* [in] */ LONG aDz,
            /* [in] */ LONG aDw,
            /* [in] */ LONG aButtonState);
        
        HRESULT ( STDMETHODCALLTYPE *PutMouseEventAbsolute )( 
            IMouse * This,
            /* [in] */ LONG aX,
            /* [in] */ LONG aY,
            /* [in] */ LONG aDz,
            /* [in] */ LONG aDw,
            /* [in] */ LONG aButtonState);
        
        END_INTERFACE
    } IMouseVtbl;

    interface IMouse
    {
        CONST_VTBL struct IMouseVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMouse_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMouse_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMouse_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMouse_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMouse_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMouse_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMouse_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMouse_get_AbsoluteSupported(This,aAbsoluteSupported)	\
    (This)->lpVtbl -> get_AbsoluteSupported(This,aAbsoluteSupported)

#define IMouse_PutMouseEvent(This,aDx,aDy,aDz,aDw,aButtonState)	\
    (This)->lpVtbl -> PutMouseEvent(This,aDx,aDy,aDz,aDw,aButtonState)

#define IMouse_PutMouseEventAbsolute(This,aX,aY,aDz,aDw,aButtonState)	\
    (This)->lpVtbl -> PutMouseEventAbsolute(This,aX,aY,aDz,aDw,aButtonState)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMouse_get_AbsoluteSupported_Proxy( 
    IMouse * This,
    /* [retval][out] */ BOOL *aAbsoluteSupported);


void __RPC_STUB IMouse_get_AbsoluteSupported_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMouse_PutMouseEvent_Proxy( 
    IMouse * This,
    /* [in] */ LONG aDx,
    /* [in] */ LONG aDy,
    /* [in] */ LONG aDz,
    /* [in] */ LONG aDw,
    /* [in] */ LONG aButtonState);


void __RPC_STUB IMouse_PutMouseEvent_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMouse_PutMouseEventAbsolute_Proxy( 
    IMouse * This,
    /* [in] */ LONG aX,
    /* [in] */ LONG aY,
    /* [in] */ LONG aDz,
    /* [in] */ LONG aDw,
    /* [in] */ LONG aButtonState);


void __RPC_STUB IMouse_PutMouseEventAbsolute_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMouse_INTERFACE_DEFINED__ */


#ifndef __IFramebuffer_INTERFACE_DEFINED__
#define __IFramebuffer_INTERFACE_DEFINED__

/* interface IFramebuffer */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IFramebuffer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("b7ed347a-5765-40a0-ae1c-f543eb4ddeaf")
    IFramebuffer : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Address( 
            /* [retval][out] */ BYTE **aAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ ULONG *aWidth) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ ULONG *aHeight) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BitsPerPixel( 
            /* [retval][out] */ ULONG *aBitsPerPixel) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesPerLine( 
            /* [retval][out] */ ULONG *aBytesPerLine) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PixelFormat( 
            /* [retval][out] */ ULONG *aPixelFormat) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UsesGuestVRAM( 
            /* [retval][out] */ BOOL *aUsesGuestVRAM) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HeightReduction( 
            /* [retval][out] */ ULONG *aHeightReduction) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Overlay( 
            /* [retval][out] */ IFramebufferOverlay **aOverlay) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_WinId( 
            /* [retval][out] */ ULONG64 *aWinId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Lock( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Unlock( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE NotifyUpdate( 
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RequestResize( 
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aPixelFormat,
            /* [in] */ BYTE *aVRAM,
            /* [in] */ ULONG aBitsPerPixel,
            /* [in] */ ULONG aBytesPerLine,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ BOOL *aFinished) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE VideoModeSupported( 
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ ULONG aBpp,
            /* [retval][out] */ BOOL *aSupported) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetVisibleRegion( 
            /* [in] */ BYTE *aRectangles,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ ULONG *aCountCopied) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetVisibleRegion( 
            /* [in] */ BYTE *aRectangles,
            /* [in] */ ULONG aCount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ProcessVHWACommand( 
            /* [in] */ BYTE *aCommand) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFramebufferVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IFramebuffer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IFramebuffer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IFramebuffer * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IFramebuffer * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IFramebuffer * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IFramebuffer * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IFramebuffer * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Address )( 
            IFramebuffer * This,
            /* [retval][out] */ BYTE **aAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG *aWidth);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG *aHeight);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitsPerPixel )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG *aBitsPerPixel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesPerLine )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG *aBytesPerLine);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PixelFormat )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG *aPixelFormat);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsesGuestVRAM )( 
            IFramebuffer * This,
            /* [retval][out] */ BOOL *aUsesGuestVRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HeightReduction )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG *aHeightReduction);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Overlay )( 
            IFramebuffer * This,
            /* [retval][out] */ IFramebufferOverlay **aOverlay);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WinId )( 
            IFramebuffer * This,
            /* [retval][out] */ ULONG64 *aWinId);
        
        HRESULT ( STDMETHODCALLTYPE *Lock )( 
            IFramebuffer * This);
        
        HRESULT ( STDMETHODCALLTYPE *Unlock )( 
            IFramebuffer * This);
        
        HRESULT ( STDMETHODCALLTYPE *NotifyUpdate )( 
            IFramebuffer * This,
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *RequestResize )( 
            IFramebuffer * This,
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aPixelFormat,
            /* [in] */ BYTE *aVRAM,
            /* [in] */ ULONG aBitsPerPixel,
            /* [in] */ ULONG aBytesPerLine,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ BOOL *aFinished);
        
        HRESULT ( STDMETHODCALLTYPE *VideoModeSupported )( 
            IFramebuffer * This,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ ULONG aBpp,
            /* [retval][out] */ BOOL *aSupported);
        
        HRESULT ( STDMETHODCALLTYPE *GetVisibleRegion )( 
            IFramebuffer * This,
            /* [in] */ BYTE *aRectangles,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ ULONG *aCountCopied);
        
        HRESULT ( STDMETHODCALLTYPE *SetVisibleRegion )( 
            IFramebuffer * This,
            /* [in] */ BYTE *aRectangles,
            /* [in] */ ULONG aCount);
        
        HRESULT ( STDMETHODCALLTYPE *ProcessVHWACommand )( 
            IFramebuffer * This,
            /* [in] */ BYTE *aCommand);
        
        END_INTERFACE
    } IFramebufferVtbl;

    interface IFramebuffer
    {
        CONST_VTBL struct IFramebufferVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IFramebuffer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IFramebuffer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IFramebuffer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IFramebuffer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IFramebuffer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IFramebuffer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IFramebuffer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IFramebuffer_get_Address(This,aAddress)	\
    (This)->lpVtbl -> get_Address(This,aAddress)

#define IFramebuffer_get_Width(This,aWidth)	\
    (This)->lpVtbl -> get_Width(This,aWidth)

#define IFramebuffer_get_Height(This,aHeight)	\
    (This)->lpVtbl -> get_Height(This,aHeight)

#define IFramebuffer_get_BitsPerPixel(This,aBitsPerPixel)	\
    (This)->lpVtbl -> get_BitsPerPixel(This,aBitsPerPixel)

#define IFramebuffer_get_BytesPerLine(This,aBytesPerLine)	\
    (This)->lpVtbl -> get_BytesPerLine(This,aBytesPerLine)

#define IFramebuffer_get_PixelFormat(This,aPixelFormat)	\
    (This)->lpVtbl -> get_PixelFormat(This,aPixelFormat)

#define IFramebuffer_get_UsesGuestVRAM(This,aUsesGuestVRAM)	\
    (This)->lpVtbl -> get_UsesGuestVRAM(This,aUsesGuestVRAM)

#define IFramebuffer_get_HeightReduction(This,aHeightReduction)	\
    (This)->lpVtbl -> get_HeightReduction(This,aHeightReduction)

#define IFramebuffer_get_Overlay(This,aOverlay)	\
    (This)->lpVtbl -> get_Overlay(This,aOverlay)

#define IFramebuffer_get_WinId(This,aWinId)	\
    (This)->lpVtbl -> get_WinId(This,aWinId)

#define IFramebuffer_Lock(This)	\
    (This)->lpVtbl -> Lock(This)

#define IFramebuffer_Unlock(This)	\
    (This)->lpVtbl -> Unlock(This)

#define IFramebuffer_NotifyUpdate(This,aX,aY,aWidth,aHeight)	\
    (This)->lpVtbl -> NotifyUpdate(This,aX,aY,aWidth,aHeight)

#define IFramebuffer_RequestResize(This,aScreenId,aPixelFormat,aVRAM,aBitsPerPixel,aBytesPerLine,aWidth,aHeight,aFinished)	\
    (This)->lpVtbl -> RequestResize(This,aScreenId,aPixelFormat,aVRAM,aBitsPerPixel,aBytesPerLine,aWidth,aHeight,aFinished)

#define IFramebuffer_VideoModeSupported(This,aWidth,aHeight,aBpp,aSupported)	\
    (This)->lpVtbl -> VideoModeSupported(This,aWidth,aHeight,aBpp,aSupported)

#define IFramebuffer_GetVisibleRegion(This,aRectangles,aCount,aCountCopied)	\
    (This)->lpVtbl -> GetVisibleRegion(This,aRectangles,aCount,aCountCopied)

#define IFramebuffer_SetVisibleRegion(This,aRectangles,aCount)	\
    (This)->lpVtbl -> SetVisibleRegion(This,aRectangles,aCount)

#define IFramebuffer_ProcessVHWACommand(This,aCommand)	\
    (This)->lpVtbl -> ProcessVHWACommand(This,aCommand)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_Address_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ BYTE **aAddress);


void __RPC_STUB IFramebuffer_get_Address_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_Width_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG *aWidth);


void __RPC_STUB IFramebuffer_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_Height_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG *aHeight);


void __RPC_STUB IFramebuffer_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_BitsPerPixel_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG *aBitsPerPixel);


void __RPC_STUB IFramebuffer_get_BitsPerPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_BytesPerLine_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG *aBytesPerLine);


void __RPC_STUB IFramebuffer_get_BytesPerLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_PixelFormat_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG *aPixelFormat);


void __RPC_STUB IFramebuffer_get_PixelFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_UsesGuestVRAM_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ BOOL *aUsesGuestVRAM);


void __RPC_STUB IFramebuffer_get_UsesGuestVRAM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_HeightReduction_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG *aHeightReduction);


void __RPC_STUB IFramebuffer_get_HeightReduction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_Overlay_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ IFramebufferOverlay **aOverlay);


void __RPC_STUB IFramebuffer_get_Overlay_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebuffer_get_WinId_Proxy( 
    IFramebuffer * This,
    /* [retval][out] */ ULONG64 *aWinId);


void __RPC_STUB IFramebuffer_get_WinId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_Lock_Proxy( 
    IFramebuffer * This);


void __RPC_STUB IFramebuffer_Lock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_Unlock_Proxy( 
    IFramebuffer * This);


void __RPC_STUB IFramebuffer_Unlock_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_NotifyUpdate_Proxy( 
    IFramebuffer * This,
    /* [in] */ ULONG aX,
    /* [in] */ ULONG aY,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight);


void __RPC_STUB IFramebuffer_NotifyUpdate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_RequestResize_Proxy( 
    IFramebuffer * This,
    /* [in] */ ULONG aScreenId,
    /* [in] */ ULONG aPixelFormat,
    /* [in] */ BYTE *aVRAM,
    /* [in] */ ULONG aBitsPerPixel,
    /* [in] */ ULONG aBytesPerLine,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [retval][out] */ BOOL *aFinished);


void __RPC_STUB IFramebuffer_RequestResize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_VideoModeSupported_Proxy( 
    IFramebuffer * This,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [in] */ ULONG aBpp,
    /* [retval][out] */ BOOL *aSupported);


void __RPC_STUB IFramebuffer_VideoModeSupported_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_GetVisibleRegion_Proxy( 
    IFramebuffer * This,
    /* [in] */ BYTE *aRectangles,
    /* [in] */ ULONG aCount,
    /* [retval][out] */ ULONG *aCountCopied);


void __RPC_STUB IFramebuffer_GetVisibleRegion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_SetVisibleRegion_Proxy( 
    IFramebuffer * This,
    /* [in] */ BYTE *aRectangles,
    /* [in] */ ULONG aCount);


void __RPC_STUB IFramebuffer_SetVisibleRegion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebuffer_ProcessVHWACommand_Proxy( 
    IFramebuffer * This,
    /* [in] */ BYTE *aCommand);


void __RPC_STUB IFramebuffer_ProcessVHWACommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFramebuffer_INTERFACE_DEFINED__ */


#ifndef __IFramebufferOverlay_INTERFACE_DEFINED__
#define __IFramebufferOverlay_INTERFACE_DEFINED__

/* interface IFramebufferOverlay */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IFramebufferOverlay;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0bcc1c7e-e415-47d2-bfdb-e4c705fb0f47")
    IFramebufferOverlay : public IFramebuffer
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ ULONG *aX) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ ULONG *aY) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ BOOL *aVisible) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Visible( 
            /* [in] */ BOOL aVisible) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Alpha( 
            /* [retval][out] */ ULONG *aAlpha) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Alpha( 
            /* [in] */ ULONG aAlpha) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Move( 
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IFramebufferOverlayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IFramebufferOverlay * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IFramebufferOverlay * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IFramebufferOverlay * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IFramebufferOverlay * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IFramebufferOverlay * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IFramebufferOverlay * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IFramebufferOverlay * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Address )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ BYTE **aAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aWidth);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aHeight);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitsPerPixel )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aBitsPerPixel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesPerLine )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aBytesPerLine);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PixelFormat )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aPixelFormat);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UsesGuestVRAM )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ BOOL *aUsesGuestVRAM);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HeightReduction )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aHeightReduction);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Overlay )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ IFramebufferOverlay **aOverlay);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WinId )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG64 *aWinId);
        
        HRESULT ( STDMETHODCALLTYPE *Lock )( 
            IFramebufferOverlay * This);
        
        HRESULT ( STDMETHODCALLTYPE *Unlock )( 
            IFramebufferOverlay * This);
        
        HRESULT ( STDMETHODCALLTYPE *NotifyUpdate )( 
            IFramebufferOverlay * This,
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *RequestResize )( 
            IFramebufferOverlay * This,
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aPixelFormat,
            /* [in] */ BYTE *aVRAM,
            /* [in] */ ULONG aBitsPerPixel,
            /* [in] */ ULONG aBytesPerLine,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ BOOL *aFinished);
        
        HRESULT ( STDMETHODCALLTYPE *VideoModeSupported )( 
            IFramebufferOverlay * This,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ ULONG aBpp,
            /* [retval][out] */ BOOL *aSupported);
        
        HRESULT ( STDMETHODCALLTYPE *GetVisibleRegion )( 
            IFramebufferOverlay * This,
            /* [in] */ BYTE *aRectangles,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ ULONG *aCountCopied);
        
        HRESULT ( STDMETHODCALLTYPE *SetVisibleRegion )( 
            IFramebufferOverlay * This,
            /* [in] */ BYTE *aRectangles,
            /* [in] */ ULONG aCount);
        
        HRESULT ( STDMETHODCALLTYPE *ProcessVHWACommand )( 
            IFramebufferOverlay * This,
            /* [in] */ BYTE *aCommand);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_X )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aX);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Y )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aY);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ BOOL *aVisible);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Visible )( 
            IFramebufferOverlay * This,
            /* [in] */ BOOL aVisible);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Alpha )( 
            IFramebufferOverlay * This,
            /* [retval][out] */ ULONG *aAlpha);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Alpha )( 
            IFramebufferOverlay * This,
            /* [in] */ ULONG aAlpha);
        
        HRESULT ( STDMETHODCALLTYPE *Move )( 
            IFramebufferOverlay * This,
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY);
        
        END_INTERFACE
    } IFramebufferOverlayVtbl;

    interface IFramebufferOverlay
    {
        CONST_VTBL struct IFramebufferOverlayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IFramebufferOverlay_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IFramebufferOverlay_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IFramebufferOverlay_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IFramebufferOverlay_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IFramebufferOverlay_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IFramebufferOverlay_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IFramebufferOverlay_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IFramebufferOverlay_get_Address(This,aAddress)	\
    (This)->lpVtbl -> get_Address(This,aAddress)

#define IFramebufferOverlay_get_Width(This,aWidth)	\
    (This)->lpVtbl -> get_Width(This,aWidth)

#define IFramebufferOverlay_get_Height(This,aHeight)	\
    (This)->lpVtbl -> get_Height(This,aHeight)

#define IFramebufferOverlay_get_BitsPerPixel(This,aBitsPerPixel)	\
    (This)->lpVtbl -> get_BitsPerPixel(This,aBitsPerPixel)

#define IFramebufferOverlay_get_BytesPerLine(This,aBytesPerLine)	\
    (This)->lpVtbl -> get_BytesPerLine(This,aBytesPerLine)

#define IFramebufferOverlay_get_PixelFormat(This,aPixelFormat)	\
    (This)->lpVtbl -> get_PixelFormat(This,aPixelFormat)

#define IFramebufferOverlay_get_UsesGuestVRAM(This,aUsesGuestVRAM)	\
    (This)->lpVtbl -> get_UsesGuestVRAM(This,aUsesGuestVRAM)

#define IFramebufferOverlay_get_HeightReduction(This,aHeightReduction)	\
    (This)->lpVtbl -> get_HeightReduction(This,aHeightReduction)

#define IFramebufferOverlay_get_Overlay(This,aOverlay)	\
    (This)->lpVtbl -> get_Overlay(This,aOverlay)

#define IFramebufferOverlay_get_WinId(This,aWinId)	\
    (This)->lpVtbl -> get_WinId(This,aWinId)

#define IFramebufferOverlay_Lock(This)	\
    (This)->lpVtbl -> Lock(This)

#define IFramebufferOverlay_Unlock(This)	\
    (This)->lpVtbl -> Unlock(This)

#define IFramebufferOverlay_NotifyUpdate(This,aX,aY,aWidth,aHeight)	\
    (This)->lpVtbl -> NotifyUpdate(This,aX,aY,aWidth,aHeight)

#define IFramebufferOverlay_RequestResize(This,aScreenId,aPixelFormat,aVRAM,aBitsPerPixel,aBytesPerLine,aWidth,aHeight,aFinished)	\
    (This)->lpVtbl -> RequestResize(This,aScreenId,aPixelFormat,aVRAM,aBitsPerPixel,aBytesPerLine,aWidth,aHeight,aFinished)

#define IFramebufferOverlay_VideoModeSupported(This,aWidth,aHeight,aBpp,aSupported)	\
    (This)->lpVtbl -> VideoModeSupported(This,aWidth,aHeight,aBpp,aSupported)

#define IFramebufferOverlay_GetVisibleRegion(This,aRectangles,aCount,aCountCopied)	\
    (This)->lpVtbl -> GetVisibleRegion(This,aRectangles,aCount,aCountCopied)

#define IFramebufferOverlay_SetVisibleRegion(This,aRectangles,aCount)	\
    (This)->lpVtbl -> SetVisibleRegion(This,aRectangles,aCount)

#define IFramebufferOverlay_ProcessVHWACommand(This,aCommand)	\
    (This)->lpVtbl -> ProcessVHWACommand(This,aCommand)


#define IFramebufferOverlay_get_X(This,aX)	\
    (This)->lpVtbl -> get_X(This,aX)

#define IFramebufferOverlay_get_Y(This,aY)	\
    (This)->lpVtbl -> get_Y(This,aY)

#define IFramebufferOverlay_get_Visible(This,aVisible)	\
    (This)->lpVtbl -> get_Visible(This,aVisible)

#define IFramebufferOverlay_put_Visible(This,aVisible)	\
    (This)->lpVtbl -> put_Visible(This,aVisible)

#define IFramebufferOverlay_get_Alpha(This,aAlpha)	\
    (This)->lpVtbl -> get_Alpha(This,aAlpha)

#define IFramebufferOverlay_put_Alpha(This,aAlpha)	\
    (This)->lpVtbl -> put_Alpha(This,aAlpha)

#define IFramebufferOverlay_Move(This,aX,aY)	\
    (This)->lpVtbl -> Move(This,aX,aY)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebufferOverlay_get_X_Proxy( 
    IFramebufferOverlay * This,
    /* [retval][out] */ ULONG *aX);


void __RPC_STUB IFramebufferOverlay_get_X_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebufferOverlay_get_Y_Proxy( 
    IFramebufferOverlay * This,
    /* [retval][out] */ ULONG *aY);


void __RPC_STUB IFramebufferOverlay_get_Y_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebufferOverlay_get_Visible_Proxy( 
    IFramebufferOverlay * This,
    /* [retval][out] */ BOOL *aVisible);


void __RPC_STUB IFramebufferOverlay_get_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IFramebufferOverlay_put_Visible_Proxy( 
    IFramebufferOverlay * This,
    /* [in] */ BOOL aVisible);


void __RPC_STUB IFramebufferOverlay_put_Visible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IFramebufferOverlay_get_Alpha_Proxy( 
    IFramebufferOverlay * This,
    /* [retval][out] */ ULONG *aAlpha);


void __RPC_STUB IFramebufferOverlay_get_Alpha_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IFramebufferOverlay_put_Alpha_Proxy( 
    IFramebufferOverlay * This,
    /* [in] */ ULONG aAlpha);


void __RPC_STUB IFramebufferOverlay_put_Alpha_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IFramebufferOverlay_Move_Proxy( 
    IFramebufferOverlay * This,
    /* [in] */ ULONG aX,
    /* [in] */ ULONG aY);


void __RPC_STUB IFramebufferOverlay_Move_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IFramebufferOverlay_INTERFACE_DEFINED__ */


#ifndef __IDisplay_INTERFACE_DEFINED__
#define __IDisplay_INTERFACE_DEFINED__

/* interface IDisplay */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IDisplay;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e2a38ebc-d854-4a3e-bc2e-fdf5ac4a0000")
    IDisplay : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ ULONG *aWidth) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ ULONG *aHeight) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BitsPerPixel( 
            /* [retval][out] */ ULONG *aBitsPerPixel) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetFramebuffer( 
            /* [in] */ ULONG aScreenId,
            /* [in] */ IFramebuffer *aFramebuffer) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetFramebuffer( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ IFramebuffer **aFramebuffer,
            /* [out] */ LONG *aXOrigin,
            /* [out] */ LONG *aYOrigin) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetVideoModeHint( 
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ ULONG aBitsPerPixel,
            /* [in] */ ULONG aDisplay) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetSeamlessMode( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE TakeScreenShot( 
            /* [in] */ BYTE *aAddress,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE TakeScreenShotSlow( 
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ SAFEARRAY * *aScreenData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DrawToScreen( 
            /* [in] */ BYTE *aAddress,
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE InvalidateAndUpdate( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ResizeCompleted( 
            /* [in] */ ULONG aScreenId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UpdateCompleted( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CompleteVHWACommand( 
            /* [in] */ BYTE *aCommand) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IDisplayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IDisplay * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IDisplay * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IDisplay * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IDisplay * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IDisplay * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IDisplay * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IDisplay * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IDisplay * This,
            /* [retval][out] */ ULONG *aWidth);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IDisplay * This,
            /* [retval][out] */ ULONG *aHeight);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BitsPerPixel )( 
            IDisplay * This,
            /* [retval][out] */ ULONG *aBitsPerPixel);
        
        HRESULT ( STDMETHODCALLTYPE *SetFramebuffer )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId,
            /* [in] */ IFramebuffer *aFramebuffer);
        
        HRESULT ( STDMETHODCALLTYPE *GetFramebuffer )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ IFramebuffer **aFramebuffer,
            /* [out] */ LONG *aXOrigin,
            /* [out] */ LONG *aYOrigin);
        
        HRESULT ( STDMETHODCALLTYPE *SetVideoModeHint )( 
            IDisplay * This,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [in] */ ULONG aBitsPerPixel,
            /* [in] */ ULONG aDisplay);
        
        HRESULT ( STDMETHODCALLTYPE *SetSeamlessMode )( 
            IDisplay * This,
            /* [in] */ BOOL aEnabled);
        
        HRESULT ( STDMETHODCALLTYPE *TakeScreenShot )( 
            IDisplay * This,
            /* [in] */ BYTE *aAddress,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *TakeScreenShotSlow )( 
            IDisplay * This,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ SAFEARRAY * *aScreenData);
        
        HRESULT ( STDMETHODCALLTYPE *DrawToScreen )( 
            IDisplay * This,
            /* [in] */ BYTE *aAddress,
            /* [in] */ ULONG aX,
            /* [in] */ ULONG aY,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *InvalidateAndUpdate )( 
            IDisplay * This);
        
        HRESULT ( STDMETHODCALLTYPE *ResizeCompleted )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId);
        
        HRESULT ( STDMETHODCALLTYPE *UpdateCompleted )( 
            IDisplay * This);
        
        HRESULT ( STDMETHODCALLTYPE *CompleteVHWACommand )( 
            IDisplay * This,
            /* [in] */ BYTE *aCommand);
        
        END_INTERFACE
    } IDisplayVtbl;

    interface IDisplay
    {
        CONST_VTBL struct IDisplayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IDisplay_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IDisplay_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IDisplay_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IDisplay_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IDisplay_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IDisplay_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IDisplay_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IDisplay_get_Width(This,aWidth)	\
    (This)->lpVtbl -> get_Width(This,aWidth)

#define IDisplay_get_Height(This,aHeight)	\
    (This)->lpVtbl -> get_Height(This,aHeight)

#define IDisplay_get_BitsPerPixel(This,aBitsPerPixel)	\
    (This)->lpVtbl -> get_BitsPerPixel(This,aBitsPerPixel)

#define IDisplay_SetFramebuffer(This,aScreenId,aFramebuffer)	\
    (This)->lpVtbl -> SetFramebuffer(This,aScreenId,aFramebuffer)

#define IDisplay_GetFramebuffer(This,aScreenId,aFramebuffer,aXOrigin,aYOrigin)	\
    (This)->lpVtbl -> GetFramebuffer(This,aScreenId,aFramebuffer,aXOrigin,aYOrigin)

#define IDisplay_SetVideoModeHint(This,aWidth,aHeight,aBitsPerPixel,aDisplay)	\
    (This)->lpVtbl -> SetVideoModeHint(This,aWidth,aHeight,aBitsPerPixel,aDisplay)

#define IDisplay_SetSeamlessMode(This,aEnabled)	\
    (This)->lpVtbl -> SetSeamlessMode(This,aEnabled)

#define IDisplay_TakeScreenShot(This,aAddress,aWidth,aHeight)	\
    (This)->lpVtbl -> TakeScreenShot(This,aAddress,aWidth,aHeight)

#define IDisplay_TakeScreenShotSlow(This,aWidth,aHeight,aScreenData)	\
    (This)->lpVtbl -> TakeScreenShotSlow(This,aWidth,aHeight,aScreenData)

#define IDisplay_DrawToScreen(This,aAddress,aX,aY,aWidth,aHeight)	\
    (This)->lpVtbl -> DrawToScreen(This,aAddress,aX,aY,aWidth,aHeight)

#define IDisplay_InvalidateAndUpdate(This)	\
    (This)->lpVtbl -> InvalidateAndUpdate(This)

#define IDisplay_ResizeCompleted(This,aScreenId)	\
    (This)->lpVtbl -> ResizeCompleted(This,aScreenId)

#define IDisplay_UpdateCompleted(This)	\
    (This)->lpVtbl -> UpdateCompleted(This)

#define IDisplay_CompleteVHWACommand(This,aCommand)	\
    (This)->lpVtbl -> CompleteVHWACommand(This,aCommand)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IDisplay_get_Width_Proxy( 
    IDisplay * This,
    /* [retval][out] */ ULONG *aWidth);


void __RPC_STUB IDisplay_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDisplay_get_Height_Proxy( 
    IDisplay * This,
    /* [retval][out] */ ULONG *aHeight);


void __RPC_STUB IDisplay_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IDisplay_get_BitsPerPixel_Proxy( 
    IDisplay * This,
    /* [retval][out] */ ULONG *aBitsPerPixel);


void __RPC_STUB IDisplay_get_BitsPerPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_SetFramebuffer_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId,
    /* [in] */ IFramebuffer *aFramebuffer);


void __RPC_STUB IDisplay_SetFramebuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_GetFramebuffer_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId,
    /* [out] */ IFramebuffer **aFramebuffer,
    /* [out] */ LONG *aXOrigin,
    /* [out] */ LONG *aYOrigin);


void __RPC_STUB IDisplay_GetFramebuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_SetVideoModeHint_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [in] */ ULONG aBitsPerPixel,
    /* [in] */ ULONG aDisplay);


void __RPC_STUB IDisplay_SetVideoModeHint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_SetSeamlessMode_Proxy( 
    IDisplay * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB IDisplay_SetSeamlessMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_TakeScreenShot_Proxy( 
    IDisplay * This,
    /* [in] */ BYTE *aAddress,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight);


void __RPC_STUB IDisplay_TakeScreenShot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_TakeScreenShotSlow_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [retval][out] */ SAFEARRAY * *aScreenData);


void __RPC_STUB IDisplay_TakeScreenShotSlow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_DrawToScreen_Proxy( 
    IDisplay * This,
    /* [in] */ BYTE *aAddress,
    /* [in] */ ULONG aX,
    /* [in] */ ULONG aY,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight);


void __RPC_STUB IDisplay_DrawToScreen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_InvalidateAndUpdate_Proxy( 
    IDisplay * This);


void __RPC_STUB IDisplay_InvalidateAndUpdate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_ResizeCompleted_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId);


void __RPC_STUB IDisplay_ResizeCompleted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_UpdateCompleted_Proxy( 
    IDisplay * This);


void __RPC_STUB IDisplay_UpdateCompleted_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IDisplay_CompleteVHWACommand_Proxy( 
    IDisplay * This,
    /* [in] */ BYTE *aCommand);


void __RPC_STUB IDisplay_CompleteVHWACommand_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IDisplay_INTERFACE_DEFINED__ */


#ifndef __INetworkAdapter_INTERFACE_DEFINED__
#define __INetworkAdapter_INTERFACE_DEFINED__

/* interface INetworkAdapter */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_INetworkAdapter;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("65607a27-2b73-4d43-b4cc-0ba2c817fbde")
    INetworkAdapter : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdapterType( 
            /* [retval][out] */ NetworkAdapterType *aAdapterType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AdapterType( 
            /* [in] */ NetworkAdapterType aAdapterType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Slot( 
            /* [retval][out] */ ULONG *aSlot) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MACAddress( 
            /* [retval][out] */ BSTR *aMACAddress) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MACAddress( 
            /* [in] */ BSTR aMACAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AttachmentType( 
            /* [retval][out] */ NetworkAttachmentType *aAttachmentType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostInterface( 
            /* [retval][out] */ BSTR *aHostInterface) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HostInterface( 
            /* [in] */ BSTR aHostInterface) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_InternalNetwork( 
            /* [retval][out] */ BSTR *aInternalNetwork) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_InternalNetwork( 
            /* [in] */ BSTR aInternalNetwork) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NATNetwork( 
            /* [retval][out] */ BSTR *aNATNetwork) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_NATNetwork( 
            /* [in] */ BSTR aNATNetwork) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CableConnected( 
            /* [retval][out] */ BOOL *aCableConnected) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CableConnected( 
            /* [in] */ BOOL aCableConnected) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LineSpeed( 
            /* [retval][out] */ ULONG *aLineSpeed) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LineSpeed( 
            /* [in] */ ULONG aLineSpeed) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TraceEnabled( 
            /* [retval][out] */ BOOL *aTraceEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TraceEnabled( 
            /* [in] */ BOOL aTraceEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TraceFile( 
            /* [retval][out] */ BSTR *aTraceFile) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TraceFile( 
            /* [in] */ BSTR aTraceFile) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AttachToNAT( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AttachToBridgedInterface( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AttachToInternalNetwork( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AttachToHostOnlyInterface( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Detach( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INetworkAdapterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            INetworkAdapter * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            INetworkAdapter * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            INetworkAdapter * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            INetworkAdapter * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            INetworkAdapter * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            INetworkAdapter * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            INetworkAdapter * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdapterType )( 
            INetworkAdapter * This,
            /* [retval][out] */ NetworkAdapterType *aAdapterType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AdapterType )( 
            INetworkAdapter * This,
            /* [in] */ NetworkAdapterType aAdapterType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Slot )( 
            INetworkAdapter * This,
            /* [retval][out] */ ULONG *aSlot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            INetworkAdapter * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            INetworkAdapter * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MACAddress )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aMACAddress);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MACAddress )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aMACAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AttachmentType )( 
            INetworkAdapter * This,
            /* [retval][out] */ NetworkAttachmentType *aAttachmentType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostInterface )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aHostInterface);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HostInterface )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aHostInterface);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_InternalNetwork )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aInternalNetwork);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_InternalNetwork )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aInternalNetwork);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NATNetwork )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aNATNetwork);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_NATNetwork )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aNATNetwork);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CableConnected )( 
            INetworkAdapter * This,
            /* [retval][out] */ BOOL *aCableConnected);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CableConnected )( 
            INetworkAdapter * This,
            /* [in] */ BOOL aCableConnected);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LineSpeed )( 
            INetworkAdapter * This,
            /* [retval][out] */ ULONG *aLineSpeed);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LineSpeed )( 
            INetworkAdapter * This,
            /* [in] */ ULONG aLineSpeed);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TraceEnabled )( 
            INetworkAdapter * This,
            /* [retval][out] */ BOOL *aTraceEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TraceEnabled )( 
            INetworkAdapter * This,
            /* [in] */ BOOL aTraceEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TraceFile )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aTraceFile);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TraceFile )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aTraceFile);
        
        HRESULT ( STDMETHODCALLTYPE *AttachToNAT )( 
            INetworkAdapter * This);
        
        HRESULT ( STDMETHODCALLTYPE *AttachToBridgedInterface )( 
            INetworkAdapter * This);
        
        HRESULT ( STDMETHODCALLTYPE *AttachToInternalNetwork )( 
            INetworkAdapter * This);
        
        HRESULT ( STDMETHODCALLTYPE *AttachToHostOnlyInterface )( 
            INetworkAdapter * This);
        
        HRESULT ( STDMETHODCALLTYPE *Detach )( 
            INetworkAdapter * This);
        
        END_INTERFACE
    } INetworkAdapterVtbl;

    interface INetworkAdapter
    {
        CONST_VTBL struct INetworkAdapterVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define INetworkAdapter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define INetworkAdapter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define INetworkAdapter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define INetworkAdapter_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define INetworkAdapter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define INetworkAdapter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define INetworkAdapter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define INetworkAdapter_get_AdapterType(This,aAdapterType)	\
    (This)->lpVtbl -> get_AdapterType(This,aAdapterType)

#define INetworkAdapter_put_AdapterType(This,aAdapterType)	\
    (This)->lpVtbl -> put_AdapterType(This,aAdapterType)

#define INetworkAdapter_get_Slot(This,aSlot)	\
    (This)->lpVtbl -> get_Slot(This,aSlot)

#define INetworkAdapter_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define INetworkAdapter_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define INetworkAdapter_get_MACAddress(This,aMACAddress)	\
    (This)->lpVtbl -> get_MACAddress(This,aMACAddress)

#define INetworkAdapter_put_MACAddress(This,aMACAddress)	\
    (This)->lpVtbl -> put_MACAddress(This,aMACAddress)

#define INetworkAdapter_get_AttachmentType(This,aAttachmentType)	\
    (This)->lpVtbl -> get_AttachmentType(This,aAttachmentType)

#define INetworkAdapter_get_HostInterface(This,aHostInterface)	\
    (This)->lpVtbl -> get_HostInterface(This,aHostInterface)

#define INetworkAdapter_put_HostInterface(This,aHostInterface)	\
    (This)->lpVtbl -> put_HostInterface(This,aHostInterface)

#define INetworkAdapter_get_InternalNetwork(This,aInternalNetwork)	\
    (This)->lpVtbl -> get_InternalNetwork(This,aInternalNetwork)

#define INetworkAdapter_put_InternalNetwork(This,aInternalNetwork)	\
    (This)->lpVtbl -> put_InternalNetwork(This,aInternalNetwork)

#define INetworkAdapter_get_NATNetwork(This,aNATNetwork)	\
    (This)->lpVtbl -> get_NATNetwork(This,aNATNetwork)

#define INetworkAdapter_put_NATNetwork(This,aNATNetwork)	\
    (This)->lpVtbl -> put_NATNetwork(This,aNATNetwork)

#define INetworkAdapter_get_CableConnected(This,aCableConnected)	\
    (This)->lpVtbl -> get_CableConnected(This,aCableConnected)

#define INetworkAdapter_put_CableConnected(This,aCableConnected)	\
    (This)->lpVtbl -> put_CableConnected(This,aCableConnected)

#define INetworkAdapter_get_LineSpeed(This,aLineSpeed)	\
    (This)->lpVtbl -> get_LineSpeed(This,aLineSpeed)

#define INetworkAdapter_put_LineSpeed(This,aLineSpeed)	\
    (This)->lpVtbl -> put_LineSpeed(This,aLineSpeed)

#define INetworkAdapter_get_TraceEnabled(This,aTraceEnabled)	\
    (This)->lpVtbl -> get_TraceEnabled(This,aTraceEnabled)

#define INetworkAdapter_put_TraceEnabled(This,aTraceEnabled)	\
    (This)->lpVtbl -> put_TraceEnabled(This,aTraceEnabled)

#define INetworkAdapter_get_TraceFile(This,aTraceFile)	\
    (This)->lpVtbl -> get_TraceFile(This,aTraceFile)

#define INetworkAdapter_put_TraceFile(This,aTraceFile)	\
    (This)->lpVtbl -> put_TraceFile(This,aTraceFile)

#define INetworkAdapter_AttachToNAT(This)	\
    (This)->lpVtbl -> AttachToNAT(This)

#define INetworkAdapter_AttachToBridgedInterface(This)	\
    (This)->lpVtbl -> AttachToBridgedInterface(This)

#define INetworkAdapter_AttachToInternalNetwork(This)	\
    (This)->lpVtbl -> AttachToInternalNetwork(This)

#define INetworkAdapter_AttachToHostOnlyInterface(This)	\
    (This)->lpVtbl -> AttachToHostOnlyInterface(This)

#define INetworkAdapter_Detach(This)	\
    (This)->lpVtbl -> Detach(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_AdapterType_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ NetworkAdapterType *aAdapterType);


void __RPC_STUB INetworkAdapter_get_AdapterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_AdapterType_Proxy( 
    INetworkAdapter * This,
    /* [in] */ NetworkAdapterType aAdapterType);


void __RPC_STUB INetworkAdapter_put_AdapterType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_Slot_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ ULONG *aSlot);


void __RPC_STUB INetworkAdapter_get_Slot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_Enabled_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB INetworkAdapter_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_Enabled_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB INetworkAdapter_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_MACAddress_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aMACAddress);


void __RPC_STUB INetworkAdapter_get_MACAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_MACAddress_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aMACAddress);


void __RPC_STUB INetworkAdapter_put_MACAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_AttachmentType_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ NetworkAttachmentType *aAttachmentType);


void __RPC_STUB INetworkAdapter_get_AttachmentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_HostInterface_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aHostInterface);


void __RPC_STUB INetworkAdapter_get_HostInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_HostInterface_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aHostInterface);


void __RPC_STUB INetworkAdapter_put_HostInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_InternalNetwork_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aInternalNetwork);


void __RPC_STUB INetworkAdapter_get_InternalNetwork_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_InternalNetwork_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aInternalNetwork);


void __RPC_STUB INetworkAdapter_put_InternalNetwork_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_NATNetwork_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aNATNetwork);


void __RPC_STUB INetworkAdapter_get_NATNetwork_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_NATNetwork_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aNATNetwork);


void __RPC_STUB INetworkAdapter_put_NATNetwork_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_CableConnected_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BOOL *aCableConnected);


void __RPC_STUB INetworkAdapter_get_CableConnected_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_CableConnected_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BOOL aCableConnected);


void __RPC_STUB INetworkAdapter_put_CableConnected_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_LineSpeed_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ ULONG *aLineSpeed);


void __RPC_STUB INetworkAdapter_get_LineSpeed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_LineSpeed_Proxy( 
    INetworkAdapter * This,
    /* [in] */ ULONG aLineSpeed);


void __RPC_STUB INetworkAdapter_put_LineSpeed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_TraceEnabled_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BOOL *aTraceEnabled);


void __RPC_STUB INetworkAdapter_get_TraceEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_TraceEnabled_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BOOL aTraceEnabled);


void __RPC_STUB INetworkAdapter_put_TraceEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_TraceFile_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aTraceFile);


void __RPC_STUB INetworkAdapter_get_TraceFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_TraceFile_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aTraceFile);


void __RPC_STUB INetworkAdapter_put_TraceFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE INetworkAdapter_AttachToNAT_Proxy( 
    INetworkAdapter * This);


void __RPC_STUB INetworkAdapter_AttachToNAT_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE INetworkAdapter_AttachToBridgedInterface_Proxy( 
    INetworkAdapter * This);


void __RPC_STUB INetworkAdapter_AttachToBridgedInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE INetworkAdapter_AttachToInternalNetwork_Proxy( 
    INetworkAdapter * This);


void __RPC_STUB INetworkAdapter_AttachToInternalNetwork_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE INetworkAdapter_AttachToHostOnlyInterface_Proxy( 
    INetworkAdapter * This);


void __RPC_STUB INetworkAdapter_AttachToHostOnlyInterface_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE INetworkAdapter_Detach_Proxy( 
    INetworkAdapter * This);


void __RPC_STUB INetworkAdapter_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __INetworkAdapter_INTERFACE_DEFINED__ */


#ifndef __ISerialPort_INTERFACE_DEFINED__
#define __ISerialPort_INTERFACE_DEFINED__

/* interface ISerialPort */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ISerialPort;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("937f6970-5103-4745-b78e-d28dcf1479a8")
    ISerialPort : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Slot( 
            /* [retval][out] */ ULONG *aSlot) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IOBase( 
            /* [retval][out] */ ULONG *aIOBase) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IOBase( 
            /* [in] */ ULONG aIOBase) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IRQ( 
            /* [retval][out] */ ULONG *aIRQ) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IRQ( 
            /* [in] */ ULONG aIRQ) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostMode( 
            /* [retval][out] */ PortMode *aHostMode) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HostMode( 
            /* [in] */ PortMode aHostMode) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Server( 
            /* [retval][out] */ BOOL *aServer) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Server( 
            /* [in] */ BOOL aServer) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR *aPath) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Path( 
            /* [in] */ BSTR aPath) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISerialPortVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISerialPort * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISerialPort * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISerialPort * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISerialPort * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISerialPort * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISerialPort * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISerialPort * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Slot )( 
            ISerialPort * This,
            /* [retval][out] */ ULONG *aSlot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            ISerialPort * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            ISerialPort * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IOBase )( 
            ISerialPort * This,
            /* [retval][out] */ ULONG *aIOBase);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IOBase )( 
            ISerialPort * This,
            /* [in] */ ULONG aIOBase);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IRQ )( 
            ISerialPort * This,
            /* [retval][out] */ ULONG *aIRQ);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IRQ )( 
            ISerialPort * This,
            /* [in] */ ULONG aIRQ);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostMode )( 
            ISerialPort * This,
            /* [retval][out] */ PortMode *aHostMode);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HostMode )( 
            ISerialPort * This,
            /* [in] */ PortMode aHostMode);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( 
            ISerialPort * This,
            /* [retval][out] */ BOOL *aServer);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( 
            ISerialPort * This,
            /* [in] */ BOOL aServer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            ISerialPort * This,
            /* [retval][out] */ BSTR *aPath);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Path )( 
            ISerialPort * This,
            /* [in] */ BSTR aPath);
        
        END_INTERFACE
    } ISerialPortVtbl;

    interface ISerialPort
    {
        CONST_VTBL struct ISerialPortVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISerialPort_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISerialPort_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISerialPort_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISerialPort_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISerialPort_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISerialPort_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISerialPort_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISerialPort_get_Slot(This,aSlot)	\
    (This)->lpVtbl -> get_Slot(This,aSlot)

#define ISerialPort_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define ISerialPort_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define ISerialPort_get_IOBase(This,aIOBase)	\
    (This)->lpVtbl -> get_IOBase(This,aIOBase)

#define ISerialPort_put_IOBase(This,aIOBase)	\
    (This)->lpVtbl -> put_IOBase(This,aIOBase)

#define ISerialPort_get_IRQ(This,aIRQ)	\
    (This)->lpVtbl -> get_IRQ(This,aIRQ)

#define ISerialPort_put_IRQ(This,aIRQ)	\
    (This)->lpVtbl -> put_IRQ(This,aIRQ)

#define ISerialPort_get_HostMode(This,aHostMode)	\
    (This)->lpVtbl -> get_HostMode(This,aHostMode)

#define ISerialPort_put_HostMode(This,aHostMode)	\
    (This)->lpVtbl -> put_HostMode(This,aHostMode)

#define ISerialPort_get_Server(This,aServer)	\
    (This)->lpVtbl -> get_Server(This,aServer)

#define ISerialPort_put_Server(This,aServer)	\
    (This)->lpVtbl -> put_Server(This,aServer)

#define ISerialPort_get_Path(This,aPath)	\
    (This)->lpVtbl -> get_Path(This,aPath)

#define ISerialPort_put_Path(This,aPath)	\
    (This)->lpVtbl -> put_Path(This,aPath)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_Slot_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ ULONG *aSlot);


void __RPC_STUB ISerialPort_get_Slot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_Enabled_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB ISerialPort_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISerialPort_put_Enabled_Proxy( 
    ISerialPort * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB ISerialPort_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_IOBase_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ ULONG *aIOBase);


void __RPC_STUB ISerialPort_get_IOBase_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISerialPort_put_IOBase_Proxy( 
    ISerialPort * This,
    /* [in] */ ULONG aIOBase);


void __RPC_STUB ISerialPort_put_IOBase_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_IRQ_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ ULONG *aIRQ);


void __RPC_STUB ISerialPort_get_IRQ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISerialPort_put_IRQ_Proxy( 
    ISerialPort * This,
    /* [in] */ ULONG aIRQ);


void __RPC_STUB ISerialPort_put_IRQ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_HostMode_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ PortMode *aHostMode);


void __RPC_STUB ISerialPort_get_HostMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISerialPort_put_HostMode_Proxy( 
    ISerialPort * This,
    /* [in] */ PortMode aHostMode);


void __RPC_STUB ISerialPort_put_HostMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_Server_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ BOOL *aServer);


void __RPC_STUB ISerialPort_get_Server_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISerialPort_put_Server_Proxy( 
    ISerialPort * This,
    /* [in] */ BOOL aServer);


void __RPC_STUB ISerialPort_put_Server_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPort_get_Path_Proxy( 
    ISerialPort * This,
    /* [retval][out] */ BSTR *aPath);


void __RPC_STUB ISerialPort_get_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE ISerialPort_put_Path_Proxy( 
    ISerialPort * This,
    /* [in] */ BSTR aPath);


void __RPC_STUB ISerialPort_put_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISerialPort_INTERFACE_DEFINED__ */


#ifndef __IParallelPort_INTERFACE_DEFINED__
#define __IParallelPort_INTERFACE_DEFINED__

/* interface IParallelPort */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IParallelPort;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0c925f06-dd10-4b77-8de8-294d738c3214")
    IParallelPort : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Slot( 
            /* [retval][out] */ ULONG *aSlot) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IOBase( 
            /* [retval][out] */ ULONG *aIOBase) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IOBase( 
            /* [in] */ ULONG aIOBase) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IRQ( 
            /* [retval][out] */ ULONG *aIRQ) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IRQ( 
            /* [in] */ ULONG aIRQ) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Path( 
            /* [retval][out] */ BSTR *aPath) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Path( 
            /* [in] */ BSTR aPath) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IParallelPortVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IParallelPort * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IParallelPort * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IParallelPort * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IParallelPort * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IParallelPort * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IParallelPort * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IParallelPort * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Slot )( 
            IParallelPort * This,
            /* [retval][out] */ ULONG *aSlot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            IParallelPort * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            IParallelPort * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IOBase )( 
            IParallelPort * This,
            /* [retval][out] */ ULONG *aIOBase);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IOBase )( 
            IParallelPort * This,
            /* [in] */ ULONG aIOBase);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IRQ )( 
            IParallelPort * This,
            /* [retval][out] */ ULONG *aIRQ);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IRQ )( 
            IParallelPort * This,
            /* [in] */ ULONG aIRQ);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Path )( 
            IParallelPort * This,
            /* [retval][out] */ BSTR *aPath);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Path )( 
            IParallelPort * This,
            /* [in] */ BSTR aPath);
        
        END_INTERFACE
    } IParallelPortVtbl;

    interface IParallelPort
    {
        CONST_VTBL struct IParallelPortVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IParallelPort_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IParallelPort_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IParallelPort_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IParallelPort_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IParallelPort_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IParallelPort_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IParallelPort_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IParallelPort_get_Slot(This,aSlot)	\
    (This)->lpVtbl -> get_Slot(This,aSlot)

#define IParallelPort_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define IParallelPort_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define IParallelPort_get_IOBase(This,aIOBase)	\
    (This)->lpVtbl -> get_IOBase(This,aIOBase)

#define IParallelPort_put_IOBase(This,aIOBase)	\
    (This)->lpVtbl -> put_IOBase(This,aIOBase)

#define IParallelPort_get_IRQ(This,aIRQ)	\
    (This)->lpVtbl -> get_IRQ(This,aIRQ)

#define IParallelPort_put_IRQ(This,aIRQ)	\
    (This)->lpVtbl -> put_IRQ(This,aIRQ)

#define IParallelPort_get_Path(This,aPath)	\
    (This)->lpVtbl -> get_Path(This,aPath)

#define IParallelPort_put_Path(This,aPath)	\
    (This)->lpVtbl -> put_Path(This,aPath)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IParallelPort_get_Slot_Proxy( 
    IParallelPort * This,
    /* [retval][out] */ ULONG *aSlot);


void __RPC_STUB IParallelPort_get_Slot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IParallelPort_get_Enabled_Proxy( 
    IParallelPort * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB IParallelPort_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IParallelPort_put_Enabled_Proxy( 
    IParallelPort * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB IParallelPort_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IParallelPort_get_IOBase_Proxy( 
    IParallelPort * This,
    /* [retval][out] */ ULONG *aIOBase);


void __RPC_STUB IParallelPort_get_IOBase_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IParallelPort_put_IOBase_Proxy( 
    IParallelPort * This,
    /* [in] */ ULONG aIOBase);


void __RPC_STUB IParallelPort_put_IOBase_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IParallelPort_get_IRQ_Proxy( 
    IParallelPort * This,
    /* [retval][out] */ ULONG *aIRQ);


void __RPC_STUB IParallelPort_get_IRQ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IParallelPort_put_IRQ_Proxy( 
    IParallelPort * This,
    /* [in] */ ULONG aIRQ);


void __RPC_STUB IParallelPort_put_IRQ_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IParallelPort_get_Path_Proxy( 
    IParallelPort * This,
    /* [retval][out] */ BSTR *aPath);


void __RPC_STUB IParallelPort_get_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IParallelPort_put_Path_Proxy( 
    IParallelPort * This,
    /* [in] */ BSTR aPath);


void __RPC_STUB IParallelPort_put_Path_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IParallelPort_INTERFACE_DEFINED__ */


#ifndef __IMachineDebugger_INTERFACE_DEFINED__
#define __IMachineDebugger_INTERFACE_DEFINED__

/* interface IMachineDebugger */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IMachineDebugger;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("b0b2a2dd-0627-4502-91c2-ddc5e77609e0")
    IMachineDebugger : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Singlestep( 
            /* [retval][out] */ BOOL *aSinglestep) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Singlestep( 
            /* [in] */ BOOL aSinglestep) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecompileUser( 
            /* [retval][out] */ BOOL *aRecompileUser) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RecompileUser( 
            /* [in] */ BOOL aRecompileUser) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecompileSupervisor( 
            /* [retval][out] */ BOOL *aRecompileSupervisor) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RecompileSupervisor( 
            /* [in] */ BOOL aRecompileSupervisor) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PATMEnabled( 
            /* [retval][out] */ BOOL *aPATMEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PATMEnabled( 
            /* [in] */ BOOL aPATMEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CSAMEnabled( 
            /* [retval][out] */ BOOL *aCSAMEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CSAMEnabled( 
            /* [in] */ BOOL aCSAMEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogEnabled( 
            /* [retval][out] */ BOOL *aLogEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LogEnabled( 
            /* [in] */ BOOL aLogEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HWVirtExEnabled( 
            /* [retval][out] */ BOOL *aHWVirtExEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HWVirtExNestedPagingEnabled( 
            /* [retval][out] */ BOOL *aHWVirtExNestedPagingEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HWVirtExVPIDEnabled( 
            /* [retval][out] */ BOOL *aHWVirtExVPIDEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PAEEnabled( 
            /* [retval][out] */ BOOL *aPAEEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VirtualTimeRate( 
            /* [retval][out] */ ULONG *aVirtualTimeRate) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_VirtualTimeRate( 
            /* [in] */ ULONG aVirtualTimeRate) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VM( 
            /* [retval][out] */ ULONG64 *aVM) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ResetStats( 
            /* [in] */ BSTR aPattern) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DumpStats( 
            /* [in] */ BSTR aPattern) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetStats( 
            /* [in] */ BSTR aPattern,
            /* [in] */ BOOL aWithDescriptions,
            /* [out] */ BSTR *aStats) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE InjectNMI( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMachineDebuggerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMachineDebugger * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMachineDebugger * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMachineDebugger * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMachineDebugger * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMachineDebugger * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMachineDebugger * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMachineDebugger * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Singlestep )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aSinglestep);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Singlestep )( 
            IMachineDebugger * This,
            /* [in] */ BOOL aSinglestep);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecompileUser )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aRecompileUser);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RecompileUser )( 
            IMachineDebugger * This,
            /* [in] */ BOOL aRecompileUser);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecompileSupervisor )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aRecompileSupervisor);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RecompileSupervisor )( 
            IMachineDebugger * This,
            /* [in] */ BOOL aRecompileSupervisor);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PATMEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aPATMEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PATMEnabled )( 
            IMachineDebugger * This,
            /* [in] */ BOOL aPATMEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CSAMEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aCSAMEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CSAMEnabled )( 
            IMachineDebugger * This,
            /* [in] */ BOOL aCSAMEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aLogEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LogEnabled )( 
            IMachineDebugger * This,
            /* [in] */ BOOL aLogEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HWVirtExEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aHWVirtExEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HWVirtExNestedPagingEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aHWVirtExNestedPagingEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HWVirtExVPIDEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aHWVirtExVPIDEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PAEEnabled )( 
            IMachineDebugger * This,
            /* [retval][out] */ BOOL *aPAEEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VirtualTimeRate )( 
            IMachineDebugger * This,
            /* [retval][out] */ ULONG *aVirtualTimeRate);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_VirtualTimeRate )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aVirtualTimeRate);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VM )( 
            IMachineDebugger * This,
            /* [retval][out] */ ULONG64 *aVM);
        
        HRESULT ( STDMETHODCALLTYPE *ResetStats )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aPattern);
        
        HRESULT ( STDMETHODCALLTYPE *DumpStats )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aPattern);
        
        HRESULT ( STDMETHODCALLTYPE *GetStats )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aPattern,
            /* [in] */ BOOL aWithDescriptions,
            /* [out] */ BSTR *aStats);
        
        HRESULT ( STDMETHODCALLTYPE *InjectNMI )( 
            IMachineDebugger * This);
        
        END_INTERFACE
    } IMachineDebuggerVtbl;

    interface IMachineDebugger
    {
        CONST_VTBL struct IMachineDebuggerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMachineDebugger_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMachineDebugger_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMachineDebugger_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMachineDebugger_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMachineDebugger_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMachineDebugger_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMachineDebugger_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMachineDebugger_get_Singlestep(This,aSinglestep)	\
    (This)->lpVtbl -> get_Singlestep(This,aSinglestep)

#define IMachineDebugger_put_Singlestep(This,aSinglestep)	\
    (This)->lpVtbl -> put_Singlestep(This,aSinglestep)

#define IMachineDebugger_get_RecompileUser(This,aRecompileUser)	\
    (This)->lpVtbl -> get_RecompileUser(This,aRecompileUser)

#define IMachineDebugger_put_RecompileUser(This,aRecompileUser)	\
    (This)->lpVtbl -> put_RecompileUser(This,aRecompileUser)

#define IMachineDebugger_get_RecompileSupervisor(This,aRecompileSupervisor)	\
    (This)->lpVtbl -> get_RecompileSupervisor(This,aRecompileSupervisor)

#define IMachineDebugger_put_RecompileSupervisor(This,aRecompileSupervisor)	\
    (This)->lpVtbl -> put_RecompileSupervisor(This,aRecompileSupervisor)

#define IMachineDebugger_get_PATMEnabled(This,aPATMEnabled)	\
    (This)->lpVtbl -> get_PATMEnabled(This,aPATMEnabled)

#define IMachineDebugger_put_PATMEnabled(This,aPATMEnabled)	\
    (This)->lpVtbl -> put_PATMEnabled(This,aPATMEnabled)

#define IMachineDebugger_get_CSAMEnabled(This,aCSAMEnabled)	\
    (This)->lpVtbl -> get_CSAMEnabled(This,aCSAMEnabled)

#define IMachineDebugger_put_CSAMEnabled(This,aCSAMEnabled)	\
    (This)->lpVtbl -> put_CSAMEnabled(This,aCSAMEnabled)

#define IMachineDebugger_get_LogEnabled(This,aLogEnabled)	\
    (This)->lpVtbl -> get_LogEnabled(This,aLogEnabled)

#define IMachineDebugger_put_LogEnabled(This,aLogEnabled)	\
    (This)->lpVtbl -> put_LogEnabled(This,aLogEnabled)

#define IMachineDebugger_get_HWVirtExEnabled(This,aHWVirtExEnabled)	\
    (This)->lpVtbl -> get_HWVirtExEnabled(This,aHWVirtExEnabled)

#define IMachineDebugger_get_HWVirtExNestedPagingEnabled(This,aHWVirtExNestedPagingEnabled)	\
    (This)->lpVtbl -> get_HWVirtExNestedPagingEnabled(This,aHWVirtExNestedPagingEnabled)

#define IMachineDebugger_get_HWVirtExVPIDEnabled(This,aHWVirtExVPIDEnabled)	\
    (This)->lpVtbl -> get_HWVirtExVPIDEnabled(This,aHWVirtExVPIDEnabled)

#define IMachineDebugger_get_PAEEnabled(This,aPAEEnabled)	\
    (This)->lpVtbl -> get_PAEEnabled(This,aPAEEnabled)

#define IMachineDebugger_get_VirtualTimeRate(This,aVirtualTimeRate)	\
    (This)->lpVtbl -> get_VirtualTimeRate(This,aVirtualTimeRate)

#define IMachineDebugger_put_VirtualTimeRate(This,aVirtualTimeRate)	\
    (This)->lpVtbl -> put_VirtualTimeRate(This,aVirtualTimeRate)

#define IMachineDebugger_get_VM(This,aVM)	\
    (This)->lpVtbl -> get_VM(This,aVM)

#define IMachineDebugger_ResetStats(This,aPattern)	\
    (This)->lpVtbl -> ResetStats(This,aPattern)

#define IMachineDebugger_DumpStats(This,aPattern)	\
    (This)->lpVtbl -> DumpStats(This,aPattern)

#define IMachineDebugger_GetStats(This,aPattern,aWithDescriptions,aStats)	\
    (This)->lpVtbl -> GetStats(This,aPattern,aWithDescriptions,aStats)

#define IMachineDebugger_InjectNMI(This)	\
    (This)->lpVtbl -> InjectNMI(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_Singlestep_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aSinglestep);


void __RPC_STUB IMachineDebugger_get_Singlestep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_Singlestep_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BOOL aSinglestep);


void __RPC_STUB IMachineDebugger_put_Singlestep_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_RecompileUser_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aRecompileUser);


void __RPC_STUB IMachineDebugger_get_RecompileUser_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_RecompileUser_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BOOL aRecompileUser);


void __RPC_STUB IMachineDebugger_put_RecompileUser_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_RecompileSupervisor_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aRecompileSupervisor);


void __RPC_STUB IMachineDebugger_get_RecompileSupervisor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_RecompileSupervisor_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BOOL aRecompileSupervisor);


void __RPC_STUB IMachineDebugger_put_RecompileSupervisor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_PATMEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aPATMEnabled);


void __RPC_STUB IMachineDebugger_get_PATMEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_PATMEnabled_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BOOL aPATMEnabled);


void __RPC_STUB IMachineDebugger_put_PATMEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_CSAMEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aCSAMEnabled);


void __RPC_STUB IMachineDebugger_get_CSAMEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_CSAMEnabled_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BOOL aCSAMEnabled);


void __RPC_STUB IMachineDebugger_put_CSAMEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_LogEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aLogEnabled);


void __RPC_STUB IMachineDebugger_get_LogEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_LogEnabled_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BOOL aLogEnabled);


void __RPC_STUB IMachineDebugger_put_LogEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_HWVirtExEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aHWVirtExEnabled);


void __RPC_STUB IMachineDebugger_get_HWVirtExEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_HWVirtExNestedPagingEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aHWVirtExNestedPagingEnabled);


void __RPC_STUB IMachineDebugger_get_HWVirtExNestedPagingEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_HWVirtExVPIDEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aHWVirtExVPIDEnabled);


void __RPC_STUB IMachineDebugger_get_HWVirtExVPIDEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_PAEEnabled_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BOOL *aPAEEnabled);


void __RPC_STUB IMachineDebugger_get_PAEEnabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_VirtualTimeRate_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ ULONG *aVirtualTimeRate);


void __RPC_STUB IMachineDebugger_get_VirtualTimeRate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_put_VirtualTimeRate_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aVirtualTimeRate);


void __RPC_STUB IMachineDebugger_put_VirtualTimeRate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_VM_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ ULONG64 *aVM);


void __RPC_STUB IMachineDebugger_get_VM_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachineDebugger_ResetStats_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aPattern);


void __RPC_STUB IMachineDebugger_ResetStats_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachineDebugger_DumpStats_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aPattern);


void __RPC_STUB IMachineDebugger_DumpStats_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachineDebugger_GetStats_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aPattern,
    /* [in] */ BOOL aWithDescriptions,
    /* [out] */ BSTR *aStats);


void __RPC_STUB IMachineDebugger_GetStats_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IMachineDebugger_InjectNMI_Proxy( 
    IMachineDebugger * This);


void __RPC_STUB IMachineDebugger_InjectNMI_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMachineDebugger_INTERFACE_DEFINED__ */


#ifndef __IUSBController_INTERFACE_DEFINED__
#define __IUSBController_INTERFACE_DEFINED__

/* interface IUSBController */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IUSBController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("238540fa-4b73-435a-a38e-4e1d9eab5c17")
    IUSBController : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EnabledEhci( 
            /* [retval][out] */ BOOL *aEnabledEhci) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_EnabledEhci( 
            /* [in] */ BOOL aEnabledEhci) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_USBStandard( 
            /* [retval][out] */ USHORT *aUSBStandard) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DeviceFilters( 
            /* [retval][out] */ SAFEARRAY * *aDeviceFilters) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateDeviceFilter( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IUSBDeviceFilter **aFilter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE InsertDeviceFilter( 
            /* [in] */ ULONG aPosition,
            /* [in] */ IUSBDeviceFilter *aFilter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveDeviceFilter( 
            /* [in] */ ULONG aPosition,
            /* [retval][out] */ IUSBDeviceFilter **aFilter) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUSBControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IUSBController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IUSBController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IUSBController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IUSBController * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IUSBController * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IUSBController * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IUSBController * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            IUSBController * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            IUSBController * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EnabledEhci )( 
            IUSBController * This,
            /* [retval][out] */ BOOL *aEnabledEhci);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_EnabledEhci )( 
            IUSBController * This,
            /* [in] */ BOOL aEnabledEhci);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_USBStandard )( 
            IUSBController * This,
            /* [retval][out] */ USHORT *aUSBStandard);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DeviceFilters )( 
            IUSBController * This,
            /* [retval][out] */ SAFEARRAY * *aDeviceFilters);
        
        HRESULT ( STDMETHODCALLTYPE *CreateDeviceFilter )( 
            IUSBController * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IUSBDeviceFilter **aFilter);
        
        HRESULT ( STDMETHODCALLTYPE *InsertDeviceFilter )( 
            IUSBController * This,
            /* [in] */ ULONG aPosition,
            /* [in] */ IUSBDeviceFilter *aFilter);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveDeviceFilter )( 
            IUSBController * This,
            /* [in] */ ULONG aPosition,
            /* [retval][out] */ IUSBDeviceFilter **aFilter);
        
        END_INTERFACE
    } IUSBControllerVtbl;

    interface IUSBController
    {
        CONST_VTBL struct IUSBControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUSBController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUSBController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUSBController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUSBController_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUSBController_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUSBController_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUSBController_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUSBController_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define IUSBController_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define IUSBController_get_EnabledEhci(This,aEnabledEhci)	\
    (This)->lpVtbl -> get_EnabledEhci(This,aEnabledEhci)

#define IUSBController_put_EnabledEhci(This,aEnabledEhci)	\
    (This)->lpVtbl -> put_EnabledEhci(This,aEnabledEhci)

#define IUSBController_get_USBStandard(This,aUSBStandard)	\
    (This)->lpVtbl -> get_USBStandard(This,aUSBStandard)

#define IUSBController_get_DeviceFilters(This,aDeviceFilters)	\
    (This)->lpVtbl -> get_DeviceFilters(This,aDeviceFilters)

#define IUSBController_CreateDeviceFilter(This,aName,aFilter)	\
    (This)->lpVtbl -> CreateDeviceFilter(This,aName,aFilter)

#define IUSBController_InsertDeviceFilter(This,aPosition,aFilter)	\
    (This)->lpVtbl -> InsertDeviceFilter(This,aPosition,aFilter)

#define IUSBController_RemoveDeviceFilter(This,aPosition,aFilter)	\
    (This)->lpVtbl -> RemoveDeviceFilter(This,aPosition,aFilter)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBController_get_Enabled_Proxy( 
    IUSBController * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB IUSBController_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBController_put_Enabled_Proxy( 
    IUSBController * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB IUSBController_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBController_get_EnabledEhci_Proxy( 
    IUSBController * This,
    /* [retval][out] */ BOOL *aEnabledEhci);


void __RPC_STUB IUSBController_get_EnabledEhci_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBController_put_EnabledEhci_Proxy( 
    IUSBController * This,
    /* [in] */ BOOL aEnabledEhci);


void __RPC_STUB IUSBController_put_EnabledEhci_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBController_get_USBStandard_Proxy( 
    IUSBController * This,
    /* [retval][out] */ USHORT *aUSBStandard);


void __RPC_STUB IUSBController_get_USBStandard_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBController_get_DeviceFilters_Proxy( 
    IUSBController * This,
    /* [retval][out] */ SAFEARRAY * *aDeviceFilters);


void __RPC_STUB IUSBController_get_DeviceFilters_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IUSBController_CreateDeviceFilter_Proxy( 
    IUSBController * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IUSBDeviceFilter **aFilter);


void __RPC_STUB IUSBController_CreateDeviceFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IUSBController_InsertDeviceFilter_Proxy( 
    IUSBController * This,
    /* [in] */ ULONG aPosition,
    /* [in] */ IUSBDeviceFilter *aFilter);


void __RPC_STUB IUSBController_InsertDeviceFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IUSBController_RemoveDeviceFilter_Proxy( 
    IUSBController * This,
    /* [in] */ ULONG aPosition,
    /* [retval][out] */ IUSBDeviceFilter **aFilter);


void __RPC_STUB IUSBController_RemoveDeviceFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUSBController_INTERFACE_DEFINED__ */


#ifndef __IUSBDevice_INTERFACE_DEFINED__
#define __IUSBDevice_INTERFACE_DEFINED__

/* interface IUSBDevice */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IUSBDevice;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("f8967b0b-4483-400f-92b5-8b675d98a85b")
    IUSBDevice : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VendorId( 
            /* [retval][out] */ USHORT *aVendorId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ProductId( 
            /* [retval][out] */ USHORT *aProductId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Revision( 
            /* [retval][out] */ USHORT *aRevision) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Manufacturer( 
            /* [retval][out] */ BSTR *aManufacturer) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Product( 
            /* [retval][out] */ BSTR *aProduct) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SerialNumber( 
            /* [retval][out] */ BSTR *aSerialNumber) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Address( 
            /* [retval][out] */ BSTR *aAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Port( 
            /* [retval][out] */ USHORT *aPort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Version( 
            /* [retval][out] */ USHORT *aVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortVersion( 
            /* [retval][out] */ USHORT *aPortVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Remote( 
            /* [retval][out] */ BOOL *aRemote) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUSBDeviceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IUSBDevice * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IUSBDevice * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IUSBDevice * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IUSBDevice * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IUSBDevice * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IUSBDevice * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IUSBDevice * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IUSBDevice * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VendorId )( 
            IUSBDevice * This,
            /* [retval][out] */ USHORT *aVendorId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductId )( 
            IUSBDevice * This,
            /* [retval][out] */ USHORT *aProductId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IUSBDevice * This,
            /* [retval][out] */ USHORT *aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Manufacturer )( 
            IUSBDevice * This,
            /* [retval][out] */ BSTR *aManufacturer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Product )( 
            IUSBDevice * This,
            /* [retval][out] */ BSTR *aProduct);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialNumber )( 
            IUSBDevice * This,
            /* [retval][out] */ BSTR *aSerialNumber);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Address )( 
            IUSBDevice * This,
            /* [retval][out] */ BSTR *aAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IUSBDevice * This,
            /* [retval][out] */ USHORT *aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
            IUSBDevice * This,
            /* [retval][out] */ USHORT *aVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortVersion )( 
            IUSBDevice * This,
            /* [retval][out] */ USHORT *aPortVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Remote )( 
            IUSBDevice * This,
            /* [retval][out] */ BOOL *aRemote);
        
        END_INTERFACE
    } IUSBDeviceVtbl;

    interface IUSBDevice
    {
        CONST_VTBL struct IUSBDeviceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUSBDevice_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUSBDevice_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUSBDevice_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUSBDevice_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUSBDevice_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUSBDevice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUSBDevice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUSBDevice_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IUSBDevice_get_VendorId(This,aVendorId)	\
    (This)->lpVtbl -> get_VendorId(This,aVendorId)

#define IUSBDevice_get_ProductId(This,aProductId)	\
    (This)->lpVtbl -> get_ProductId(This,aProductId)

#define IUSBDevice_get_Revision(This,aRevision)	\
    (This)->lpVtbl -> get_Revision(This,aRevision)

#define IUSBDevice_get_Manufacturer(This,aManufacturer)	\
    (This)->lpVtbl -> get_Manufacturer(This,aManufacturer)

#define IUSBDevice_get_Product(This,aProduct)	\
    (This)->lpVtbl -> get_Product(This,aProduct)

#define IUSBDevice_get_SerialNumber(This,aSerialNumber)	\
    (This)->lpVtbl -> get_SerialNumber(This,aSerialNumber)

#define IUSBDevice_get_Address(This,aAddress)	\
    (This)->lpVtbl -> get_Address(This,aAddress)

#define IUSBDevice_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IUSBDevice_get_Version(This,aVersion)	\
    (This)->lpVtbl -> get_Version(This,aVersion)

#define IUSBDevice_get_PortVersion(This,aPortVersion)	\
    (This)->lpVtbl -> get_PortVersion(This,aPortVersion)

#define IUSBDevice_get_Remote(This,aRemote)	\
    (This)->lpVtbl -> get_Remote(This,aRemote)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Id_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IUSBDevice_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_VendorId_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ USHORT *aVendorId);


void __RPC_STUB IUSBDevice_get_VendorId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_ProductId_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ USHORT *aProductId);


void __RPC_STUB IUSBDevice_get_ProductId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Revision_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ USHORT *aRevision);


void __RPC_STUB IUSBDevice_get_Revision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Manufacturer_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ BSTR *aManufacturer);


void __RPC_STUB IUSBDevice_get_Manufacturer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Product_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ BSTR *aProduct);


void __RPC_STUB IUSBDevice_get_Product_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_SerialNumber_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ BSTR *aSerialNumber);


void __RPC_STUB IUSBDevice_get_SerialNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Address_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ BSTR *aAddress);


void __RPC_STUB IUSBDevice_get_Address_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Port_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ USHORT *aPort);


void __RPC_STUB IUSBDevice_get_Port_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Version_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ USHORT *aVersion);


void __RPC_STUB IUSBDevice_get_Version_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_PortVersion_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ USHORT *aPortVersion);


void __RPC_STUB IUSBDevice_get_PortVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDevice_get_Remote_Proxy( 
    IUSBDevice * This,
    /* [retval][out] */ BOOL *aRemote);


void __RPC_STUB IUSBDevice_get_Remote_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUSBDevice_INTERFACE_DEFINED__ */


#ifndef __IUSBDeviceFilter_INTERFACE_DEFINED__
#define __IUSBDeviceFilter_INTERFACE_DEFINED__

/* interface IUSBDeviceFilter */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IUSBDeviceFilter;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d6831fb4-1a94-4c2c-96ef-8d0d6192066d")
    IUSBDeviceFilter : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Active( 
            /* [retval][out] */ BOOL *aActive) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Active( 
            /* [in] */ BOOL aActive) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VendorId( 
            /* [retval][out] */ BSTR *aVendorId) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_VendorId( 
            /* [in] */ BSTR aVendorId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ProductId( 
            /* [retval][out] */ BSTR *aProductId) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ProductId( 
            /* [in] */ BSTR aProductId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Revision( 
            /* [retval][out] */ BSTR *aRevision) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Revision( 
            /* [in] */ BSTR aRevision) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Manufacturer( 
            /* [retval][out] */ BSTR *aManufacturer) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Manufacturer( 
            /* [in] */ BSTR aManufacturer) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Product( 
            /* [retval][out] */ BSTR *aProduct) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Product( 
            /* [in] */ BSTR aProduct) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SerialNumber( 
            /* [retval][out] */ BSTR *aSerialNumber) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_SerialNumber( 
            /* [in] */ BSTR aSerialNumber) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Port( 
            /* [retval][out] */ BSTR *aPort) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Port( 
            /* [in] */ BSTR aPort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Remote( 
            /* [retval][out] */ BSTR *aRemote) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Remote( 
            /* [in] */ BSTR aRemote) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaskedInterfaces( 
            /* [retval][out] */ ULONG *aMaskedInterfaces) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MaskedInterfaces( 
            /* [in] */ ULONG aMaskedInterfaces) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUSBDeviceFilterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IUSBDeviceFilter * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IUSBDeviceFilter * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IUSBDeviceFilter * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IUSBDeviceFilter * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IUSBDeviceFilter * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IUSBDeviceFilter * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IUSBDeviceFilter * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Active )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BOOL *aActive);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Active )( 
            IUSBDeviceFilter * This,
            /* [in] */ BOOL aActive);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VendorId )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aVendorId);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_VendorId )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aVendorId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductId )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aProductId);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ProductId )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aProductId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aRevision);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Revision )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Manufacturer )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aManufacturer);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Manufacturer )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aManufacturer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Product )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aProduct);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Product )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aProduct);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialNumber )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aSerialNumber);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SerialNumber )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aSerialNumber);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aPort);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Port )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Remote )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aRemote);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Remote )( 
            IUSBDeviceFilter * This,
            /* [in] */ BSTR aRemote);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaskedInterfaces )( 
            IUSBDeviceFilter * This,
            /* [retval][out] */ ULONG *aMaskedInterfaces);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaskedInterfaces )( 
            IUSBDeviceFilter * This,
            /* [in] */ ULONG aMaskedInterfaces);
        
        END_INTERFACE
    } IUSBDeviceFilterVtbl;

    interface IUSBDeviceFilter
    {
        CONST_VTBL struct IUSBDeviceFilterVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUSBDeviceFilter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUSBDeviceFilter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUSBDeviceFilter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUSBDeviceFilter_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUSBDeviceFilter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUSBDeviceFilter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUSBDeviceFilter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUSBDeviceFilter_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IUSBDeviceFilter_put_Name(This,aName)	\
    (This)->lpVtbl -> put_Name(This,aName)

#define IUSBDeviceFilter_get_Active(This,aActive)	\
    (This)->lpVtbl -> get_Active(This,aActive)

#define IUSBDeviceFilter_put_Active(This,aActive)	\
    (This)->lpVtbl -> put_Active(This,aActive)

#define IUSBDeviceFilter_get_VendorId(This,aVendorId)	\
    (This)->lpVtbl -> get_VendorId(This,aVendorId)

#define IUSBDeviceFilter_put_VendorId(This,aVendorId)	\
    (This)->lpVtbl -> put_VendorId(This,aVendorId)

#define IUSBDeviceFilter_get_ProductId(This,aProductId)	\
    (This)->lpVtbl -> get_ProductId(This,aProductId)

#define IUSBDeviceFilter_put_ProductId(This,aProductId)	\
    (This)->lpVtbl -> put_ProductId(This,aProductId)

#define IUSBDeviceFilter_get_Revision(This,aRevision)	\
    (This)->lpVtbl -> get_Revision(This,aRevision)

#define IUSBDeviceFilter_put_Revision(This,aRevision)	\
    (This)->lpVtbl -> put_Revision(This,aRevision)

#define IUSBDeviceFilter_get_Manufacturer(This,aManufacturer)	\
    (This)->lpVtbl -> get_Manufacturer(This,aManufacturer)

#define IUSBDeviceFilter_put_Manufacturer(This,aManufacturer)	\
    (This)->lpVtbl -> put_Manufacturer(This,aManufacturer)

#define IUSBDeviceFilter_get_Product(This,aProduct)	\
    (This)->lpVtbl -> get_Product(This,aProduct)

#define IUSBDeviceFilter_put_Product(This,aProduct)	\
    (This)->lpVtbl -> put_Product(This,aProduct)

#define IUSBDeviceFilter_get_SerialNumber(This,aSerialNumber)	\
    (This)->lpVtbl -> get_SerialNumber(This,aSerialNumber)

#define IUSBDeviceFilter_put_SerialNumber(This,aSerialNumber)	\
    (This)->lpVtbl -> put_SerialNumber(This,aSerialNumber)

#define IUSBDeviceFilter_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IUSBDeviceFilter_put_Port(This,aPort)	\
    (This)->lpVtbl -> put_Port(This,aPort)

#define IUSBDeviceFilter_get_Remote(This,aRemote)	\
    (This)->lpVtbl -> get_Remote(This,aRemote)

#define IUSBDeviceFilter_put_Remote(This,aRemote)	\
    (This)->lpVtbl -> put_Remote(This,aRemote)

#define IUSBDeviceFilter_get_MaskedInterfaces(This,aMaskedInterfaces)	\
    (This)->lpVtbl -> get_MaskedInterfaces(This,aMaskedInterfaces)

#define IUSBDeviceFilter_put_MaskedInterfaces(This,aMaskedInterfaces)	\
    (This)->lpVtbl -> put_MaskedInterfaces(This,aMaskedInterfaces)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Name_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB IUSBDeviceFilter_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Name_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aName);


void __RPC_STUB IUSBDeviceFilter_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Active_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BOOL *aActive);


void __RPC_STUB IUSBDeviceFilter_get_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Active_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BOOL aActive);


void __RPC_STUB IUSBDeviceFilter_put_Active_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_VendorId_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aVendorId);


void __RPC_STUB IUSBDeviceFilter_get_VendorId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_VendorId_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aVendorId);


void __RPC_STUB IUSBDeviceFilter_put_VendorId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_ProductId_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aProductId);


void __RPC_STUB IUSBDeviceFilter_get_ProductId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_ProductId_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aProductId);


void __RPC_STUB IUSBDeviceFilter_put_ProductId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Revision_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aRevision);


void __RPC_STUB IUSBDeviceFilter_get_Revision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Revision_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aRevision);


void __RPC_STUB IUSBDeviceFilter_put_Revision_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Manufacturer_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aManufacturer);


void __RPC_STUB IUSBDeviceFilter_get_Manufacturer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Manufacturer_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aManufacturer);


void __RPC_STUB IUSBDeviceFilter_put_Manufacturer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Product_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aProduct);


void __RPC_STUB IUSBDeviceFilter_get_Product_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Product_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aProduct);


void __RPC_STUB IUSBDeviceFilter_put_Product_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_SerialNumber_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aSerialNumber);


void __RPC_STUB IUSBDeviceFilter_get_SerialNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_SerialNumber_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aSerialNumber);


void __RPC_STUB IUSBDeviceFilter_put_SerialNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Port_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aPort);


void __RPC_STUB IUSBDeviceFilter_get_Port_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Port_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aPort);


void __RPC_STUB IUSBDeviceFilter_put_Port_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_Remote_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ BSTR *aRemote);


void __RPC_STUB IUSBDeviceFilter_get_Remote_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_Remote_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ BSTR aRemote);


void __RPC_STUB IUSBDeviceFilter_put_Remote_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_get_MaskedInterfaces_Proxy( 
    IUSBDeviceFilter * This,
    /* [retval][out] */ ULONG *aMaskedInterfaces);


void __RPC_STUB IUSBDeviceFilter_get_MaskedInterfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IUSBDeviceFilter_put_MaskedInterfaces_Proxy( 
    IUSBDeviceFilter * This,
    /* [in] */ ULONG aMaskedInterfaces);


void __RPC_STUB IUSBDeviceFilter_put_MaskedInterfaces_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUSBDeviceFilter_INTERFACE_DEFINED__ */


#ifndef __IHostUSBDevice_INTERFACE_DEFINED__
#define __IHostUSBDevice_INTERFACE_DEFINED__

/* interface IHostUSBDevice */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IHostUSBDevice;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("173b4b44-d268-4334-a00d-b6521c9a740a")
    IHostUSBDevice : public IUSBDevice
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ USBDeviceState *aState) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHostUSBDeviceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IHostUSBDevice * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IHostUSBDevice * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IHostUSBDevice * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IHostUSBDevice * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IHostUSBDevice * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IHostUSBDevice * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IHostUSBDevice * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IHostUSBDevice * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VendorId )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USHORT *aVendorId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductId )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USHORT *aProductId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USHORT *aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Manufacturer )( 
            IHostUSBDevice * This,
            /* [retval][out] */ BSTR *aManufacturer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Product )( 
            IHostUSBDevice * This,
            /* [retval][out] */ BSTR *aProduct);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialNumber )( 
            IHostUSBDevice * This,
            /* [retval][out] */ BSTR *aSerialNumber);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Address )( 
            IHostUSBDevice * This,
            /* [retval][out] */ BSTR *aAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USHORT *aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USHORT *aVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortVersion )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USHORT *aPortVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Remote )( 
            IHostUSBDevice * This,
            /* [retval][out] */ BOOL *aRemote);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IHostUSBDevice * This,
            /* [retval][out] */ USBDeviceState *aState);
        
        END_INTERFACE
    } IHostUSBDeviceVtbl;

    interface IHostUSBDevice
    {
        CONST_VTBL struct IHostUSBDeviceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHostUSBDevice_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHostUSBDevice_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHostUSBDevice_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHostUSBDevice_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHostUSBDevice_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHostUSBDevice_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHostUSBDevice_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHostUSBDevice_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IHostUSBDevice_get_VendorId(This,aVendorId)	\
    (This)->lpVtbl -> get_VendorId(This,aVendorId)

#define IHostUSBDevice_get_ProductId(This,aProductId)	\
    (This)->lpVtbl -> get_ProductId(This,aProductId)

#define IHostUSBDevice_get_Revision(This,aRevision)	\
    (This)->lpVtbl -> get_Revision(This,aRevision)

#define IHostUSBDevice_get_Manufacturer(This,aManufacturer)	\
    (This)->lpVtbl -> get_Manufacturer(This,aManufacturer)

#define IHostUSBDevice_get_Product(This,aProduct)	\
    (This)->lpVtbl -> get_Product(This,aProduct)

#define IHostUSBDevice_get_SerialNumber(This,aSerialNumber)	\
    (This)->lpVtbl -> get_SerialNumber(This,aSerialNumber)

#define IHostUSBDevice_get_Address(This,aAddress)	\
    (This)->lpVtbl -> get_Address(This,aAddress)

#define IHostUSBDevice_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IHostUSBDevice_get_Version(This,aVersion)	\
    (This)->lpVtbl -> get_Version(This,aVersion)

#define IHostUSBDevice_get_PortVersion(This,aPortVersion)	\
    (This)->lpVtbl -> get_PortVersion(This,aPortVersion)

#define IHostUSBDevice_get_Remote(This,aRemote)	\
    (This)->lpVtbl -> get_Remote(This,aRemote)


#define IHostUSBDevice_get_State(This,aState)	\
    (This)->lpVtbl -> get_State(This,aState)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IHostUSBDevice_get_State_Proxy( 
    IHostUSBDevice * This,
    /* [retval][out] */ USBDeviceState *aState);


void __RPC_STUB IHostUSBDevice_get_State_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHostUSBDevice_INTERFACE_DEFINED__ */


#ifndef __IHostUSBDeviceFilter_INTERFACE_DEFINED__
#define __IHostUSBDeviceFilter_INTERFACE_DEFINED__

/* interface IHostUSBDeviceFilter */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IHostUSBDeviceFilter;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4cc70246-d74a-400f-8222-3900489c0374")
    IHostUSBDeviceFilter : public IUSBDeviceFilter
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Action( 
            /* [retval][out] */ USBDeviceFilterAction *aAction) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Action( 
            /* [in] */ USBDeviceFilterAction aAction) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHostUSBDeviceFilterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IHostUSBDeviceFilter * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IHostUSBDeviceFilter * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IHostUSBDeviceFilter * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Name )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Active )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BOOL *aActive);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Active )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BOOL aActive);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VendorId )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aVendorId);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_VendorId )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aVendorId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ProductId )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aProductId);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ProductId )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aProductId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aRevision);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Revision )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Manufacturer )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aManufacturer);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Manufacturer )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aManufacturer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Product )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aProduct);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Product )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aProduct);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialNumber )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aSerialNumber);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SerialNumber )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aSerialNumber);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aPort);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Port )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Remote )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ BSTR *aRemote);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Remote )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ BSTR aRemote);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaskedInterfaces )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ ULONG *aMaskedInterfaces);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaskedInterfaces )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ ULONG aMaskedInterfaces);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Action )( 
            IHostUSBDeviceFilter * This,
            /* [retval][out] */ USBDeviceFilterAction *aAction);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Action )( 
            IHostUSBDeviceFilter * This,
            /* [in] */ USBDeviceFilterAction aAction);
        
        END_INTERFACE
    } IHostUSBDeviceFilterVtbl;

    interface IHostUSBDeviceFilter
    {
        CONST_VTBL struct IHostUSBDeviceFilterVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHostUSBDeviceFilter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHostUSBDeviceFilter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHostUSBDeviceFilter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHostUSBDeviceFilter_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHostUSBDeviceFilter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHostUSBDeviceFilter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHostUSBDeviceFilter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHostUSBDeviceFilter_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IHostUSBDeviceFilter_put_Name(This,aName)	\
    (This)->lpVtbl -> put_Name(This,aName)

#define IHostUSBDeviceFilter_get_Active(This,aActive)	\
    (This)->lpVtbl -> get_Active(This,aActive)

#define IHostUSBDeviceFilter_put_Active(This,aActive)	\
    (This)->lpVtbl -> put_Active(This,aActive)

#define IHostUSBDeviceFilter_get_VendorId(This,aVendorId)	\
    (This)->lpVtbl -> get_VendorId(This,aVendorId)

#define IHostUSBDeviceFilter_put_VendorId(This,aVendorId)	\
    (This)->lpVtbl -> put_VendorId(This,aVendorId)

#define IHostUSBDeviceFilter_get_ProductId(This,aProductId)	\
    (This)->lpVtbl -> get_ProductId(This,aProductId)

#define IHostUSBDeviceFilter_put_ProductId(This,aProductId)	\
    (This)->lpVtbl -> put_ProductId(This,aProductId)

#define IHostUSBDeviceFilter_get_Revision(This,aRevision)	\
    (This)->lpVtbl -> get_Revision(This,aRevision)

#define IHostUSBDeviceFilter_put_Revision(This,aRevision)	\
    (This)->lpVtbl -> put_Revision(This,aRevision)

#define IHostUSBDeviceFilter_get_Manufacturer(This,aManufacturer)	\
    (This)->lpVtbl -> get_Manufacturer(This,aManufacturer)

#define IHostUSBDeviceFilter_put_Manufacturer(This,aManufacturer)	\
    (This)->lpVtbl -> put_Manufacturer(This,aManufacturer)

#define IHostUSBDeviceFilter_get_Product(This,aProduct)	\
    (This)->lpVtbl -> get_Product(This,aProduct)

#define IHostUSBDeviceFilter_put_Product(This,aProduct)	\
    (This)->lpVtbl -> put_Product(This,aProduct)

#define IHostUSBDeviceFilter_get_SerialNumber(This,aSerialNumber)	\
    (This)->lpVtbl -> get_SerialNumber(This,aSerialNumber)

#define IHostUSBDeviceFilter_put_SerialNumber(This,aSerialNumber)	\
    (This)->lpVtbl -> put_SerialNumber(This,aSerialNumber)

#define IHostUSBDeviceFilter_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IHostUSBDeviceFilter_put_Port(This,aPort)	\
    (This)->lpVtbl -> put_Port(This,aPort)

#define IHostUSBDeviceFilter_get_Remote(This,aRemote)	\
    (This)->lpVtbl -> get_Remote(This,aRemote)

#define IHostUSBDeviceFilter_put_Remote(This,aRemote)	\
    (This)->lpVtbl -> put_Remote(This,aRemote)

#define IHostUSBDeviceFilter_get_MaskedInterfaces(This,aMaskedInterfaces)	\
    (This)->lpVtbl -> get_MaskedInterfaces(This,aMaskedInterfaces)

#define IHostUSBDeviceFilter_put_MaskedInterfaces(This,aMaskedInterfaces)	\
    (This)->lpVtbl -> put_MaskedInterfaces(This,aMaskedInterfaces)


#define IHostUSBDeviceFilter_get_Action(This,aAction)	\
    (This)->lpVtbl -> get_Action(This,aAction)

#define IHostUSBDeviceFilter_put_Action(This,aAction)	\
    (This)->lpVtbl -> put_Action(This,aAction)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IHostUSBDeviceFilter_get_Action_Proxy( 
    IHostUSBDeviceFilter * This,
    /* [retval][out] */ USBDeviceFilterAction *aAction);


void __RPC_STUB IHostUSBDeviceFilter_get_Action_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IHostUSBDeviceFilter_put_Action_Proxy( 
    IHostUSBDeviceFilter * This,
    /* [in] */ USBDeviceFilterAction aAction);


void __RPC_STUB IHostUSBDeviceFilter_put_Action_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHostUSBDeviceFilter_INTERFACE_DEFINED__ */


#ifndef __IAudioAdapter_INTERFACE_DEFINED__
#define __IAudioAdapter_INTERFACE_DEFINED__

/* interface IAudioAdapter */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IAudioAdapter;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("921873db-5f3f-4b69-91f9-7be9e535a2cb")
    IAudioAdapter : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AudioController( 
            /* [retval][out] */ AudioControllerType *aAudioController) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AudioController( 
            /* [in] */ AudioControllerType aAudioController) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AudioDriver( 
            /* [retval][out] */ AudioDriverType *aAudioDriver) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AudioDriver( 
            /* [in] */ AudioDriverType aAudioDriver) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAudioAdapterVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAudioAdapter * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAudioAdapter * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAudioAdapter * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAudioAdapter * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAudioAdapter * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAudioAdapter * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAudioAdapter * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            IAudioAdapter * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            IAudioAdapter * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioController )( 
            IAudioAdapter * This,
            /* [retval][out] */ AudioControllerType *aAudioController);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AudioController )( 
            IAudioAdapter * This,
            /* [in] */ AudioControllerType aAudioController);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioDriver )( 
            IAudioAdapter * This,
            /* [retval][out] */ AudioDriverType *aAudioDriver);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AudioDriver )( 
            IAudioAdapter * This,
            /* [in] */ AudioDriverType aAudioDriver);
        
        END_INTERFACE
    } IAudioAdapterVtbl;

    interface IAudioAdapter
    {
        CONST_VTBL struct IAudioAdapterVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IAudioAdapter_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IAudioAdapter_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IAudioAdapter_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IAudioAdapter_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IAudioAdapter_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IAudioAdapter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IAudioAdapter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IAudioAdapter_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define IAudioAdapter_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define IAudioAdapter_get_AudioController(This,aAudioController)	\
    (This)->lpVtbl -> get_AudioController(This,aAudioController)

#define IAudioAdapter_put_AudioController(This,aAudioController)	\
    (This)->lpVtbl -> put_AudioController(This,aAudioController)

#define IAudioAdapter_get_AudioDriver(This,aAudioDriver)	\
    (This)->lpVtbl -> get_AudioDriver(This,aAudioDriver)

#define IAudioAdapter_put_AudioDriver(This,aAudioDriver)	\
    (This)->lpVtbl -> put_AudioDriver(This,aAudioDriver)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IAudioAdapter_get_Enabled_Proxy( 
    IAudioAdapter * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB IAudioAdapter_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IAudioAdapter_put_Enabled_Proxy( 
    IAudioAdapter * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB IAudioAdapter_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IAudioAdapter_get_AudioController_Proxy( 
    IAudioAdapter * This,
    /* [retval][out] */ AudioControllerType *aAudioController);


void __RPC_STUB IAudioAdapter_get_AudioController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IAudioAdapter_put_AudioController_Proxy( 
    IAudioAdapter * This,
    /* [in] */ AudioControllerType aAudioController);


void __RPC_STUB IAudioAdapter_put_AudioController_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IAudioAdapter_get_AudioDriver_Proxy( 
    IAudioAdapter * This,
    /* [retval][out] */ AudioDriverType *aAudioDriver);


void __RPC_STUB IAudioAdapter_get_AudioDriver_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IAudioAdapter_put_AudioDriver_Proxy( 
    IAudioAdapter * This,
    /* [in] */ AudioDriverType aAudioDriver);


void __RPC_STUB IAudioAdapter_put_AudioDriver_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IAudioAdapter_INTERFACE_DEFINED__ */


#ifndef __IVRDPServer_INTERFACE_DEFINED__
#define __IVRDPServer_INTERFACE_DEFINED__

/* interface IVRDPServer */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVRDPServer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("72e671bc-1712-4052-ad6b-e45e76d9d3e4")
    IVRDPServer : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
            /* [retval][out] */ BOOL *aEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
            /* [in] */ BOOL aEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Ports( 
            /* [retval][out] */ BSTR *aPorts) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Ports( 
            /* [in] */ BSTR aPorts) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetAddress( 
            /* [retval][out] */ BSTR *aNetAddress) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_NetAddress( 
            /* [in] */ BSTR aNetAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AuthType( 
            /* [retval][out] */ VRDPAuthType *aAuthType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AuthType( 
            /* [in] */ VRDPAuthType aAuthType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AuthTimeout( 
            /* [retval][out] */ ULONG *aAuthTimeout) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AuthTimeout( 
            /* [in] */ ULONG aAuthTimeout) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AllowMultiConnection( 
            /* [retval][out] */ BOOL *aAllowMultiConnection) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AllowMultiConnection( 
            /* [in] */ BOOL aAllowMultiConnection) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ReuseSingleConnection( 
            /* [retval][out] */ BOOL *aReuseSingleConnection) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ReuseSingleConnection( 
            /* [in] */ BOOL aReuseSingleConnection) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVRDPServerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVRDPServer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVRDPServer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVRDPServer * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVRDPServer * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVRDPServer * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVRDPServer * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVRDPServer * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
            IVRDPServer * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            IVRDPServer * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Ports )( 
            IVRDPServer * This,
            /* [retval][out] */ BSTR *aPorts);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Ports )( 
            IVRDPServer * This,
            /* [in] */ BSTR aPorts);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetAddress )( 
            IVRDPServer * This,
            /* [retval][out] */ BSTR *aNetAddress);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_NetAddress )( 
            IVRDPServer * This,
            /* [in] */ BSTR aNetAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AuthType )( 
            IVRDPServer * This,
            /* [retval][out] */ VRDPAuthType *aAuthType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AuthType )( 
            IVRDPServer * This,
            /* [in] */ VRDPAuthType aAuthType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AuthTimeout )( 
            IVRDPServer * This,
            /* [retval][out] */ ULONG *aAuthTimeout);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AuthTimeout )( 
            IVRDPServer * This,
            /* [in] */ ULONG aAuthTimeout);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowMultiConnection )( 
            IVRDPServer * This,
            /* [retval][out] */ BOOL *aAllowMultiConnection);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowMultiConnection )( 
            IVRDPServer * This,
            /* [in] */ BOOL aAllowMultiConnection);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ReuseSingleConnection )( 
            IVRDPServer * This,
            /* [retval][out] */ BOOL *aReuseSingleConnection);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ReuseSingleConnection )( 
            IVRDPServer * This,
            /* [in] */ BOOL aReuseSingleConnection);
        
        END_INTERFACE
    } IVRDPServerVtbl;

    interface IVRDPServer
    {
        CONST_VTBL struct IVRDPServerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVRDPServer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVRDPServer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVRDPServer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVRDPServer_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVRDPServer_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVRDPServer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVRDPServer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVRDPServer_get_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> get_Enabled(This,aEnabled)

#define IVRDPServer_put_Enabled(This,aEnabled)	\
    (This)->lpVtbl -> put_Enabled(This,aEnabled)

#define IVRDPServer_get_Ports(This,aPorts)	\
    (This)->lpVtbl -> get_Ports(This,aPorts)

#define IVRDPServer_put_Ports(This,aPorts)	\
    (This)->lpVtbl -> put_Ports(This,aPorts)

#define IVRDPServer_get_NetAddress(This,aNetAddress)	\
    (This)->lpVtbl -> get_NetAddress(This,aNetAddress)

#define IVRDPServer_put_NetAddress(This,aNetAddress)	\
    (This)->lpVtbl -> put_NetAddress(This,aNetAddress)

#define IVRDPServer_get_AuthType(This,aAuthType)	\
    (This)->lpVtbl -> get_AuthType(This,aAuthType)

#define IVRDPServer_put_AuthType(This,aAuthType)	\
    (This)->lpVtbl -> put_AuthType(This,aAuthType)

#define IVRDPServer_get_AuthTimeout(This,aAuthTimeout)	\
    (This)->lpVtbl -> get_AuthTimeout(This,aAuthTimeout)

#define IVRDPServer_put_AuthTimeout(This,aAuthTimeout)	\
    (This)->lpVtbl -> put_AuthTimeout(This,aAuthTimeout)

#define IVRDPServer_get_AllowMultiConnection(This,aAllowMultiConnection)	\
    (This)->lpVtbl -> get_AllowMultiConnection(This,aAllowMultiConnection)

#define IVRDPServer_put_AllowMultiConnection(This,aAllowMultiConnection)	\
    (This)->lpVtbl -> put_AllowMultiConnection(This,aAllowMultiConnection)

#define IVRDPServer_get_ReuseSingleConnection(This,aReuseSingleConnection)	\
    (This)->lpVtbl -> get_ReuseSingleConnection(This,aReuseSingleConnection)

#define IVRDPServer_put_ReuseSingleConnection(This,aReuseSingleConnection)	\
    (This)->lpVtbl -> put_ReuseSingleConnection(This,aReuseSingleConnection)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_Enabled_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB IVRDPServer_get_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_Enabled_Proxy( 
    IVRDPServer * This,
    /* [in] */ BOOL aEnabled);


void __RPC_STUB IVRDPServer_put_Enabled_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_Ports_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ BSTR *aPorts);


void __RPC_STUB IVRDPServer_get_Ports_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_Ports_Proxy( 
    IVRDPServer * This,
    /* [in] */ BSTR aPorts);


void __RPC_STUB IVRDPServer_put_Ports_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_NetAddress_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ BSTR *aNetAddress);


void __RPC_STUB IVRDPServer_get_NetAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_NetAddress_Proxy( 
    IVRDPServer * This,
    /* [in] */ BSTR aNetAddress);


void __RPC_STUB IVRDPServer_put_NetAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_AuthType_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ VRDPAuthType *aAuthType);


void __RPC_STUB IVRDPServer_get_AuthType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_AuthType_Proxy( 
    IVRDPServer * This,
    /* [in] */ VRDPAuthType aAuthType);


void __RPC_STUB IVRDPServer_put_AuthType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_AuthTimeout_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ ULONG *aAuthTimeout);


void __RPC_STUB IVRDPServer_get_AuthTimeout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_AuthTimeout_Proxy( 
    IVRDPServer * This,
    /* [in] */ ULONG aAuthTimeout);


void __RPC_STUB IVRDPServer_put_AuthTimeout_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_AllowMultiConnection_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ BOOL *aAllowMultiConnection);


void __RPC_STUB IVRDPServer_get_AllowMultiConnection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_AllowMultiConnection_Proxy( 
    IVRDPServer * This,
    /* [in] */ BOOL aAllowMultiConnection);


void __RPC_STUB IVRDPServer_put_AllowMultiConnection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDPServer_get_ReuseSingleConnection_Proxy( 
    IVRDPServer * This,
    /* [retval][out] */ BOOL *aReuseSingleConnection);


void __RPC_STUB IVRDPServer_get_ReuseSingleConnection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDPServer_put_ReuseSingleConnection_Proxy( 
    IVRDPServer * This,
    /* [in] */ BOOL aReuseSingleConnection);


void __RPC_STUB IVRDPServer_put_ReuseSingleConnection_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVRDPServer_INTERFACE_DEFINED__ */


#ifndef __ISharedFolder_INTERFACE_DEFINED__
#define __ISharedFolder_INTERFACE_DEFINED__

/* interface ISharedFolder */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ISharedFolder;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("64637bb2-9e17-471c-b8f3-f8968dd9884e")
    ISharedFolder : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostPath( 
            /* [retval][out] */ BSTR *aHostPath) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Accessible( 
            /* [retval][out] */ BOOL *aAccessible) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Writable( 
            /* [retval][out] */ BOOL *aWritable) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LastAccessError( 
            /* [retval][out] */ BSTR *aLastAccessError) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISharedFolderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISharedFolder * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISharedFolder * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISharedFolder * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISharedFolder * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISharedFolder * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISharedFolder * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISharedFolder * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            ISharedFolder * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostPath )( 
            ISharedFolder * This,
            /* [retval][out] */ BSTR *aHostPath);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Accessible )( 
            ISharedFolder * This,
            /* [retval][out] */ BOOL *aAccessible);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Writable )( 
            ISharedFolder * This,
            /* [retval][out] */ BOOL *aWritable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastAccessError )( 
            ISharedFolder * This,
            /* [retval][out] */ BSTR *aLastAccessError);
        
        END_INTERFACE
    } ISharedFolderVtbl;

    interface ISharedFolder
    {
        CONST_VTBL struct ISharedFolderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISharedFolder_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISharedFolder_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISharedFolder_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISharedFolder_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISharedFolder_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISharedFolder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISharedFolder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISharedFolder_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define ISharedFolder_get_HostPath(This,aHostPath)	\
    (This)->lpVtbl -> get_HostPath(This,aHostPath)

#define ISharedFolder_get_Accessible(This,aAccessible)	\
    (This)->lpVtbl -> get_Accessible(This,aAccessible)

#define ISharedFolder_get_Writable(This,aWritable)	\
    (This)->lpVtbl -> get_Writable(This,aWritable)

#define ISharedFolder_get_LastAccessError(This,aLastAccessError)	\
    (This)->lpVtbl -> get_LastAccessError(This,aLastAccessError)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISharedFolder_get_Name_Proxy( 
    ISharedFolder * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB ISharedFolder_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISharedFolder_get_HostPath_Proxy( 
    ISharedFolder * This,
    /* [retval][out] */ BSTR *aHostPath);


void __RPC_STUB ISharedFolder_get_HostPath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISharedFolder_get_Accessible_Proxy( 
    ISharedFolder * This,
    /* [retval][out] */ BOOL *aAccessible);


void __RPC_STUB ISharedFolder_get_Accessible_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISharedFolder_get_Writable_Proxy( 
    ISharedFolder * This,
    /* [retval][out] */ BOOL *aWritable);


void __RPC_STUB ISharedFolder_get_Writable_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISharedFolder_get_LastAccessError_Proxy( 
    ISharedFolder * This,
    /* [retval][out] */ BSTR *aLastAccessError);


void __RPC_STUB ISharedFolder_get_LastAccessError_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISharedFolder_INTERFACE_DEFINED__ */


#ifndef __IInternalSessionControl_INTERFACE_DEFINED__
#define __IInternalSessionControl_INTERFACE_DEFINED__

/* interface IInternalSessionControl */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IInternalSessionControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("f9aac6d0-41b3-46b7-bea4-6370b4036de6")
    IInternalSessionControl : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetPID( 
            /* [retval][out] */ ULONG *aPid) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetRemoteConsole( 
            /* [retval][out] */ IConsole **aConsole) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AssignMachine( 
            /* [in] */ IMachine *aMachine) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AssignRemoteMachine( 
            /* [in] */ IMachine *aMachine,
            /* [in] */ IConsole *aConsole) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UpdateMachineState( 
            /* [in] */ MachineState aAMachineState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Uninitialize( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnNetworkAdapterChange( 
            /* [in] */ INetworkAdapter *aNetworkAdapter,
            /* [in] */ BOOL aChangeAdapter) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSerialPortChange( 
            /* [in] */ ISerialPort *aSerialPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnParallelPortChange( 
            /* [in] */ IParallelPort *aParallelPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnStorageControllerChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnMediumChange( 
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ BOOL aForce) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnVRDPServerChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnUSBControllerChange( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnSharedFolderChange( 
            /* [in] */ BOOL aGlobal) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnUSBDeviceAttach( 
            /* [in] */ IUSBDevice *aDevice,
            /* [in] */ IVirtualBoxErrorInfo *aError,
            /* [in] */ ULONG aMaskedInterfaces) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnUSBDeviceDetach( 
            /* [in] */ BSTR aId,
            /* [in] */ IVirtualBoxErrorInfo *aError) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnShowWindow( 
            /* [in] */ BOOL aCheck,
            /* [out] */ BOOL *aCanShow,
            /* [out] */ ULONG64 *aWinId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AccessGuestProperty( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags,
            /* [in] */ BOOL aIsSetter,
            /* [out] */ BSTR *aRetValue,
            /* [out] */ ULONG64 *aRetTimestamp,
            /* [out] */ BSTR *aRetFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnumerateGuestProperties( 
            /* [in] */ BSTR aPatterns,
            /* [out] */ SAFEARRAY * *aKey,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IInternalSessionControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IInternalSessionControl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IInternalSessionControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IInternalSessionControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IInternalSessionControl * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IInternalSessionControl * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IInternalSessionControl * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IInternalSessionControl * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        HRESULT ( STDMETHODCALLTYPE *GetPID )( 
            IInternalSessionControl * This,
            /* [retval][out] */ ULONG *aPid);
        
        HRESULT ( STDMETHODCALLTYPE *GetRemoteConsole )( 
            IInternalSessionControl * This,
            /* [retval][out] */ IConsole **aConsole);
        
        HRESULT ( STDMETHODCALLTYPE *AssignMachine )( 
            IInternalSessionControl * This,
            /* [in] */ IMachine *aMachine);
        
        HRESULT ( STDMETHODCALLTYPE *AssignRemoteMachine )( 
            IInternalSessionControl * This,
            /* [in] */ IMachine *aMachine,
            /* [in] */ IConsole *aConsole);
        
        HRESULT ( STDMETHODCALLTYPE *UpdateMachineState )( 
            IInternalSessionControl * This,
            /* [in] */ MachineState aAMachineState);
        
        HRESULT ( STDMETHODCALLTYPE *Uninitialize )( 
            IInternalSessionControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnNetworkAdapterChange )( 
            IInternalSessionControl * This,
            /* [in] */ INetworkAdapter *aNetworkAdapter,
            /* [in] */ BOOL aChangeAdapter);
        
        HRESULT ( STDMETHODCALLTYPE *OnSerialPortChange )( 
            IInternalSessionControl * This,
            /* [in] */ ISerialPort *aSerialPort);
        
        HRESULT ( STDMETHODCALLTYPE *OnParallelPortChange )( 
            IInternalSessionControl * This,
            /* [in] */ IParallelPort *aParallelPort);
        
        HRESULT ( STDMETHODCALLTYPE *OnStorageControllerChange )( 
            IInternalSessionControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnMediumChange )( 
            IInternalSessionControl * This,
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ BOOL aForce);
        
        HRESULT ( STDMETHODCALLTYPE *OnVRDPServerChange )( 
            IInternalSessionControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnUSBControllerChange )( 
            IInternalSessionControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *OnSharedFolderChange )( 
            IInternalSessionControl * This,
            /* [in] */ BOOL aGlobal);
        
        HRESULT ( STDMETHODCALLTYPE *OnUSBDeviceAttach )( 
            IInternalSessionControl * This,
            /* [in] */ IUSBDevice *aDevice,
            /* [in] */ IVirtualBoxErrorInfo *aError,
            /* [in] */ ULONG aMaskedInterfaces);
        
        HRESULT ( STDMETHODCALLTYPE *OnUSBDeviceDetach )( 
            IInternalSessionControl * This,
            /* [in] */ BSTR aId,
            /* [in] */ IVirtualBoxErrorInfo *aError);
        
        HRESULT ( STDMETHODCALLTYPE *OnShowWindow )( 
            IInternalSessionControl * This,
            /* [in] */ BOOL aCheck,
            /* [out] */ BOOL *aCanShow,
            /* [out] */ ULONG64 *aWinId);
        
        HRESULT ( STDMETHODCALLTYPE *AccessGuestProperty )( 
            IInternalSessionControl * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags,
            /* [in] */ BOOL aIsSetter,
            /* [out] */ BSTR *aRetValue,
            /* [out] */ ULONG64 *aRetTimestamp,
            /* [out] */ BSTR *aRetFlags);
        
        HRESULT ( STDMETHODCALLTYPE *EnumerateGuestProperties )( 
            IInternalSessionControl * This,
            /* [in] */ BSTR aPatterns,
            /* [out] */ SAFEARRAY * *aKey,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags);
        
        END_INTERFACE
    } IInternalSessionControlVtbl;

    interface IInternalSessionControl
    {
        CONST_VTBL struct IInternalSessionControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IInternalSessionControl_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IInternalSessionControl_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IInternalSessionControl_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IInternalSessionControl_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IInternalSessionControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IInternalSessionControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IInternalSessionControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IInternalSessionControl_GetPID(This,aPid)	\
    (This)->lpVtbl -> GetPID(This,aPid)

#define IInternalSessionControl_GetRemoteConsole(This,aConsole)	\
    (This)->lpVtbl -> GetRemoteConsole(This,aConsole)

#define IInternalSessionControl_AssignMachine(This,aMachine)	\
    (This)->lpVtbl -> AssignMachine(This,aMachine)

#define IInternalSessionControl_AssignRemoteMachine(This,aMachine,aConsole)	\
    (This)->lpVtbl -> AssignRemoteMachine(This,aMachine,aConsole)

#define IInternalSessionControl_UpdateMachineState(This,aAMachineState)	\
    (This)->lpVtbl -> UpdateMachineState(This,aAMachineState)

#define IInternalSessionControl_Uninitialize(This)	\
    (This)->lpVtbl -> Uninitialize(This)

#define IInternalSessionControl_OnNetworkAdapterChange(This,aNetworkAdapter,aChangeAdapter)	\
    (This)->lpVtbl -> OnNetworkAdapterChange(This,aNetworkAdapter,aChangeAdapter)

#define IInternalSessionControl_OnSerialPortChange(This,aSerialPort)	\
    (This)->lpVtbl -> OnSerialPortChange(This,aSerialPort)

#define IInternalSessionControl_OnParallelPortChange(This,aParallelPort)	\
    (This)->lpVtbl -> OnParallelPortChange(This,aParallelPort)

#define IInternalSessionControl_OnStorageControllerChange(This)	\
    (This)->lpVtbl -> OnStorageControllerChange(This)

#define IInternalSessionControl_OnMediumChange(This,aMediumAttachment,aForce)	\
    (This)->lpVtbl -> OnMediumChange(This,aMediumAttachment,aForce)

#define IInternalSessionControl_OnVRDPServerChange(This)	\
    (This)->lpVtbl -> OnVRDPServerChange(This)

#define IInternalSessionControl_OnUSBControllerChange(This)	\
    (This)->lpVtbl -> OnUSBControllerChange(This)

#define IInternalSessionControl_OnSharedFolderChange(This,aGlobal)	\
    (This)->lpVtbl -> OnSharedFolderChange(This,aGlobal)

#define IInternalSessionControl_OnUSBDeviceAttach(This,aDevice,aError,aMaskedInterfaces)	\
    (This)->lpVtbl -> OnUSBDeviceAttach(This,aDevice,aError,aMaskedInterfaces)

#define IInternalSessionControl_OnUSBDeviceDetach(This,aId,aError)	\
    (This)->lpVtbl -> OnUSBDeviceDetach(This,aId,aError)

#define IInternalSessionControl_OnShowWindow(This,aCheck,aCanShow,aWinId)	\
    (This)->lpVtbl -> OnShowWindow(This,aCheck,aCanShow,aWinId)

#define IInternalSessionControl_AccessGuestProperty(This,aName,aValue,aFlags,aIsSetter,aRetValue,aRetTimestamp,aRetFlags)	\
    (This)->lpVtbl -> AccessGuestProperty(This,aName,aValue,aFlags,aIsSetter,aRetValue,aRetTimestamp,aRetFlags)

#define IInternalSessionControl_EnumerateGuestProperties(This,aPatterns,aKey,aValue,aTimestamp,aFlags)	\
    (This)->lpVtbl -> EnumerateGuestProperties(This,aPatterns,aKey,aValue,aTimestamp,aFlags)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IInternalSessionControl_GetPID_Proxy( 
    IInternalSessionControl * This,
    /* [retval][out] */ ULONG *aPid);


void __RPC_STUB IInternalSessionControl_GetPID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_GetRemoteConsole_Proxy( 
    IInternalSessionControl * This,
    /* [retval][out] */ IConsole **aConsole);


void __RPC_STUB IInternalSessionControl_GetRemoteConsole_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_AssignMachine_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IMachine *aMachine);


void __RPC_STUB IInternalSessionControl_AssignMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_AssignRemoteMachine_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IMachine *aMachine,
    /* [in] */ IConsole *aConsole);


void __RPC_STUB IInternalSessionControl_AssignRemoteMachine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_UpdateMachineState_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ MachineState aAMachineState);


void __RPC_STUB IInternalSessionControl_UpdateMachineState_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_Uninitialize_Proxy( 
    IInternalSessionControl * This);


void __RPC_STUB IInternalSessionControl_Uninitialize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnNetworkAdapterChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ INetworkAdapter *aNetworkAdapter,
    /* [in] */ BOOL aChangeAdapter);


void __RPC_STUB IInternalSessionControl_OnNetworkAdapterChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnSerialPortChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ ISerialPort *aSerialPort);


void __RPC_STUB IInternalSessionControl_OnSerialPortChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnParallelPortChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IParallelPort *aParallelPort);


void __RPC_STUB IInternalSessionControl_OnParallelPortChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnStorageControllerChange_Proxy( 
    IInternalSessionControl * This);


void __RPC_STUB IInternalSessionControl_OnStorageControllerChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnMediumChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IMediumAttachment *aMediumAttachment,
    /* [in] */ BOOL aForce);


void __RPC_STUB IInternalSessionControl_OnMediumChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnVRDPServerChange_Proxy( 
    IInternalSessionControl * This);


void __RPC_STUB IInternalSessionControl_OnVRDPServerChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnUSBControllerChange_Proxy( 
    IInternalSessionControl * This);


void __RPC_STUB IInternalSessionControl_OnUSBControllerChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnSharedFolderChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BOOL aGlobal);


void __RPC_STUB IInternalSessionControl_OnSharedFolderChange_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnUSBDeviceAttach_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IUSBDevice *aDevice,
    /* [in] */ IVirtualBoxErrorInfo *aError,
    /* [in] */ ULONG aMaskedInterfaces);


void __RPC_STUB IInternalSessionControl_OnUSBDeviceAttach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnUSBDeviceDetach_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BSTR aId,
    /* [in] */ IVirtualBoxErrorInfo *aError);


void __RPC_STUB IInternalSessionControl_OnUSBDeviceDetach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnShowWindow_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BOOL aCheck,
    /* [out] */ BOOL *aCanShow,
    /* [out] */ ULONG64 *aWinId);


void __RPC_STUB IInternalSessionControl_OnShowWindow_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_AccessGuestProperty_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aValue,
    /* [in] */ BSTR aFlags,
    /* [in] */ BOOL aIsSetter,
    /* [out] */ BSTR *aRetValue,
    /* [out] */ ULONG64 *aRetTimestamp,
    /* [out] */ BSTR *aRetFlags);


void __RPC_STUB IInternalSessionControl_AccessGuestProperty_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_EnumerateGuestProperties_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BSTR aPatterns,
    /* [out] */ SAFEARRAY * *aKey,
    /* [out] */ SAFEARRAY * *aValue,
    /* [out] */ SAFEARRAY * *aTimestamp,
    /* [out] */ SAFEARRAY * *aFlags);


void __RPC_STUB IInternalSessionControl_EnumerateGuestProperties_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IInternalSessionControl_INTERFACE_DEFINED__ */


#ifndef __ISession_INTERFACE_DEFINED__
#define __ISession_INTERFACE_DEFINED__

/* interface ISession */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ISession;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("12F4DCDB-12B2-4EC1-B7CD-DDD9F6C5BF4D")
    ISession : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ SessionState *aState) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ SessionType *aType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Machine( 
            /* [retval][out] */ IMachine **aMachine) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Console( 
            /* [retval][out] */ IConsole **aConsole) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISessionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISession * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISession * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISession * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISession * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISession * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISession * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISession * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            ISession * This,
            /* [retval][out] */ SessionState *aState);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            ISession * This,
            /* [retval][out] */ SessionType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Machine )( 
            ISession * This,
            /* [retval][out] */ IMachine **aMachine);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Console )( 
            ISession * This,
            /* [retval][out] */ IConsole **aConsole);
        
        HRESULT ( STDMETHODCALLTYPE *Close )( 
            ISession * This);
        
        END_INTERFACE
    } ISessionVtbl;

    interface ISession
    {
        CONST_VTBL struct ISessionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISession_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISession_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISession_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISession_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISession_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISession_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISession_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISession_get_State(This,aState)	\
    (This)->lpVtbl -> get_State(This,aState)

#define ISession_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define ISession_get_Machine(This,aMachine)	\
    (This)->lpVtbl -> get_Machine(This,aMachine)

#define ISession_get_Console(This,aConsole)	\
    (This)->lpVtbl -> get_Console(This,aConsole)

#define ISession_Close(This)	\
    (This)->lpVtbl -> Close(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISession_get_State_Proxy( 
    ISession * This,
    /* [retval][out] */ SessionState *aState);


void __RPC_STUB ISession_get_State_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISession_get_Type_Proxy( 
    ISession * This,
    /* [retval][out] */ SessionType *aType);


void __RPC_STUB ISession_get_Type_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISession_get_Machine_Proxy( 
    ISession * This,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB ISession_get_Machine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE ISession_get_Console_Proxy( 
    ISession * This,
    /* [retval][out] */ IConsole **aConsole);


void __RPC_STUB ISession_get_Console_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE ISession_Close_Proxy( 
    ISession * This);


void __RPC_STUB ISession_Close_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISession_INTERFACE_DEFINED__ */


#ifndef __IStorageController_INTERFACE_DEFINED__
#define __IStorageController_INTERFACE_DEFINED__

/* interface IStorageController */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IStorageController;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6bf8335b-d14a-44a5-9b45-ddc49ce7d5b2")
    IStorageController : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxDevicesPerPortCount( 
            /* [retval][out] */ ULONG *aMaxDevicesPerPortCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MinPortCount( 
            /* [retval][out] */ ULONG *aMinPortCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxPortCount( 
            /* [retval][out] */ ULONG *aMaxPortCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Instance( 
            /* [retval][out] */ ULONG *aInstance) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Instance( 
            /* [in] */ ULONG aInstance) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortCount( 
            /* [retval][out] */ ULONG *aPortCount) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortCount( 
            /* [in] */ ULONG aPortCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Bus( 
            /* [retval][out] */ StorageBus *aBus) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ControllerType( 
            /* [retval][out] */ StorageControllerType *aControllerType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ControllerType( 
            /* [in] */ StorageControllerType aControllerType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetIDEEmulationPort( 
            /* [in] */ LONG aDevicePosition,
            /* [retval][out] */ LONG *aPortNumber) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetIDEEmulationPort( 
            /* [in] */ LONG aDevicePosition,
            /* [in] */ LONG aPortNumber) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IStorageControllerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IStorageController * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IStorageController * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IStorageController * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IStorageController * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IStorageController * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IStorageController * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IStorageController * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IStorageController * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxDevicesPerPortCount )( 
            IStorageController * This,
            /* [retval][out] */ ULONG *aMaxDevicesPerPortCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinPortCount )( 
            IStorageController * This,
            /* [retval][out] */ ULONG *aMinPortCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxPortCount )( 
            IStorageController * This,
            /* [retval][out] */ ULONG *aMaxPortCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Instance )( 
            IStorageController * This,
            /* [retval][out] */ ULONG *aInstance);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Instance )( 
            IStorageController * This,
            /* [in] */ ULONG aInstance);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortCount )( 
            IStorageController * This,
            /* [retval][out] */ ULONG *aPortCount);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortCount )( 
            IStorageController * This,
            /* [in] */ ULONG aPortCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Bus )( 
            IStorageController * This,
            /* [retval][out] */ StorageBus *aBus);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ControllerType )( 
            IStorageController * This,
            /* [retval][out] */ StorageControllerType *aControllerType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ControllerType )( 
            IStorageController * This,
            /* [in] */ StorageControllerType aControllerType);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDEEmulationPort )( 
            IStorageController * This,
            /* [in] */ LONG aDevicePosition,
            /* [retval][out] */ LONG *aPortNumber);
        
        HRESULT ( STDMETHODCALLTYPE *SetIDEEmulationPort )( 
            IStorageController * This,
            /* [in] */ LONG aDevicePosition,
            /* [in] */ LONG aPortNumber);
        
        END_INTERFACE
    } IStorageControllerVtbl;

    interface IStorageController
    {
        CONST_VTBL struct IStorageControllerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IStorageController_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IStorageController_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IStorageController_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IStorageController_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IStorageController_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IStorageController_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IStorageController_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IStorageController_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define IStorageController_get_MaxDevicesPerPortCount(This,aMaxDevicesPerPortCount)	\
    (This)->lpVtbl -> get_MaxDevicesPerPortCount(This,aMaxDevicesPerPortCount)

#define IStorageController_get_MinPortCount(This,aMinPortCount)	\
    (This)->lpVtbl -> get_MinPortCount(This,aMinPortCount)

#define IStorageController_get_MaxPortCount(This,aMaxPortCount)	\
    (This)->lpVtbl -> get_MaxPortCount(This,aMaxPortCount)

#define IStorageController_get_Instance(This,aInstance)	\
    (This)->lpVtbl -> get_Instance(This,aInstance)

#define IStorageController_put_Instance(This,aInstance)	\
    (This)->lpVtbl -> put_Instance(This,aInstance)

#define IStorageController_get_PortCount(This,aPortCount)	\
    (This)->lpVtbl -> get_PortCount(This,aPortCount)

#define IStorageController_put_PortCount(This,aPortCount)	\
    (This)->lpVtbl -> put_PortCount(This,aPortCount)

#define IStorageController_get_Bus(This,aBus)	\
    (This)->lpVtbl -> get_Bus(This,aBus)

#define IStorageController_get_ControllerType(This,aControllerType)	\
    (This)->lpVtbl -> get_ControllerType(This,aControllerType)

#define IStorageController_put_ControllerType(This,aControllerType)	\
    (This)->lpVtbl -> put_ControllerType(This,aControllerType)

#define IStorageController_GetIDEEmulationPort(This,aDevicePosition,aPortNumber)	\
    (This)->lpVtbl -> GetIDEEmulationPort(This,aDevicePosition,aPortNumber)

#define IStorageController_SetIDEEmulationPort(This,aDevicePosition,aPortNumber)	\
    (This)->lpVtbl -> SetIDEEmulationPort(This,aDevicePosition,aPortNumber)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_Name_Proxy( 
    IStorageController * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB IStorageController_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_MaxDevicesPerPortCount_Proxy( 
    IStorageController * This,
    /* [retval][out] */ ULONG *aMaxDevicesPerPortCount);


void __RPC_STUB IStorageController_get_MaxDevicesPerPortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_MinPortCount_Proxy( 
    IStorageController * This,
    /* [retval][out] */ ULONG *aMinPortCount);


void __RPC_STUB IStorageController_get_MinPortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_MaxPortCount_Proxy( 
    IStorageController * This,
    /* [retval][out] */ ULONG *aMaxPortCount);


void __RPC_STUB IStorageController_get_MaxPortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_Instance_Proxy( 
    IStorageController * This,
    /* [retval][out] */ ULONG *aInstance);


void __RPC_STUB IStorageController_get_Instance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IStorageController_put_Instance_Proxy( 
    IStorageController * This,
    /* [in] */ ULONG aInstance);


void __RPC_STUB IStorageController_put_Instance_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_PortCount_Proxy( 
    IStorageController * This,
    /* [retval][out] */ ULONG *aPortCount);


void __RPC_STUB IStorageController_get_PortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IStorageController_put_PortCount_Proxy( 
    IStorageController * This,
    /* [in] */ ULONG aPortCount);


void __RPC_STUB IStorageController_put_PortCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_Bus_Proxy( 
    IStorageController * This,
    /* [retval][out] */ StorageBus *aBus);


void __RPC_STUB IStorageController_get_Bus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_ControllerType_Proxy( 
    IStorageController * This,
    /* [retval][out] */ StorageControllerType *aControllerType);


void __RPC_STUB IStorageController_get_ControllerType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IStorageController_put_ControllerType_Proxy( 
    IStorageController * This,
    /* [in] */ StorageControllerType aControllerType);


void __RPC_STUB IStorageController_put_ControllerType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IStorageController_GetIDEEmulationPort_Proxy( 
    IStorageController * This,
    /* [in] */ LONG aDevicePosition,
    /* [retval][out] */ LONG *aPortNumber);


void __RPC_STUB IStorageController_GetIDEEmulationPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IStorageController_SetIDEEmulationPort_Proxy( 
    IStorageController * This,
    /* [in] */ LONG aDevicePosition,
    /* [in] */ LONG aPortNumber);


void __RPC_STUB IStorageController_SetIDEEmulationPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IStorageController_INTERFACE_DEFINED__ */


#ifndef __IPerformanceMetric_INTERFACE_DEFINED__
#define __IPerformanceMetric_INTERFACE_DEFINED__

/* interface IPerformanceMetric */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IPerformanceMetric;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2a1a60ae-9345-4019-ad53-d34ba41cbfe9")
    IPerformanceMetric : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MetricName( 
            /* [retval][out] */ BSTR *aMetricName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Object( 
            /* [retval][out] */ IUnknown **aObject) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Period( 
            /* [retval][out] */ ULONG *aPeriod) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ ULONG *aCount) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Unit( 
            /* [retval][out] */ BSTR *aUnit) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MinimumValue( 
            /* [retval][out] */ LONG *aMinimumValue) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaximumValue( 
            /* [retval][out] */ LONG *aMaximumValue) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPerformanceMetricVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPerformanceMetric * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPerformanceMetric * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPerformanceMetric * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IPerformanceMetric * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IPerformanceMetric * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IPerformanceMetric * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IPerformanceMetric * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MetricName )( 
            IPerformanceMetric * This,
            /* [retval][out] */ BSTR *aMetricName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Object )( 
            IPerformanceMetric * This,
            /* [retval][out] */ IUnknown **aObject);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IPerformanceMetric * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Period )( 
            IPerformanceMetric * This,
            /* [retval][out] */ ULONG *aPeriod);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Count )( 
            IPerformanceMetric * This,
            /* [retval][out] */ ULONG *aCount);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Unit )( 
            IPerformanceMetric * This,
            /* [retval][out] */ BSTR *aUnit);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinimumValue )( 
            IPerformanceMetric * This,
            /* [retval][out] */ LONG *aMinimumValue);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaximumValue )( 
            IPerformanceMetric * This,
            /* [retval][out] */ LONG *aMaximumValue);
        
        END_INTERFACE
    } IPerformanceMetricVtbl;

    interface IPerformanceMetric
    {
        CONST_VTBL struct IPerformanceMetricVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPerformanceMetric_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPerformanceMetric_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPerformanceMetric_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPerformanceMetric_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPerformanceMetric_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPerformanceMetric_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPerformanceMetric_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPerformanceMetric_get_MetricName(This,aMetricName)	\
    (This)->lpVtbl -> get_MetricName(This,aMetricName)

#define IPerformanceMetric_get_Object(This,aObject)	\
    (This)->lpVtbl -> get_Object(This,aObject)

#define IPerformanceMetric_get_Description(This,aDescription)	\
    (This)->lpVtbl -> get_Description(This,aDescription)

#define IPerformanceMetric_get_Period(This,aPeriod)	\
    (This)->lpVtbl -> get_Period(This,aPeriod)

#define IPerformanceMetric_get_Count(This,aCount)	\
    (This)->lpVtbl -> get_Count(This,aCount)

#define IPerformanceMetric_get_Unit(This,aUnit)	\
    (This)->lpVtbl -> get_Unit(This,aUnit)

#define IPerformanceMetric_get_MinimumValue(This,aMinimumValue)	\
    (This)->lpVtbl -> get_MinimumValue(This,aMinimumValue)

#define IPerformanceMetric_get_MaximumValue(This,aMaximumValue)	\
    (This)->lpVtbl -> get_MaximumValue(This,aMaximumValue)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_MetricName_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ BSTR *aMetricName);


void __RPC_STUB IPerformanceMetric_get_MetricName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_Object_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ IUnknown **aObject);


void __RPC_STUB IPerformanceMetric_get_Object_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_Description_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ BSTR *aDescription);


void __RPC_STUB IPerformanceMetric_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_Period_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ ULONG *aPeriod);


void __RPC_STUB IPerformanceMetric_get_Period_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_Count_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ ULONG *aCount);


void __RPC_STUB IPerformanceMetric_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_Unit_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ BSTR *aUnit);


void __RPC_STUB IPerformanceMetric_get_Unit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_MinimumValue_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ LONG *aMinimumValue);


void __RPC_STUB IPerformanceMetric_get_MinimumValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceMetric_get_MaximumValue_Proxy( 
    IPerformanceMetric * This,
    /* [retval][out] */ LONG *aMaximumValue);


void __RPC_STUB IPerformanceMetric_get_MaximumValue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPerformanceMetric_INTERFACE_DEFINED__ */


#ifndef __IPerformanceCollector_INTERFACE_DEFINED__
#define __IPerformanceCollector_INTERFACE_DEFINED__

/* interface IPerformanceCollector */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IPerformanceCollector;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e22e1acb-ac4a-43bb-a31c-17321659b0c6")
    IPerformanceCollector : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MetricNames( 
            /* [retval][out] */ SAFEARRAY * *aMetricNames) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMetrics( 
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [retval][out] */ SAFEARRAY * *aMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetupMetrics( 
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [in] */ ULONG aPeriod,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableMetrics( 
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DisableMetrics( 
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QueryMetricsData( 
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [out] */ SAFEARRAY * *aReturnMetricNames,
            /* [out] */ SAFEARRAY * *aReturnObjects,
            /* [out] */ SAFEARRAY * *aReturnUnits,
            /* [out] */ SAFEARRAY * *aReturnScales,
            /* [out] */ SAFEARRAY * *aReturnSequenceNumbers,
            /* [out] */ SAFEARRAY * *aReturnDataIndices,
            /* [out] */ SAFEARRAY * *aReturnDataLengths,
            /* [retval][out] */ SAFEARRAY * *aReturnData) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPerformanceCollectorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPerformanceCollector * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPerformanceCollector * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPerformanceCollector * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IPerformanceCollector * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IPerformanceCollector * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IPerformanceCollector * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IPerformanceCollector * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MetricNames )( 
            IPerformanceCollector * This,
            /* [retval][out] */ SAFEARRAY * *aMetricNames);
        
        HRESULT ( STDMETHODCALLTYPE *GetMetrics )( 
            IPerformanceCollector * This,
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [retval][out] */ SAFEARRAY * *aMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *SetupMetrics )( 
            IPerformanceCollector * This,
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [in] */ ULONG aPeriod,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *EnableMetrics )( 
            IPerformanceCollector * This,
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *DisableMetrics )( 
            IPerformanceCollector * This,
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *QueryMetricsData )( 
            IPerformanceCollector * This,
            /* [out][in] */ SAFEARRAY * *aMetricNames,
            /* [out][in] */ SAFEARRAY * *aObjects,
            /* [out] */ SAFEARRAY * *aReturnMetricNames,
            /* [out] */ SAFEARRAY * *aReturnObjects,
            /* [out] */ SAFEARRAY * *aReturnUnits,
            /* [out] */ SAFEARRAY * *aReturnScales,
            /* [out] */ SAFEARRAY * *aReturnSequenceNumbers,
            /* [out] */ SAFEARRAY * *aReturnDataIndices,
            /* [out] */ SAFEARRAY * *aReturnDataLengths,
            /* [retval][out] */ SAFEARRAY * *aReturnData);
        
        END_INTERFACE
    } IPerformanceCollectorVtbl;

    interface IPerformanceCollector
    {
        CONST_VTBL struct IPerformanceCollectorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IPerformanceCollector_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IPerformanceCollector_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IPerformanceCollector_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IPerformanceCollector_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IPerformanceCollector_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IPerformanceCollector_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IPerformanceCollector_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IPerformanceCollector_get_MetricNames(This,aMetricNames)	\
    (This)->lpVtbl -> get_MetricNames(This,aMetricNames)

#define IPerformanceCollector_GetMetrics(This,aMetricNames,aObjects,aMetrics)	\
    (This)->lpVtbl -> GetMetrics(This,aMetricNames,aObjects,aMetrics)

#define IPerformanceCollector_SetupMetrics(This,aMetricNames,aObjects,aPeriod,aCount,aAffectedMetrics)	\
    (This)->lpVtbl -> SetupMetrics(This,aMetricNames,aObjects,aPeriod,aCount,aAffectedMetrics)

#define IPerformanceCollector_EnableMetrics(This,aMetricNames,aObjects,aAffectedMetrics)	\
    (This)->lpVtbl -> EnableMetrics(This,aMetricNames,aObjects,aAffectedMetrics)

#define IPerformanceCollector_DisableMetrics(This,aMetricNames,aObjects,aAffectedMetrics)	\
    (This)->lpVtbl -> DisableMetrics(This,aMetricNames,aObjects,aAffectedMetrics)

#define IPerformanceCollector_QueryMetricsData(This,aMetricNames,aObjects,aReturnMetricNames,aReturnObjects,aReturnUnits,aReturnScales,aReturnSequenceNumbers,aReturnDataIndices,aReturnDataLengths,aReturnData)	\
    (This)->lpVtbl -> QueryMetricsData(This,aMetricNames,aObjects,aReturnMetricNames,aReturnObjects,aReturnUnits,aReturnScales,aReturnSequenceNumbers,aReturnDataIndices,aReturnDataLengths,aReturnData)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IPerformanceCollector_get_MetricNames_Proxy( 
    IPerformanceCollector * This,
    /* [retval][out] */ SAFEARRAY * *aMetricNames);


void __RPC_STUB IPerformanceCollector_get_MetricNames_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IPerformanceCollector_GetMetrics_Proxy( 
    IPerformanceCollector * This,
    /* [out][in] */ SAFEARRAY * *aMetricNames,
    /* [out][in] */ SAFEARRAY * *aObjects,
    /* [retval][out] */ SAFEARRAY * *aMetrics);


void __RPC_STUB IPerformanceCollector_GetMetrics_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IPerformanceCollector_SetupMetrics_Proxy( 
    IPerformanceCollector * This,
    /* [out][in] */ SAFEARRAY * *aMetricNames,
    /* [out][in] */ SAFEARRAY * *aObjects,
    /* [in] */ ULONG aPeriod,
    /* [in] */ ULONG aCount,
    /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);


void __RPC_STUB IPerformanceCollector_SetupMetrics_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IPerformanceCollector_EnableMetrics_Proxy( 
    IPerformanceCollector * This,
    /* [out][in] */ SAFEARRAY * *aMetricNames,
    /* [out][in] */ SAFEARRAY * *aObjects,
    /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);


void __RPC_STUB IPerformanceCollector_EnableMetrics_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IPerformanceCollector_DisableMetrics_Proxy( 
    IPerformanceCollector * This,
    /* [out][in] */ SAFEARRAY * *aMetricNames,
    /* [out][in] */ SAFEARRAY * *aObjects,
    /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);


void __RPC_STUB IPerformanceCollector_DisableMetrics_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IPerformanceCollector_QueryMetricsData_Proxy( 
    IPerformanceCollector * This,
    /* [out][in] */ SAFEARRAY * *aMetricNames,
    /* [out][in] */ SAFEARRAY * *aObjects,
    /* [out] */ SAFEARRAY * *aReturnMetricNames,
    /* [out] */ SAFEARRAY * *aReturnObjects,
    /* [out] */ SAFEARRAY * *aReturnUnits,
    /* [out] */ SAFEARRAY * *aReturnScales,
    /* [out] */ SAFEARRAY * *aReturnSequenceNumbers,
    /* [out] */ SAFEARRAY * *aReturnDataIndices,
    /* [out] */ SAFEARRAY * *aReturnDataLengths,
    /* [retval][out] */ SAFEARRAY * *aReturnData);


void __RPC_STUB IPerformanceCollector_QueryMetricsData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IPerformanceCollector_INTERFACE_DEFINED__ */


EXTERN_C const CLSID CLSID_VirtualBox;

#ifdef __cplusplus

class DECLSPEC_UUID("B1A7A4F2-47B9-4A1E-82B2-07CCD5323C3F")
VirtualBox;
#endif

EXTERN_C const CLSID CLSID_Session;

#ifdef __cplusplus

class DECLSPEC_UUID("3C02F46D-C9D2-4F11-A384-53F0CF917214")
Session;
#endif

EXTERN_C const CLSID CLSID_CallbackWrapper;

#ifdef __cplusplus

class DECLSPEC_UUID("49EE8561-5563-4715-B18C-A4B1A490DAFE")
CallbackWrapper;
#endif
#endif /* __VirtualBox_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


