

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


 /* File created by MIDL compiler version 6.00.0361 */
/* at Fri Sep  7 18:33:40 2012
 */
/* Compiler settings for Z:\home\vbox\tinderbox\4.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 __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 __IPciAddress_FWD_DEFINED__
#define __IPciAddress_FWD_DEFINED__
typedef interface IPciAddress IPciAddress;
#endif 	/* __IPciAddress_FWD_DEFINED__ */


#ifndef __IPciDeviceAttachment_FWD_DEFINED__
#define __IPciDeviceAttachment_FWD_DEFINED__
typedef interface IPciDeviceAttachment IPciDeviceAttachment;
#endif 	/* __IPciDeviceAttachment_FWD_DEFINED__ */


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


#ifndef __IVRDEServerInfo_FWD_DEFINED__
#define __IVRDEServerInfo_FWD_DEFINED__
typedef interface IVRDEServerInfo IVRDEServerInfo;
#endif 	/* __IVRDEServerInfo_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 __IAdditionsFacility_FWD_DEFINED__
#define __IAdditionsFacility_FWD_DEFINED__
typedef interface IAdditionsFacility IAdditionsFacility;
#endif 	/* __IAdditionsFacility_FWD_DEFINED__ */


#ifndef __IGuestDirEntry_FWD_DEFINED__
#define __IGuestDirEntry_FWD_DEFINED__
typedef interface IGuestDirEntry IGuestDirEntry;
#endif 	/* __IGuestDirEntry_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 __IVRDEServer_FWD_DEFINED__
#define __IVRDEServer_FWD_DEFINED__
typedef interface IVRDEServer IVRDEServer;
#endif 	/* __IVRDEServer_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 __INATEngine_FWD_DEFINED__
#define __INATEngine_FWD_DEFINED__
typedef interface INATEngine INATEngine;
#endif 	/* __INATEngine_FWD_DEFINED__ */


#ifndef __IExtPackPlugIn_FWD_DEFINED__
#define __IExtPackPlugIn_FWD_DEFINED__
typedef interface IExtPackPlugIn IExtPackPlugIn;
#endif 	/* __IExtPackPlugIn_FWD_DEFINED__ */


#ifndef __IExtPackBase_FWD_DEFINED__
#define __IExtPackBase_FWD_DEFINED__
typedef interface IExtPackBase IExtPackBase;
#endif 	/* __IExtPackBase_FWD_DEFINED__ */


#ifndef __IExtPack_FWD_DEFINED__
#define __IExtPack_FWD_DEFINED__
typedef interface IExtPack IExtPack;
#endif 	/* __IExtPack_FWD_DEFINED__ */


#ifndef __IExtPackFile_FWD_DEFINED__
#define __IExtPackFile_FWD_DEFINED__
typedef interface IExtPackFile IExtPackFile;
#endif 	/* __IExtPackFile_FWD_DEFINED__ */


#ifndef __IExtPackManager_FWD_DEFINED__
#define __IExtPackManager_FWD_DEFINED__
typedef interface IExtPackManager IExtPackManager;
#endif 	/* __IExtPackManager_FWD_DEFINED__ */


#ifndef __IBandwidthGroup_FWD_DEFINED__
#define __IBandwidthGroup_FWD_DEFINED__
typedef interface IBandwidthGroup IBandwidthGroup;
#endif 	/* __IBandwidthGroup_FWD_DEFINED__ */


#ifndef __IBandwidthControl_FWD_DEFINED__
#define __IBandwidthControl_FWD_DEFINED__
typedef interface IBandwidthControl IBandwidthControl;
#endif 	/* __IBandwidthControl_FWD_DEFINED__ */


#ifndef __IVirtualBoxClient_FWD_DEFINED__
#define __IVirtualBoxClient_FWD_DEFINED__
typedef interface IVirtualBoxClient IVirtualBoxClient;
#endif 	/* __IVirtualBoxClient_FWD_DEFINED__ */


#ifndef __IEventSource_FWD_DEFINED__
#define __IEventSource_FWD_DEFINED__
typedef interface IEventSource IEventSource;
#endif 	/* __IEventSource_FWD_DEFINED__ */


#ifndef __IEventListener_FWD_DEFINED__
#define __IEventListener_FWD_DEFINED__
typedef interface IEventListener IEventListener;
#endif 	/* __IEventListener_FWD_DEFINED__ */


#ifndef __IEvent_FWD_DEFINED__
#define __IEvent_FWD_DEFINED__
typedef interface IEvent IEvent;
#endif 	/* __IEvent_FWD_DEFINED__ */


#ifndef __IReusableEvent_FWD_DEFINED__
#define __IReusableEvent_FWD_DEFINED__
typedef interface IReusableEvent IReusableEvent;
#endif 	/* __IReusableEvent_FWD_DEFINED__ */


#ifndef __IMachineEvent_FWD_DEFINED__
#define __IMachineEvent_FWD_DEFINED__
typedef interface IMachineEvent IMachineEvent;
#endif 	/* __IMachineEvent_FWD_DEFINED__ */


#ifndef __IMachineStateChangedEvent_FWD_DEFINED__
#define __IMachineStateChangedEvent_FWD_DEFINED__
typedef interface IMachineStateChangedEvent IMachineStateChangedEvent;
#endif 	/* __IMachineStateChangedEvent_FWD_DEFINED__ */


#ifndef __IMachineDataChangedEvent_FWD_DEFINED__
#define __IMachineDataChangedEvent_FWD_DEFINED__
typedef interface IMachineDataChangedEvent IMachineDataChangedEvent;
#endif 	/* __IMachineDataChangedEvent_FWD_DEFINED__ */


#ifndef __IMediumRegisteredEvent_FWD_DEFINED__
#define __IMediumRegisteredEvent_FWD_DEFINED__
typedef interface IMediumRegisteredEvent IMediumRegisteredEvent;
#endif 	/* __IMediumRegisteredEvent_FWD_DEFINED__ */


#ifndef __IMachineRegisteredEvent_FWD_DEFINED__
#define __IMachineRegisteredEvent_FWD_DEFINED__
typedef interface IMachineRegisteredEvent IMachineRegisteredEvent;
#endif 	/* __IMachineRegisteredEvent_FWD_DEFINED__ */


#ifndef __ISessionStateChangedEvent_FWD_DEFINED__
#define __ISessionStateChangedEvent_FWD_DEFINED__
typedef interface ISessionStateChangedEvent ISessionStateChangedEvent;
#endif 	/* __ISessionStateChangedEvent_FWD_DEFINED__ */


#ifndef __IGuestPropertyChangedEvent_FWD_DEFINED__
#define __IGuestPropertyChangedEvent_FWD_DEFINED__
typedef interface IGuestPropertyChangedEvent IGuestPropertyChangedEvent;
#endif 	/* __IGuestPropertyChangedEvent_FWD_DEFINED__ */


#ifndef __ISnapshotEvent_FWD_DEFINED__
#define __ISnapshotEvent_FWD_DEFINED__
typedef interface ISnapshotEvent ISnapshotEvent;
#endif 	/* __ISnapshotEvent_FWD_DEFINED__ */


#ifndef __ISnapshotTakenEvent_FWD_DEFINED__
#define __ISnapshotTakenEvent_FWD_DEFINED__
typedef interface ISnapshotTakenEvent ISnapshotTakenEvent;
#endif 	/* __ISnapshotTakenEvent_FWD_DEFINED__ */


#ifndef __ISnapshotDeletedEvent_FWD_DEFINED__
#define __ISnapshotDeletedEvent_FWD_DEFINED__
typedef interface ISnapshotDeletedEvent ISnapshotDeletedEvent;
#endif 	/* __ISnapshotDeletedEvent_FWD_DEFINED__ */


#ifndef __ISnapshotChangedEvent_FWD_DEFINED__
#define __ISnapshotChangedEvent_FWD_DEFINED__
typedef interface ISnapshotChangedEvent ISnapshotChangedEvent;
#endif 	/* __ISnapshotChangedEvent_FWD_DEFINED__ */


#ifndef __IMousePointerShapeChangedEvent_FWD_DEFINED__
#define __IMousePointerShapeChangedEvent_FWD_DEFINED__
typedef interface IMousePointerShapeChangedEvent IMousePointerShapeChangedEvent;
#endif 	/* __IMousePointerShapeChangedEvent_FWD_DEFINED__ */


#ifndef __IMouseCapabilityChangedEvent_FWD_DEFINED__
#define __IMouseCapabilityChangedEvent_FWD_DEFINED__
typedef interface IMouseCapabilityChangedEvent IMouseCapabilityChangedEvent;
#endif 	/* __IMouseCapabilityChangedEvent_FWD_DEFINED__ */


#ifndef __IKeyboardLedsChangedEvent_FWD_DEFINED__
#define __IKeyboardLedsChangedEvent_FWD_DEFINED__
typedef interface IKeyboardLedsChangedEvent IKeyboardLedsChangedEvent;
#endif 	/* __IKeyboardLedsChangedEvent_FWD_DEFINED__ */


#ifndef __IStateChangedEvent_FWD_DEFINED__
#define __IStateChangedEvent_FWD_DEFINED__
typedef interface IStateChangedEvent IStateChangedEvent;
#endif 	/* __IStateChangedEvent_FWD_DEFINED__ */


#ifndef __IAdditionsStateChangedEvent_FWD_DEFINED__
#define __IAdditionsStateChangedEvent_FWD_DEFINED__
typedef interface IAdditionsStateChangedEvent IAdditionsStateChangedEvent;
#endif 	/* __IAdditionsStateChangedEvent_FWD_DEFINED__ */


#ifndef __INetworkAdapterChangedEvent_FWD_DEFINED__
#define __INetworkAdapterChangedEvent_FWD_DEFINED__
typedef interface INetworkAdapterChangedEvent INetworkAdapterChangedEvent;
#endif 	/* __INetworkAdapterChangedEvent_FWD_DEFINED__ */


#ifndef __ISerialPortChangedEvent_FWD_DEFINED__
#define __ISerialPortChangedEvent_FWD_DEFINED__
typedef interface ISerialPortChangedEvent ISerialPortChangedEvent;
#endif 	/* __ISerialPortChangedEvent_FWD_DEFINED__ */


#ifndef __IParallelPortChangedEvent_FWD_DEFINED__
#define __IParallelPortChangedEvent_FWD_DEFINED__
typedef interface IParallelPortChangedEvent IParallelPortChangedEvent;
#endif 	/* __IParallelPortChangedEvent_FWD_DEFINED__ */


#ifndef __IStorageControllerChangedEvent_FWD_DEFINED__
#define __IStorageControllerChangedEvent_FWD_DEFINED__
typedef interface IStorageControllerChangedEvent IStorageControllerChangedEvent;
#endif 	/* __IStorageControllerChangedEvent_FWD_DEFINED__ */


#ifndef __IMediumChangedEvent_FWD_DEFINED__
#define __IMediumChangedEvent_FWD_DEFINED__
typedef interface IMediumChangedEvent IMediumChangedEvent;
#endif 	/* __IMediumChangedEvent_FWD_DEFINED__ */


#ifndef __ICPUChangedEvent_FWD_DEFINED__
#define __ICPUChangedEvent_FWD_DEFINED__
typedef interface ICPUChangedEvent ICPUChangedEvent;
#endif 	/* __ICPUChangedEvent_FWD_DEFINED__ */


#ifndef __ICPUExecutionCapChangedEvent_FWD_DEFINED__
#define __ICPUExecutionCapChangedEvent_FWD_DEFINED__
typedef interface ICPUExecutionCapChangedEvent ICPUExecutionCapChangedEvent;
#endif 	/* __ICPUExecutionCapChangedEvent_FWD_DEFINED__ */


#ifndef __IGuestKeyboardEvent_FWD_DEFINED__
#define __IGuestKeyboardEvent_FWD_DEFINED__
typedef interface IGuestKeyboardEvent IGuestKeyboardEvent;
#endif 	/* __IGuestKeyboardEvent_FWD_DEFINED__ */


#ifndef __IGuestMouseEvent_FWD_DEFINED__
#define __IGuestMouseEvent_FWD_DEFINED__
typedef interface IGuestMouseEvent IGuestMouseEvent;
#endif 	/* __IGuestMouseEvent_FWD_DEFINED__ */


#ifndef __IVRDEServerChangedEvent_FWD_DEFINED__
#define __IVRDEServerChangedEvent_FWD_DEFINED__
typedef interface IVRDEServerChangedEvent IVRDEServerChangedEvent;
#endif 	/* __IVRDEServerChangedEvent_FWD_DEFINED__ */


#ifndef __IVRDEServerInfoChangedEvent_FWD_DEFINED__
#define __IVRDEServerInfoChangedEvent_FWD_DEFINED__
typedef interface IVRDEServerInfoChangedEvent IVRDEServerInfoChangedEvent;
#endif 	/* __IVRDEServerInfoChangedEvent_FWD_DEFINED__ */


#ifndef __IUSBControllerChangedEvent_FWD_DEFINED__
#define __IUSBControllerChangedEvent_FWD_DEFINED__
typedef interface IUSBControllerChangedEvent IUSBControllerChangedEvent;
#endif 	/* __IUSBControllerChangedEvent_FWD_DEFINED__ */


#ifndef __IUSBDeviceStateChangedEvent_FWD_DEFINED__
#define __IUSBDeviceStateChangedEvent_FWD_DEFINED__
typedef interface IUSBDeviceStateChangedEvent IUSBDeviceStateChangedEvent;
#endif 	/* __IUSBDeviceStateChangedEvent_FWD_DEFINED__ */


#ifndef __ISharedFolderChangedEvent_FWD_DEFINED__
#define __ISharedFolderChangedEvent_FWD_DEFINED__
typedef interface ISharedFolderChangedEvent ISharedFolderChangedEvent;
#endif 	/* __ISharedFolderChangedEvent_FWD_DEFINED__ */


#ifndef __IRuntimeErrorEvent_FWD_DEFINED__
#define __IRuntimeErrorEvent_FWD_DEFINED__
typedef interface IRuntimeErrorEvent IRuntimeErrorEvent;
#endif 	/* __IRuntimeErrorEvent_FWD_DEFINED__ */


#ifndef __IEventSourceChangedEvent_FWD_DEFINED__
#define __IEventSourceChangedEvent_FWD_DEFINED__
typedef interface IEventSourceChangedEvent IEventSourceChangedEvent;
#endif 	/* __IEventSourceChangedEvent_FWD_DEFINED__ */


#ifndef __IExtraDataChangedEvent_FWD_DEFINED__
#define __IExtraDataChangedEvent_FWD_DEFINED__
typedef interface IExtraDataChangedEvent IExtraDataChangedEvent;
#endif 	/* __IExtraDataChangedEvent_FWD_DEFINED__ */


#ifndef __IVetoEvent_FWD_DEFINED__
#define __IVetoEvent_FWD_DEFINED__
typedef interface IVetoEvent IVetoEvent;
#endif 	/* __IVetoEvent_FWD_DEFINED__ */


#ifndef __IExtraDataCanChangeEvent_FWD_DEFINED__
#define __IExtraDataCanChangeEvent_FWD_DEFINED__
typedef interface IExtraDataCanChangeEvent IExtraDataCanChangeEvent;
#endif 	/* __IExtraDataCanChangeEvent_FWD_DEFINED__ */


#ifndef __ICanShowWindowEvent_FWD_DEFINED__
#define __ICanShowWindowEvent_FWD_DEFINED__
typedef interface ICanShowWindowEvent ICanShowWindowEvent;
#endif 	/* __ICanShowWindowEvent_FWD_DEFINED__ */


#ifndef __IShowWindowEvent_FWD_DEFINED__
#define __IShowWindowEvent_FWD_DEFINED__
typedef interface IShowWindowEvent IShowWindowEvent;
#endif 	/* __IShowWindowEvent_FWD_DEFINED__ */


#ifndef __INATRedirectEvent_FWD_DEFINED__
#define __INATRedirectEvent_FWD_DEFINED__
typedef interface INATRedirectEvent INATRedirectEvent;
#endif 	/* __INATRedirectEvent_FWD_DEFINED__ */


#ifndef __IHostPciDevicePlugEvent_FWD_DEFINED__
#define __IHostPciDevicePlugEvent_FWD_DEFINED__
typedef interface IHostPciDevicePlugEvent IHostPciDevicePlugEvent;
#endif 	/* __IHostPciDevicePlugEvent_FWD_DEFINED__ */


#ifndef __IVBoxSVCAvailabilityChangedEvent_FWD_DEFINED__
#define __IVBoxSVCAvailabilityChangedEvent_FWD_DEFINED__
typedef interface IVBoxSVCAvailabilityChangedEvent IVBoxSVCAvailabilityChangedEvent;
#endif 	/* __IVBoxSVCAvailabilityChangedEvent_FWD_DEFINED__ */


#ifndef __IBandwidthGroupChangedEvent_FWD_DEFINED__
#define __IBandwidthGroupChangedEvent_FWD_DEFINED__
typedef interface IBandwidthGroupChangedEvent IBandwidthGroupChangedEvent;
#endif 	/* __IBandwidthGroupChangedEvent_FWD_DEFINED__ */


#ifndef __IGuestMonitorChangedEvent_FWD_DEFINED__
#define __IGuestMonitorChangedEvent_FWD_DEFINED__
typedef interface IGuestMonitorChangedEvent IGuestMonitorChangedEvent;
#endif 	/* __IGuestMonitorChangedEvent_FWD_DEFINED__ */


#ifndef __IStorageDeviceChangedEvent_FWD_DEFINED__
#define __IStorageDeviceChangedEvent_FWD_DEFINED__
typedef interface IStorageDeviceChangedEvent IStorageDeviceChangedEvent;
#endif 	/* __IStorageDeviceChangedEvent_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 __VirtualBoxClient_FWD_DEFINED__
#define __VirtualBoxClient_FWD_DEFINED__

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

#endif 	/* __VirtualBoxClient_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__ */


/* 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_v1_10	= 12,
	SettingsVersion_v1_11	= 13,
	SettingsVersion_v1_12	= 14,
	SettingsVersion_Future	= 99999
    } 	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("ec6c6a9e-113d-4ff4-b44f-0b69f21c97fe") 
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_FaultTolerantSyncing	= 16,
	MachineState_DeletingSnapshotOnline	= 17,
	MachineState_DeletingSnapshotPaused	= 18,
	MachineState_RestoringSnapshot	= 19,
	MachineState_DeletingSnapshot	= 20,
	MachineState_SettingUp	= 21,
	MachineState_FirstOnline	= 5,
	MachineState_LastOnline	= 18,
	MachineState_FirstTransient	= 8,
	MachineState_LastTransient	= 21
    } 	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_Unlocked	= 1,
	SessionState_Locked	= 2,
	SessionState_Spawning	= 3,
	SessionState_Unlocking	= 4
    } 	SessionState;

#define SessionState_T SessionState
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("24d356a6-2f45-4abd-b977-1cbe9c4701f5") 
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_LargePages	= 5,
	HWVirtExPropertyType_Force	= 6
    } 	HWVirtExPropertyType;

#define HWVirtExPropertyType_T HWVirtExPropertyType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("5124f7ec-6b67-493c-9dee-ee45a44114e1") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0007
    {	FaultToleranceState_Inactive	= 1,
	FaultToleranceState_Master	= 2,
	FaultToleranceState_Standby	= 3
    } 	FaultToleranceState;

#define FaultToleranceState_T FaultToleranceState
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("138b53f8-db4b-47c5-b32b-4ef52f769413") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0008
    {	LockType_Write	= 2,
	LockType_Shared	= 1
    } 	LockType;

#define LockType_T LockType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("A13C02CB-0C2C-421E-8317-AC0E8AAA153A") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0009
    {	SessionType_Null	= 0,
	SessionType_WriteLock	= 1,
	SessionType_Remote	= 2,
	SessionType_Shared	= 3
    } 	SessionType;

#define SessionType_T SessionType
typedef /* [public][public][public][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_0010
    {	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_0011
    {	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_0012
    {	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_0013
    {	Scope_Global	= 0,
	Scope_Machine	= 1,
	Scope_Session	= 2
    } 	Scope;

#define Scope_T Scope
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("ae4fb9f7-29d2-45b4-b2c7-d579603135d5") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0014
    {	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_0015
    {	ProcessorFeature_HWVirtEx	= 0,
	ProcessorFeature_PAE	= 1,
	ProcessorFeature_LongMode	= 2,
	ProcessorFeature_NestedPaging	= 3
    } 	ProcessorFeature;

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

#define FirmwareType_T FirmwareType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("0d3c17a2-821a-4b2e-ae41-890c6c60aa97") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0017
    {	PointingHidType_None	= 1,
	PointingHidType_PS2Mouse	= 2,
	PointingHidType_USBMouse	= 3,
	PointingHidType_USBTablet	= 4,
	PointingHidType_ComboMouse	= 5
    } 	PointingHidType;

#define PointingHidType_T PointingHidType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("5a5b0996-3a3e-44bb-9019-56979812cbcc") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0018
    {	KeyboardHidType_None	= 1,
	KeyboardHidType_PS2Keyboard	= 2,
	KeyboardHidType_USBKeyboard	= 3,
	KeyboardHidType_ComboKeyboard	= 4
    } 	KeyboardHidType;

#define KeyboardHidType_T KeyboardHidType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("813999ba-b949-48a8-9230-aadc6285e2f2") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0019
    {	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_0020
    {	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][v1_enum][uuid] */  DECLSPEC_UUID("0a981523-3b20-4004-8ee3-dfd322202ace") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0021
    {	ImportOptions_KeepAllMACs	= 1,
	ImportOptions_KeepNATMACs	= 2
    } 	ImportOptions;

#define ImportOptions_T ImportOptions
typedef /* [public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("303c0900-a746-4612-8c67-79003e91f459") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0022
    {	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_HardDiskControllerSAS	= 17,
	VirtualSystemDescriptionType_HardDiskImage	= 18,
	VirtualSystemDescriptionType_Floppy	= 19,
	VirtualSystemDescriptionType_CDROM	= 20,
	VirtualSystemDescriptionType_NetworkAdapter	= 21,
	VirtualSystemDescriptionType_USBController	= 22,
	VirtualSystemDescriptionType_SoundCard	= 23,
	VirtualSystemDescriptionType_SettingsFile	= 24
    } 	VirtualSystemDescriptionType;

#define VirtualSystemDescriptionType_T VirtualSystemDescriptionType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("56d9403f-3425-4118-9919-36f2a9b8c77c") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0023
    {	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("67897c50-7cca-47a9-83f6-ce8fd8eb5441") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0024
    {	CleanupMode_UnregisterOnly	= 1,
	CleanupMode_DetachAllReturnNone	= 2,
	CleanupMode_DetachAllReturnHardDisksOnly	= 3,
	CleanupMode_Full	= 4
    } 	CleanupMode;

#define CleanupMode_T CleanupMode
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("A7A159FE-5096-4B8D-8C3C-D033CB0B35A8") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0025
    {	CloneMode_MachineState	= 1,
	CloneMode_MachineAndChildStates	= 2,
	CloneMode_AllStates	= 3
    } 	CloneMode;

#define CloneMode_T CloneMode
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("22243f8e-96ab-497c-8cf0-f40a566c630b") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0026
    {	CloneOptions_Link	= 1,
	CloneOptions_KeepAllMACs	= 2,
	CloneOptions_KeepNATMACs	= 3,
	CloneOptions_KeepDiskNames	= 4
    } 	CloneOptions;

#define CloneOptions_T CloneOptions
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("1aa54aaf-2497-45a2-bfb1-8eb225e93d5b") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0027
    {	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_0028
    {	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_0029
    {	HostNetworkInterfaceType_Bridged	= 1,
	HostNetworkInterfaceType_HostOnly	= 2
    } 	HostNetworkInterfaceType;

#define HostNetworkInterfaceType_T HostNetworkInterfaceType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("98f7f957-89fb-49b6-a3b1-31e3285eb1d8") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0030
    {	AdditionsFacilityType_None	= 0,
	AdditionsFacilityType_VBoxGuestDriver	= 20,
	AdditionsFacilityType_AutoLogon	= 90,
	AdditionsFacilityType_VBoxService	= 100,
	AdditionsFacilityType_VBoxTrayClient	= 101,
	AdditionsFacilityType_Seamless	= 1000,
	AdditionsFacilityType_Graphics	= 1100,
	AdditionsFacilityType_All	= 2147483646
    } 	AdditionsFacilityType;

#define AdditionsFacilityType_T AdditionsFacilityType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("446451b2-c88d-4e5d-84c9-91bc7f533f5f") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0031
    {	AdditionsFacilityClass_None	= 0,
	AdditionsFacilityClass_Driver	= 10,
	AdditionsFacilityClass_Service	= 30,
	AdditionsFacilityClass_Program	= 50,
	AdditionsFacilityClass_Feature	= 100,
	AdditionsFacilityClass_ThirdParty	= 999,
	AdditionsFacilityClass_All	= 2147483646
    } 	AdditionsFacilityClass;

#define AdditionsFacilityClass_T AdditionsFacilityClass
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("ce06f9e1-394e-4fe9-9368-5a88c567dbde") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0032
    {	AdditionsFacilityStatus_Inactive	= 0,
	AdditionsFacilityStatus_Paused	= 1,
	AdditionsFacilityStatus_PreInit	= 20,
	AdditionsFacilityStatus_Init	= 30,
	AdditionsFacilityStatus_Active	= 50,
	AdditionsFacilityStatus_Terminating	= 100,
	AdditionsFacilityStatus_Terminated	= 101,
	AdditionsFacilityStatus_Failed	= 800,
	AdditionsFacilityStatus_Unknown	= 999
    } 	AdditionsFacilityStatus;

#define AdditionsFacilityStatus_T AdditionsFacilityStatus
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("a25417ee-a9dd-4f5b-b0dc-377860087754") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0033
    {	AdditionsRunLevelType_None	= 0,
	AdditionsRunLevelType_System	= 1,
	AdditionsRunLevelType_Userland	= 2,
	AdditionsRunLevelType_Desktop	= 3
    } 	AdditionsRunLevelType;

#define AdditionsRunLevelType_T AdditionsRunLevelType
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("726a818d-18d6-4389-94e8-3e9e6826171a") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0034
    {	AdditionsUpdateFlag_None	= 0,
	AdditionsUpdateFlag_WaitForUpdateStartOnly	= 1
    } 	AdditionsUpdateFlag;

#define AdditionsUpdateFlag_T AdditionsUpdateFlag
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("286ceb91-5f66-4c96-9845-4483e90e00ae") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0035
    {	ExecuteProcessFlag_None	= 0,
	ExecuteProcessFlag_WaitForProcessStartOnly	= 1,
	ExecuteProcessFlag_IgnoreOrphanedProcesses	= 2,
	ExecuteProcessFlag_Hidden	= 4,
	ExecuteProcessFlag_NoProfile	= 8,
	ExecuteProcessFlag_WaitForStdOut	= 16,
	ExecuteProcessFlag_WaitForStdErr	= 32
    } 	ExecuteProcessFlag;

#define ExecuteProcessFlag_T ExecuteProcessFlag
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("153768d9-d971-4098-8b5a-c5cb1ab9ea88") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0036
    {	ExecuteProcessStatus_Undefined	= 0,
	ExecuteProcessStatus_Started	= 1,
	ExecuteProcessStatus_TerminatedNormally	= 2,
	ExecuteProcessStatus_TerminatedSignal	= 3,
	ExecuteProcessStatus_TerminatedAbnormally	= 4,
	ExecuteProcessStatus_TimedOutKilled	= 5,
	ExecuteProcessStatus_TimedOutAbnormally	= 6,
	ExecuteProcessStatus_Down	= 7,
	ExecuteProcessStatus_Error	= 8
    } 	ExecuteProcessStatus;

#define ExecuteProcessStatus_T ExecuteProcessStatus
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("5d38c1dd-2604-4ddf-92e5-0c0cdd3bdbd5") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0037
    {	ProcessInputFlag_None	= 0,
	ProcessInputFlag_EndOfFile	= 1
    } 	ProcessInputFlag;

#define ProcessInputFlag_T ProcessInputFlag
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("9979e85a-52bb-40b7-870c-57115e27e0f1") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0038
    {	ProcessOutputFlag_None	= 0,
	ProcessOutputFlag_StdErr	= 1
    } 	ProcessOutputFlag;

#define ProcessOutputFlag_T ProcessOutputFlag
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("23f79fdf-738a-493d-b80b-42d607c9b916") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0039
    {	CopyFileFlag_None	= 0,
	CopyFileFlag_Recursive	= 1,
	CopyFileFlag_Update	= 2,
	CopyFileFlag_FollowLinks	= 4
    } 	CopyFileFlag;

#define CopyFileFlag_T CopyFileFlag
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("bd721b0e-ced5-4f79-b368-249897c32a36") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0040
    {	DirectoryCreateFlag_None	= 0,
	DirectoryCreateFlag_Parents	= 1
    } 	DirectoryCreateFlag;

#define DirectoryCreateFlag_T DirectoryCreateFlag
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("fc8f6203-0072-4f34-bd08-0b35e50bf071") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0041
    {	DirectoryOpenFlag_None	= 0
    } 	DirectoryOpenFlag;

#define DirectoryOpenFlag_T DirectoryOpenFlag
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("6d19d924-1b77-4fc8-b369-a3b2c85c8241") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0042
    {	GuestDirEntryType_Unknown	= 0,
	GuestDirEntryType_Directory	= 4,
	GuestDirEntryType_File	= 10,
	GuestDirEntryType_Symlink	= 12
    } 	GuestDirEntryType;

#define GuestDirEntryType_T GuestDirEntryType
typedef /* [public][public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("ef41e980-e012-43cd-9dea-479d4ef14d13") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0043
    {	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][public][v1_enum][uuid] */  DECLSPEC_UUID("fe663fb5-c244-4e1b-9d81-c628b417dd04") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0044
    {	MediumType_Normal	= 0,
	MediumType_Immutable	= 1,
	MediumType_Writethrough	= 2,
	MediumType_Shareable	= 3,
	MediumType_Readonly	= 4,
	MediumType_MultiAttach	= 5
    } 	MediumType;

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

#define MediumVariant_T MediumVariant
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("d90ea51e-a3f1-4a01-beb1-c1723c0d3ba7") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0046
    {	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_0047
    {	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("7342ba79-7ce0-4d94-8f86-5ed5a185d9bd") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0048
    {	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_TcpNetworking	= 0x100,
	MediumFormatCapabilities_VFS	= 0x200,
	MediumFormatCapabilities_CapabilityMask	= 0x3ff
    } 	MediumFormatCapabilities;

#define MediumFormatCapabilities_T MediumFormatCapabilities
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("9ee094b8-b28a-4d56-a166-973cb588d7f8") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0049
    {	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_0050
    {	FramebufferPixelFormat_Opaque	= 0,
	FramebufferPixelFormat_FOURCC_RGB	= 0x32424752
    } 	FramebufferPixelFormat;

#define FramebufferPixelFormat_T FramebufferPixelFormat
typedef /* [public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("2ac4bc71-6b82-417a-acd1-f7426d2570d6") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0051
    {	NetworkAttachmentType_Null	= 0,
	NetworkAttachmentType_NAT	= 1,
	NetworkAttachmentType_Bridged	= 2,
	NetworkAttachmentType_Internal	= 3,
	NetworkAttachmentType_HostOnly	= 4,
	NetworkAttachmentType_Generic	= 5
    } 	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_0052
    {	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("c963768a-376f-4c85-8d84-d8ced4b7269e") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0053
    {	NetworkAdapterPromiscModePolicy_Deny	= 1,
	NetworkAdapterPromiscModePolicy_AllowNetwork	= 2,
	NetworkAdapterPromiscModePolicy_AllowAll	= 3
    } 	NetworkAdapterPromiscModePolicy;

#define NetworkAdapterPromiscModePolicy_T NetworkAdapterPromiscModePolicy
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("533b5fe3-0185-4197-86a7-17e37dd39d76") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0054
    {	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_0055
    {	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_0056
    {	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_0057
    {	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][public][v1_enum][uuid] */  DECLSPEC_UUID("7afd395c-42c3-444e-8788-3ce80292f36c") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0058
    {	AudioControllerType_AC97	= 0,
	AudioControllerType_SB16	= 1,
	AudioControllerType_HDA	= 2
    } 	AudioControllerType;

#define AudioControllerType_T AudioControllerType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("7eef6ef6-98c2-4dc2-ab35-10d2b292028d") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0059
    {	AuthType_Null	= 0,
	AuthType_External	= 1,
	AuthType_Guest	= 2
    } 	AuthType;

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

#define StorageBus_T StorageBus
typedef /* [public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("8a412b8a-f43e-4456-bd37-b474f0879a58") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0061
    {	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_LsiLogicSas	= 8
    } 	StorageControllerType;

#define StorageControllerType_T StorageControllerType
typedef /* [public][public][public][public][public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("8b4096a8-a7c3-4d3b-bbb1-05a0a51ec394") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0062
    {	ChipsetType_Null	= 0,
	ChipsetType_PIIX3	= 1,
	ChipsetType_ICH9	= 2
    } 	ChipsetType;

#define ChipsetType_T ChipsetType
typedef /* [public][v1_enum][uuid] */  DECLSPEC_UUID("67772168-50d9-11df-9669-7fb714ee4fa1") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0063
    {	NATAliasMode_AliasLog	= 0x1,
	NATAliasMode_AliasProxyOnly	= 0x2,
	NATAliasMode_AliasUseSamePorts	= 0x4
    } 	NATAliasMode;

#define NATAliasMode_T NATAliasMode
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("e90164be-eb03-11de-94af-fff9b1c1b19f") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0064
    {	NATProtocol_UDP	= 0,
	NATProtocol_TCP	= 1
    } 	NATProtocol;

#define NATProtocol_T NATProtocol
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("1d92b67d-dc69-4be9-ad4c-93a01e1e0c8e") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0065
    {	BandwidthGroupType_Null	= 0,
	BandwidthGroupType_Disk	= 1,
	BandwidthGroupType_Network	= 2
    } 	BandwidthGroupType;

#define BandwidthGroupType_T BandwidthGroupType
typedef /* [public][public][public][v1_enum][uuid] */  DECLSPEC_UUID("cce48db6-8561-479d-8d46-1358bab45d4e") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0066
    {	VBoxEventType_Invalid	= 0,
	VBoxEventType_Any	= 1,
	VBoxEventType_Vetoable	= 2,
	VBoxEventType_MachineEvent	= 3,
	VBoxEventType_SnapshotEvent	= 4,
	VBoxEventType_InputEvent	= 5,
	VBoxEventType_LastWildcard	= 31,
	VBoxEventType_OnMachineStateChanged	= 32,
	VBoxEventType_OnMachineDataChanged	= 33,
	VBoxEventType_OnExtraDataChanged	= 34,
	VBoxEventType_OnExtraDataCanChange	= 35,
	VBoxEventType_OnMediumRegistered	= 36,
	VBoxEventType_OnMachineRegistered	= 37,
	VBoxEventType_OnSessionStateChanged	= 38,
	VBoxEventType_OnSnapshotTaken	= 39,
	VBoxEventType_OnSnapshotDeleted	= 40,
	VBoxEventType_OnSnapshotChanged	= 41,
	VBoxEventType_OnGuestPropertyChanged	= 42,
	VBoxEventType_OnMousePointerShapeChanged	= 43,
	VBoxEventType_OnMouseCapabilityChanged	= 44,
	VBoxEventType_OnKeyboardLedsChanged	= 45,
	VBoxEventType_OnStateChanged	= 46,
	VBoxEventType_OnAdditionsStateChanged	= 47,
	VBoxEventType_OnNetworkAdapterChanged	= 48,
	VBoxEventType_OnSerialPortChanged	= 49,
	VBoxEventType_OnParallelPortChanged	= 50,
	VBoxEventType_OnStorageControllerChanged	= 51,
	VBoxEventType_OnMediumChanged	= 52,
	VBoxEventType_OnVRDEServerChanged	= 53,
	VBoxEventType_OnUSBControllerChanged	= 54,
	VBoxEventType_OnUSBDeviceStateChanged	= 55,
	VBoxEventType_OnSharedFolderChanged	= 56,
	VBoxEventType_OnRuntimeError	= 57,
	VBoxEventType_OnCanShowWindow	= 58,
	VBoxEventType_OnShowWindow	= 59,
	VBoxEventType_OnCPUChanged	= 60,
	VBoxEventType_OnVRDEServerInfoChanged	= 61,
	VBoxEventType_OnEventSourceChanged	= 62,
	VBoxEventType_OnCPUExecutionCapChanged	= 63,
	VBoxEventType_OnGuestKeyboard	= 64,
	VBoxEventType_OnGuestMouse	= 65,
	VBoxEventType_OnNATRedirect	= 66,
	VBoxEventType_OnHostPciDevicePlug	= 67,
	VBoxEventType_OnVBoxSVCAvailabilityChanged	= 68,
	VBoxEventType_OnBandwidthGroupChanged	= 69,
	VBoxEventType_OnGuestMonitorChanged	= 70,
	VBoxEventType_OnStorageDeviceChanged	= 71,
	VBoxEventType_Last	= 72
    } 	VBoxEventType;

#define VBoxEventType_T VBoxEventType
typedef /* [public][public][v1_enum][uuid] */  DECLSPEC_UUID("ef172985-7e36-4297-95be-e46396968d66") 
enum __MIDL___MIDL_itf_VirtualBox_0000_0067
    {	GuestMonitorChangedEventType_Enabled	= 0,
	GuestMonitorChangedEventType_Disabled	= 1,
	GuestMonitorChangedEventType_NewOrigin	= 2
    } 	GuestMonitorChangedEventType;

#define GuestMonitorChangedEventType_T GuestMonitorChangedEventType
#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_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_APIVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_APIVersion (BSTR * aAPIVersion) { return smth get_APIVersion (aAPIVersion); }
#define COM_FORWARD_IVirtualBox_GETTER_APIVersion_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_APIVersion_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_APIVersion_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_APIVersion_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_GETTER_EventSource_TO(smth) HRESULT STDMETHODCALLTYPE get_EventSource (IEventSource * * aEventSource) { return smth get_EventSource (aEventSource); }
#define COM_FORWARD_IVirtualBox_GETTER_EventSource_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_EventSource_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_EventSource_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_EventSource_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_ExtensionPackManager_TO(smth) HRESULT STDMETHODCALLTYPE get_ExtensionPackManager (IExtPackManager * * aExtensionPackManager) { return smth get_ExtensionPackManager (aExtensionPackManager); }
#define COM_FORWARD_IVirtualBox_GETTER_ExtensionPackManager_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_ExtensionPackManager_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_ExtensionPackManager_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_ExtensionPackManager_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_InternalNetworks_TO(smth) HRESULT STDMETHODCALLTYPE get_InternalNetworks (SAFEARRAY * * aInternalNetworks) { return smth get_InternalNetworks (aInternalNetworks); }
#define COM_FORWARD_IVirtualBox_GETTER_InternalNetworks_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_InternalNetworks_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_InternalNetworks_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_InternalNetworks_TO (base::)
#define COM_FORWARD_IVirtualBox_GETTER_GenericNetworkDrivers_TO(smth) HRESULT STDMETHODCALLTYPE get_GenericNetworkDrivers (SAFEARRAY * * aGenericNetworkDrivers) { return smth get_GenericNetworkDrivers (aGenericNetworkDrivers); }
#define COM_FORWARD_IVirtualBox_GETTER_GenericNetworkDrivers_TO_OBJ(obj) COM_FORWARD_IVirtualBox_GETTER_GenericNetworkDrivers_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_GETTER_GenericNetworkDrivers_TO_BASE(base) COM_FORWARD_IVirtualBox_GETTER_GenericNetworkDrivers_TO (base::)
#define COM_FORWARD_IVirtualBox_ComposeMachineFilename_TO(smth) HRESULT STDMETHODCALLTYPE ComposeMachineFilename (BSTR aName, BSTR aBaseFolder, BSTR * aFile) { return smth ComposeMachineFilename (aName, aBaseFolder, aFile); }
#define COM_FORWARD_IVirtualBox_ComposeMachineFilename_TO_OBJ(obj) COM_FORWARD_IVirtualBox_ComposeMachineFilename_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_ComposeMachineFilename_TO_BASE(base) COM_FORWARD_IVirtualBox_ComposeMachineFilename_TO (base::)
#define COM_FORWARD_IVirtualBox_CreateMachine_TO(smth) HRESULT STDMETHODCALLTYPE CreateMachine (BSTR aSettingsFile, BSTR aName, BSTR aOsTypeId, BSTR aId, BOOL aForceOverwrite, IMachine * * aMachine) { return smth CreateMachine (aSettingsFile, aName, aOsTypeId, aId, aForceOverwrite, 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_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_FindMachine_TO(smth) HRESULT STDMETHODCALLTYPE FindMachine (BSTR aNameOrId, IMachine * * aMachine) { return smth FindMachine (aNameOrId, 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_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_OpenMedium_TO(smth) HRESULT STDMETHODCALLTYPE OpenMedium (BSTR aLocation, DeviceType aDeviceType, AccessMode aAccessMode, BOOL aForceNewUuid, IMedium * * aMedium) { return smth OpenMedium (aLocation, aDeviceType, aAccessMode, aForceNewUuid, aMedium); }
#define COM_FORWARD_IVirtualBox_OpenMedium_TO_OBJ(obj) COM_FORWARD_IVirtualBox_OpenMedium_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_OpenMedium_TO_BASE(base) COM_FORWARD_IVirtualBox_OpenMedium_TO (base::)
#define COM_FORWARD_IVirtualBox_FindMedium_TO(smth) HRESULT STDMETHODCALLTYPE FindMedium (BSTR aLocation, DeviceType aType, IMedium * * aMedium) { return smth FindMedium (aLocation, aType, aMedium); }
#define COM_FORWARD_IVirtualBox_FindMedium_TO_OBJ(obj) COM_FORWARD_IVirtualBox_FindMedium_TO ((obj)->)
#define COM_FORWARD_IVirtualBox_FindMedium_TO_BASE(base) COM_FORWARD_IVirtualBox_FindMedium_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, BOOL aAutomount) { return smth CreateSharedFolder (aName, aHostPath, aWritable, aAutomount); }
#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_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_APIVersion_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_GETTER_EventSource_TO (smth) COM_FORWARD_IVirtualBox_GETTER_ExtensionPackManager_TO (smth) COM_FORWARD_IVirtualBox_GETTER_InternalNetworks_TO (smth) COM_FORWARD_IVirtualBox_GETTER_GenericNetworkDrivers_TO (smth) COM_FORWARD_IVirtualBox_ComposeMachineFilename_TO (smth) COM_FORWARD_IVirtualBox_CreateMachine_TO (smth) COM_FORWARD_IVirtualBox_OpenMachine_TO (smth) COM_FORWARD_IVirtualBox_RegisterMachine_TO (smth) COM_FORWARD_IVirtualBox_FindMachine_TO (smth) COM_FORWARD_IVirtualBox_CreateAppliance_TO (smth) COM_FORWARD_IVirtualBox_CreateHardDisk_TO (smth) COM_FORWARD_IVirtualBox_OpenMedium_TO (smth) COM_FORWARD_IVirtualBox_FindMedium_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_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, SAFEARRAY * * aASizes, SAFEARRAY * * aAModes) { return smth EntryList (aANames, aATypes, aASizes, aAModes); }
#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_GETTER_Machines_TO(smth) HRESULT STDMETHODCALLTYPE get_Machines (SAFEARRAY * * aMachines) { return smth get_Machines (aMachines); }
#define COM_FORWARD_IAppliance_GETTER_Machines_TO_OBJ(obj) COM_FORWARD_IAppliance_GETTER_Machines_TO ((obj)->)
#define COM_FORWARD_IAppliance_GETTER_Machines_TO_BASE(base) COM_FORWARD_IAppliance_GETTER_Machines_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 (SAFEARRAY * * aOptions, IProgress * * aAProgress) { return smth ImportMachines (aOptions, 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, BOOL aManifest, BSTR aPath, IProgress * * aProgress) { return smth Write (aFormat, aManifest, aPath, aProgress); }
#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_GETTER_Machines_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_SetRemoveSavedStateFile_TO(smth) HRESULT STDMETHODCALLTYPE SetRemoveSavedStateFile (BOOL aARemove) { return smth SetRemoveSavedStateFile (aARemove); }
#define COM_FORWARD_IInternalMachineControl_SetRemoveSavedStateFile_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_SetRemoveSavedStateFile_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_SetRemoveSavedStateFile_TO_BASE(base) COM_FORWARD_IInternalMachineControl_SetRemoveSavedStateFile_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_BeginPowerUp_TO(smth) HRESULT STDMETHODCALLTYPE BeginPowerUp (IProgress * aAProgress) { return smth BeginPowerUp (aAProgress); }
#define COM_FORWARD_IInternalMachineControl_BeginPowerUp_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_BeginPowerUp_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_BeginPowerUp_TO_BASE(base) COM_FORWARD_IInternalMachineControl_BeginPowerUp_TO (base::)
#define COM_FORWARD_IInternalMachineControl_EndPowerUp_TO(smth) HRESULT STDMETHODCALLTYPE EndPowerUp (LONG aResult) { return smth EndPowerUp (aResult); }
#define COM_FORWARD_IInternalMachineControl_EndPowerUp_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_EndPowerUp_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_EndPowerUp_TO_BASE(base) COM_FORWARD_IInternalMachineControl_EndPowerUp_TO (base::)
#define COM_FORWARD_IInternalMachineControl_BeginPoweringDown_TO(smth) HRESULT STDMETHODCALLTYPE BeginPoweringDown (IProgress * * aProgress) { return smth BeginPoweringDown (aProgress); }
#define COM_FORWARD_IInternalMachineControl_BeginPoweringDown_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_BeginPoweringDown_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_BeginPoweringDown_TO_BASE(base) COM_FORWARD_IInternalMachineControl_BeginPoweringDown_TO (base::)
#define COM_FORWARD_IInternalMachineControl_EndPoweringDown_TO(smth) HRESULT STDMETHODCALLTYPE EndPoweringDown (LONG aResult, BSTR aErrMsg) { return smth EndPoweringDown (aResult, aErrMsg); }
#define COM_FORWARD_IInternalMachineControl_EndPoweringDown_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_EndPoweringDown_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_EndPoweringDown_TO_BASE(base) COM_FORWARD_IInternalMachineControl_EndPoweringDown_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 (LONG aResult, BSTR aErrMsg) { return smth EndSavingState (aResult, aErrMsg); }
#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 aStartId, BSTR aEndId, BOOL aDeleteAllChildren, MachineState * aMachineState, IProgress * * aProgress) { return smth DeleteSnapshot (aInitiator, aStartId, aEndId, aDeleteAllChildren, 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_FinishOnlineMergeMedium_TO(smth) HRESULT STDMETHODCALLTYPE FinishOnlineMergeMedium (IMediumAttachment * aMediumAttachment, IMedium * aSource, IMedium * aTarget, BOOL aMergeForward, IMedium * aParentForTarget, SAFEARRAY * * aChildrenToReparent) { return smth FinishOnlineMergeMedium (aMediumAttachment, aSource, aTarget, aMergeForward, aParentForTarget, aChildrenToReparent); }
#define COM_FORWARD_IInternalMachineControl_FinishOnlineMergeMedium_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_FinishOnlineMergeMedium_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_FinishOnlineMergeMedium_TO_BASE(base) COM_FORWARD_IInternalMachineControl_FinishOnlineMergeMedium_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_PushGuestProperty_TO(smth) HRESULT STDMETHODCALLTYPE PushGuestProperty (BSTR aName, BSTR aValue, LONG64 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_EjectMedium_TO(smth) HRESULT STDMETHODCALLTYPE EjectMedium (IMediumAttachment * aAttachment, IMediumAttachment * * aNewAttachment) { return smth EjectMedium (aAttachment, aNewAttachment); }
#define COM_FORWARD_IInternalMachineControl_EjectMedium_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_EjectMedium_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_EjectMedium_TO_BASE(base) COM_FORWARD_IInternalMachineControl_EjectMedium_TO (base::)
#define COM_FORWARD_IInternalMachineControl_ReportGuestStatistics_TO(smth) HRESULT STDMETHODCALLTYPE ReportGuestStatistics (ULONG aValidStats, ULONG aCpuUser, ULONG aCpuKernel, ULONG aCpuIdle, ULONG aMemTotal, ULONG aMemFree, ULONG aMemBalloon, ULONG aMemShared, ULONG aMemCache, ULONG aPagedTotal, ULONG aMemAllocTotal, ULONG aMemFreeTotal, ULONG aMemBalloonTotal, ULONG aMemSharedTotal) { return smth ReportGuestStatistics (aValidStats, aCpuUser, aCpuKernel, aCpuIdle, aMemTotal, aMemFree, aMemBalloon, aMemShared, aMemCache, aPagedTotal, aMemAllocTotal, aMemFreeTotal, aMemBalloonTotal, aMemSharedTotal); }
#define COM_FORWARD_IInternalMachineControl_ReportGuestStatistics_TO_OBJ(obj) COM_FORWARD_IInternalMachineControl_ReportGuestStatistics_TO ((obj)->)
#define COM_FORWARD_IInternalMachineControl_ReportGuestStatistics_TO_BASE(base) COM_FORWARD_IInternalMachineControl_ReportGuestStatistics_TO (base::)
#define COM_FORWARD_IInternalMachineControl_TO(smth) COM_FORWARD_IInternalMachineControl_SetRemoveSavedStateFile_TO (smth) COM_FORWARD_IInternalMachineControl_UpdateState_TO (smth) COM_FORWARD_IInternalMachineControl_GetIPCId_TO (smth) COM_FORWARD_IInternalMachineControl_BeginPowerUp_TO (smth) COM_FORWARD_IInternalMachineControl_EndPowerUp_TO (smth) COM_FORWARD_IInternalMachineControl_BeginPoweringDown_TO (smth) COM_FORWARD_IInternalMachineControl_EndPoweringDown_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_FinishOnlineMergeMedium_TO (smth) COM_FORWARD_IInternalMachineControl_RestoreSnapshot_TO (smth) COM_FORWARD_IInternalMachineControl_PullGuestProperties_TO (smth) COM_FORWARD_IInternalMachineControl_PushGuestProperty_TO (smth) COM_FORWARD_IInternalMachineControl_LockMedia_TO (smth) COM_FORWARD_IInternalMachineControl_UnlockMedia_TO (smth) COM_FORWARD_IInternalMachineControl_EjectMedium_TO (smth) COM_FORWARD_IInternalMachineControl_ReportGuestStatistics_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_IPciAddress_GETTER_Bus_TO(smth) HRESULT STDMETHODCALLTYPE get_Bus (SHORT * aBus) { return smth get_Bus (aBus); }
#define COM_FORWARD_IPciAddress_GETTER_Bus_TO_OBJ(obj) COM_FORWARD_IPciAddress_GETTER_Bus_TO ((obj)->)
#define COM_FORWARD_IPciAddress_GETTER_Bus_TO_BASE(base) COM_FORWARD_IPciAddress_GETTER_Bus_TO (base::)
#define COM_FORWARD_IPciAddress_SETTER_Bus_TO(smth) HRESULT STDMETHODCALLTYPE put_Bus (SHORT aBus) { return smth put_Bus (aBus); }
#define COM_FORWARD_IPciAddress_SETTER_Bus_TO_OBJ(obj) COM_FORWARD_IPciAddress_SETTER_Bus_TO ((obj)->)
#define COM_FORWARD_IPciAddress_SETTER_Bus_TO_BASE(base) COM_FORWARD_IPciAddress_SETTER_Bus_TO (base::)
#define COM_FORWARD_IPciAddress_GETTER_Device_TO(smth) HRESULT STDMETHODCALLTYPE get_Device (SHORT * aDevice) { return smth get_Device (aDevice); }
#define COM_FORWARD_IPciAddress_GETTER_Device_TO_OBJ(obj) COM_FORWARD_IPciAddress_GETTER_Device_TO ((obj)->)
#define COM_FORWARD_IPciAddress_GETTER_Device_TO_BASE(base) COM_FORWARD_IPciAddress_GETTER_Device_TO (base::)
#define COM_FORWARD_IPciAddress_SETTER_Device_TO(smth) HRESULT STDMETHODCALLTYPE put_Device (SHORT aDevice) { return smth put_Device (aDevice); }
#define COM_FORWARD_IPciAddress_SETTER_Device_TO_OBJ(obj) COM_FORWARD_IPciAddress_SETTER_Device_TO ((obj)->)
#define COM_FORWARD_IPciAddress_SETTER_Device_TO_BASE(base) COM_FORWARD_IPciAddress_SETTER_Device_TO (base::)
#define COM_FORWARD_IPciAddress_GETTER_DevFunction_TO(smth) HRESULT STDMETHODCALLTYPE get_DevFunction (SHORT * aDevFunction) { return smth get_DevFunction (aDevFunction); }
#define COM_FORWARD_IPciAddress_GETTER_DevFunction_TO_OBJ(obj) COM_FORWARD_IPciAddress_GETTER_DevFunction_TO ((obj)->)
#define COM_FORWARD_IPciAddress_GETTER_DevFunction_TO_BASE(base) COM_FORWARD_IPciAddress_GETTER_DevFunction_TO (base::)
#define COM_FORWARD_IPciAddress_SETTER_DevFunction_TO(smth) HRESULT STDMETHODCALLTYPE put_DevFunction (SHORT aDevFunction) { return smth put_DevFunction (aDevFunction); }
#define COM_FORWARD_IPciAddress_SETTER_DevFunction_TO_OBJ(obj) COM_FORWARD_IPciAddress_SETTER_DevFunction_TO ((obj)->)
#define COM_FORWARD_IPciAddress_SETTER_DevFunction_TO_BASE(base) COM_FORWARD_IPciAddress_SETTER_DevFunction_TO (base::)
#define COM_FORWARD_IPciAddress_AsLong_TO(smth) HRESULT STDMETHODCALLTYPE AsLong (LONG * aResult) { return smth AsLong (aResult); }
#define COM_FORWARD_IPciAddress_AsLong_TO_OBJ(obj) COM_FORWARD_IPciAddress_AsLong_TO ((obj)->)
#define COM_FORWARD_IPciAddress_AsLong_TO_BASE(base) COM_FORWARD_IPciAddress_AsLong_TO (base::)
#define COM_FORWARD_IPciAddress_FromLong_TO(smth) HRESULT STDMETHODCALLTYPE FromLong (LONG aNumber) { return smth FromLong (aNumber); }
#define COM_FORWARD_IPciAddress_FromLong_TO_OBJ(obj) COM_FORWARD_IPciAddress_FromLong_TO ((obj)->)
#define COM_FORWARD_IPciAddress_FromLong_TO_BASE(base) COM_FORWARD_IPciAddress_FromLong_TO (base::)
#define COM_FORWARD_IPciAddress_TO(smth) COM_FORWARD_IPciAddress_GETTER_Bus_TO (smth) COM_FORWARD_IPciAddress_SETTER_Bus_TO (smth) COM_FORWARD_IPciAddress_GETTER_Device_TO (smth) COM_FORWARD_IPciAddress_SETTER_Device_TO (smth) COM_FORWARD_IPciAddress_GETTER_DevFunction_TO (smth) COM_FORWARD_IPciAddress_SETTER_DevFunction_TO (smth) COM_FORWARD_IPciAddress_AsLong_TO (smth) COM_FORWARD_IPciAddress_FromLong_TO (smth) 
#define COM_FORWARD_IPciAddress_TO_OBJ(obj) COM_FORWARD_IPciAddress_TO ((obj)->)
#define COM_FORWARD_IPciAddress_TO_BASE(base) COM_FORWARD_IPciAddress_TO (base::)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IPciDeviceAttachment_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IPciDeviceAttachment_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_Name_TO_BASE(base) COM_FORWARD_IPciDeviceAttachment_GETTER_Name_TO (base::)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_IsPhysicalDevice_TO(smth) HRESULT STDMETHODCALLTYPE get_IsPhysicalDevice (BOOL * aIsPhysicalDevice) { return smth get_IsPhysicalDevice (aIsPhysicalDevice); }
#define COM_FORWARD_IPciDeviceAttachment_GETTER_IsPhysicalDevice_TO_OBJ(obj) COM_FORWARD_IPciDeviceAttachment_GETTER_IsPhysicalDevice_TO ((obj)->)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_IsPhysicalDevice_TO_BASE(base) COM_FORWARD_IPciDeviceAttachment_GETTER_IsPhysicalDevice_TO (base::)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_HostAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_HostAddress (LONG * aHostAddress) { return smth get_HostAddress (aHostAddress); }
#define COM_FORWARD_IPciDeviceAttachment_GETTER_HostAddress_TO_OBJ(obj) COM_FORWARD_IPciDeviceAttachment_GETTER_HostAddress_TO ((obj)->)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_HostAddress_TO_BASE(base) COM_FORWARD_IPciDeviceAttachment_GETTER_HostAddress_TO (base::)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_GuestAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_GuestAddress (LONG * aGuestAddress) { return smth get_GuestAddress (aGuestAddress); }
#define COM_FORWARD_IPciDeviceAttachment_GETTER_GuestAddress_TO_OBJ(obj) COM_FORWARD_IPciDeviceAttachment_GETTER_GuestAddress_TO ((obj)->)
#define COM_FORWARD_IPciDeviceAttachment_GETTER_GuestAddress_TO_BASE(base) COM_FORWARD_IPciDeviceAttachment_GETTER_GuestAddress_TO (base::)
#define COM_FORWARD_IPciDeviceAttachment_TO(smth) COM_FORWARD_IPciDeviceAttachment_GETTER_Name_TO (smth) COM_FORWARD_IPciDeviceAttachment_GETTER_IsPhysicalDevice_TO (smth) COM_FORWARD_IPciDeviceAttachment_GETTER_HostAddress_TO (smth) COM_FORWARD_IPciDeviceAttachment_GETTER_GuestAddress_TO (smth) 
#define COM_FORWARD_IPciDeviceAttachment_TO_OBJ(obj) COM_FORWARD_IPciDeviceAttachment_TO ((obj)->)
#define COM_FORWARD_IPciDeviceAttachment_TO_BASE(base) COM_FORWARD_IPciDeviceAttachment_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_CPUHotPlugEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_CPUHotPlugEnabled (BOOL * aCPUHotPlugEnabled) { return smth get_CPUHotPlugEnabled (aCPUHotPlugEnabled); }
#define COM_FORWARD_IMachine_GETTER_CPUHotPlugEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_CPUHotPlugEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_CPUHotPlugEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_CPUHotPlugEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_CPUHotPlugEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_CPUHotPlugEnabled (BOOL aCPUHotPlugEnabled) { return smth put_CPUHotPlugEnabled (aCPUHotPlugEnabled); }
#define COM_FORWARD_IMachine_SETTER_CPUHotPlugEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_CPUHotPlugEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_CPUHotPlugEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_CPUHotPlugEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_CPUExecutionCap_TO(smth) HRESULT STDMETHODCALLTYPE get_CPUExecutionCap (ULONG * aCPUExecutionCap) { return smth get_CPUExecutionCap (aCPUExecutionCap); }
#define COM_FORWARD_IMachine_GETTER_CPUExecutionCap_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_CPUExecutionCap_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_CPUExecutionCap_TO_BASE(base) COM_FORWARD_IMachine_GETTER_CPUExecutionCap_TO (base::)
#define COM_FORWARD_IMachine_SETTER_CPUExecutionCap_TO(smth) HRESULT STDMETHODCALLTYPE put_CPUExecutionCap (ULONG aCPUExecutionCap) { return smth put_CPUExecutionCap (aCPUExecutionCap); }
#define COM_FORWARD_IMachine_SETTER_CPUExecutionCap_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_CPUExecutionCap_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_CPUExecutionCap_TO_BASE(base) COM_FORWARD_IMachine_SETTER_CPUExecutionCap_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_PageFusionEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_PageFusionEnabled (BOOL * aPageFusionEnabled) { return smth get_PageFusionEnabled (aPageFusionEnabled); }
#define COM_FORWARD_IMachine_GETTER_PageFusionEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_PageFusionEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_PageFusionEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_PageFusionEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_PageFusionEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_PageFusionEnabled (BOOL aPageFusionEnabled) { return smth put_PageFusionEnabled (aPageFusionEnabled); }
#define COM_FORWARD_IMachine_SETTER_PageFusionEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_PageFusionEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_PageFusionEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_PageFusionEnabled_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_PointingHidType_TO(smth) HRESULT STDMETHODCALLTYPE get_PointingHidType (PointingHidType * aPointingHidType) { return smth get_PointingHidType (aPointingHidType); }
#define COM_FORWARD_IMachine_GETTER_PointingHidType_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_PointingHidType_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_PointingHidType_TO_BASE(base) COM_FORWARD_IMachine_GETTER_PointingHidType_TO (base::)
#define COM_FORWARD_IMachine_SETTER_PointingHidType_TO(smth) HRESULT STDMETHODCALLTYPE put_PointingHidType (PointingHidType aPointingHidType) { return smth put_PointingHidType (aPointingHidType); }
#define COM_FORWARD_IMachine_SETTER_PointingHidType_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_PointingHidType_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_PointingHidType_TO_BASE(base) COM_FORWARD_IMachine_SETTER_PointingHidType_TO (base::)
#define COM_FORWARD_IMachine_GETTER_KeyboardHidType_TO(smth) HRESULT STDMETHODCALLTYPE get_KeyboardHidType (KeyboardHidType * aKeyboardHidType) { return smth get_KeyboardHidType (aKeyboardHidType); }
#define COM_FORWARD_IMachine_GETTER_KeyboardHidType_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_KeyboardHidType_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_KeyboardHidType_TO_BASE(base) COM_FORWARD_IMachine_GETTER_KeyboardHidType_TO (base::)
#define COM_FORWARD_IMachine_SETTER_KeyboardHidType_TO(smth) HRESULT STDMETHODCALLTYPE put_KeyboardHidType (KeyboardHidType aKeyboardHidType) { return smth put_KeyboardHidType (aKeyboardHidType); }
#define COM_FORWARD_IMachine_SETTER_KeyboardHidType_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_KeyboardHidType_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_KeyboardHidType_TO_BASE(base) COM_FORWARD_IMachine_SETTER_KeyboardHidType_TO (base::)
#define COM_FORWARD_IMachine_GETTER_HpetEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_HpetEnabled (BOOL * aHpetEnabled) { return smth get_HpetEnabled (aHpetEnabled); }
#define COM_FORWARD_IMachine_GETTER_HpetEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_HpetEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_HpetEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_HpetEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_HpetEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_HpetEnabled (BOOL aHpetEnabled) { return smth put_HpetEnabled (aHpetEnabled); }
#define COM_FORWARD_IMachine_SETTER_HpetEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_HpetEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_HpetEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_HpetEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_ChipsetType_TO(smth) HRESULT STDMETHODCALLTYPE get_ChipsetType (ChipsetType * aChipsetType) { return smth get_ChipsetType (aChipsetType); }
#define COM_FORWARD_IMachine_GETTER_ChipsetType_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_ChipsetType_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_ChipsetType_TO_BASE(base) COM_FORWARD_IMachine_GETTER_ChipsetType_TO (base::)
#define COM_FORWARD_IMachine_SETTER_ChipsetType_TO(smth) HRESULT STDMETHODCALLTYPE put_ChipsetType (ChipsetType aChipsetType) { return smth put_ChipsetType (aChipsetType); }
#define COM_FORWARD_IMachine_SETTER_ChipsetType_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_ChipsetType_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_ChipsetType_TO_BASE(base) COM_FORWARD_IMachine_SETTER_ChipsetType_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_VRDEServer_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDEServer (IVRDEServer * * aVRDEServer) { return smth get_VRDEServer (aVRDEServer); }
#define COM_FORWARD_IMachine_GETTER_VRDEServer_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_VRDEServer_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_VRDEServer_TO_BASE(base) COM_FORWARD_IMachine_GETTER_VRDEServer_TO (base::)
#define COM_FORWARD_IMachine_GETTER_EmulatedUSBWebcameraEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_EmulatedUSBWebcameraEnabled (BOOL * aEmulatedUSBWebcameraEnabled) { return smth get_EmulatedUSBWebcameraEnabled (aEmulatedUSBWebcameraEnabled); }
#define COM_FORWARD_IMachine_GETTER_EmulatedUSBWebcameraEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_EmulatedUSBWebcameraEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_EmulatedUSBWebcameraEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_EmulatedUSBWebcameraEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_EmulatedUSBWebcameraEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_EmulatedUSBWebcameraEnabled (BOOL aEmulatedUSBWebcameraEnabled) { return smth put_EmulatedUSBWebcameraEnabled (aEmulatedUSBWebcameraEnabled); }
#define COM_FORWARD_IMachine_SETTER_EmulatedUSBWebcameraEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_EmulatedUSBWebcameraEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_EmulatedUSBWebcameraEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_EmulatedUSBWebcameraEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_EmulatedUSBCardReaderEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_EmulatedUSBCardReaderEnabled (BOOL * aEmulatedUSBCardReaderEnabled) { return smth get_EmulatedUSBCardReaderEnabled (aEmulatedUSBCardReaderEnabled); }
#define COM_FORWARD_IMachine_GETTER_EmulatedUSBCardReaderEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_EmulatedUSBCardReaderEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_EmulatedUSBCardReaderEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_EmulatedUSBCardReaderEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_EmulatedUSBCardReaderEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_EmulatedUSBCardReaderEnabled (BOOL aEmulatedUSBCardReaderEnabled) { return smth put_EmulatedUSBCardReaderEnabled (aEmulatedUSBCardReaderEnabled); }
#define COM_FORWARD_IMachine_SETTER_EmulatedUSBCardReaderEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_EmulatedUSBCardReaderEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_EmulatedUSBCardReaderEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_EmulatedUSBCardReaderEnabled_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_GETTER_FaultToleranceState_TO(smth) HRESULT STDMETHODCALLTYPE get_FaultToleranceState (FaultToleranceState * aFaultToleranceState) { return smth get_FaultToleranceState (aFaultToleranceState); }
#define COM_FORWARD_IMachine_GETTER_FaultToleranceState_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_FaultToleranceState_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_FaultToleranceState_TO_BASE(base) COM_FORWARD_IMachine_GETTER_FaultToleranceState_TO (base::)
#define COM_FORWARD_IMachine_SETTER_FaultToleranceState_TO(smth) HRESULT STDMETHODCALLTYPE put_FaultToleranceState (FaultToleranceState aFaultToleranceState) { return smth put_FaultToleranceState (aFaultToleranceState); }
#define COM_FORWARD_IMachine_SETTER_FaultToleranceState_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_FaultToleranceState_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_FaultToleranceState_TO_BASE(base) COM_FORWARD_IMachine_SETTER_FaultToleranceState_TO (base::)
#define COM_FORWARD_IMachine_GETTER_FaultTolerancePort_TO(smth) HRESULT STDMETHODCALLTYPE get_FaultTolerancePort (ULONG * aFaultTolerancePort) { return smth get_FaultTolerancePort (aFaultTolerancePort); }
#define COM_FORWARD_IMachine_GETTER_FaultTolerancePort_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_FaultTolerancePort_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_FaultTolerancePort_TO_BASE(base) COM_FORWARD_IMachine_GETTER_FaultTolerancePort_TO (base::)
#define COM_FORWARD_IMachine_SETTER_FaultTolerancePort_TO(smth) HRESULT STDMETHODCALLTYPE put_FaultTolerancePort (ULONG aFaultTolerancePort) { return smth put_FaultTolerancePort (aFaultTolerancePort); }
#define COM_FORWARD_IMachine_SETTER_FaultTolerancePort_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_FaultTolerancePort_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_FaultTolerancePort_TO_BASE(base) COM_FORWARD_IMachine_SETTER_FaultTolerancePort_TO (base::)
#define COM_FORWARD_IMachine_GETTER_FaultToleranceAddress_TO(smth) HRESULT STDMETHODCALLTYPE get_FaultToleranceAddress (BSTR * aFaultToleranceAddress) { return smth get_FaultToleranceAddress (aFaultToleranceAddress); }
#define COM_FORWARD_IMachine_GETTER_FaultToleranceAddress_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_FaultToleranceAddress_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_FaultToleranceAddress_TO_BASE(base) COM_FORWARD_IMachine_GETTER_FaultToleranceAddress_TO (base::)
#define COM_FORWARD_IMachine_SETTER_FaultToleranceAddress_TO(smth) HRESULT STDMETHODCALLTYPE put_FaultToleranceAddress (BSTR aFaultToleranceAddress) { return smth put_FaultToleranceAddress (aFaultToleranceAddress); }
#define COM_FORWARD_IMachine_SETTER_FaultToleranceAddress_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_FaultToleranceAddress_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_FaultToleranceAddress_TO_BASE(base) COM_FORWARD_IMachine_SETTER_FaultToleranceAddress_TO (base::)
#define COM_FORWARD_IMachine_GETTER_FaultTolerancePassword_TO(smth) HRESULT STDMETHODCALLTYPE get_FaultTolerancePassword (BSTR * aFaultTolerancePassword) { return smth get_FaultTolerancePassword (aFaultTolerancePassword); }
#define COM_FORWARD_IMachine_GETTER_FaultTolerancePassword_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_FaultTolerancePassword_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_FaultTolerancePassword_TO_BASE(base) COM_FORWARD_IMachine_GETTER_FaultTolerancePassword_TO (base::)
#define COM_FORWARD_IMachine_SETTER_FaultTolerancePassword_TO(smth) HRESULT STDMETHODCALLTYPE put_FaultTolerancePassword (BSTR aFaultTolerancePassword) { return smth put_FaultTolerancePassword (aFaultTolerancePassword); }
#define COM_FORWARD_IMachine_SETTER_FaultTolerancePassword_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_FaultTolerancePassword_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_FaultTolerancePassword_TO_BASE(base) COM_FORWARD_IMachine_SETTER_FaultTolerancePassword_TO (base::)
#define COM_FORWARD_IMachine_GETTER_FaultToleranceSyncInterval_TO(smth) HRESULT STDMETHODCALLTYPE get_FaultToleranceSyncInterval (ULONG * aFaultToleranceSyncInterval) { return smth get_FaultToleranceSyncInterval (aFaultToleranceSyncInterval); }
#define COM_FORWARD_IMachine_GETTER_FaultToleranceSyncInterval_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_FaultToleranceSyncInterval_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_FaultToleranceSyncInterval_TO_BASE(base) COM_FORWARD_IMachine_GETTER_FaultToleranceSyncInterval_TO (base::)
#define COM_FORWARD_IMachine_SETTER_FaultToleranceSyncInterval_TO(smth) HRESULT STDMETHODCALLTYPE put_FaultToleranceSyncInterval (ULONG aFaultToleranceSyncInterval) { return smth put_FaultToleranceSyncInterval (aFaultToleranceSyncInterval); }
#define COM_FORWARD_IMachine_SETTER_FaultToleranceSyncInterval_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_FaultToleranceSyncInterval_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_FaultToleranceSyncInterval_TO_BASE(base) COM_FORWARD_IMachine_SETTER_FaultToleranceSyncInterval_TO (base::)
#define COM_FORWARD_IMachine_GETTER_RTCUseUTC_TO(smth) HRESULT STDMETHODCALLTYPE get_RTCUseUTC (BOOL * aRTCUseUTC) { return smth get_RTCUseUTC (aRTCUseUTC); }
#define COM_FORWARD_IMachine_GETTER_RTCUseUTC_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_RTCUseUTC_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_RTCUseUTC_TO_BASE(base) COM_FORWARD_IMachine_GETTER_RTCUseUTC_TO (base::)
#define COM_FORWARD_IMachine_SETTER_RTCUseUTC_TO(smth) HRESULT STDMETHODCALLTYPE put_RTCUseUTC (BOOL aRTCUseUTC) { return smth put_RTCUseUTC (aRTCUseUTC); }
#define COM_FORWARD_IMachine_SETTER_RTCUseUTC_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_RTCUseUTC_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_RTCUseUTC_TO_BASE(base) COM_FORWARD_IMachine_SETTER_RTCUseUTC_TO (base::)
#define COM_FORWARD_IMachine_GETTER_IoCacheEnabled_TO(smth) HRESULT STDMETHODCALLTYPE get_IoCacheEnabled (BOOL * aIoCacheEnabled) { return smth get_IoCacheEnabled (aIoCacheEnabled); }
#define COM_FORWARD_IMachine_GETTER_IoCacheEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_IoCacheEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_IoCacheEnabled_TO_BASE(base) COM_FORWARD_IMachine_GETTER_IoCacheEnabled_TO (base::)
#define COM_FORWARD_IMachine_SETTER_IoCacheEnabled_TO(smth) HRESULT STDMETHODCALLTYPE put_IoCacheEnabled (BOOL aIoCacheEnabled) { return smth put_IoCacheEnabled (aIoCacheEnabled); }
#define COM_FORWARD_IMachine_SETTER_IoCacheEnabled_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_IoCacheEnabled_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_IoCacheEnabled_TO_BASE(base) COM_FORWARD_IMachine_SETTER_IoCacheEnabled_TO (base::)
#define COM_FORWARD_IMachine_GETTER_IoCacheSize_TO(smth) HRESULT STDMETHODCALLTYPE get_IoCacheSize (ULONG * aIoCacheSize) { return smth get_IoCacheSize (aIoCacheSize); }
#define COM_FORWARD_IMachine_GETTER_IoCacheSize_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_IoCacheSize_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_IoCacheSize_TO_BASE(base) COM_FORWARD_IMachine_GETTER_IoCacheSize_TO (base::)
#define COM_FORWARD_IMachine_SETTER_IoCacheSize_TO(smth) HRESULT STDMETHODCALLTYPE put_IoCacheSize (ULONG aIoCacheSize) { return smth put_IoCacheSize (aIoCacheSize); }
#define COM_FORWARD_IMachine_SETTER_IoCacheSize_TO_OBJ(obj) COM_FORWARD_IMachine_SETTER_IoCacheSize_TO ((obj)->)
#define COM_FORWARD_IMachine_SETTER_IoCacheSize_TO_BASE(base) COM_FORWARD_IMachine_SETTER_IoCacheSize_TO (base::)
#define COM_FORWARD_IMachine_GETTER_BandwidthControl_TO(smth) HRESULT STDMETHODCALLTYPE get_BandwidthControl (IBandwidthControl * * aBandwidthControl) { return smth get_BandwidthControl (aBandwidthControl); }
#define COM_FORWARD_IMachine_GETTER_BandwidthControl_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_BandwidthControl_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_BandwidthControl_TO_BASE(base) COM_FORWARD_IMachine_GETTER_BandwidthControl_TO (base::)
#define COM_FORWARD_IMachine_GETTER_PciDeviceAssignments_TO(smth) HRESULT STDMETHODCALLTYPE get_PciDeviceAssignments (SAFEARRAY * * aPciDeviceAssignments) { return smth get_PciDeviceAssignments (aPciDeviceAssignments); }
#define COM_FORWARD_IMachine_GETTER_PciDeviceAssignments_TO_OBJ(obj) COM_FORWARD_IMachine_GETTER_PciDeviceAssignments_TO ((obj)->)
#define COM_FORWARD_IMachine_GETTER_PciDeviceAssignments_TO_BASE(base) COM_FORWARD_IMachine_GETTER_PciDeviceAssignments_TO (base::)
#define COM_FORWARD_IMachine_LockMachine_TO(smth) HRESULT STDMETHODCALLTYPE LockMachine (ISession * aSession, LockType aLockType) { return smth LockMachine (aSession, aLockType); }
#define COM_FORWARD_IMachine_LockMachine_TO_OBJ(obj) COM_FORWARD_IMachine_LockMachine_TO ((obj)->)
#define COM_FORWARD_IMachine_LockMachine_TO_BASE(base) COM_FORWARD_IMachine_LockMachine_TO (base::)
#define COM_FORWARD_IMachine_LaunchVMProcess_TO(smth) HRESULT STDMETHODCALLTYPE LaunchVMProcess (ISession * aSession, BSTR aType, BSTR aEnvironment, IProgress * * aProgress) { return smth LaunchVMProcess (aSession, aType, aEnvironment, aProgress); }
#define COM_FORWARD_IMachine_LaunchVMProcess_TO_OBJ(obj) COM_FORWARD_IMachine_LaunchVMProcess_TO ((obj)->)
#define COM_FORWARD_IMachine_LaunchVMProcess_TO_BASE(base) COM_FORWARD_IMachine_LaunchVMProcess_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, IMedium * aMedium) { return smth AttachDevice (aName, aControllerPort, aDevice, aType, aMedium); }
#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_TemporaryEjectDevice_TO(smth) HRESULT STDMETHODCALLTYPE TemporaryEjectDevice (BSTR aName, LONG aControllerPort, LONG aDevice, BOOL aTemporaryEject) { return smth TemporaryEjectDevice (aName, aControllerPort, aDevice, aTemporaryEject); }
#define COM_FORWARD_IMachine_TemporaryEjectDevice_TO_OBJ(obj) COM_FORWARD_IMachine_TemporaryEjectDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_TemporaryEjectDevice_TO_BASE(base) COM_FORWARD_IMachine_TemporaryEjectDevice_TO (base::)
#define COM_FORWARD_IMachine_NonRotationalDevice_TO(smth) HRESULT STDMETHODCALLTYPE NonRotationalDevice (BSTR aName, LONG aControllerPort, LONG aDevice, BOOL aNonRotational) { return smth NonRotationalDevice (aName, aControllerPort, aDevice, aNonRotational); }
#define COM_FORWARD_IMachine_NonRotationalDevice_TO_OBJ(obj) COM_FORWARD_IMachine_NonRotationalDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_NonRotationalDevice_TO_BASE(base) COM_FORWARD_IMachine_NonRotationalDevice_TO (base::)
#define COM_FORWARD_IMachine_SetBandwidthGroupForDevice_TO(smth) HRESULT STDMETHODCALLTYPE SetBandwidthGroupForDevice (BSTR aName, LONG aControllerPort, LONG aDevice, IBandwidthGroup * aBandwidthGroup) { return smth SetBandwidthGroupForDevice (aName, aControllerPort, aDevice, aBandwidthGroup); }
#define COM_FORWARD_IMachine_SetBandwidthGroupForDevice_TO_OBJ(obj) COM_FORWARD_IMachine_SetBandwidthGroupForDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_SetBandwidthGroupForDevice_TO_BASE(base) COM_FORWARD_IMachine_SetBandwidthGroupForDevice_TO (base::)
#define COM_FORWARD_IMachine_MountMedium_TO(smth) HRESULT STDMETHODCALLTYPE MountMedium (BSTR aName, LONG aControllerPort, LONG aDevice, IMedium * 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_AttachHostPciDevice_TO(smth) HRESULT STDMETHODCALLTYPE AttachHostPciDevice (LONG aHostAddress, LONG aDesiredGuestAddress, BOOL aTryToUnbind) { return smth AttachHostPciDevice (aHostAddress, aDesiredGuestAddress, aTryToUnbind); }
#define COM_FORWARD_IMachine_AttachHostPciDevice_TO_OBJ(obj) COM_FORWARD_IMachine_AttachHostPciDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_AttachHostPciDevice_TO_BASE(base) COM_FORWARD_IMachine_AttachHostPciDevice_TO (base::)
#define COM_FORWARD_IMachine_DetachHostPciDevice_TO(smth) HRESULT STDMETHODCALLTYPE DetachHostPciDevice (LONG aHostAddress) { return smth DetachHostPciDevice (aHostAddress); }
#define COM_FORWARD_IMachine_DetachHostPciDevice_TO_OBJ(obj) COM_FORWARD_IMachine_DetachHostPciDevice_TO ((obj)->)
#define COM_FORWARD_IMachine_DetachHostPciDevice_TO_BASE(base) COM_FORWARD_IMachine_DetachHostPciDevice_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_SetStorageControllerBootable_TO(smth) HRESULT STDMETHODCALLTYPE SetStorageControllerBootable (BSTR aName, BOOL aBootable) { return smth SetStorageControllerBootable (aName, aBootable); }
#define COM_FORWARD_IMachine_SetStorageControllerBootable_TO_OBJ(obj) COM_FORWARD_IMachine_SetStorageControllerBootable_TO ((obj)->)
#define COM_FORWARD_IMachine_SetStorageControllerBootable_TO_BASE(base) COM_FORWARD_IMachine_SetStorageControllerBootable_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_RemoveAllCPUIDLeaves_TO(smth) HRESULT STDMETHODCALLTYPE RemoveAllCPUIDLeaves() { return smth RemoveAllCPUIDLeaves(); }
#define COM_FORWARD_IMachine_RemoveAllCPUIDLeaves_TO_OBJ(obj) COM_FORWARD_IMachine_RemoveAllCPUIDLeaves_TO ((obj)->)
#define COM_FORWARD_IMachine_RemoveAllCPUIDLeaves_TO_BASE(base) COM_FORWARD_IMachine_RemoveAllCPUIDLeaves_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_Unregister_TO(smth) HRESULT STDMETHODCALLTYPE Unregister (CleanupMode aCleanupMode, SAFEARRAY * * aAMedia) { return smth Unregister (aCleanupMode, aAMedia); }
#define COM_FORWARD_IMachine_Unregister_TO_OBJ(obj) COM_FORWARD_IMachine_Unregister_TO ((obj)->)
#define COM_FORWARD_IMachine_Unregister_TO_BASE(base) COM_FORWARD_IMachine_Unregister_TO (base::)
#define COM_FORWARD_IMachine_Delete_TO(smth) HRESULT STDMETHODCALLTYPE Delete (SAFEARRAY * * aAMedia, IProgress * * aAProgress) { return smth Delete (aAMedia, aAProgress); }
#define COM_FORWARD_IMachine_Delete_TO_OBJ(obj) COM_FORWARD_IMachine_Delete_TO ((obj)->)
#define COM_FORWARD_IMachine_Delete_TO_BASE(base) COM_FORWARD_IMachine_Delete_TO (base::)
#define COM_FORWARD_IMachine_Export_TO(smth) HRESULT STDMETHODCALLTYPE Export (IAppliance * aAAppliance, BSTR aLocation, IVirtualSystemDescription * * aADescription) { return smth Export (aAAppliance, aLocation, 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_FindSnapshot_TO(smth) HRESULT STDMETHODCALLTYPE FindSnapshot (BSTR aNameOrId, ISnapshot * * aSnapshot) { return smth FindSnapshot (aNameOrId, 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_CreateSharedFolder_TO(smth) HRESULT STDMETHODCALLTYPE CreateSharedFolder (BSTR aName, BSTR aHostPath, BOOL aWritable, BOOL aAutomount) { return smth CreateSharedFolder (aName, aHostPath, aWritable, aAutomount); }
#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 (LONG64 * 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, LONG64 * 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, LONG64 * 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_QuerySavedGuestSize_TO(smth) HRESULT STDMETHODCALLTYPE QuerySavedGuestSize (ULONG aScreenId, ULONG * aWidth, ULONG * aHeight) { return smth QuerySavedGuestSize (aScreenId, aWidth, aHeight); }
#define COM_FORWARD_IMachine_QuerySavedGuestSize_TO_OBJ(obj) COM_FORWARD_IMachine_QuerySavedGuestSize_TO ((obj)->)
#define COM_FORWARD_IMachine_QuerySavedGuestSize_TO_BASE(base) COM_FORWARD_IMachine_QuerySavedGuestSize_TO (base::)
#define COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO(smth) HRESULT STDMETHODCALLTYPE QuerySavedThumbnailSize (ULONG aScreenId, ULONG * aSize, ULONG * aWidth, ULONG * aHeight) { return smth QuerySavedThumbnailSize (aScreenId, 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 (ULONG aScreenId, BOOL aBGR, ULONG * aWidth, ULONG * aHeight, SAFEARRAY * * aData) { return smth ReadSavedThumbnailToArray (aScreenId, 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_ReadSavedThumbnailPNGToArray_TO(smth) HRESULT STDMETHODCALLTYPE ReadSavedThumbnailPNGToArray (ULONG aScreenId, ULONG * aWidth, ULONG * aHeight, SAFEARRAY * * aData) { return smth ReadSavedThumbnailPNGToArray (aScreenId, aWidth, aHeight, aData); }
#define COM_FORWARD_IMachine_ReadSavedThumbnailPNGToArray_TO_OBJ(obj) COM_FORWARD_IMachine_ReadSavedThumbnailPNGToArray_TO ((obj)->)
#define COM_FORWARD_IMachine_ReadSavedThumbnailPNGToArray_TO_BASE(base) COM_FORWARD_IMachine_ReadSavedThumbnailPNGToArray_TO (base::)
#define COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO(smth) HRESULT STDMETHODCALLTYPE QuerySavedScreenshotPNGSize (ULONG aScreenId, ULONG * aSize, ULONG * aWidth, ULONG * aHeight) { return smth QuerySavedScreenshotPNGSize (aScreenId, 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 aScreenId, ULONG * aWidth, ULONG * aHeight, SAFEARRAY * * aData) { return smth ReadSavedScreenshotPNGToArray (aScreenId, 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_HotPlugCPU_TO(smth) HRESULT STDMETHODCALLTYPE HotPlugCPU (ULONG aCpu) { return smth HotPlugCPU (aCpu); }
#define COM_FORWARD_IMachine_HotPlugCPU_TO_OBJ(obj) COM_FORWARD_IMachine_HotPlugCPU_TO ((obj)->)
#define COM_FORWARD_IMachine_HotPlugCPU_TO_BASE(base) COM_FORWARD_IMachine_HotPlugCPU_TO (base::)
#define COM_FORWARD_IMachine_HotUnplugCPU_TO(smth) HRESULT STDMETHODCALLTYPE HotUnplugCPU (ULONG aCpu) { return smth HotUnplugCPU (aCpu); }
#define COM_FORWARD_IMachine_HotUnplugCPU_TO_OBJ(obj) COM_FORWARD_IMachine_HotUnplugCPU_TO ((obj)->)
#define COM_FORWARD_IMachine_HotUnplugCPU_TO_BASE(base) COM_FORWARD_IMachine_HotUnplugCPU_TO (base::)
#define COM_FORWARD_IMachine_GetCPUStatus_TO(smth) HRESULT STDMETHODCALLTYPE GetCPUStatus (ULONG aCpu, BOOL * aAttached) { return smth GetCPUStatus (aCpu, aAttached); }
#define COM_FORWARD_IMachine_GetCPUStatus_TO_OBJ(obj) COM_FORWARD_IMachine_GetCPUStatus_TO ((obj)->)
#define COM_FORWARD_IMachine_GetCPUStatus_TO_BASE(base) COM_FORWARD_IMachine_GetCPUStatus_TO (base::)
#define COM_FORWARD_IMachine_QueryLogFilename_TO(smth) HRESULT STDMETHODCALLTYPE QueryLogFilename (ULONG aIdx, BSTR * aFilename) { return smth QueryLogFilename (aIdx, aFilename); }
#define COM_FORWARD_IMachine_QueryLogFilename_TO_OBJ(obj) COM_FORWARD_IMachine_QueryLogFilename_TO ((obj)->)
#define COM_FORWARD_IMachine_QueryLogFilename_TO_BASE(base) COM_FORWARD_IMachine_QueryLogFilename_TO (base::)
#define COM_FORWARD_IMachine_ReadLog_TO(smth) HRESULT STDMETHODCALLTYPE ReadLog (ULONG aIdx, LONG64 aOffset, LONG64 aSize, SAFEARRAY * * aData) { return smth ReadLog (aIdx, aOffset, aSize, aData); }
#define COM_FORWARD_IMachine_ReadLog_TO_OBJ(obj) COM_FORWARD_IMachine_ReadLog_TO ((obj)->)
#define COM_FORWARD_IMachine_ReadLog_TO_BASE(base) COM_FORWARD_IMachine_ReadLog_TO (base::)
#define COM_FORWARD_IMachine_CloneTo_TO(smth) HRESULT STDMETHODCALLTYPE CloneTo (IMachine * aTarget, CloneMode aMode, SAFEARRAY * * aOptions, IProgress * * aProgress) { return smth CloneTo (aTarget, aMode, aOptions, aProgress); }
#define COM_FORWARD_IMachine_CloneTo_TO_OBJ(obj) COM_FORWARD_IMachine_CloneTo_TO ((obj)->)
#define COM_FORWARD_IMachine_CloneTo_TO_BASE(base) COM_FORWARD_IMachine_CloneTo_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_CPUHotPlugEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_CPUHotPlugEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_CPUExecutionCap_TO (smth) COM_FORWARD_IMachine_SETTER_CPUExecutionCap_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_PageFusionEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_PageFusionEnabled_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_PointingHidType_TO (smth) COM_FORWARD_IMachine_SETTER_PointingHidType_TO (smth) COM_FORWARD_IMachine_GETTER_KeyboardHidType_TO (smth) COM_FORWARD_IMachine_SETTER_KeyboardHidType_TO (smth) COM_FORWARD_IMachine_GETTER_HpetEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_HpetEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_ChipsetType_TO (smth) COM_FORWARD_IMachine_SETTER_ChipsetType_TO (smth) COM_FORWARD_IMachine_GETTER_SnapshotFolder_TO (smth) COM_FORWARD_IMachine_SETTER_SnapshotFolder_TO (smth) COM_FORWARD_IMachine_GETTER_VRDEServer_TO (smth) COM_FORWARD_IMachine_GETTER_EmulatedUSBWebcameraEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_EmulatedUSBWebcameraEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_EmulatedUSBCardReaderEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_EmulatedUSBCardReaderEnabled_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_GETTER_FaultToleranceState_TO (smth) COM_FORWARD_IMachine_SETTER_FaultToleranceState_TO (smth) COM_FORWARD_IMachine_GETTER_FaultTolerancePort_TO (smth) COM_FORWARD_IMachine_SETTER_FaultTolerancePort_TO (smth) COM_FORWARD_IMachine_GETTER_FaultToleranceAddress_TO (smth) COM_FORWARD_IMachine_SETTER_FaultToleranceAddress_TO (smth) COM_FORWARD_IMachine_GETTER_FaultTolerancePassword_TO (smth) COM_FORWARD_IMachine_SETTER_FaultTolerancePassword_TO (smth) COM_FORWARD_IMachine_GETTER_FaultToleranceSyncInterval_TO (smth) COM_FORWARD_IMachine_SETTER_FaultToleranceSyncInterval_TO (smth) COM_FORWARD_IMachine_GETTER_RTCUseUTC_TO (smth) COM_FORWARD_IMachine_SETTER_RTCUseUTC_TO (smth) COM_FORWARD_IMachine_GETTER_IoCacheEnabled_TO (smth) COM_FORWARD_IMachine_SETTER_IoCacheEnabled_TO (smth) COM_FORWARD_IMachine_GETTER_IoCacheSize_TO (smth) COM_FORWARD_IMachine_SETTER_IoCacheSize_TO (smth) COM_FORWARD_IMachine_GETTER_BandwidthControl_TO (smth) COM_FORWARD_IMachine_GETTER_PciDeviceAssignments_TO (smth) COM_FORWARD_IMachine_LockMachine_TO (smth) COM_FORWARD_IMachine_LaunchVMProcess_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_TemporaryEjectDevice_TO (smth) COM_FORWARD_IMachine_NonRotationalDevice_TO (smth) COM_FORWARD_IMachine_SetBandwidthGroupForDevice_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_AttachHostPciDevice_TO (smth) COM_FORWARD_IMachine_DetachHostPciDevice_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_SetStorageControllerBootable_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_RemoveAllCPUIDLeaves_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_Unregister_TO (smth) COM_FORWARD_IMachine_Delete_TO (smth) COM_FORWARD_IMachine_Export_TO (smth) COM_FORWARD_IMachine_FindSnapshot_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_QuerySavedGuestSize_TO (smth) COM_FORWARD_IMachine_QuerySavedThumbnailSize_TO (smth) COM_FORWARD_IMachine_ReadSavedThumbnailToArray_TO (smth) COM_FORWARD_IMachine_ReadSavedThumbnailPNGToArray_TO (smth) COM_FORWARD_IMachine_QuerySavedScreenshotPNGSize_TO (smth) COM_FORWARD_IMachine_ReadSavedScreenshotPNGToArray_TO (smth) COM_FORWARD_IMachine_HotPlugCPU_TO (smth) COM_FORWARD_IMachine_HotUnplugCPU_TO (smth) COM_FORWARD_IMachine_GetCPUStatus_TO (smth) COM_FORWARD_IMachine_QueryLogFilename_TO (smth) COM_FORWARD_IMachine_ReadLog_TO (smth) COM_FORWARD_IMachine_CloneTo_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_IVRDEServerInfo_GETTER_Active_TO(smth) HRESULT STDMETHODCALLTYPE get_Active (BOOL * aActive) { return smth get_Active (aActive); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_Active_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_Active_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_Active_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_Active_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_Port_TO(smth) HRESULT STDMETHODCALLTYPE get_Port (LONG * aPort) { return smth get_Port (aPort); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_Port_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_Port_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_Port_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_Port_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_NumberOfClients_TO(smth) HRESULT STDMETHODCALLTYPE get_NumberOfClients (ULONG * aNumberOfClients) { return smth get_NumberOfClients (aNumberOfClients); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_NumberOfClients_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_NumberOfClients_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_NumberOfClients_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_NumberOfClients_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BeginTime_TO(smth) HRESULT STDMETHODCALLTYPE get_BeginTime (LONG64 * aBeginTime) { return smth get_BeginTime (aBeginTime); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_BeginTime_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_BeginTime_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BeginTime_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_BeginTime_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_EndTime_TO(smth) HRESULT STDMETHODCALLTYPE get_EndTime (LONG64 * aEndTime) { return smth get_EndTime (aEndTime); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_EndTime_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_EndTime_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_EndTime_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_EndTime_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesSent_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesSent (LONG64 * aBytesSent) { return smth get_BytesSent (aBytesSent); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesSent_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_BytesSent_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesSent_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_BytesSent_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesSentTotal_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesSentTotal (LONG64 * aBytesSentTotal) { return smth get_BytesSentTotal (aBytesSentTotal); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesSentTotal_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_BytesSentTotal_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesSentTotal_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_BytesSentTotal_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceived_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesReceived (LONG64 * aBytesReceived) { return smth get_BytesReceived (aBytesReceived); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceived_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceived_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceived_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceived_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceivedTotal_TO(smth) HRESULT STDMETHODCALLTYPE get_BytesReceivedTotal (LONG64 * aBytesReceivedTotal) { return smth get_BytesReceivedTotal (aBytesReceivedTotal); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceivedTotal_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceivedTotal_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceivedTotal_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceivedTotal_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_User_TO(smth) HRESULT STDMETHODCALLTYPE get_User (BSTR * aUser) { return smth get_User (aUser); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_User_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_User_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_User_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_User_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_Domain_TO(smth) HRESULT STDMETHODCALLTYPE get_Domain (BSTR * aDomain) { return smth get_Domain (aDomain); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_Domain_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_Domain_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_Domain_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_Domain_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientName_TO(smth) HRESULT STDMETHODCALLTYPE get_ClientName (BSTR * aClientName) { return smth get_ClientName (aClientName); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientName_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_ClientName_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientName_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_ClientName_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientIP_TO(smth) HRESULT STDMETHODCALLTYPE get_ClientIP (BSTR * aClientIP) { return smth get_ClientIP (aClientIP); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientIP_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_ClientIP_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientIP_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_ClientIP_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_ClientVersion (ULONG * aClientVersion) { return smth get_ClientVersion (aClientVersion); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientVersion_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_ClientVersion_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_ClientVersion_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_ClientVersion_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_GETTER_EncryptionStyle_TO(smth) HRESULT STDMETHODCALLTYPE get_EncryptionStyle (ULONG * aEncryptionStyle) { return smth get_EncryptionStyle (aEncryptionStyle); }
#define COM_FORWARD_IVRDEServerInfo_GETTER_EncryptionStyle_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_GETTER_EncryptionStyle_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_GETTER_EncryptionStyle_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_GETTER_EncryptionStyle_TO (base::)
#define COM_FORWARD_IVRDEServerInfo_TO(smth) COM_FORWARD_IVRDEServerInfo_GETTER_Active_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_Port_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_NumberOfClients_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_BeginTime_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_EndTime_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_BytesSent_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_BytesSentTotal_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceived_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_BytesReceivedTotal_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_User_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_Domain_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_ClientName_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_ClientIP_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_ClientVersion_TO (smth) COM_FORWARD_IVRDEServerInfo_GETTER_EncryptionStyle_TO (smth) 
#define COM_FORWARD_IVRDEServerInfo_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfo_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfo_TO_BASE(base) COM_FORWARD_IVRDEServerInfo_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_VRDEServerInfo_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDEServerInfo (IVRDEServerInfo * * aVRDEServerInfo) { return smth get_VRDEServerInfo (aVRDEServerInfo); }
#define COM_FORWARD_IConsole_GETTER_VRDEServerInfo_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_VRDEServerInfo_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_VRDEServerInfo_TO_BASE(base) COM_FORWARD_IConsole_GETTER_VRDEServerInfo_TO (base::)
#define COM_FORWARD_IConsole_GETTER_EventSource_TO(smth) HRESULT STDMETHODCALLTYPE get_EventSource (IEventSource * * aEventSource) { return smth get_EventSource (aEventSource); }
#define COM_FORWARD_IConsole_GETTER_EventSource_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_EventSource_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_EventSource_TO_BASE(base) COM_FORWARD_IConsole_GETTER_EventSource_TO (base::)
#define COM_FORWARD_IConsole_GETTER_AttachedPciDevices_TO(smth) HRESULT STDMETHODCALLTYPE get_AttachedPciDevices (SAFEARRAY * * aAttachedPciDevices) { return smth get_AttachedPciDevices (aAttachedPciDevices); }
#define COM_FORWARD_IConsole_GETTER_AttachedPciDevices_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_AttachedPciDevices_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_AttachedPciDevices_TO_BASE(base) COM_FORWARD_IConsole_GETTER_AttachedPciDevices_TO (base::)
#define COM_FORWARD_IConsole_GETTER_UseHostClipboard_TO(smth) HRESULT STDMETHODCALLTYPE get_UseHostClipboard (BOOL * aUseHostClipboard) { return smth get_UseHostClipboard (aUseHostClipboard); }
#define COM_FORWARD_IConsole_GETTER_UseHostClipboard_TO_OBJ(obj) COM_FORWARD_IConsole_GETTER_UseHostClipboard_TO ((obj)->)
#define COM_FORWARD_IConsole_GETTER_UseHostClipboard_TO_BASE(base) COM_FORWARD_IConsole_GETTER_UseHostClipboard_TO (base::)
#define COM_FORWARD_IConsole_SETTER_UseHostClipboard_TO(smth) HRESULT STDMETHODCALLTYPE put_UseHostClipboard (BOOL aUseHostClipboard) { return smth put_UseHostClipboard (aUseHostClipboard); }
#define COM_FORWARD_IConsole_SETTER_UseHostClipboard_TO_OBJ(obj) COM_FORWARD_IConsole_SETTER_UseHostClipboard_TO ((obj)->)
#define COM_FORWARD_IConsole_SETTER_UseHostClipboard_TO_BASE(base) COM_FORWARD_IConsole_SETTER_UseHostClipboard_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_DiscardSavedState_TO(smth) HRESULT STDMETHODCALLTYPE DiscardSavedState (BOOL aFRemoveFile) { return smth DiscardSavedState (aFRemoveFile); }
#define COM_FORWARD_IConsole_DiscardSavedState_TO_OBJ(obj) COM_FORWARD_IConsole_DiscardSavedState_TO ((obj)->)
#define COM_FORWARD_IConsole_DiscardSavedState_TO_BASE(base) COM_FORWARD_IConsole_DiscardSavedState_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, BOOL aAutomount) { return smth CreateSharedFolder (aName, aHostPath, aWritable, aAutomount); }
#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_DeleteSnapshotAndAllChildren_TO(smth) HRESULT STDMETHODCALLTYPE DeleteSnapshotAndAllChildren (BSTR aId, IProgress * * aProgress) { return smth DeleteSnapshotAndAllChildren (aId, aProgress); }
#define COM_FORWARD_IConsole_DeleteSnapshotAndAllChildren_TO_OBJ(obj) COM_FORWARD_IConsole_DeleteSnapshotAndAllChildren_TO ((obj)->)
#define COM_FORWARD_IConsole_DeleteSnapshotAndAllChildren_TO_BASE(base) COM_FORWARD_IConsole_DeleteSnapshotAndAllChildren_TO (base::)
#define COM_FORWARD_IConsole_DeleteSnapshotRange_TO(smth) HRESULT STDMETHODCALLTYPE DeleteSnapshotRange (BSTR aStartId, BSTR aEndId, IProgress * * aProgress) { return smth DeleteSnapshotRange (aStartId, aEndId, aProgress); }
#define COM_FORWARD_IConsole_DeleteSnapshotRange_TO_OBJ(obj) COM_FORWARD_IConsole_DeleteSnapshotRange_TO ((obj)->)
#define COM_FORWARD_IConsole_DeleteSnapshotRange_TO_BASE(base) COM_FORWARD_IConsole_DeleteSnapshotRange_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_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_VRDEServerInfo_TO (smth) COM_FORWARD_IConsole_GETTER_EventSource_TO (smth) COM_FORWARD_IConsole_GETTER_AttachedPciDevices_TO (smth) COM_FORWARD_IConsole_GETTER_UseHostClipboard_TO (smth) COM_FORWARD_IConsole_SETTER_UseHostClipboard_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_DiscardSavedState_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_DeleteSnapshotAndAllChildren_TO (smth) COM_FORWARD_IConsole_DeleteSnapshotRange_TO (smth) COM_FORWARD_IConsole_RestoreSnapshot_TO (smth) COM_FORWARD_IConsole_Teleport_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_ProcessorCoreCount_TO(smth) HRESULT STDMETHODCALLTYPE get_ProcessorCoreCount (ULONG * aProcessorCoreCount) { return smth get_ProcessorCoreCount (aProcessorCoreCount); }
#define COM_FORWARD_IHost_GETTER_ProcessorCoreCount_TO_OBJ(obj) COM_FORWARD_IHost_GETTER_ProcessorCoreCount_TO ((obj)->)
#define COM_FORWARD_IHost_GETTER_ProcessorCoreCount_TO_BASE(base) COM_FORWARD_IHost_GETTER_ProcessorCoreCount_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_GenerateMACAddress_TO(smth) HRESULT STDMETHODCALLTYPE GenerateMACAddress (BSTR * aAddress) { return smth GenerateMACAddress (aAddress); }
#define COM_FORWARD_IHost_GenerateMACAddress_TO_OBJ(obj) COM_FORWARD_IHost_GenerateMACAddress_TO ((obj)->)
#define COM_FORWARD_IHost_GenerateMACAddress_TO_BASE(base) COM_FORWARD_IHost_GenerateMACAddress_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_ProcessorCoreCount_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) COM_FORWARD_IHost_GenerateMACAddress_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_MaxGuestMonitors_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxGuestMonitors (ULONG * aMaxGuestMonitors) { return smth get_MaxGuestMonitors (aMaxGuestMonitors); }
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestMonitors_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_MaxGuestMonitors_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_MaxGuestMonitors_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_MaxGuestMonitors_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_InfoVDSize_TO(smth) HRESULT STDMETHODCALLTYPE get_InfoVDSize (LONG64 * aInfoVDSize) { return smth get_InfoVDSize (aInfoVDSize); }
#define COM_FORWARD_ISystemProperties_GETTER_InfoVDSize_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_InfoVDSize_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_InfoVDSize_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_InfoVDSize_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_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_FreeDiskSpaceWarning_TO(smth) HRESULT STDMETHODCALLTYPE get_FreeDiskSpaceWarning (LONG64 * aFreeDiskSpaceWarning) { return smth get_FreeDiskSpaceWarning (aFreeDiskSpaceWarning); }
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceWarning_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceWarning_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceWarning_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceWarning_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceWarning_TO(smth) HRESULT STDMETHODCALLTYPE put_FreeDiskSpaceWarning (LONG64 aFreeDiskSpaceWarning) { return smth put_FreeDiskSpaceWarning (aFreeDiskSpaceWarning); }
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceWarning_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceWarning_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceWarning_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceWarning_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentWarning_TO(smth) HRESULT STDMETHODCALLTYPE get_FreeDiskSpacePercentWarning (ULONG * aFreeDiskSpacePercentWarning) { return smth get_FreeDiskSpacePercentWarning (aFreeDiskSpacePercentWarning); }
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentWarning_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentWarning_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentWarning_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentWarning_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentWarning_TO(smth) HRESULT STDMETHODCALLTYPE put_FreeDiskSpacePercentWarning (ULONG aFreeDiskSpacePercentWarning) { return smth put_FreeDiskSpacePercentWarning (aFreeDiskSpacePercentWarning); }
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentWarning_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentWarning_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentWarning_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentWarning_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceError_TO(smth) HRESULT STDMETHODCALLTYPE get_FreeDiskSpaceError (LONG64 * aFreeDiskSpaceError) { return smth get_FreeDiskSpaceError (aFreeDiskSpaceError); }
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceError_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceError_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceError_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceError_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceError_TO(smth) HRESULT STDMETHODCALLTYPE put_FreeDiskSpaceError (LONG64 aFreeDiskSpaceError) { return smth put_FreeDiskSpaceError (aFreeDiskSpaceError); }
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceError_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceError_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceError_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceError_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentError_TO(smth) HRESULT STDMETHODCALLTYPE get_FreeDiskSpacePercentError (ULONG * aFreeDiskSpacePercentError) { return smth get_FreeDiskSpacePercentError (aFreeDiskSpacePercentError); }
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentError_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentError_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentError_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentError_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentError_TO(smth) HRESULT STDMETHODCALLTYPE put_FreeDiskSpacePercentError (ULONG aFreeDiskSpacePercentError) { return smth put_FreeDiskSpacePercentError (aFreeDiskSpacePercentError); }
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentError_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentError_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentError_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentError_TO (base::)
#define COM_FORWARD_ISystemProperties_GETTER_VRDEAuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDEAuthLibrary (BSTR * aVRDEAuthLibrary) { return smth get_VRDEAuthLibrary (aVRDEAuthLibrary); }
#define COM_FORWARD_ISystemProperties_GETTER_VRDEAuthLibrary_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_VRDEAuthLibrary_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_VRDEAuthLibrary_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_VRDEAuthLibrary_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_VRDEAuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE put_VRDEAuthLibrary (BSTR aVRDEAuthLibrary) { return smth put_VRDEAuthLibrary (aVRDEAuthLibrary); }
#define COM_FORWARD_ISystemProperties_SETTER_VRDEAuthLibrary_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_VRDEAuthLibrary_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_VRDEAuthLibrary_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_VRDEAuthLibrary_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_DefaultVRDEExtPack_TO(smth) HRESULT STDMETHODCALLTYPE get_DefaultVRDEExtPack (BSTR * aDefaultVRDEExtPack) { return smth get_DefaultVRDEExtPack (aDefaultVRDEExtPack); }
#define COM_FORWARD_ISystemProperties_GETTER_DefaultVRDEExtPack_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GETTER_DefaultVRDEExtPack_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GETTER_DefaultVRDEExtPack_TO_BASE(base) COM_FORWARD_ISystemProperties_GETTER_DefaultVRDEExtPack_TO (base::)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultVRDEExtPack_TO(smth) HRESULT STDMETHODCALLTYPE put_DefaultVRDEExtPack (BSTR aDefaultVRDEExtPack) { return smth put_DefaultVRDEExtPack (aDefaultVRDEExtPack); }
#define COM_FORWARD_ISystemProperties_SETTER_DefaultVRDEExtPack_TO_OBJ(obj) COM_FORWARD_ISystemProperties_SETTER_DefaultVRDEExtPack_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_SETTER_DefaultVRDEExtPack_TO_BASE(base) COM_FORWARD_ISystemProperties_SETTER_DefaultVRDEExtPack_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_GetMaxNetworkAdapters_TO(smth) HRESULT STDMETHODCALLTYPE GetMaxNetworkAdapters (ChipsetType aChipset, ULONG * aMaxNetworkAdapters) { return smth GetMaxNetworkAdapters (aChipset, aMaxNetworkAdapters); }
#define COM_FORWARD_ISystemProperties_GetMaxNetworkAdapters_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetMaxNetworkAdapters_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetMaxNetworkAdapters_TO_BASE(base) COM_FORWARD_ISystemProperties_GetMaxNetworkAdapters_TO (base::)
#define COM_FORWARD_ISystemProperties_GetMaxNetworkAdaptersOfType_TO(smth) HRESULT STDMETHODCALLTYPE GetMaxNetworkAdaptersOfType (ChipsetType aChipset, NetworkAttachmentType aType, ULONG * aMaxNetworkAdapters) { return smth GetMaxNetworkAdaptersOfType (aChipset, aType, aMaxNetworkAdapters); }
#define COM_FORWARD_ISystemProperties_GetMaxNetworkAdaptersOfType_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetMaxNetworkAdaptersOfType_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetMaxNetworkAdaptersOfType_TO_BASE(base) COM_FORWARD_ISystemProperties_GetMaxNetworkAdaptersOfType_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 (ChipsetType aChipset, StorageBus aBus, ULONG * aMaxInstances) { return smth GetMaxInstancesOfStorageBus (aChipset, 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_GetDefaultIoCacheSettingForStorageController_TO(smth) HRESULT STDMETHODCALLTYPE GetDefaultIoCacheSettingForStorageController (StorageControllerType aControllerType, BOOL * aEnabled) { return smth GetDefaultIoCacheSettingForStorageController (aControllerType, aEnabled); }
#define COM_FORWARD_ISystemProperties_GetDefaultIoCacheSettingForStorageController_TO_OBJ(obj) COM_FORWARD_ISystemProperties_GetDefaultIoCacheSettingForStorageController_TO ((obj)->)
#define COM_FORWARD_ISystemProperties_GetDefaultIoCacheSettingForStorageController_TO_BASE(base) COM_FORWARD_ISystemProperties_GetDefaultIoCacheSettingForStorageController_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_MaxGuestMonitors_TO (smth) COM_FORWARD_ISystemProperties_GETTER_InfoVDSize_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_MediumFormats_TO (smth) COM_FORWARD_ISystemProperties_GETTER_DefaultHardDiskFormat_TO (smth) COM_FORWARD_ISystemProperties_SETTER_DefaultHardDiskFormat_TO (smth) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceWarning_TO (smth) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceWarning_TO (smth) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentWarning_TO (smth) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentWarning_TO (smth) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpaceError_TO (smth) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpaceError_TO (smth) COM_FORWARD_ISystemProperties_GETTER_FreeDiskSpacePercentError_TO (smth) COM_FORWARD_ISystemProperties_SETTER_FreeDiskSpacePercentError_TO (smth) COM_FORWARD_ISystemProperties_GETTER_VRDEAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_SETTER_VRDEAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_GETTER_WebServiceAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_SETTER_WebServiceAuthLibrary_TO (smth) COM_FORWARD_ISystemProperties_GETTER_DefaultVRDEExtPack_TO (smth) COM_FORWARD_ISystemProperties_SETTER_DefaultVRDEExtPack_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_GetMaxNetworkAdapters_TO (smth) COM_FORWARD_ISystemProperties_GetMaxNetworkAdaptersOfType_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) COM_FORWARD_ISystemProperties_GetDefaultIoCacheSettingForStorageController_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 (LONG64 * 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_GETTER_RecommendedPae_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedPae (BOOL * aRecommendedPae) { return smth get_RecommendedPae (aRecommendedPae); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedPae_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedPae_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedPae_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedPae_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageController_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedDvdStorageController (StorageControllerType * aRecommendedDvdStorageController) { return smth get_RecommendedDvdStorageController (aRecommendedDvdStorageController); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageController_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageController_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageController_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageController_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedDvdStorageBus (StorageBus * aRecommendedDvdStorageBus) { return smth get_RecommendedDvdStorageBus (aRecommendedDvdStorageBus); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageBus_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageBus_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageBus_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageBus_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageController_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedHdStorageController (StorageControllerType * aRecommendedHdStorageController) { return smth get_RecommendedHdStorageController (aRecommendedHdStorageController); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageController_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageController_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageController_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageController_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageBus_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedHdStorageBus (StorageBus * aRecommendedHdStorageBus) { return smth get_RecommendedHdStorageBus (aRecommendedHdStorageBus); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageBus_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageBus_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageBus_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageBus_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedFirmware_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedFirmware (FirmwareType * aRecommendedFirmware) { return smth get_RecommendedFirmware (aRecommendedFirmware); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedFirmware_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedFirmware_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedFirmware_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedFirmware_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbHid_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedUsbHid (BOOL * aRecommendedUsbHid) { return smth get_RecommendedUsbHid (aRecommendedUsbHid); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbHid_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbHid_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbHid_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbHid_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHpet_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedHpet (BOOL * aRecommendedHpet) { return smth get_RecommendedHpet (aRecommendedHpet); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHpet_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedHpet_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedHpet_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedHpet_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbTablet_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedUsbTablet (BOOL * aRecommendedUsbTablet) { return smth get_RecommendedUsbTablet (aRecommendedUsbTablet); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbTablet_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbTablet_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbTablet_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbTablet_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedRtcUseUtc_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedRtcUseUtc (BOOL * aRecommendedRtcUseUtc) { return smth get_RecommendedRtcUseUtc (aRecommendedRtcUseUtc); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedRtcUseUtc_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedRtcUseUtc_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedRtcUseUtc_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedRtcUseUtc_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedChipset_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedChipset (ChipsetType * aRecommendedChipset) { return smth get_RecommendedChipset (aRecommendedChipset); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedChipset_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedChipset_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedChipset_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedChipset_TO (base::)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedAudioController_TO(smth) HRESULT STDMETHODCALLTYPE get_RecommendedAudioController (AudioControllerType * aRecommendedAudioController) { return smth get_RecommendedAudioController (aRecommendedAudioController); }
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedAudioController_TO_OBJ(obj) COM_FORWARD_IGuestOSType_GETTER_RecommendedAudioController_TO ((obj)->)
#define COM_FORWARD_IGuestOSType_GETTER_RecommendedAudioController_TO_BASE(base) COM_FORWARD_IGuestOSType_GETTER_RecommendedAudioController_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) COM_FORWARD_IGuestOSType_GETTER_RecommendedPae_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageController_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedDvdStorageBus_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageController_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedHdStorageBus_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedFirmware_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbHid_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedHpet_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedUsbTablet_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedRtcUseUtc_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedChipset_TO (smth) COM_FORWARD_IGuestOSType_GETTER_RecommendedAudioController_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_IAdditionsFacility_GETTER_ClassType_TO(smth) HRESULT STDMETHODCALLTYPE get_ClassType (AdditionsFacilityClass * aClassType) { return smth get_ClassType (aClassType); }
#define COM_FORWARD_IAdditionsFacility_GETTER_ClassType_TO_OBJ(obj) COM_FORWARD_IAdditionsFacility_GETTER_ClassType_TO ((obj)->)
#define COM_FORWARD_IAdditionsFacility_GETTER_ClassType_TO_BASE(base) COM_FORWARD_IAdditionsFacility_GETTER_ClassType_TO (base::)
#define COM_FORWARD_IAdditionsFacility_GETTER_LastUpdated_TO(smth) HRESULT STDMETHODCALLTYPE get_LastUpdated (LONG64 * aLastUpdated) { return smth get_LastUpdated (aLastUpdated); }
#define COM_FORWARD_IAdditionsFacility_GETTER_LastUpdated_TO_OBJ(obj) COM_FORWARD_IAdditionsFacility_GETTER_LastUpdated_TO ((obj)->)
#define COM_FORWARD_IAdditionsFacility_GETTER_LastUpdated_TO_BASE(base) COM_FORWARD_IAdditionsFacility_GETTER_LastUpdated_TO (base::)
#define COM_FORWARD_IAdditionsFacility_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IAdditionsFacility_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IAdditionsFacility_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IAdditionsFacility_GETTER_Name_TO_BASE(base) COM_FORWARD_IAdditionsFacility_GETTER_Name_TO (base::)
#define COM_FORWARD_IAdditionsFacility_GETTER_Status_TO(smth) HRESULT STDMETHODCALLTYPE get_Status (AdditionsFacilityStatus * aStatus) { return smth get_Status (aStatus); }
#define COM_FORWARD_IAdditionsFacility_GETTER_Status_TO_OBJ(obj) COM_FORWARD_IAdditionsFacility_GETTER_Status_TO ((obj)->)
#define COM_FORWARD_IAdditionsFacility_GETTER_Status_TO_BASE(base) COM_FORWARD_IAdditionsFacility_GETTER_Status_TO (base::)
#define COM_FORWARD_IAdditionsFacility_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (AdditionsFacilityType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IAdditionsFacility_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IAdditionsFacility_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IAdditionsFacility_GETTER_Type_TO_BASE(base) COM_FORWARD_IAdditionsFacility_GETTER_Type_TO (base::)
#define COM_FORWARD_IAdditionsFacility_TO(smth) COM_FORWARD_IAdditionsFacility_GETTER_ClassType_TO (smth) COM_FORWARD_IAdditionsFacility_GETTER_LastUpdated_TO (smth) COM_FORWARD_IAdditionsFacility_GETTER_Name_TO (smth) COM_FORWARD_IAdditionsFacility_GETTER_Status_TO (smth) COM_FORWARD_IAdditionsFacility_GETTER_Type_TO (smth) 
#define COM_FORWARD_IAdditionsFacility_TO_OBJ(obj) COM_FORWARD_IAdditionsFacility_TO ((obj)->)
#define COM_FORWARD_IAdditionsFacility_TO_BASE(base) COM_FORWARD_IAdditionsFacility_TO (base::)
#define COM_FORWARD_IGuestDirEntry_GETTER_NodeId_TO(smth) HRESULT STDMETHODCALLTYPE get_NodeId (LONG64 * aNodeId) { return smth get_NodeId (aNodeId); }
#define COM_FORWARD_IGuestDirEntry_GETTER_NodeId_TO_OBJ(obj) COM_FORWARD_IGuestDirEntry_GETTER_NodeId_TO ((obj)->)
#define COM_FORWARD_IGuestDirEntry_GETTER_NodeId_TO_BASE(base) COM_FORWARD_IGuestDirEntry_GETTER_NodeId_TO (base::)
#define COM_FORWARD_IGuestDirEntry_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IGuestDirEntry_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IGuestDirEntry_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IGuestDirEntry_GETTER_Name_TO_BASE(base) COM_FORWARD_IGuestDirEntry_GETTER_Name_TO (base::)
#define COM_FORWARD_IGuestDirEntry_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (GuestDirEntryType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IGuestDirEntry_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IGuestDirEntry_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IGuestDirEntry_GETTER_Type_TO_BASE(base) COM_FORWARD_IGuestDirEntry_GETTER_Type_TO (base::)
#define COM_FORWARD_IGuestDirEntry_TO(smth) COM_FORWARD_IGuestDirEntry_GETTER_NodeId_TO (smth) COM_FORWARD_IGuestDirEntry_GETTER_Name_TO (smth) COM_FORWARD_IGuestDirEntry_GETTER_Type_TO (smth) 
#define COM_FORWARD_IGuestDirEntry_TO_OBJ(obj) COM_FORWARD_IGuestDirEntry_TO ((obj)->)
#define COM_FORWARD_IGuestDirEntry_TO_BASE(base) COM_FORWARD_IGuestDirEntry_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_AdditionsRunLevel_TO(smth) HRESULT STDMETHODCALLTYPE get_AdditionsRunLevel (AdditionsRunLevelType * aAdditionsRunLevel) { return smth get_AdditionsRunLevel (aAdditionsRunLevel); }
#define COM_FORWARD_IGuest_GETTER_AdditionsRunLevel_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_AdditionsRunLevel_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_AdditionsRunLevel_TO_BASE(base) COM_FORWARD_IGuest_GETTER_AdditionsRunLevel_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_Facilities_TO(smth) HRESULT STDMETHODCALLTYPE get_Facilities (SAFEARRAY * * aFacilities) { return smth get_Facilities (aFacilities); }
#define COM_FORWARD_IGuest_GETTER_Facilities_TO_OBJ(obj) COM_FORWARD_IGuest_GETTER_Facilities_TO ((obj)->)
#define COM_FORWARD_IGuest_GETTER_Facilities_TO_BASE(base) COM_FORWARD_IGuest_GETTER_Facilities_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_InternalGetStatistics_TO(smth) HRESULT STDMETHODCALLTYPE InternalGetStatistics (ULONG * aCpuUser, ULONG * aCpuKernel, ULONG * aCpuIdle, ULONG * aMemTotal, ULONG * aMemFree, ULONG * aMemBalloon, ULONG * aMemShared, ULONG * aMemCache, ULONG * aPagedTotal, ULONG * aMemAllocTotal, ULONG * aMemFreeTotal, ULONG * aMemBalloonTotal, ULONG * aMemSharedTotal) { return smth InternalGetStatistics (aCpuUser, aCpuKernel, aCpuIdle, aMemTotal, aMemFree, aMemBalloon, aMemShared, aMemCache, aPagedTotal, aMemAllocTotal, aMemFreeTotal, aMemBalloonTotal, aMemSharedTotal); }
#define COM_FORWARD_IGuest_InternalGetStatistics_TO_OBJ(obj) COM_FORWARD_IGuest_InternalGetStatistics_TO ((obj)->)
#define COM_FORWARD_IGuest_InternalGetStatistics_TO_BASE(base) COM_FORWARD_IGuest_InternalGetStatistics_TO (base::)
#define COM_FORWARD_IGuest_GetFacilityStatus_TO(smth) HRESULT STDMETHODCALLTYPE GetFacilityStatus (AdditionsFacilityType aFacility, LONG64 * aTimestamp, AdditionsFacilityStatus * aStatus) { return smth GetFacilityStatus (aFacility, aTimestamp, aStatus); }
#define COM_FORWARD_IGuest_GetFacilityStatus_TO_OBJ(obj) COM_FORWARD_IGuest_GetFacilityStatus_TO ((obj)->)
#define COM_FORWARD_IGuest_GetFacilityStatus_TO_BASE(base) COM_FORWARD_IGuest_GetFacilityStatus_TO (base::)
#define COM_FORWARD_IGuest_GetAdditionsStatus_TO(smth) HRESULT STDMETHODCALLTYPE GetAdditionsStatus (AdditionsRunLevelType aLevel, BOOL * aActive) { return smth GetAdditionsStatus (aLevel, aActive); }
#define COM_FORWARD_IGuest_GetAdditionsStatus_TO_OBJ(obj) COM_FORWARD_IGuest_GetAdditionsStatus_TO ((obj)->)
#define COM_FORWARD_IGuest_GetAdditionsStatus_TO_BASE(base) COM_FORWARD_IGuest_GetAdditionsStatus_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_ExecuteProcess_TO(smth) HRESULT STDMETHODCALLTYPE ExecuteProcess (BSTR aExecName, ULONG aFlags, SAFEARRAY * * aArguments, SAFEARRAY * * aEnvironment, BSTR aUserName, BSTR aPassword, ULONG aTimeoutMS, ULONG * aPid, IProgress * * aProgress) { return smth ExecuteProcess (aExecName, aFlags, aArguments, aEnvironment, aUserName, aPassword, aTimeoutMS, aPid, aProgress); }
#define COM_FORWARD_IGuest_ExecuteProcess_TO_OBJ(obj) COM_FORWARD_IGuest_ExecuteProcess_TO ((obj)->)
#define COM_FORWARD_IGuest_ExecuteProcess_TO_BASE(base) COM_FORWARD_IGuest_ExecuteProcess_TO (base::)
#define COM_FORWARD_IGuest_GetProcessOutput_TO(smth) HRESULT STDMETHODCALLTYPE GetProcessOutput (ULONG aPid, ULONG aFlags, ULONG aTimeoutMS, LONG64 aSize, SAFEARRAY * * aData) { return smth GetProcessOutput (aPid, aFlags, aTimeoutMS, aSize, aData); }
#define COM_FORWARD_IGuest_GetProcessOutput_TO_OBJ(obj) COM_FORWARD_IGuest_GetProcessOutput_TO ((obj)->)
#define COM_FORWARD_IGuest_GetProcessOutput_TO_BASE(base) COM_FORWARD_IGuest_GetProcessOutput_TO (base::)
#define COM_FORWARD_IGuest_GetProcessStatus_TO(smth) HRESULT STDMETHODCALLTYPE GetProcessStatus (ULONG aPid, ULONG * aExitcode, ULONG * aFlags, ExecuteProcessStatus * aReason) { return smth GetProcessStatus (aPid, aExitcode, aFlags, aReason); }
#define COM_FORWARD_IGuest_GetProcessStatus_TO_OBJ(obj) COM_FORWARD_IGuest_GetProcessStatus_TO ((obj)->)
#define COM_FORWARD_IGuest_GetProcessStatus_TO_BASE(base) COM_FORWARD_IGuest_GetProcessStatus_TO (base::)
#define COM_FORWARD_IGuest_CopyFromGuest_TO(smth) HRESULT STDMETHODCALLTYPE CopyFromGuest (BSTR aSource, BSTR aDest, BSTR aUserName, BSTR aPassword, ULONG aFlags, IProgress * * aProgress) { return smth CopyFromGuest (aSource, aDest, aUserName, aPassword, aFlags, aProgress); }
#define COM_FORWARD_IGuest_CopyFromGuest_TO_OBJ(obj) COM_FORWARD_IGuest_CopyFromGuest_TO ((obj)->)
#define COM_FORWARD_IGuest_CopyFromGuest_TO_BASE(base) COM_FORWARD_IGuest_CopyFromGuest_TO (base::)
#define COM_FORWARD_IGuest_CopyToGuest_TO(smth) HRESULT STDMETHODCALLTYPE CopyToGuest (BSTR aSource, BSTR aDest, BSTR aUserName, BSTR aPassword, ULONG aFlags, IProgress * * aProgress) { return smth CopyToGuest (aSource, aDest, aUserName, aPassword, aFlags, aProgress); }
#define COM_FORWARD_IGuest_CopyToGuest_TO_OBJ(obj) COM_FORWARD_IGuest_CopyToGuest_TO ((obj)->)
#define COM_FORWARD_IGuest_CopyToGuest_TO_BASE(base) COM_FORWARD_IGuest_CopyToGuest_TO (base::)
#define COM_FORWARD_IGuest_DirectoryClose_TO(smth) HRESULT STDMETHODCALLTYPE DirectoryClose (ULONG aHandle) { return smth DirectoryClose (aHandle); }
#define COM_FORWARD_IGuest_DirectoryClose_TO_OBJ(obj) COM_FORWARD_IGuest_DirectoryClose_TO ((obj)->)
#define COM_FORWARD_IGuest_DirectoryClose_TO_BASE(base) COM_FORWARD_IGuest_DirectoryClose_TO (base::)
#define COM_FORWARD_IGuest_DirectoryCreate_TO(smth) HRESULT STDMETHODCALLTYPE DirectoryCreate (BSTR aDirectory, BSTR aUserName, BSTR aPassword, ULONG aMode, ULONG aFlags) { return smth DirectoryCreate (aDirectory, aUserName, aPassword, aMode, aFlags); }
#define COM_FORWARD_IGuest_DirectoryCreate_TO_OBJ(obj) COM_FORWARD_IGuest_DirectoryCreate_TO ((obj)->)
#define COM_FORWARD_IGuest_DirectoryCreate_TO_BASE(base) COM_FORWARD_IGuest_DirectoryCreate_TO (base::)
#define COM_FORWARD_IGuest_DirectoryOpen_TO(smth) HRESULT STDMETHODCALLTYPE DirectoryOpen (BSTR aDirectory, BSTR aFilter, ULONG aFlags, BSTR aUserName, BSTR aPassword, ULONG * aHandle) { return smth DirectoryOpen (aDirectory, aFilter, aFlags, aUserName, aPassword, aHandle); }
#define COM_FORWARD_IGuest_DirectoryOpen_TO_OBJ(obj) COM_FORWARD_IGuest_DirectoryOpen_TO ((obj)->)
#define COM_FORWARD_IGuest_DirectoryOpen_TO_BASE(base) COM_FORWARD_IGuest_DirectoryOpen_TO (base::)
#define COM_FORWARD_IGuest_DirectoryRead_TO(smth) HRESULT STDMETHODCALLTYPE DirectoryRead (ULONG aHandle, IGuestDirEntry * * aEntry) { return smth DirectoryRead (aHandle, aEntry); }
#define COM_FORWARD_IGuest_DirectoryRead_TO_OBJ(obj) COM_FORWARD_IGuest_DirectoryRead_TO ((obj)->)
#define COM_FORWARD_IGuest_DirectoryRead_TO_BASE(base) COM_FORWARD_IGuest_DirectoryRead_TO (base::)
#define COM_FORWARD_IGuest_FileExists_TO(smth) HRESULT STDMETHODCALLTYPE FileExists (BSTR aFile, BSTR aUserName, BSTR aPassword, BOOL * aExists) { return smth FileExists (aFile, aUserName, aPassword, aExists); }
#define COM_FORWARD_IGuest_FileExists_TO_OBJ(obj) COM_FORWARD_IGuest_FileExists_TO ((obj)->)
#define COM_FORWARD_IGuest_FileExists_TO_BASE(base) COM_FORWARD_IGuest_FileExists_TO (base::)
#define COM_FORWARD_IGuest_FileQuerySize_TO(smth) HRESULT STDMETHODCALLTYPE FileQuerySize (BSTR aFile, BSTR aUserName, BSTR aPassword, LONG64 * aSize) { return smth FileQuerySize (aFile, aUserName, aPassword, aSize); }
#define COM_FORWARD_IGuest_FileQuerySize_TO_OBJ(obj) COM_FORWARD_IGuest_FileQuerySize_TO ((obj)->)
#define COM_FORWARD_IGuest_FileQuerySize_TO_BASE(base) COM_FORWARD_IGuest_FileQuerySize_TO (base::)
#define COM_FORWARD_IGuest_SetProcessInput_TO(smth) HRESULT STDMETHODCALLTYPE SetProcessInput (ULONG aPid, ULONG aFlags, ULONG aTimeoutMS, SAFEARRAY * * aData, ULONG * aWritten) { return smth SetProcessInput (aPid, aFlags, aTimeoutMS, aData, aWritten); }
#define COM_FORWARD_IGuest_SetProcessInput_TO_OBJ(obj) COM_FORWARD_IGuest_SetProcessInput_TO ((obj)->)
#define COM_FORWARD_IGuest_SetProcessInput_TO_BASE(base) COM_FORWARD_IGuest_SetProcessInput_TO (base::)
#define COM_FORWARD_IGuest_UpdateGuestAdditions_TO(smth) HRESULT STDMETHODCALLTYPE UpdateGuestAdditions (BSTR aSource, ULONG aFlags, IProgress * * aProgress) { return smth UpdateGuestAdditions (aSource, aFlags, aProgress); }
#define COM_FORWARD_IGuest_UpdateGuestAdditions_TO_OBJ(obj) COM_FORWARD_IGuest_UpdateGuestAdditions_TO ((obj)->)
#define COM_FORWARD_IGuest_UpdateGuestAdditions_TO_BASE(base) COM_FORWARD_IGuest_UpdateGuestAdditions_TO (base::)
#define COM_FORWARD_IGuest_TO(smth) COM_FORWARD_IGuest_GETTER_OSTypeId_TO (smth) COM_FORWARD_IGuest_GETTER_AdditionsRunLevel_TO (smth) COM_FORWARD_IGuest_GETTER_AdditionsVersion_TO (smth) COM_FORWARD_IGuest_GETTER_Facilities_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_InternalGetStatistics_TO (smth) COM_FORWARD_IGuest_GetFacilityStatus_TO (smth) COM_FORWARD_IGuest_GetAdditionsStatus_TO (smth) COM_FORWARD_IGuest_SetCredentials_TO (smth) COM_FORWARD_IGuest_ExecuteProcess_TO (smth) COM_FORWARD_IGuest_GetProcessOutput_TO (smth) COM_FORWARD_IGuest_GetProcessStatus_TO (smth) COM_FORWARD_IGuest_CopyFromGuest_TO (smth) COM_FORWARD_IGuest_CopyToGuest_TO (smth) COM_FORWARD_IGuest_DirectoryClose_TO (smth) COM_FORWARD_IGuest_DirectoryCreate_TO (smth) COM_FORWARD_IGuest_DirectoryOpen_TO (smth) COM_FORWARD_IGuest_DirectoryRead_TO (smth) COM_FORWARD_IGuest_FileExists_TO (smth) COM_FORWARD_IGuest_FileQuerySize_TO (smth) COM_FORWARD_IGuest_SetProcessInput_TO (smth) COM_FORWARD_IGuest_UpdateGuestAdditions_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_OperationWeight_TO(smth) HRESULT STDMETHODCALLTYPE get_OperationWeight (ULONG * aOperationWeight) { return smth get_OperationWeight (aOperationWeight); }
#define COM_FORWARD_IProgress_GETTER_OperationWeight_TO_OBJ(obj) COM_FORWARD_IProgress_GETTER_OperationWeight_TO ((obj)->)
#define COM_FORWARD_IProgress_GETTER_OperationWeight_TO_BASE(base) COM_FORWARD_IProgress_GETTER_OperationWeight_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_WaitForAsyncProgressCompletion_TO(smth) HRESULT STDMETHODCALLTYPE WaitForAsyncProgressCompletion (IProgress * aPProgressAsync) { return smth WaitForAsyncProgressCompletion (aPProgressAsync); }
#define COM_FORWARD_IProgress_WaitForAsyncProgressCompletion_TO_OBJ(obj) COM_FORWARD_IProgress_WaitForAsyncProgressCompletion_TO ((obj)->)
#define COM_FORWARD_IProgress_WaitForAsyncProgressCompletion_TO_BASE(base) COM_FORWARD_IProgress_WaitForAsyncProgressCompletion_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_OperationWeight_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_WaitForAsyncProgressCompletion_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_GetChildrenCount_TO(smth) HRESULT STDMETHODCALLTYPE GetChildrenCount (ULONG * aChildrenCount) { return smth GetChildrenCount (aChildrenCount); }
#define COM_FORWARD_ISnapshot_GetChildrenCount_TO_OBJ(obj) COM_FORWARD_ISnapshot_GetChildrenCount_TO ((obj)->)
#define COM_FORWARD_ISnapshot_GetChildrenCount_TO_BASE(base) COM_FORWARD_ISnapshot_GetChildrenCount_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) COM_FORWARD_ISnapshot_GetChildrenCount_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_GETTER_TemporaryEject_TO(smth) HRESULT STDMETHODCALLTYPE get_TemporaryEject (BOOL * aTemporaryEject) { return smth get_TemporaryEject (aTemporaryEject); }
#define COM_FORWARD_IMediumAttachment_GETTER_TemporaryEject_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_TemporaryEject_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_TemporaryEject_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_TemporaryEject_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_IsEjected_TO(smth) HRESULT STDMETHODCALLTYPE get_IsEjected (BOOL * aIsEjected) { return smth get_IsEjected (aIsEjected); }
#define COM_FORWARD_IMediumAttachment_GETTER_IsEjected_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_IsEjected_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_IsEjected_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_IsEjected_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_NonRotational_TO(smth) HRESULT STDMETHODCALLTYPE get_NonRotational (BOOL * aNonRotational) { return smth get_NonRotational (aNonRotational); }
#define COM_FORWARD_IMediumAttachment_GETTER_NonRotational_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_NonRotational_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_NonRotational_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_NonRotational_TO (base::)
#define COM_FORWARD_IMediumAttachment_GETTER_BandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE get_BandwidthGroup (IBandwidthGroup * * aBandwidthGroup) { return smth get_BandwidthGroup (aBandwidthGroup); }
#define COM_FORWARD_IMediumAttachment_GETTER_BandwidthGroup_TO_OBJ(obj) COM_FORWARD_IMediumAttachment_GETTER_BandwidthGroup_TO ((obj)->)
#define COM_FORWARD_IMediumAttachment_GETTER_BandwidthGroup_TO_BASE(base) COM_FORWARD_IMediumAttachment_GETTER_BandwidthGroup_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) COM_FORWARD_IMediumAttachment_GETTER_TemporaryEject_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_IsEjected_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_NonRotational_TO (smth) COM_FORWARD_IMediumAttachment_GETTER_BandwidthGroup_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_Variant_TO(smth) HRESULT STDMETHODCALLTYPE get_Variant (ULONG * aVariant) { return smth get_Variant (aVariant); }
#define COM_FORWARD_IMedium_GETTER_Variant_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_Variant_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_Variant_TO_BASE(base) COM_FORWARD_IMedium_GETTER_Variant_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 (LONG64 * 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_MediumFormat_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumFormat (IMediumFormat * * aMediumFormat) { return smth get_MediumFormat (aMediumFormat); }
#define COM_FORWARD_IMedium_GETTER_MediumFormat_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_MediumFormat_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_MediumFormat_TO_BASE(base) COM_FORWARD_IMedium_GETTER_MediumFormat_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_AllowedTypes_TO(smth) HRESULT STDMETHODCALLTYPE get_AllowedTypes (SAFEARRAY * * aAllowedTypes) { return smth get_AllowedTypes (aAllowedTypes); }
#define COM_FORWARD_IMedium_GETTER_AllowedTypes_TO_OBJ(obj) COM_FORWARD_IMedium_GETTER_AllowedTypes_TO ((obj)->)
#define COM_FORWARD_IMedium_GETTER_AllowedTypes_TO_BASE(base) COM_FORWARD_IMedium_GETTER_AllowedTypes_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 (LONG64 * 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_SetIDs_TO(smth) HRESULT STDMETHODCALLTYPE SetIDs (BOOL aSetImageId, BSTR aImageId, BOOL aSetParentId, BSTR aParentId) { return smth SetIDs (aSetImageId, aImageId, aSetParentId, aParentId); }
#define COM_FORWARD_IMedium_SetIDs_TO_OBJ(obj) COM_FORWARD_IMedium_SetIDs_TO ((obj)->)
#define COM_FORWARD_IMedium_SetIDs_TO_BASE(base) COM_FORWARD_IMedium_SetIDs_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 (LONG64 aLogicalSize, ULONG 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, ULONG 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 (IMedium * aTarget, IProgress * * aProgress) { return smth MergeTo (aTarget, 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, ULONG 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 (LONG64 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_Variant_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_MediumFormat_TO (smth) COM_FORWARD_IMedium_GETTER_Type_TO (smth) COM_FORWARD_IMedium_SETTER_Type_TO (smth) COM_FORWARD_IMedium_GETTER_AllowedTypes_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_SetIDs_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_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_DescribeFileExtensions_TO(smth) HRESULT STDMETHODCALLTYPE DescribeFileExtensions (SAFEARRAY * * aExtensions, SAFEARRAY * * aType) { return smth DescribeFileExtensions (aExtensions, aType); }
#define COM_FORWARD_IMediumFormat_DescribeFileExtensions_TO_OBJ(obj) COM_FORWARD_IMediumFormat_DescribeFileExtensions_TO ((obj)->)
#define COM_FORWARD_IMediumFormat_DescribeFileExtensions_TO_BASE(base) COM_FORWARD_IMediumFormat_DescribeFileExtensions_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_Capabilities_TO (smth) COM_FORWARD_IMediumFormat_DescribeFileExtensions_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_GETTER_EventSource_TO(smth) HRESULT STDMETHODCALLTYPE get_EventSource (IEventSource * * aEventSource) { return smth get_EventSource (aEventSource); }
#define COM_FORWARD_IKeyboard_GETTER_EventSource_TO_OBJ(obj) COM_FORWARD_IKeyboard_GETTER_EventSource_TO ((obj)->)
#define COM_FORWARD_IKeyboard_GETTER_EventSource_TO_BASE(base) COM_FORWARD_IKeyboard_GETTER_EventSource_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_GETTER_EventSource_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_GETTER_RelativeSupported_TO(smth) HRESULT STDMETHODCALLTYPE get_RelativeSupported (BOOL * aRelativeSupported) { return smth get_RelativeSupported (aRelativeSupported); }
#define COM_FORWARD_IMouse_GETTER_RelativeSupported_TO_OBJ(obj) COM_FORWARD_IMouse_GETTER_RelativeSupported_TO ((obj)->)
#define COM_FORWARD_IMouse_GETTER_RelativeSupported_TO_BASE(base) COM_FORWARD_IMouse_GETTER_RelativeSupported_TO (base::)
#define COM_FORWARD_IMouse_GETTER_NeedsHostCursor_TO(smth) HRESULT STDMETHODCALLTYPE get_NeedsHostCursor (BOOL * aNeedsHostCursor) { return smth get_NeedsHostCursor (aNeedsHostCursor); }
#define COM_FORWARD_IMouse_GETTER_NeedsHostCursor_TO_OBJ(obj) COM_FORWARD_IMouse_GETTER_NeedsHostCursor_TO ((obj)->)
#define COM_FORWARD_IMouse_GETTER_NeedsHostCursor_TO_BASE(base) COM_FORWARD_IMouse_GETTER_NeedsHostCursor_TO (base::)
#define COM_FORWARD_IMouse_GETTER_EventSource_TO(smth) HRESULT STDMETHODCALLTYPE get_EventSource (IEventSource * * aEventSource) { return smth get_EventSource (aEventSource); }
#define COM_FORWARD_IMouse_GETTER_EventSource_TO_OBJ(obj) COM_FORWARD_IMouse_GETTER_EventSource_TO ((obj)->)
#define COM_FORWARD_IMouse_GETTER_EventSource_TO_BASE(base) COM_FORWARD_IMouse_GETTER_EventSource_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_GETTER_RelativeSupported_TO (smth) COM_FORWARD_IMouse_GETTER_NeedsHostCursor_TO (smth) COM_FORWARD_IMouse_GETTER_EventSource_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 (LONG64 * 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_GetScreenResolution_TO(smth) HRESULT STDMETHODCALLTYPE GetScreenResolution (ULONG aScreenId, ULONG * aWidth, ULONG * aHeight, ULONG * aBitsPerPixel) { return smth GetScreenResolution (aScreenId, aWidth, aHeight, aBitsPerPixel); }
#define COM_FORWARD_IDisplay_GetScreenResolution_TO_OBJ(obj) COM_FORWARD_IDisplay_GetScreenResolution_TO ((obj)->)
#define COM_FORWARD_IDisplay_GetScreenResolution_TO_BASE(base) COM_FORWARD_IDisplay_GetScreenResolution_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 (ULONG aScreenId, BYTE * aAddress, ULONG aWidth, ULONG aHeight) { return smth TakeScreenShot (aScreenId, 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_TakeScreenShotToArray_TO(smth) HRESULT STDMETHODCALLTYPE TakeScreenShotToArray (ULONG aScreenId, ULONG aWidth, ULONG aHeight, SAFEARRAY * * aScreenData) { return smth TakeScreenShotToArray (aScreenId, aWidth, aHeight, aScreenData); }
#define COM_FORWARD_IDisplay_TakeScreenShotToArray_TO_OBJ(obj) COM_FORWARD_IDisplay_TakeScreenShotToArray_TO ((obj)->)
#define COM_FORWARD_IDisplay_TakeScreenShotToArray_TO_BASE(base) COM_FORWARD_IDisplay_TakeScreenShotToArray_TO (base::)
#define COM_FORWARD_IDisplay_TakeScreenShotPNGToArray_TO(smth) HRESULT STDMETHODCALLTYPE TakeScreenShotPNGToArray (ULONG aScreenId, ULONG aWidth, ULONG aHeight, SAFEARRAY * * aScreenData) { return smth TakeScreenShotPNGToArray (aScreenId, aWidth, aHeight, aScreenData); }
#define COM_FORWARD_IDisplay_TakeScreenShotPNGToArray_TO_OBJ(obj) COM_FORWARD_IDisplay_TakeScreenShotPNGToArray_TO ((obj)->)
#define COM_FORWARD_IDisplay_TakeScreenShotPNGToArray_TO_BASE(base) COM_FORWARD_IDisplay_TakeScreenShotPNGToArray_TO (base::)
#define COM_FORWARD_IDisplay_DrawToScreen_TO(smth) HRESULT STDMETHODCALLTYPE DrawToScreen (ULONG aScreenId, BYTE * aAddress, ULONG aX, ULONG aY, ULONG aWidth, ULONG aHeight) { return smth DrawToScreen (aScreenId, 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_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_GetScreenResolution_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_TakeScreenShotToArray_TO (smth) COM_FORWARD_IDisplay_TakeScreenShotPNGToArray_TO (smth) COM_FORWARD_IDisplay_DrawToScreen_TO (smth) COM_FORWARD_IDisplay_InvalidateAndUpdate_TO (smth) COM_FORWARD_IDisplay_ResizeCompleted_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_SETTER_AttachmentType_TO(smth) HRESULT STDMETHODCALLTYPE put_AttachmentType (NetworkAttachmentType aAttachmentType) { return smth put_AttachmentType (aAttachmentType); }
#define COM_FORWARD_INetworkAdapter_SETTER_AttachmentType_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_AttachmentType_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_AttachmentType_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_AttachmentType_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_BridgedInterface_TO(smth) HRESULT STDMETHODCALLTYPE get_BridgedInterface (BSTR * aBridgedInterface) { return smth get_BridgedInterface (aBridgedInterface); }
#define COM_FORWARD_INetworkAdapter_GETTER_BridgedInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_BridgedInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_BridgedInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_BridgedInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_BridgedInterface_TO(smth) HRESULT STDMETHODCALLTYPE put_BridgedInterface (BSTR aBridgedInterface) { return smth put_BridgedInterface (aBridgedInterface); }
#define COM_FORWARD_INetworkAdapter_SETTER_BridgedInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_BridgedInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_BridgedInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_BridgedInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_HostOnlyInterface_TO(smth) HRESULT STDMETHODCALLTYPE get_HostOnlyInterface (BSTR * aHostOnlyInterface) { return smth get_HostOnlyInterface (aHostOnlyInterface); }
#define COM_FORWARD_INetworkAdapter_GETTER_HostOnlyInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_HostOnlyInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_HostOnlyInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_HostOnlyInterface_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_HostOnlyInterface_TO(smth) HRESULT STDMETHODCALLTYPE put_HostOnlyInterface (BSTR aHostOnlyInterface) { return smth put_HostOnlyInterface (aHostOnlyInterface); }
#define COM_FORWARD_INetworkAdapter_SETTER_HostOnlyInterface_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_HostOnlyInterface_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_HostOnlyInterface_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_HostOnlyInterface_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_GenericDriver_TO(smth) HRESULT STDMETHODCALLTYPE get_GenericDriver (BSTR * aGenericDriver) { return smth get_GenericDriver (aGenericDriver); }
#define COM_FORWARD_INetworkAdapter_GETTER_GenericDriver_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_GenericDriver_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_GenericDriver_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_GenericDriver_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_GenericDriver_TO(smth) HRESULT STDMETHODCALLTYPE put_GenericDriver (BSTR aGenericDriver) { return smth put_GenericDriver (aGenericDriver); }
#define COM_FORWARD_INetworkAdapter_SETTER_GenericDriver_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_GenericDriver_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_GenericDriver_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_GenericDriver_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_PromiscModePolicy_TO(smth) HRESULT STDMETHODCALLTYPE get_PromiscModePolicy (NetworkAdapterPromiscModePolicy * aPromiscModePolicy) { return smth get_PromiscModePolicy (aPromiscModePolicy); }
#define COM_FORWARD_INetworkAdapter_GETTER_PromiscModePolicy_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_PromiscModePolicy_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_PromiscModePolicy_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_PromiscModePolicy_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_PromiscModePolicy_TO(smth) HRESULT STDMETHODCALLTYPE put_PromiscModePolicy (NetworkAdapterPromiscModePolicy aPromiscModePolicy) { return smth put_PromiscModePolicy (aPromiscModePolicy); }
#define COM_FORWARD_INetworkAdapter_SETTER_PromiscModePolicy_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_PromiscModePolicy_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_PromiscModePolicy_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_PromiscModePolicy_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_GETTER_NatDriver_TO(smth) HRESULT STDMETHODCALLTYPE get_NatDriver (INATEngine * * aNatDriver) { return smth get_NatDriver (aNatDriver); }
#define COM_FORWARD_INetworkAdapter_GETTER_NatDriver_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_NatDriver_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_NatDriver_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_NatDriver_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_BootPriority_TO(smth) HRESULT STDMETHODCALLTYPE get_BootPriority (ULONG * aBootPriority) { return smth get_BootPriority (aBootPriority); }
#define COM_FORWARD_INetworkAdapter_GETTER_BootPriority_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_BootPriority_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_BootPriority_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_BootPriority_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_BootPriority_TO(smth) HRESULT STDMETHODCALLTYPE put_BootPriority (ULONG aBootPriority) { return smth put_BootPriority (aBootPriority); }
#define COM_FORWARD_INetworkAdapter_SETTER_BootPriority_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_BootPriority_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_BootPriority_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_BootPriority_TO (base::)
#define COM_FORWARD_INetworkAdapter_GETTER_BandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE get_BandwidthGroup (IBandwidthGroup * * aBandwidthGroup) { return smth get_BandwidthGroup (aBandwidthGroup); }
#define COM_FORWARD_INetworkAdapter_GETTER_BandwidthGroup_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GETTER_BandwidthGroup_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GETTER_BandwidthGroup_TO_BASE(base) COM_FORWARD_INetworkAdapter_GETTER_BandwidthGroup_TO (base::)
#define COM_FORWARD_INetworkAdapter_SETTER_BandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE put_BandwidthGroup (IBandwidthGroup * aBandwidthGroup) { return smth put_BandwidthGroup (aBandwidthGroup); }
#define COM_FORWARD_INetworkAdapter_SETTER_BandwidthGroup_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SETTER_BandwidthGroup_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SETTER_BandwidthGroup_TO_BASE(base) COM_FORWARD_INetworkAdapter_SETTER_BandwidthGroup_TO (base::)
#define COM_FORWARD_INetworkAdapter_GetProperty_TO(smth) HRESULT STDMETHODCALLTYPE GetProperty (BSTR aKey, BSTR * aValue) { return smth GetProperty (aKey, aValue); }
#define COM_FORWARD_INetworkAdapter_GetProperty_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GetProperty_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GetProperty_TO_BASE(base) COM_FORWARD_INetworkAdapter_GetProperty_TO (base::)
#define COM_FORWARD_INetworkAdapter_SetProperty_TO(smth) HRESULT STDMETHODCALLTYPE SetProperty (BSTR aKey, BSTR aValue) { return smth SetProperty (aKey, aValue); }
#define COM_FORWARD_INetworkAdapter_SetProperty_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_SetProperty_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_SetProperty_TO_BASE(base) COM_FORWARD_INetworkAdapter_SetProperty_TO (base::)
#define COM_FORWARD_INetworkAdapter_GetProperties_TO(smth) HRESULT STDMETHODCALLTYPE GetProperties (BSTR aNames, SAFEARRAY * * aReturnNames, SAFEARRAY * * aReturnValues) { return smth GetProperties (aNames, aReturnNames, aReturnValues); }
#define COM_FORWARD_INetworkAdapter_GetProperties_TO_OBJ(obj) COM_FORWARD_INetworkAdapter_GetProperties_TO ((obj)->)
#define COM_FORWARD_INetworkAdapter_GetProperties_TO_BASE(base) COM_FORWARD_INetworkAdapter_GetProperties_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_SETTER_AttachmentType_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_BridgedInterface_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_BridgedInterface_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_HostOnlyInterface_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_HostOnlyInterface_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_GenericDriver_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_GenericDriver_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_PromiscModePolicy_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_PromiscModePolicy_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_GETTER_NatDriver_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_BootPriority_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_BootPriority_TO (smth) COM_FORWARD_INetworkAdapter_GETTER_BandwidthGroup_TO (smth) COM_FORWARD_INetworkAdapter_SETTER_BandwidthGroup_TO (smth) COM_FORWARD_INetworkAdapter_GetProperty_TO (smth) COM_FORWARD_INetworkAdapter_SetProperty_TO (smth) COM_FORWARD_INetworkAdapter_GetProperties_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_LogFlags_TO(smth) HRESULT STDMETHODCALLTYPE get_LogFlags (BSTR * aLogFlags) { return smth get_LogFlags (aLogFlags); }
#define COM_FORWARD_IMachineDebugger_GETTER_LogFlags_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_LogFlags_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_LogFlags_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_LogFlags_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_LogGroups_TO(smth) HRESULT STDMETHODCALLTYPE get_LogGroups (BSTR * aLogGroups) { return smth get_LogGroups (aLogGroups); }
#define COM_FORWARD_IMachineDebugger_GETTER_LogGroups_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_LogGroups_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_LogGroups_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_LogGroups_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_LogDestinations_TO(smth) HRESULT STDMETHODCALLTYPE get_LogDestinations (BSTR * aLogDestinations) { return smth get_LogDestinations (aLogDestinations); }
#define COM_FORWARD_IMachineDebugger_GETTER_LogDestinations_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_LogDestinations_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_LogDestinations_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_LogDestinations_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_OSName_TO(smth) HRESULT STDMETHODCALLTYPE get_OSName (BSTR * aOSName) { return smth get_OSName (aOSName); }
#define COM_FORWARD_IMachineDebugger_GETTER_OSName_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_OSName_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_OSName_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_OSName_TO (base::)
#define COM_FORWARD_IMachineDebugger_GETTER_OSVersion_TO(smth) HRESULT STDMETHODCALLTYPE get_OSVersion (BSTR * aOSVersion) { return smth get_OSVersion (aOSVersion); }
#define COM_FORWARD_IMachineDebugger_GETTER_OSVersion_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GETTER_OSVersion_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GETTER_OSVersion_TO_BASE(base) COM_FORWARD_IMachineDebugger_GETTER_OSVersion_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 (LONG64 * 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_DumpGuestCore_TO(smth) HRESULT STDMETHODCALLTYPE DumpGuestCore (BSTR aFilename, BSTR aCompression) { return smth DumpGuestCore (aFilename, aCompression); }
#define COM_FORWARD_IMachineDebugger_DumpGuestCore_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_DumpGuestCore_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_DumpGuestCore_TO_BASE(base) COM_FORWARD_IMachineDebugger_DumpGuestCore_TO (base::)
#define COM_FORWARD_IMachineDebugger_DumpHostProcessCore_TO(smth) HRESULT STDMETHODCALLTYPE DumpHostProcessCore (BSTR aFilename, BSTR aCompression) { return smth DumpHostProcessCore (aFilename, aCompression); }
#define COM_FORWARD_IMachineDebugger_DumpHostProcessCore_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_DumpHostProcessCore_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_DumpHostProcessCore_TO_BASE(base) COM_FORWARD_IMachineDebugger_DumpHostProcessCore_TO (base::)
#define COM_FORWARD_IMachineDebugger_Info_TO(smth) HRESULT STDMETHODCALLTYPE Info (BSTR aName, BSTR aArgs, BSTR * aInfo) { return smth Info (aName, aArgs, aInfo); }
#define COM_FORWARD_IMachineDebugger_Info_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_Info_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_Info_TO_BASE(base) COM_FORWARD_IMachineDebugger_Info_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_ModifyLogGroups_TO(smth) HRESULT STDMETHODCALLTYPE ModifyLogGroups (BSTR aSettings) { return smth ModifyLogGroups (aSettings); }
#define COM_FORWARD_IMachineDebugger_ModifyLogGroups_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_ModifyLogGroups_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_ModifyLogGroups_TO_BASE(base) COM_FORWARD_IMachineDebugger_ModifyLogGroups_TO (base::)
#define COM_FORWARD_IMachineDebugger_ModifyLogFlags_TO(smth) HRESULT STDMETHODCALLTYPE ModifyLogFlags (BSTR aSettings) { return smth ModifyLogFlags (aSettings); }
#define COM_FORWARD_IMachineDebugger_ModifyLogFlags_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_ModifyLogFlags_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_ModifyLogFlags_TO_BASE(base) COM_FORWARD_IMachineDebugger_ModifyLogFlags_TO (base::)
#define COM_FORWARD_IMachineDebugger_ModifyLogDestinations_TO(smth) HRESULT STDMETHODCALLTYPE ModifyLogDestinations (BSTR aSettings) { return smth ModifyLogDestinations (aSettings); }
#define COM_FORWARD_IMachineDebugger_ModifyLogDestinations_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_ModifyLogDestinations_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_ModifyLogDestinations_TO_BASE(base) COM_FORWARD_IMachineDebugger_ModifyLogDestinations_TO (base::)
#define COM_FORWARD_IMachineDebugger_ReadPhysicalMemory_TO(smth) HRESULT STDMETHODCALLTYPE ReadPhysicalMemory (LONG64 aAddress, ULONG aSize, SAFEARRAY * * aBytes) { return smth ReadPhysicalMemory (aAddress, aSize, aBytes); }
#define COM_FORWARD_IMachineDebugger_ReadPhysicalMemory_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_ReadPhysicalMemory_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_ReadPhysicalMemory_TO_BASE(base) COM_FORWARD_IMachineDebugger_ReadPhysicalMemory_TO (base::)
#define COM_FORWARD_IMachineDebugger_WritePhysicalMemory_TO(smth) HRESULT STDMETHODCALLTYPE WritePhysicalMemory (LONG64 aAddress, ULONG aSize, SAFEARRAY * * aBytes) { return smth WritePhysicalMemory (aAddress, aSize, aBytes); }
#define COM_FORWARD_IMachineDebugger_WritePhysicalMemory_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_WritePhysicalMemory_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_WritePhysicalMemory_TO_BASE(base) COM_FORWARD_IMachineDebugger_WritePhysicalMemory_TO (base::)
#define COM_FORWARD_IMachineDebugger_ReadVirtualMemory_TO(smth) HRESULT STDMETHODCALLTYPE ReadVirtualMemory (ULONG aCpuId, LONG64 aAddress, ULONG aSize, SAFEARRAY * * aBytes) { return smth ReadVirtualMemory (aCpuId, aAddress, aSize, aBytes); }
#define COM_FORWARD_IMachineDebugger_ReadVirtualMemory_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_ReadVirtualMemory_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_ReadVirtualMemory_TO_BASE(base) COM_FORWARD_IMachineDebugger_ReadVirtualMemory_TO (base::)
#define COM_FORWARD_IMachineDebugger_WriteVirtualMemory_TO(smth) HRESULT STDMETHODCALLTYPE WriteVirtualMemory (ULONG aCpuId, LONG64 aAddress, ULONG aSize, SAFEARRAY * * aBytes) { return smth WriteVirtualMemory (aCpuId, aAddress, aSize, aBytes); }
#define COM_FORWARD_IMachineDebugger_WriteVirtualMemory_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_WriteVirtualMemory_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_WriteVirtualMemory_TO_BASE(base) COM_FORWARD_IMachineDebugger_WriteVirtualMemory_TO (base::)
#define COM_FORWARD_IMachineDebugger_DetectOS_TO(smth) HRESULT STDMETHODCALLTYPE DetectOS (BSTR * aOs) { return smth DetectOS (aOs); }
#define COM_FORWARD_IMachineDebugger_DetectOS_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_DetectOS_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_DetectOS_TO_BASE(base) COM_FORWARD_IMachineDebugger_DetectOS_TO (base::)
#define COM_FORWARD_IMachineDebugger_GetRegister_TO(smth) HRESULT STDMETHODCALLTYPE GetRegister (ULONG aCpuId, BSTR aName, BSTR * aValue) { return smth GetRegister (aCpuId, aName, aValue); }
#define COM_FORWARD_IMachineDebugger_GetRegister_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GetRegister_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GetRegister_TO_BASE(base) COM_FORWARD_IMachineDebugger_GetRegister_TO (base::)
#define COM_FORWARD_IMachineDebugger_GetRegisters_TO(smth) HRESULT STDMETHODCALLTYPE GetRegisters (ULONG aCpuId, SAFEARRAY * * aNames, SAFEARRAY * * aValues) { return smth GetRegisters (aCpuId, aNames, aValues); }
#define COM_FORWARD_IMachineDebugger_GetRegisters_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_GetRegisters_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_GetRegisters_TO_BASE(base) COM_FORWARD_IMachineDebugger_GetRegisters_TO (base::)
#define COM_FORWARD_IMachineDebugger_SetRegister_TO(smth) HRESULT STDMETHODCALLTYPE SetRegister (ULONG aCpuId, BSTR aName, BSTR aValue) { return smth SetRegister (aCpuId, aName, aValue); }
#define COM_FORWARD_IMachineDebugger_SetRegister_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SetRegister_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SetRegister_TO_BASE(base) COM_FORWARD_IMachineDebugger_SetRegister_TO (base::)
#define COM_FORWARD_IMachineDebugger_SetRegisters_TO(smth) HRESULT STDMETHODCALLTYPE SetRegisters (ULONG aCpuId, SAFEARRAY * * aNames, SAFEARRAY * * aValues) { return smth SetRegisters (aCpuId, aNames, aValues); }
#define COM_FORWARD_IMachineDebugger_SetRegisters_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_SetRegisters_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_SetRegisters_TO_BASE(base) COM_FORWARD_IMachineDebugger_SetRegisters_TO (base::)
#define COM_FORWARD_IMachineDebugger_DumpGuestStack_TO(smth) HRESULT STDMETHODCALLTYPE DumpGuestStack (ULONG aCpuId, BSTR * aStack) { return smth DumpGuestStack (aCpuId, aStack); }
#define COM_FORWARD_IMachineDebugger_DumpGuestStack_TO_OBJ(obj) COM_FORWARD_IMachineDebugger_DumpGuestStack_TO ((obj)->)
#define COM_FORWARD_IMachineDebugger_DumpGuestStack_TO_BASE(base) COM_FORWARD_IMachineDebugger_DumpGuestStack_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_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_LogFlags_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_LogGroups_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_LogDestinations_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_OSName_TO (smth) COM_FORWARD_IMachineDebugger_GETTER_OSVersion_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_DumpGuestCore_TO (smth) COM_FORWARD_IMachineDebugger_DumpHostProcessCore_TO (smth) COM_FORWARD_IMachineDebugger_Info_TO (smth) COM_FORWARD_IMachineDebugger_InjectNMI_TO (smth) COM_FORWARD_IMachineDebugger_ModifyLogGroups_TO (smth) COM_FORWARD_IMachineDebugger_ModifyLogFlags_TO (smth) COM_FORWARD_IMachineDebugger_ModifyLogDestinations_TO (smth) COM_FORWARD_IMachineDebugger_ReadPhysicalMemory_TO (smth) COM_FORWARD_IMachineDebugger_WritePhysicalMemory_TO (smth) COM_FORWARD_IMachineDebugger_ReadVirtualMemory_TO (smth) COM_FORWARD_IMachineDebugger_WriteVirtualMemory_TO (smth) COM_FORWARD_IMachineDebugger_DetectOS_TO (smth) COM_FORWARD_IMachineDebugger_GetRegister_TO (smth) COM_FORWARD_IMachineDebugger_GetRegisters_TO (smth) COM_FORWARD_IMachineDebugger_SetRegister_TO (smth) COM_FORWARD_IMachineDebugger_SetRegisters_TO (smth) COM_FORWARD_IMachineDebugger_DumpGuestStack_TO (smth) COM_FORWARD_IMachineDebugger_ResetStats_TO (smth) COM_FORWARD_IMachineDebugger_DumpStats_TO (smth) COM_FORWARD_IMachineDebugger_GetStats_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_ProxyAvailable_TO(smth) HRESULT STDMETHODCALLTYPE get_ProxyAvailable (BOOL * aProxyAvailable) { return smth get_ProxyAvailable (aProxyAvailable); }
#define COM_FORWARD_IUSBController_GETTER_ProxyAvailable_TO_OBJ(obj) COM_FORWARD_IUSBController_GETTER_ProxyAvailable_TO ((obj)->)
#define COM_FORWARD_IUSBController_GETTER_ProxyAvailable_TO_BASE(base) COM_FORWARD_IUSBController_GETTER_ProxyAvailable_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_ProxyAvailable_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_IVRDEServer_GETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE get_Enabled (BOOL * aEnabled) { return smth get_Enabled (aEnabled); }
#define COM_FORWARD_IVRDEServer_GETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_Enabled_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_Enabled_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_Enabled_TO(smth) HRESULT STDMETHODCALLTYPE put_Enabled (BOOL aEnabled) { return smth put_Enabled (aEnabled); }
#define COM_FORWARD_IVRDEServer_SETTER_Enabled_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_Enabled_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_Enabled_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_Enabled_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_AuthType_TO(smth) HRESULT STDMETHODCALLTYPE get_AuthType (AuthType * aAuthType) { return smth get_AuthType (aAuthType); }
#define COM_FORWARD_IVRDEServer_GETTER_AuthType_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_AuthType_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_AuthType_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_AuthType_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_AuthType_TO(smth) HRESULT STDMETHODCALLTYPE put_AuthType (AuthType aAuthType) { return smth put_AuthType (aAuthType); }
#define COM_FORWARD_IVRDEServer_SETTER_AuthType_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_AuthType_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_AuthType_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_AuthType_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_AuthTimeout_TO(smth) HRESULT STDMETHODCALLTYPE get_AuthTimeout (ULONG * aAuthTimeout) { return smth get_AuthTimeout (aAuthTimeout); }
#define COM_FORWARD_IVRDEServer_GETTER_AuthTimeout_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_AuthTimeout_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_AuthTimeout_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_AuthTimeout_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_AuthTimeout_TO(smth) HRESULT STDMETHODCALLTYPE put_AuthTimeout (ULONG aAuthTimeout) { return smth put_AuthTimeout (aAuthTimeout); }
#define COM_FORWARD_IVRDEServer_SETTER_AuthTimeout_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_AuthTimeout_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_AuthTimeout_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_AuthTimeout_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_AllowMultiConnection_TO(smth) HRESULT STDMETHODCALLTYPE get_AllowMultiConnection (BOOL * aAllowMultiConnection) { return smth get_AllowMultiConnection (aAllowMultiConnection); }
#define COM_FORWARD_IVRDEServer_GETTER_AllowMultiConnection_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_AllowMultiConnection_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_AllowMultiConnection_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_AllowMultiConnection_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_AllowMultiConnection_TO(smth) HRESULT STDMETHODCALLTYPE put_AllowMultiConnection (BOOL aAllowMultiConnection) { return smth put_AllowMultiConnection (aAllowMultiConnection); }
#define COM_FORWARD_IVRDEServer_SETTER_AllowMultiConnection_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_AllowMultiConnection_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_AllowMultiConnection_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_AllowMultiConnection_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_ReuseSingleConnection_TO(smth) HRESULT STDMETHODCALLTYPE get_ReuseSingleConnection (BOOL * aReuseSingleConnection) { return smth get_ReuseSingleConnection (aReuseSingleConnection); }
#define COM_FORWARD_IVRDEServer_GETTER_ReuseSingleConnection_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_ReuseSingleConnection_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_ReuseSingleConnection_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_ReuseSingleConnection_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_ReuseSingleConnection_TO(smth) HRESULT STDMETHODCALLTYPE put_ReuseSingleConnection (BOOL aReuseSingleConnection) { return smth put_ReuseSingleConnection (aReuseSingleConnection); }
#define COM_FORWARD_IVRDEServer_SETTER_ReuseSingleConnection_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_ReuseSingleConnection_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_ReuseSingleConnection_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_ReuseSingleConnection_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_VRDEExtPack_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDEExtPack (BSTR * aVRDEExtPack) { return smth get_VRDEExtPack (aVRDEExtPack); }
#define COM_FORWARD_IVRDEServer_GETTER_VRDEExtPack_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_VRDEExtPack_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_VRDEExtPack_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_VRDEExtPack_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_VRDEExtPack_TO(smth) HRESULT STDMETHODCALLTYPE put_VRDEExtPack (BSTR aVRDEExtPack) { return smth put_VRDEExtPack (aVRDEExtPack); }
#define COM_FORWARD_IVRDEServer_SETTER_VRDEExtPack_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_VRDEExtPack_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_VRDEExtPack_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_VRDEExtPack_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_AuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE get_AuthLibrary (BSTR * aAuthLibrary) { return smth get_AuthLibrary (aAuthLibrary); }
#define COM_FORWARD_IVRDEServer_GETTER_AuthLibrary_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_AuthLibrary_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_AuthLibrary_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_AuthLibrary_TO (base::)
#define COM_FORWARD_IVRDEServer_SETTER_AuthLibrary_TO(smth) HRESULT STDMETHODCALLTYPE put_AuthLibrary (BSTR aAuthLibrary) { return smth put_AuthLibrary (aAuthLibrary); }
#define COM_FORWARD_IVRDEServer_SETTER_AuthLibrary_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SETTER_AuthLibrary_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SETTER_AuthLibrary_TO_BASE(base) COM_FORWARD_IVRDEServer_SETTER_AuthLibrary_TO (base::)
#define COM_FORWARD_IVRDEServer_GETTER_VRDEProperties_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDEProperties (SAFEARRAY * * aVRDEProperties) { return smth get_VRDEProperties (aVRDEProperties); }
#define COM_FORWARD_IVRDEServer_GETTER_VRDEProperties_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GETTER_VRDEProperties_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GETTER_VRDEProperties_TO_BASE(base) COM_FORWARD_IVRDEServer_GETTER_VRDEProperties_TO (base::)
#define COM_FORWARD_IVRDEServer_SetVRDEProperty_TO(smth) HRESULT STDMETHODCALLTYPE SetVRDEProperty (BSTR aKey, BSTR aValue) { return smth SetVRDEProperty (aKey, aValue); }
#define COM_FORWARD_IVRDEServer_SetVRDEProperty_TO_OBJ(obj) COM_FORWARD_IVRDEServer_SetVRDEProperty_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_SetVRDEProperty_TO_BASE(base) COM_FORWARD_IVRDEServer_SetVRDEProperty_TO (base::)
#define COM_FORWARD_IVRDEServer_GetVRDEProperty_TO(smth) HRESULT STDMETHODCALLTYPE GetVRDEProperty (BSTR aKey, BSTR * aValue) { return smth GetVRDEProperty (aKey, aValue); }
#define COM_FORWARD_IVRDEServer_GetVRDEProperty_TO_OBJ(obj) COM_FORWARD_IVRDEServer_GetVRDEProperty_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_GetVRDEProperty_TO_BASE(base) COM_FORWARD_IVRDEServer_GetVRDEProperty_TO (base::)
#define COM_FORWARD_IVRDEServer_TO(smth) COM_FORWARD_IVRDEServer_GETTER_Enabled_TO (smth) COM_FORWARD_IVRDEServer_SETTER_Enabled_TO (smth) COM_FORWARD_IVRDEServer_GETTER_AuthType_TO (smth) COM_FORWARD_IVRDEServer_SETTER_AuthType_TO (smth) COM_FORWARD_IVRDEServer_GETTER_AuthTimeout_TO (smth) COM_FORWARD_IVRDEServer_SETTER_AuthTimeout_TO (smth) COM_FORWARD_IVRDEServer_GETTER_AllowMultiConnection_TO (smth) COM_FORWARD_IVRDEServer_SETTER_AllowMultiConnection_TO (smth) COM_FORWARD_IVRDEServer_GETTER_ReuseSingleConnection_TO (smth) COM_FORWARD_IVRDEServer_SETTER_ReuseSingleConnection_TO (smth) COM_FORWARD_IVRDEServer_GETTER_VRDEExtPack_TO (smth) COM_FORWARD_IVRDEServer_SETTER_VRDEExtPack_TO (smth) COM_FORWARD_IVRDEServer_GETTER_AuthLibrary_TO (smth) COM_FORWARD_IVRDEServer_SETTER_AuthLibrary_TO (smth) COM_FORWARD_IVRDEServer_GETTER_VRDEProperties_TO (smth) COM_FORWARD_IVRDEServer_SetVRDEProperty_TO (smth) COM_FORWARD_IVRDEServer_GetVRDEProperty_TO (smth) 
#define COM_FORWARD_IVRDEServer_TO_OBJ(obj) COM_FORWARD_IVRDEServer_TO ((obj)->)
#define COM_FORWARD_IVRDEServer_TO_BASE(base) COM_FORWARD_IVRDEServer_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_AutoMount_TO(smth) HRESULT STDMETHODCALLTYPE get_AutoMount (BOOL * aAutoMount) { return smth get_AutoMount (aAutoMount); }
#define COM_FORWARD_ISharedFolder_GETTER_AutoMount_TO_OBJ(obj) COM_FORWARD_ISharedFolder_GETTER_AutoMount_TO ((obj)->)
#define COM_FORWARD_ISharedFolder_GETTER_AutoMount_TO_BASE(base) COM_FORWARD_ISharedFolder_GETTER_AutoMount_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_AutoMount_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_OnStorageDeviceChange_TO(smth) HRESULT STDMETHODCALLTYPE OnStorageDeviceChange (IMediumAttachment * aMediumAttachment, BOOL aRemove) { return smth OnStorageDeviceChange (aMediumAttachment, aRemove); }
#define COM_FORWARD_IInternalSessionControl_OnStorageDeviceChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnStorageDeviceChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnStorageDeviceChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnStorageDeviceChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnCPUChange_TO(smth) HRESULT STDMETHODCALLTYPE OnCPUChange (ULONG aCpu, BOOL aAdd) { return smth OnCPUChange (aCpu, aAdd); }
#define COM_FORWARD_IInternalSessionControl_OnCPUChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnCPUChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnCPUChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnCPUChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnCPUExecutionCapChange_TO(smth) HRESULT STDMETHODCALLTYPE OnCPUExecutionCapChange (ULONG aExecutionCap) { return smth OnCPUExecutionCapChange (aExecutionCap); }
#define COM_FORWARD_IInternalSessionControl_OnCPUExecutionCapChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnCPUExecutionCapChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnCPUExecutionCapChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnCPUExecutionCapChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_OnVRDEServerChange_TO(smth) HRESULT STDMETHODCALLTYPE OnVRDEServerChange (BOOL aRestart) { return smth OnVRDEServerChange (aRestart); }
#define COM_FORWARD_IInternalSessionControl_OnVRDEServerChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnVRDEServerChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnVRDEServerChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnVRDEServerChange_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, LONG64 * 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_OnBandwidthGroupChange_TO(smth) HRESULT STDMETHODCALLTYPE OnBandwidthGroupChange (IBandwidthGroup * aBandwidthGroup) { return smth OnBandwidthGroupChange (aBandwidthGroup); }
#define COM_FORWARD_IInternalSessionControl_OnBandwidthGroupChange_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnBandwidthGroupChange_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnBandwidthGroupChange_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnBandwidthGroupChange_TO (base::)
#define COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO(smth) HRESULT STDMETHODCALLTYPE AccessGuestProperty (BSTR aName, BSTR aValue, BSTR aFlags, BOOL aIsSetter, BSTR * aRetValue, LONG64 * 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_OnlineMergeMedium_TO(smth) HRESULT STDMETHODCALLTYPE OnlineMergeMedium (IMediumAttachment * aMediumAttachment, ULONG aSourceIdx, ULONG aTargetIdx, IMedium * aSource, IMedium * aTarget, BOOL aMergeForward, IMedium * aParentForTarget, SAFEARRAY * * aChildrenToReparent, IProgress * aProgress) { return smth OnlineMergeMedium (aMediumAttachment, aSourceIdx, aTargetIdx, aSource, aTarget, aMergeForward, aParentForTarget, aChildrenToReparent, aProgress); }
#define COM_FORWARD_IInternalSessionControl_OnlineMergeMedium_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_OnlineMergeMedium_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_OnlineMergeMedium_TO_BASE(base) COM_FORWARD_IInternalSessionControl_OnlineMergeMedium_TO (base::)
#define COM_FORWARD_IInternalSessionControl_EnableVMMStatistics_TO(smth) HRESULT STDMETHODCALLTYPE EnableVMMStatistics (BOOL aEnable) { return smth EnableVMMStatistics (aEnable); }
#define COM_FORWARD_IInternalSessionControl_EnableVMMStatistics_TO_OBJ(obj) COM_FORWARD_IInternalSessionControl_EnableVMMStatistics_TO ((obj)->)
#define COM_FORWARD_IInternalSessionControl_EnableVMMStatistics_TO_BASE(base) COM_FORWARD_IInternalSessionControl_EnableVMMStatistics_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_OnStorageDeviceChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnCPUChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnCPUExecutionCapChange_TO (smth) COM_FORWARD_IInternalSessionControl_OnVRDEServerChange_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_OnBandwidthGroupChange_TO (smth) COM_FORWARD_IInternalSessionControl_AccessGuestProperty_TO (smth) COM_FORWARD_IInternalSessionControl_EnumerateGuestProperties_TO (smth) COM_FORWARD_IInternalSessionControl_OnlineMergeMedium_TO (smth) COM_FORWARD_IInternalSessionControl_EnableVMMStatistics_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_UnlockMachine_TO(smth) HRESULT STDMETHODCALLTYPE UnlockMachine() { return smth UnlockMachine(); }
#define COM_FORWARD_ISession_UnlockMachine_TO_OBJ(obj) COM_FORWARD_ISession_UnlockMachine_TO ((obj)->)
#define COM_FORWARD_ISession_UnlockMachine_TO_BASE(base) COM_FORWARD_ISession_UnlockMachine_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_UnlockMachine_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_GETTER_UseHostIOCache_TO(smth) HRESULT STDMETHODCALLTYPE get_UseHostIOCache (BOOL * aUseHostIOCache) { return smth get_UseHostIOCache (aUseHostIOCache); }
#define COM_FORWARD_IStorageController_GETTER_UseHostIOCache_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_UseHostIOCache_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_UseHostIOCache_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_UseHostIOCache_TO (base::)
#define COM_FORWARD_IStorageController_SETTER_UseHostIOCache_TO(smth) HRESULT STDMETHODCALLTYPE put_UseHostIOCache (BOOL aUseHostIOCache) { return smth put_UseHostIOCache (aUseHostIOCache); }
#define COM_FORWARD_IStorageController_SETTER_UseHostIOCache_TO_OBJ(obj) COM_FORWARD_IStorageController_SETTER_UseHostIOCache_TO ((obj)->)
#define COM_FORWARD_IStorageController_SETTER_UseHostIOCache_TO_BASE(base) COM_FORWARD_IStorageController_SETTER_UseHostIOCache_TO (base::)
#define COM_FORWARD_IStorageController_GETTER_Bootable_TO(smth) HRESULT STDMETHODCALLTYPE get_Bootable (BOOL * aBootable) { return smth get_Bootable (aBootable); }
#define COM_FORWARD_IStorageController_GETTER_Bootable_TO_OBJ(obj) COM_FORWARD_IStorageController_GETTER_Bootable_TO ((obj)->)
#define COM_FORWARD_IStorageController_GETTER_Bootable_TO_BASE(base) COM_FORWARD_IStorageController_GETTER_Bootable_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_GETTER_UseHostIOCache_TO (smth) COM_FORWARD_IStorageController_SETTER_UseHostIOCache_TO (smth) COM_FORWARD_IStorageController_GETTER_Bootable_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::)
#define COM_FORWARD_INATEngine_GETTER_Network_TO(smth) HRESULT STDMETHODCALLTYPE get_Network (BSTR * aNetwork) { return smth get_Network (aNetwork); }
#define COM_FORWARD_INATEngine_GETTER_Network_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_Network_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_Network_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_Network_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_Network_TO(smth) HRESULT STDMETHODCALLTYPE put_Network (BSTR aNetwork) { return smth put_Network (aNetwork); }
#define COM_FORWARD_INATEngine_SETTER_Network_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_Network_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_Network_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_Network_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_HostIP_TO(smth) HRESULT STDMETHODCALLTYPE get_HostIP (BSTR * aHostIP) { return smth get_HostIP (aHostIP); }
#define COM_FORWARD_INATEngine_GETTER_HostIP_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_HostIP_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_HostIP_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_HostIP_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_HostIP_TO(smth) HRESULT STDMETHODCALLTYPE put_HostIP (BSTR aHostIP) { return smth put_HostIP (aHostIP); }
#define COM_FORWARD_INATEngine_SETTER_HostIP_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_HostIP_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_HostIP_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_HostIP_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_TftpPrefix_TO(smth) HRESULT STDMETHODCALLTYPE get_TftpPrefix (BSTR * aTftpPrefix) { return smth get_TftpPrefix (aTftpPrefix); }
#define COM_FORWARD_INATEngine_GETTER_TftpPrefix_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_TftpPrefix_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_TftpPrefix_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_TftpPrefix_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_TftpPrefix_TO(smth) HRESULT STDMETHODCALLTYPE put_TftpPrefix (BSTR aTftpPrefix) { return smth put_TftpPrefix (aTftpPrefix); }
#define COM_FORWARD_INATEngine_SETTER_TftpPrefix_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_TftpPrefix_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_TftpPrefix_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_TftpPrefix_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_TftpBootFile_TO(smth) HRESULT STDMETHODCALLTYPE get_TftpBootFile (BSTR * aTftpBootFile) { return smth get_TftpBootFile (aTftpBootFile); }
#define COM_FORWARD_INATEngine_GETTER_TftpBootFile_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_TftpBootFile_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_TftpBootFile_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_TftpBootFile_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_TftpBootFile_TO(smth) HRESULT STDMETHODCALLTYPE put_TftpBootFile (BSTR aTftpBootFile) { return smth put_TftpBootFile (aTftpBootFile); }
#define COM_FORWARD_INATEngine_SETTER_TftpBootFile_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_TftpBootFile_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_TftpBootFile_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_TftpBootFile_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_TftpNextServer_TO(smth) HRESULT STDMETHODCALLTYPE get_TftpNextServer (BSTR * aTftpNextServer) { return smth get_TftpNextServer (aTftpNextServer); }
#define COM_FORWARD_INATEngine_GETTER_TftpNextServer_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_TftpNextServer_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_TftpNextServer_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_TftpNextServer_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_TftpNextServer_TO(smth) HRESULT STDMETHODCALLTYPE put_TftpNextServer (BSTR aTftpNextServer) { return smth put_TftpNextServer (aTftpNextServer); }
#define COM_FORWARD_INATEngine_SETTER_TftpNextServer_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_TftpNextServer_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_TftpNextServer_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_TftpNextServer_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_AliasMode_TO(smth) HRESULT STDMETHODCALLTYPE get_AliasMode (ULONG * aAliasMode) { return smth get_AliasMode (aAliasMode); }
#define COM_FORWARD_INATEngine_GETTER_AliasMode_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_AliasMode_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_AliasMode_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_AliasMode_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_AliasMode_TO(smth) HRESULT STDMETHODCALLTYPE put_AliasMode (ULONG aAliasMode) { return smth put_AliasMode (aAliasMode); }
#define COM_FORWARD_INATEngine_SETTER_AliasMode_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_AliasMode_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_AliasMode_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_AliasMode_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_DnsPassDomain_TO(smth) HRESULT STDMETHODCALLTYPE get_DnsPassDomain (BOOL * aDnsPassDomain) { return smth get_DnsPassDomain (aDnsPassDomain); }
#define COM_FORWARD_INATEngine_GETTER_DnsPassDomain_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_DnsPassDomain_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_DnsPassDomain_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_DnsPassDomain_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_DnsPassDomain_TO(smth) HRESULT STDMETHODCALLTYPE put_DnsPassDomain (BOOL aDnsPassDomain) { return smth put_DnsPassDomain (aDnsPassDomain); }
#define COM_FORWARD_INATEngine_SETTER_DnsPassDomain_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_DnsPassDomain_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_DnsPassDomain_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_DnsPassDomain_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_DnsProxy_TO(smth) HRESULT STDMETHODCALLTYPE get_DnsProxy (BOOL * aDnsProxy) { return smth get_DnsProxy (aDnsProxy); }
#define COM_FORWARD_INATEngine_GETTER_DnsProxy_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_DnsProxy_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_DnsProxy_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_DnsProxy_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_DnsProxy_TO(smth) HRESULT STDMETHODCALLTYPE put_DnsProxy (BOOL aDnsProxy) { return smth put_DnsProxy (aDnsProxy); }
#define COM_FORWARD_INATEngine_SETTER_DnsProxy_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_DnsProxy_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_DnsProxy_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_DnsProxy_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_DnsUseHostResolver_TO(smth) HRESULT STDMETHODCALLTYPE get_DnsUseHostResolver (BOOL * aDnsUseHostResolver) { return smth get_DnsUseHostResolver (aDnsUseHostResolver); }
#define COM_FORWARD_INATEngine_GETTER_DnsUseHostResolver_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_DnsUseHostResolver_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_DnsUseHostResolver_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_DnsUseHostResolver_TO (base::)
#define COM_FORWARD_INATEngine_SETTER_DnsUseHostResolver_TO(smth) HRESULT STDMETHODCALLTYPE put_DnsUseHostResolver (BOOL aDnsUseHostResolver) { return smth put_DnsUseHostResolver (aDnsUseHostResolver); }
#define COM_FORWARD_INATEngine_SETTER_DnsUseHostResolver_TO_OBJ(obj) COM_FORWARD_INATEngine_SETTER_DnsUseHostResolver_TO ((obj)->)
#define COM_FORWARD_INATEngine_SETTER_DnsUseHostResolver_TO_BASE(base) COM_FORWARD_INATEngine_SETTER_DnsUseHostResolver_TO (base::)
#define COM_FORWARD_INATEngine_GETTER_Redirects_TO(smth) HRESULT STDMETHODCALLTYPE get_Redirects (SAFEARRAY * * aRedirects) { return smth get_Redirects (aRedirects); }
#define COM_FORWARD_INATEngine_GETTER_Redirects_TO_OBJ(obj) COM_FORWARD_INATEngine_GETTER_Redirects_TO ((obj)->)
#define COM_FORWARD_INATEngine_GETTER_Redirects_TO_BASE(base) COM_FORWARD_INATEngine_GETTER_Redirects_TO (base::)
#define COM_FORWARD_INATEngine_SetNetworkSettings_TO(smth) HRESULT STDMETHODCALLTYPE SetNetworkSettings (ULONG aMtu, ULONG aSockSnd, ULONG aSockRcv, ULONG aTcpWndSnd, ULONG aTcpWndRcv) { return smth SetNetworkSettings (aMtu, aSockSnd, aSockRcv, aTcpWndSnd, aTcpWndRcv); }
#define COM_FORWARD_INATEngine_SetNetworkSettings_TO_OBJ(obj) COM_FORWARD_INATEngine_SetNetworkSettings_TO ((obj)->)
#define COM_FORWARD_INATEngine_SetNetworkSettings_TO_BASE(base) COM_FORWARD_INATEngine_SetNetworkSettings_TO (base::)
#define COM_FORWARD_INATEngine_GetNetworkSettings_TO(smth) HRESULT STDMETHODCALLTYPE GetNetworkSettings (ULONG * aMtu, ULONG * aSockSnd, ULONG * aSockRcv, ULONG * aTcpWndSnd, ULONG * aTcpWndRcv) { return smth GetNetworkSettings (aMtu, aSockSnd, aSockRcv, aTcpWndSnd, aTcpWndRcv); }
#define COM_FORWARD_INATEngine_GetNetworkSettings_TO_OBJ(obj) COM_FORWARD_INATEngine_GetNetworkSettings_TO ((obj)->)
#define COM_FORWARD_INATEngine_GetNetworkSettings_TO_BASE(base) COM_FORWARD_INATEngine_GetNetworkSettings_TO (base::)
#define COM_FORWARD_INATEngine_AddRedirect_TO(smth) HRESULT STDMETHODCALLTYPE AddRedirect (BSTR aName, NATProtocol aProto, BSTR aHostIp, USHORT aHostPort, BSTR aGuestIp, USHORT aGuestPort) { return smth AddRedirect (aName, aProto, aHostIp, aHostPort, aGuestIp, aGuestPort); }
#define COM_FORWARD_INATEngine_AddRedirect_TO_OBJ(obj) COM_FORWARD_INATEngine_AddRedirect_TO ((obj)->)
#define COM_FORWARD_INATEngine_AddRedirect_TO_BASE(base) COM_FORWARD_INATEngine_AddRedirect_TO (base::)
#define COM_FORWARD_INATEngine_RemoveRedirect_TO(smth) HRESULT STDMETHODCALLTYPE RemoveRedirect (BSTR aName) { return smth RemoveRedirect (aName); }
#define COM_FORWARD_INATEngine_RemoveRedirect_TO_OBJ(obj) COM_FORWARD_INATEngine_RemoveRedirect_TO ((obj)->)
#define COM_FORWARD_INATEngine_RemoveRedirect_TO_BASE(base) COM_FORWARD_INATEngine_RemoveRedirect_TO (base::)
#define COM_FORWARD_INATEngine_TO(smth) COM_FORWARD_INATEngine_GETTER_Network_TO (smth) COM_FORWARD_INATEngine_SETTER_Network_TO (smth) COM_FORWARD_INATEngine_GETTER_HostIP_TO (smth) COM_FORWARD_INATEngine_SETTER_HostIP_TO (smth) COM_FORWARD_INATEngine_GETTER_TftpPrefix_TO (smth) COM_FORWARD_INATEngine_SETTER_TftpPrefix_TO (smth) COM_FORWARD_INATEngine_GETTER_TftpBootFile_TO (smth) COM_FORWARD_INATEngine_SETTER_TftpBootFile_TO (smth) COM_FORWARD_INATEngine_GETTER_TftpNextServer_TO (smth) COM_FORWARD_INATEngine_SETTER_TftpNextServer_TO (smth) COM_FORWARD_INATEngine_GETTER_AliasMode_TO (smth) COM_FORWARD_INATEngine_SETTER_AliasMode_TO (smth) COM_FORWARD_INATEngine_GETTER_DnsPassDomain_TO (smth) COM_FORWARD_INATEngine_SETTER_DnsPassDomain_TO (smth) COM_FORWARD_INATEngine_GETTER_DnsProxy_TO (smth) COM_FORWARD_INATEngine_SETTER_DnsProxy_TO (smth) COM_FORWARD_INATEngine_GETTER_DnsUseHostResolver_TO (smth) COM_FORWARD_INATEngine_SETTER_DnsUseHostResolver_TO (smth) COM_FORWARD_INATEngine_GETTER_Redirects_TO (smth) COM_FORWARD_INATEngine_SetNetworkSettings_TO (smth) COM_FORWARD_INATEngine_GetNetworkSettings_TO (smth) COM_FORWARD_INATEngine_AddRedirect_TO (smth) COM_FORWARD_INATEngine_RemoveRedirect_TO (smth) 
#define COM_FORWARD_INATEngine_TO_OBJ(obj) COM_FORWARD_INATEngine_TO ((obj)->)
#define COM_FORWARD_INATEngine_TO_BASE(base) COM_FORWARD_INATEngine_TO (base::)
#define COM_FORWARD_IExtPackPlugIn_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IExtPackPlugIn_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IExtPackPlugIn_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IExtPackPlugIn_GETTER_Name_TO_BASE(base) COM_FORWARD_IExtPackPlugIn_GETTER_Name_TO (base::)
#define COM_FORWARD_IExtPackPlugIn_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IExtPackPlugIn_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IExtPackPlugIn_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IExtPackPlugIn_GETTER_Description_TO_BASE(base) COM_FORWARD_IExtPackPlugIn_GETTER_Description_TO (base::)
#define COM_FORWARD_IExtPackPlugIn_GETTER_Frontend_TO(smth) HRESULT STDMETHODCALLTYPE get_Frontend (BSTR * aFrontend) { return smth get_Frontend (aFrontend); }
#define COM_FORWARD_IExtPackPlugIn_GETTER_Frontend_TO_OBJ(obj) COM_FORWARD_IExtPackPlugIn_GETTER_Frontend_TO ((obj)->)
#define COM_FORWARD_IExtPackPlugIn_GETTER_Frontend_TO_BASE(base) COM_FORWARD_IExtPackPlugIn_GETTER_Frontend_TO (base::)
#define COM_FORWARD_IExtPackPlugIn_GETTER_ModulePath_TO(smth) HRESULT STDMETHODCALLTYPE get_ModulePath (BSTR * aModulePath) { return smth get_ModulePath (aModulePath); }
#define COM_FORWARD_IExtPackPlugIn_GETTER_ModulePath_TO_OBJ(obj) COM_FORWARD_IExtPackPlugIn_GETTER_ModulePath_TO ((obj)->)
#define COM_FORWARD_IExtPackPlugIn_GETTER_ModulePath_TO_BASE(base) COM_FORWARD_IExtPackPlugIn_GETTER_ModulePath_TO (base::)
#define COM_FORWARD_IExtPackPlugIn_TO(smth) COM_FORWARD_IExtPackPlugIn_GETTER_Name_TO (smth) COM_FORWARD_IExtPackPlugIn_GETTER_Description_TO (smth) COM_FORWARD_IExtPackPlugIn_GETTER_Frontend_TO (smth) COM_FORWARD_IExtPackPlugIn_GETTER_ModulePath_TO (smth) 
#define COM_FORWARD_IExtPackPlugIn_TO_OBJ(obj) COM_FORWARD_IExtPackPlugIn_TO ((obj)->)
#define COM_FORWARD_IExtPackPlugIn_TO_BASE(base) COM_FORWARD_IExtPackPlugIn_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IExtPackBase_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_Name_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_Name_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_Description_TO(smth) HRESULT STDMETHODCALLTYPE get_Description (BSTR * aDescription) { return smth get_Description (aDescription); }
#define COM_FORWARD_IExtPackBase_GETTER_Description_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_Description_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_Description_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_Description_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_Version_TO(smth) HRESULT STDMETHODCALLTYPE get_Version (BSTR * aVersion) { return smth get_Version (aVersion); }
#define COM_FORWARD_IExtPackBase_GETTER_Version_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_Version_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_Version_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_Version_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_Revision_TO(smth) HRESULT STDMETHODCALLTYPE get_Revision (ULONG * aRevision) { return smth get_Revision (aRevision); }
#define COM_FORWARD_IExtPackBase_GETTER_Revision_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_Revision_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_Revision_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_Revision_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_VRDEModule_TO(smth) HRESULT STDMETHODCALLTYPE get_VRDEModule (BSTR * aVRDEModule) { return smth get_VRDEModule (aVRDEModule); }
#define COM_FORWARD_IExtPackBase_GETTER_VRDEModule_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_VRDEModule_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_VRDEModule_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_VRDEModule_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_PlugIns_TO(smth) HRESULT STDMETHODCALLTYPE get_PlugIns (SAFEARRAY * * aPlugIns) { return smth get_PlugIns (aPlugIns); }
#define COM_FORWARD_IExtPackBase_GETTER_PlugIns_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_PlugIns_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_PlugIns_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_PlugIns_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_Usable_TO(smth) HRESULT STDMETHODCALLTYPE get_Usable (BOOL * aUsable) { return smth get_Usable (aUsable); }
#define COM_FORWARD_IExtPackBase_GETTER_Usable_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_Usable_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_Usable_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_Usable_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_WhyUnusable_TO(smth) HRESULT STDMETHODCALLTYPE get_WhyUnusable (BSTR * aWhyUnusable) { return smth get_WhyUnusable (aWhyUnusable); }
#define COM_FORWARD_IExtPackBase_GETTER_WhyUnusable_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_WhyUnusable_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_WhyUnusable_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_WhyUnusable_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_ShowLicense_TO(smth) HRESULT STDMETHODCALLTYPE get_ShowLicense (BOOL * aShowLicense) { return smth get_ShowLicense (aShowLicense); }
#define COM_FORWARD_IExtPackBase_GETTER_ShowLicense_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_ShowLicense_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_ShowLicense_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_ShowLicense_TO (base::)
#define COM_FORWARD_IExtPackBase_GETTER_License_TO(smth) HRESULT STDMETHODCALLTYPE get_License (BSTR * aLicense) { return smth get_License (aLicense); }
#define COM_FORWARD_IExtPackBase_GETTER_License_TO_OBJ(obj) COM_FORWARD_IExtPackBase_GETTER_License_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_GETTER_License_TO_BASE(base) COM_FORWARD_IExtPackBase_GETTER_License_TO (base::)
#define COM_FORWARD_IExtPackBase_QueryLicense_TO(smth) HRESULT STDMETHODCALLTYPE QueryLicense (BSTR aPreferredLocale, BSTR aPreferredLanguage, BSTR aFormat, BSTR * aLicenseText) { return smth QueryLicense (aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText); }
#define COM_FORWARD_IExtPackBase_QueryLicense_TO_OBJ(obj) COM_FORWARD_IExtPackBase_QueryLicense_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_QueryLicense_TO_BASE(base) COM_FORWARD_IExtPackBase_QueryLicense_TO (base::)
#define COM_FORWARD_IExtPackBase_TO(smth) COM_FORWARD_IExtPackBase_GETTER_Name_TO (smth) COM_FORWARD_IExtPackBase_GETTER_Description_TO (smth) COM_FORWARD_IExtPackBase_GETTER_Version_TO (smth) COM_FORWARD_IExtPackBase_GETTER_Revision_TO (smth) COM_FORWARD_IExtPackBase_GETTER_VRDEModule_TO (smth) COM_FORWARD_IExtPackBase_GETTER_PlugIns_TO (smth) COM_FORWARD_IExtPackBase_GETTER_Usable_TO (smth) COM_FORWARD_IExtPackBase_GETTER_WhyUnusable_TO (smth) COM_FORWARD_IExtPackBase_GETTER_ShowLicense_TO (smth) COM_FORWARD_IExtPackBase_GETTER_License_TO (smth) COM_FORWARD_IExtPackBase_QueryLicense_TO (smth) 
#define COM_FORWARD_IExtPackBase_TO_OBJ(obj) COM_FORWARD_IExtPackBase_TO ((obj)->)
#define COM_FORWARD_IExtPackBase_TO_BASE(base) COM_FORWARD_IExtPackBase_TO (base::)
#define COM_FORWARD_IExtPack_QueryObject_TO(smth) HRESULT STDMETHODCALLTYPE QueryObject (BSTR aObjUuid, IUnknown * * aReturnInterface) { return smth QueryObject (aObjUuid, aReturnInterface); }
#define COM_FORWARD_IExtPack_QueryObject_TO_OBJ(obj) COM_FORWARD_IExtPack_QueryObject_TO ((obj)->)
#define COM_FORWARD_IExtPack_QueryObject_TO_BASE(base) COM_FORWARD_IExtPack_QueryObject_TO (base::)
#define COM_FORWARD_IExtPack_TO(smth) COM_FORWARD_IExtPack_QueryObject_TO (smth) 
#define COM_FORWARD_IExtPack_TO_OBJ(obj) COM_FORWARD_IExtPack_TO ((obj)->)
#define COM_FORWARD_IExtPack_TO_BASE(base) COM_FORWARD_IExtPack_TO (base::)
#define COM_FORWARD_IExtPackFile_GETTER_FilePath_TO(smth) HRESULT STDMETHODCALLTYPE get_FilePath (BSTR * aFilePath) { return smth get_FilePath (aFilePath); }
#define COM_FORWARD_IExtPackFile_GETTER_FilePath_TO_OBJ(obj) COM_FORWARD_IExtPackFile_GETTER_FilePath_TO ((obj)->)
#define COM_FORWARD_IExtPackFile_GETTER_FilePath_TO_BASE(base) COM_FORWARD_IExtPackFile_GETTER_FilePath_TO (base::)
#define COM_FORWARD_IExtPackFile_Install_TO(smth) HRESULT STDMETHODCALLTYPE Install (BOOL aReplace, BSTR aDisplayInfo, IProgress * * aProgess) { return smth Install (aReplace, aDisplayInfo, aProgess); }
#define COM_FORWARD_IExtPackFile_Install_TO_OBJ(obj) COM_FORWARD_IExtPackFile_Install_TO ((obj)->)
#define COM_FORWARD_IExtPackFile_Install_TO_BASE(base) COM_FORWARD_IExtPackFile_Install_TO (base::)
#define COM_FORWARD_IExtPackFile_TO(smth) COM_FORWARD_IExtPackFile_GETTER_FilePath_TO (smth) COM_FORWARD_IExtPackFile_Install_TO (smth) 
#define COM_FORWARD_IExtPackFile_TO_OBJ(obj) COM_FORWARD_IExtPackFile_TO ((obj)->)
#define COM_FORWARD_IExtPackFile_TO_BASE(base) COM_FORWARD_IExtPackFile_TO (base::)
#define COM_FORWARD_IExtPackManager_GETTER_InstalledExtPacks_TO(smth) HRESULT STDMETHODCALLTYPE get_InstalledExtPacks (SAFEARRAY * * aInstalledExtPacks) { return smth get_InstalledExtPacks (aInstalledExtPacks); }
#define COM_FORWARD_IExtPackManager_GETTER_InstalledExtPacks_TO_OBJ(obj) COM_FORWARD_IExtPackManager_GETTER_InstalledExtPacks_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_GETTER_InstalledExtPacks_TO_BASE(base) COM_FORWARD_IExtPackManager_GETTER_InstalledExtPacks_TO (base::)
#define COM_FORWARD_IExtPackManager_Find_TO(smth) HRESULT STDMETHODCALLTYPE Find (BSTR aName, IExtPack * * aReturnData) { return smth Find (aName, aReturnData); }
#define COM_FORWARD_IExtPackManager_Find_TO_OBJ(obj) COM_FORWARD_IExtPackManager_Find_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_Find_TO_BASE(base) COM_FORWARD_IExtPackManager_Find_TO (base::)
#define COM_FORWARD_IExtPackManager_OpenExtPackFile_TO(smth) HRESULT STDMETHODCALLTYPE OpenExtPackFile (BSTR aPath, IExtPackFile * * aFile) { return smth OpenExtPackFile (aPath, aFile); }
#define COM_FORWARD_IExtPackManager_OpenExtPackFile_TO_OBJ(obj) COM_FORWARD_IExtPackManager_OpenExtPackFile_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_OpenExtPackFile_TO_BASE(base) COM_FORWARD_IExtPackManager_OpenExtPackFile_TO (base::)
#define COM_FORWARD_IExtPackManager_Uninstall_TO(smth) HRESULT STDMETHODCALLTYPE Uninstall (BSTR aName, BOOL aForcedRemoval, BSTR aDisplayInfo, IProgress * * aProgess) { return smth Uninstall (aName, aForcedRemoval, aDisplayInfo, aProgess); }
#define COM_FORWARD_IExtPackManager_Uninstall_TO_OBJ(obj) COM_FORWARD_IExtPackManager_Uninstall_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_Uninstall_TO_BASE(base) COM_FORWARD_IExtPackManager_Uninstall_TO (base::)
#define COM_FORWARD_IExtPackManager_Cleanup_TO(smth) HRESULT STDMETHODCALLTYPE Cleanup() { return smth Cleanup(); }
#define COM_FORWARD_IExtPackManager_Cleanup_TO_OBJ(obj) COM_FORWARD_IExtPackManager_Cleanup_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_Cleanup_TO_BASE(base) COM_FORWARD_IExtPackManager_Cleanup_TO (base::)
#define COM_FORWARD_IExtPackManager_QueryAllPlugInsForFrontend_TO(smth) HRESULT STDMETHODCALLTYPE QueryAllPlugInsForFrontend (BSTR aFrontendName, SAFEARRAY * * aPlugInModules) { return smth QueryAllPlugInsForFrontend (aFrontendName, aPlugInModules); }
#define COM_FORWARD_IExtPackManager_QueryAllPlugInsForFrontend_TO_OBJ(obj) COM_FORWARD_IExtPackManager_QueryAllPlugInsForFrontend_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_QueryAllPlugInsForFrontend_TO_BASE(base) COM_FORWARD_IExtPackManager_QueryAllPlugInsForFrontend_TO (base::)
#define COM_FORWARD_IExtPackManager_IsExtPackUsable_TO(smth) HRESULT STDMETHODCALLTYPE IsExtPackUsable (BSTR aName, BOOL * aUsable) { return smth IsExtPackUsable (aName, aUsable); }
#define COM_FORWARD_IExtPackManager_IsExtPackUsable_TO_OBJ(obj) COM_FORWARD_IExtPackManager_IsExtPackUsable_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_IsExtPackUsable_TO_BASE(base) COM_FORWARD_IExtPackManager_IsExtPackUsable_TO (base::)
#define COM_FORWARD_IExtPackManager_TO(smth) COM_FORWARD_IExtPackManager_GETTER_InstalledExtPacks_TO (smth) COM_FORWARD_IExtPackManager_Find_TO (smth) COM_FORWARD_IExtPackManager_OpenExtPackFile_TO (smth) COM_FORWARD_IExtPackManager_Uninstall_TO (smth) COM_FORWARD_IExtPackManager_Cleanup_TO (smth) COM_FORWARD_IExtPackManager_QueryAllPlugInsForFrontend_TO (smth) COM_FORWARD_IExtPackManager_IsExtPackUsable_TO (smth) 
#define COM_FORWARD_IExtPackManager_TO_OBJ(obj) COM_FORWARD_IExtPackManager_TO ((obj)->)
#define COM_FORWARD_IExtPackManager_TO_BASE(base) COM_FORWARD_IExtPackManager_TO (base::)
#define COM_FORWARD_IBandwidthGroup_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IBandwidthGroup_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IBandwidthGroup_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroup_GETTER_Name_TO_BASE(base) COM_FORWARD_IBandwidthGroup_GETTER_Name_TO (base::)
#define COM_FORWARD_IBandwidthGroup_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (BandwidthGroupType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IBandwidthGroup_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IBandwidthGroup_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroup_GETTER_Type_TO_BASE(base) COM_FORWARD_IBandwidthGroup_GETTER_Type_TO (base::)
#define COM_FORWARD_IBandwidthGroup_GETTER_Reference_TO(smth) HRESULT STDMETHODCALLTYPE get_Reference (ULONG * aReference) { return smth get_Reference (aReference); }
#define COM_FORWARD_IBandwidthGroup_GETTER_Reference_TO_OBJ(obj) COM_FORWARD_IBandwidthGroup_GETTER_Reference_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroup_GETTER_Reference_TO_BASE(base) COM_FORWARD_IBandwidthGroup_GETTER_Reference_TO (base::)
#define COM_FORWARD_IBandwidthGroup_GETTER_MaxMbPerSec_TO(smth) HRESULT STDMETHODCALLTYPE get_MaxMbPerSec (ULONG * aMaxMbPerSec) { return smth get_MaxMbPerSec (aMaxMbPerSec); }
#define COM_FORWARD_IBandwidthGroup_GETTER_MaxMbPerSec_TO_OBJ(obj) COM_FORWARD_IBandwidthGroup_GETTER_MaxMbPerSec_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroup_GETTER_MaxMbPerSec_TO_BASE(base) COM_FORWARD_IBandwidthGroup_GETTER_MaxMbPerSec_TO (base::)
#define COM_FORWARD_IBandwidthGroup_SETTER_MaxMbPerSec_TO(smth) HRESULT STDMETHODCALLTYPE put_MaxMbPerSec (ULONG aMaxMbPerSec) { return smth put_MaxMbPerSec (aMaxMbPerSec); }
#define COM_FORWARD_IBandwidthGroup_SETTER_MaxMbPerSec_TO_OBJ(obj) COM_FORWARD_IBandwidthGroup_SETTER_MaxMbPerSec_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroup_SETTER_MaxMbPerSec_TO_BASE(base) COM_FORWARD_IBandwidthGroup_SETTER_MaxMbPerSec_TO (base::)
#define COM_FORWARD_IBandwidthGroup_TO(smth) COM_FORWARD_IBandwidthGroup_GETTER_Name_TO (smth) COM_FORWARD_IBandwidthGroup_GETTER_Type_TO (smth) COM_FORWARD_IBandwidthGroup_GETTER_Reference_TO (smth) COM_FORWARD_IBandwidthGroup_GETTER_MaxMbPerSec_TO (smth) COM_FORWARD_IBandwidthGroup_SETTER_MaxMbPerSec_TO (smth) 
#define COM_FORWARD_IBandwidthGroup_TO_OBJ(obj) COM_FORWARD_IBandwidthGroup_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroup_TO_BASE(base) COM_FORWARD_IBandwidthGroup_TO (base::)
#define COM_FORWARD_IBandwidthControl_GETTER_NumGroups_TO(smth) HRESULT STDMETHODCALLTYPE get_NumGroups (ULONG * aNumGroups) { return smth get_NumGroups (aNumGroups); }
#define COM_FORWARD_IBandwidthControl_GETTER_NumGroups_TO_OBJ(obj) COM_FORWARD_IBandwidthControl_GETTER_NumGroups_TO ((obj)->)
#define COM_FORWARD_IBandwidthControl_GETTER_NumGroups_TO_BASE(base) COM_FORWARD_IBandwidthControl_GETTER_NumGroups_TO (base::)
#define COM_FORWARD_IBandwidthControl_CreateBandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE CreateBandwidthGroup (BSTR aName, BandwidthGroupType aType, ULONG aMaxMbPerSec) { return smth CreateBandwidthGroup (aName, aType, aMaxMbPerSec); }
#define COM_FORWARD_IBandwidthControl_CreateBandwidthGroup_TO_OBJ(obj) COM_FORWARD_IBandwidthControl_CreateBandwidthGroup_TO ((obj)->)
#define COM_FORWARD_IBandwidthControl_CreateBandwidthGroup_TO_BASE(base) COM_FORWARD_IBandwidthControl_CreateBandwidthGroup_TO (base::)
#define COM_FORWARD_IBandwidthControl_DeleteBandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE DeleteBandwidthGroup (BSTR aName) { return smth DeleteBandwidthGroup (aName); }
#define COM_FORWARD_IBandwidthControl_DeleteBandwidthGroup_TO_OBJ(obj) COM_FORWARD_IBandwidthControl_DeleteBandwidthGroup_TO ((obj)->)
#define COM_FORWARD_IBandwidthControl_DeleteBandwidthGroup_TO_BASE(base) COM_FORWARD_IBandwidthControl_DeleteBandwidthGroup_TO (base::)
#define COM_FORWARD_IBandwidthControl_GetBandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE GetBandwidthGroup (BSTR aName, IBandwidthGroup * * aBandwidthGroup) { return smth GetBandwidthGroup (aName, aBandwidthGroup); }
#define COM_FORWARD_IBandwidthControl_GetBandwidthGroup_TO_OBJ(obj) COM_FORWARD_IBandwidthControl_GetBandwidthGroup_TO ((obj)->)
#define COM_FORWARD_IBandwidthControl_GetBandwidthGroup_TO_BASE(base) COM_FORWARD_IBandwidthControl_GetBandwidthGroup_TO (base::)
#define COM_FORWARD_IBandwidthControl_GetAllBandwidthGroups_TO(smth) HRESULT STDMETHODCALLTYPE GetAllBandwidthGroups (SAFEARRAY * * aBandwidthGroups) { return smth GetAllBandwidthGroups (aBandwidthGroups); }
#define COM_FORWARD_IBandwidthControl_GetAllBandwidthGroups_TO_OBJ(obj) COM_FORWARD_IBandwidthControl_GetAllBandwidthGroups_TO ((obj)->)
#define COM_FORWARD_IBandwidthControl_GetAllBandwidthGroups_TO_BASE(base) COM_FORWARD_IBandwidthControl_GetAllBandwidthGroups_TO (base::)
#define COM_FORWARD_IBandwidthControl_TO(smth) COM_FORWARD_IBandwidthControl_GETTER_NumGroups_TO (smth) COM_FORWARD_IBandwidthControl_CreateBandwidthGroup_TO (smth) COM_FORWARD_IBandwidthControl_DeleteBandwidthGroup_TO (smth) COM_FORWARD_IBandwidthControl_GetBandwidthGroup_TO (smth) COM_FORWARD_IBandwidthControl_GetAllBandwidthGroups_TO (smth) 
#define COM_FORWARD_IBandwidthControl_TO_OBJ(obj) COM_FORWARD_IBandwidthControl_TO ((obj)->)
#define COM_FORWARD_IBandwidthControl_TO_BASE(base) COM_FORWARD_IBandwidthControl_TO (base::)
#define COM_FORWARD_IVirtualBoxClient_GETTER_VirtualBox_TO(smth) HRESULT STDMETHODCALLTYPE get_VirtualBox (IVirtualBox * * aVirtualBox) { return smth get_VirtualBox (aVirtualBox); }
#define COM_FORWARD_IVirtualBoxClient_GETTER_VirtualBox_TO_OBJ(obj) COM_FORWARD_IVirtualBoxClient_GETTER_VirtualBox_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxClient_GETTER_VirtualBox_TO_BASE(base) COM_FORWARD_IVirtualBoxClient_GETTER_VirtualBox_TO (base::)
#define COM_FORWARD_IVirtualBoxClient_GETTER_Session_TO(smth) HRESULT STDMETHODCALLTYPE get_Session (ISession * * aSession) { return smth get_Session (aSession); }
#define COM_FORWARD_IVirtualBoxClient_GETTER_Session_TO_OBJ(obj) COM_FORWARD_IVirtualBoxClient_GETTER_Session_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxClient_GETTER_Session_TO_BASE(base) COM_FORWARD_IVirtualBoxClient_GETTER_Session_TO (base::)
#define COM_FORWARD_IVirtualBoxClient_GETTER_EventSource_TO(smth) HRESULT STDMETHODCALLTYPE get_EventSource (IEventSource * * aEventSource) { return smth get_EventSource (aEventSource); }
#define COM_FORWARD_IVirtualBoxClient_GETTER_EventSource_TO_OBJ(obj) COM_FORWARD_IVirtualBoxClient_GETTER_EventSource_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxClient_GETTER_EventSource_TO_BASE(base) COM_FORWARD_IVirtualBoxClient_GETTER_EventSource_TO (base::)
#define COM_FORWARD_IVirtualBoxClient_TO(smth) COM_FORWARD_IVirtualBoxClient_GETTER_VirtualBox_TO (smth) COM_FORWARD_IVirtualBoxClient_GETTER_Session_TO (smth) COM_FORWARD_IVirtualBoxClient_GETTER_EventSource_TO (smth) 
#define COM_FORWARD_IVirtualBoxClient_TO_OBJ(obj) COM_FORWARD_IVirtualBoxClient_TO ((obj)->)
#define COM_FORWARD_IVirtualBoxClient_TO_BASE(base) COM_FORWARD_IVirtualBoxClient_TO (base::)
#define COM_FORWARD_IEventSource_CreateListener_TO(smth) HRESULT STDMETHODCALLTYPE CreateListener (IEventListener * * aListener) { return smth CreateListener (aListener); }
#define COM_FORWARD_IEventSource_CreateListener_TO_OBJ(obj) COM_FORWARD_IEventSource_CreateListener_TO ((obj)->)
#define COM_FORWARD_IEventSource_CreateListener_TO_BASE(base) COM_FORWARD_IEventSource_CreateListener_TO (base::)
#define COM_FORWARD_IEventSource_CreateAggregator_TO(smth) HRESULT STDMETHODCALLTYPE CreateAggregator (SAFEARRAY * * aSubordinates, IEventSource * * aResult) { return smth CreateAggregator (aSubordinates, aResult); }
#define COM_FORWARD_IEventSource_CreateAggregator_TO_OBJ(obj) COM_FORWARD_IEventSource_CreateAggregator_TO ((obj)->)
#define COM_FORWARD_IEventSource_CreateAggregator_TO_BASE(base) COM_FORWARD_IEventSource_CreateAggregator_TO (base::)
#define COM_FORWARD_IEventSource_RegisterListener_TO(smth) HRESULT STDMETHODCALLTYPE RegisterListener (IEventListener * aListener, SAFEARRAY * * aInteresting, BOOL aActive) { return smth RegisterListener (aListener, aInteresting, aActive); }
#define COM_FORWARD_IEventSource_RegisterListener_TO_OBJ(obj) COM_FORWARD_IEventSource_RegisterListener_TO ((obj)->)
#define COM_FORWARD_IEventSource_RegisterListener_TO_BASE(base) COM_FORWARD_IEventSource_RegisterListener_TO (base::)
#define COM_FORWARD_IEventSource_UnregisterListener_TO(smth) HRESULT STDMETHODCALLTYPE UnregisterListener (IEventListener * aListener) { return smth UnregisterListener (aListener); }
#define COM_FORWARD_IEventSource_UnregisterListener_TO_OBJ(obj) COM_FORWARD_IEventSource_UnregisterListener_TO ((obj)->)
#define COM_FORWARD_IEventSource_UnregisterListener_TO_BASE(base) COM_FORWARD_IEventSource_UnregisterListener_TO (base::)
#define COM_FORWARD_IEventSource_FireEvent_TO(smth) HRESULT STDMETHODCALLTYPE FireEvent (IEvent * aEvent, LONG aTimeout, BOOL * aResult) { return smth FireEvent (aEvent, aTimeout, aResult); }
#define COM_FORWARD_IEventSource_FireEvent_TO_OBJ(obj) COM_FORWARD_IEventSource_FireEvent_TO ((obj)->)
#define COM_FORWARD_IEventSource_FireEvent_TO_BASE(base) COM_FORWARD_IEventSource_FireEvent_TO (base::)
#define COM_FORWARD_IEventSource_GetEvent_TO(smth) HRESULT STDMETHODCALLTYPE GetEvent (IEventListener * aListener, LONG aTimeout, IEvent * * aEvent) { return smth GetEvent (aListener, aTimeout, aEvent); }
#define COM_FORWARD_IEventSource_GetEvent_TO_OBJ(obj) COM_FORWARD_IEventSource_GetEvent_TO ((obj)->)
#define COM_FORWARD_IEventSource_GetEvent_TO_BASE(base) COM_FORWARD_IEventSource_GetEvent_TO (base::)
#define COM_FORWARD_IEventSource_EventProcessed_TO(smth) HRESULT STDMETHODCALLTYPE EventProcessed (IEventListener * aListener, IEvent * aEvent) { return smth EventProcessed (aListener, aEvent); }
#define COM_FORWARD_IEventSource_EventProcessed_TO_OBJ(obj) COM_FORWARD_IEventSource_EventProcessed_TO ((obj)->)
#define COM_FORWARD_IEventSource_EventProcessed_TO_BASE(base) COM_FORWARD_IEventSource_EventProcessed_TO (base::)
#define COM_FORWARD_IEventSource_TO(smth) COM_FORWARD_IEventSource_CreateListener_TO (smth) COM_FORWARD_IEventSource_CreateAggregator_TO (smth) COM_FORWARD_IEventSource_RegisterListener_TO (smth) COM_FORWARD_IEventSource_UnregisterListener_TO (smth) COM_FORWARD_IEventSource_FireEvent_TO (smth) COM_FORWARD_IEventSource_GetEvent_TO (smth) COM_FORWARD_IEventSource_EventProcessed_TO (smth) 
#define COM_FORWARD_IEventSource_TO_OBJ(obj) COM_FORWARD_IEventSource_TO ((obj)->)
#define COM_FORWARD_IEventSource_TO_BASE(base) COM_FORWARD_IEventSource_TO (base::)
#define COM_FORWARD_IEventListener_HandleEvent_TO(smth) HRESULT STDMETHODCALLTYPE HandleEvent (IEvent * aEvent) { return smth HandleEvent (aEvent); }
#define COM_FORWARD_IEventListener_HandleEvent_TO_OBJ(obj) COM_FORWARD_IEventListener_HandleEvent_TO ((obj)->)
#define COM_FORWARD_IEventListener_HandleEvent_TO_BASE(base) COM_FORWARD_IEventListener_HandleEvent_TO (base::)
#define COM_FORWARD_IEventListener_TO(smth) COM_FORWARD_IEventListener_HandleEvent_TO (smth) 
#define COM_FORWARD_IEventListener_TO_OBJ(obj) COM_FORWARD_IEventListener_TO ((obj)->)
#define COM_FORWARD_IEventListener_TO_BASE(base) COM_FORWARD_IEventListener_TO (base::)
#define COM_FORWARD_IEvent_GETTER_Type_TO(smth) HRESULT STDMETHODCALLTYPE get_Type (VBoxEventType * aType) { return smth get_Type (aType); }
#define COM_FORWARD_IEvent_GETTER_Type_TO_OBJ(obj) COM_FORWARD_IEvent_GETTER_Type_TO ((obj)->)
#define COM_FORWARD_IEvent_GETTER_Type_TO_BASE(base) COM_FORWARD_IEvent_GETTER_Type_TO (base::)
#define COM_FORWARD_IEvent_GETTER_Source_TO(smth) HRESULT STDMETHODCALLTYPE get_Source (IEventSource * * aSource) { return smth get_Source (aSource); }
#define COM_FORWARD_IEvent_GETTER_Source_TO_OBJ(obj) COM_FORWARD_IEvent_GETTER_Source_TO ((obj)->)
#define COM_FORWARD_IEvent_GETTER_Source_TO_BASE(base) COM_FORWARD_IEvent_GETTER_Source_TO (base::)
#define COM_FORWARD_IEvent_GETTER_Waitable_TO(smth) HRESULT STDMETHODCALLTYPE get_Waitable (BOOL * aWaitable) { return smth get_Waitable (aWaitable); }
#define COM_FORWARD_IEvent_GETTER_Waitable_TO_OBJ(obj) COM_FORWARD_IEvent_GETTER_Waitable_TO ((obj)->)
#define COM_FORWARD_IEvent_GETTER_Waitable_TO_BASE(base) COM_FORWARD_IEvent_GETTER_Waitable_TO (base::)
#define COM_FORWARD_IEvent_SetProcessed_TO(smth) HRESULT STDMETHODCALLTYPE SetProcessed() { return smth SetProcessed(); }
#define COM_FORWARD_IEvent_SetProcessed_TO_OBJ(obj) COM_FORWARD_IEvent_SetProcessed_TO ((obj)->)
#define COM_FORWARD_IEvent_SetProcessed_TO_BASE(base) COM_FORWARD_IEvent_SetProcessed_TO (base::)
#define COM_FORWARD_IEvent_WaitProcessed_TO(smth) HRESULT STDMETHODCALLTYPE WaitProcessed (LONG aTimeout, BOOL * aResult) { return smth WaitProcessed (aTimeout, aResult); }
#define COM_FORWARD_IEvent_WaitProcessed_TO_OBJ(obj) COM_FORWARD_IEvent_WaitProcessed_TO ((obj)->)
#define COM_FORWARD_IEvent_WaitProcessed_TO_BASE(base) COM_FORWARD_IEvent_WaitProcessed_TO (base::)
#define COM_FORWARD_IEvent_TO(smth) COM_FORWARD_IEvent_GETTER_Type_TO (smth) COM_FORWARD_IEvent_GETTER_Source_TO (smth) COM_FORWARD_IEvent_GETTER_Waitable_TO (smth) COM_FORWARD_IEvent_SetProcessed_TO (smth) COM_FORWARD_IEvent_WaitProcessed_TO (smth) 
#define COM_FORWARD_IEvent_TO_OBJ(obj) COM_FORWARD_IEvent_TO ((obj)->)
#define COM_FORWARD_IEvent_TO_BASE(base) COM_FORWARD_IEvent_TO (base::)
#define COM_FORWARD_IReusableEvent_GETTER_Generation_TO(smth) HRESULT STDMETHODCALLTYPE get_Generation (ULONG * aGeneration) { return smth get_Generation (aGeneration); }
#define COM_FORWARD_IReusableEvent_GETTER_Generation_TO_OBJ(obj) COM_FORWARD_IReusableEvent_GETTER_Generation_TO ((obj)->)
#define COM_FORWARD_IReusableEvent_GETTER_Generation_TO_BASE(base) COM_FORWARD_IReusableEvent_GETTER_Generation_TO (base::)
#define COM_FORWARD_IReusableEvent_Reuse_TO(smth) HRESULT STDMETHODCALLTYPE Reuse() { return smth Reuse(); }
#define COM_FORWARD_IReusableEvent_Reuse_TO_OBJ(obj) COM_FORWARD_IReusableEvent_Reuse_TO ((obj)->)
#define COM_FORWARD_IReusableEvent_Reuse_TO_BASE(base) COM_FORWARD_IReusableEvent_Reuse_TO (base::)
#define COM_FORWARD_IReusableEvent_TO(smth) COM_FORWARD_IReusableEvent_GETTER_Generation_TO (smth) COM_FORWARD_IReusableEvent_Reuse_TO (smth) 
#define COM_FORWARD_IReusableEvent_TO_OBJ(obj) COM_FORWARD_IReusableEvent_TO ((obj)->)
#define COM_FORWARD_IReusableEvent_TO_BASE(base) COM_FORWARD_IReusableEvent_TO (base::)
#define COM_FORWARD_IMachineEvent_GETTER_MachineId_TO(smth) HRESULT STDMETHODCALLTYPE get_MachineId (BSTR * aMachineId) { return smth get_MachineId (aMachineId); }
#define COM_FORWARD_IMachineEvent_GETTER_MachineId_TO_OBJ(obj) COM_FORWARD_IMachineEvent_GETTER_MachineId_TO ((obj)->)
#define COM_FORWARD_IMachineEvent_GETTER_MachineId_TO_BASE(base) COM_FORWARD_IMachineEvent_GETTER_MachineId_TO (base::)
#define COM_FORWARD_IMachineEvent_TO(smth) COM_FORWARD_IMachineEvent_GETTER_MachineId_TO (smth) 
#define COM_FORWARD_IMachineEvent_TO_OBJ(obj) COM_FORWARD_IMachineEvent_TO ((obj)->)
#define COM_FORWARD_IMachineEvent_TO_BASE(base) COM_FORWARD_IMachineEvent_TO (base::)
#define COM_FORWARD_IMachineStateChangedEvent_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (MachineState * aState) { return smth get_State (aState); }
#define COM_FORWARD_IMachineStateChangedEvent_GETTER_State_TO_OBJ(obj) COM_FORWARD_IMachineStateChangedEvent_GETTER_State_TO ((obj)->)
#define COM_FORWARD_IMachineStateChangedEvent_GETTER_State_TO_BASE(base) COM_FORWARD_IMachineStateChangedEvent_GETTER_State_TO (base::)
#define COM_FORWARD_IMachineStateChangedEvent_TO(smth) COM_FORWARD_IMachineStateChangedEvent_GETTER_State_TO (smth) 
#define COM_FORWARD_IMachineStateChangedEvent_TO_OBJ(obj) COM_FORWARD_IMachineStateChangedEvent_TO ((obj)->)
#define COM_FORWARD_IMachineStateChangedEvent_TO_BASE(base) COM_FORWARD_IMachineStateChangedEvent_TO (base::)
#define COM_FORWARD_IMachineDataChangedEvent_GETTER_Temporary_TO(smth) HRESULT STDMETHODCALLTYPE get_Temporary (BOOL * aTemporary) { return smth get_Temporary (aTemporary); }
#define COM_FORWARD_IMachineDataChangedEvent_GETTER_Temporary_TO_OBJ(obj) COM_FORWARD_IMachineDataChangedEvent_GETTER_Temporary_TO ((obj)->)
#define COM_FORWARD_IMachineDataChangedEvent_GETTER_Temporary_TO_BASE(base) COM_FORWARD_IMachineDataChangedEvent_GETTER_Temporary_TO (base::)
#define COM_FORWARD_IMachineDataChangedEvent_TO(smth) COM_FORWARD_IMachineDataChangedEvent_GETTER_Temporary_TO (smth) 
#define COM_FORWARD_IMachineDataChangedEvent_TO_OBJ(obj) COM_FORWARD_IMachineDataChangedEvent_TO ((obj)->)
#define COM_FORWARD_IMachineDataChangedEvent_TO_BASE(base) COM_FORWARD_IMachineDataChangedEvent_TO (base::)
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumId_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumId (BSTR * aMediumId) { return smth get_MediumId (aMediumId); }
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumId_TO_OBJ(obj) COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumId_TO ((obj)->)
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumId_TO_BASE(base) COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumId_TO (base::)
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumType_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumType (DeviceType * aMediumType) { return smth get_MediumType (aMediumType); }
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumType_TO_OBJ(obj) COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumType_TO ((obj)->)
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumType_TO_BASE(base) COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumType_TO (base::)
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_Registered_TO(smth) HRESULT STDMETHODCALLTYPE get_Registered (BOOL * aRegistered) { return smth get_Registered (aRegistered); }
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_Registered_TO_OBJ(obj) COM_FORWARD_IMediumRegisteredEvent_GETTER_Registered_TO ((obj)->)
#define COM_FORWARD_IMediumRegisteredEvent_GETTER_Registered_TO_BASE(base) COM_FORWARD_IMediumRegisteredEvent_GETTER_Registered_TO (base::)
#define COM_FORWARD_IMediumRegisteredEvent_TO(smth) COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumId_TO (smth) COM_FORWARD_IMediumRegisteredEvent_GETTER_MediumType_TO (smth) COM_FORWARD_IMediumRegisteredEvent_GETTER_Registered_TO (smth) 
#define COM_FORWARD_IMediumRegisteredEvent_TO_OBJ(obj) COM_FORWARD_IMediumRegisteredEvent_TO ((obj)->)
#define COM_FORWARD_IMediumRegisteredEvent_TO_BASE(base) COM_FORWARD_IMediumRegisteredEvent_TO (base::)
#define COM_FORWARD_IMachineRegisteredEvent_GETTER_Registered_TO(smth) HRESULT STDMETHODCALLTYPE get_Registered (BOOL * aRegistered) { return smth get_Registered (aRegistered); }
#define COM_FORWARD_IMachineRegisteredEvent_GETTER_Registered_TO_OBJ(obj) COM_FORWARD_IMachineRegisteredEvent_GETTER_Registered_TO ((obj)->)
#define COM_FORWARD_IMachineRegisteredEvent_GETTER_Registered_TO_BASE(base) COM_FORWARD_IMachineRegisteredEvent_GETTER_Registered_TO (base::)
#define COM_FORWARD_IMachineRegisteredEvent_TO(smth) COM_FORWARD_IMachineRegisteredEvent_GETTER_Registered_TO (smth) 
#define COM_FORWARD_IMachineRegisteredEvent_TO_OBJ(obj) COM_FORWARD_IMachineRegisteredEvent_TO ((obj)->)
#define COM_FORWARD_IMachineRegisteredEvent_TO_BASE(base) COM_FORWARD_IMachineRegisteredEvent_TO (base::)
#define COM_FORWARD_ISessionStateChangedEvent_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (SessionState * aState) { return smth get_State (aState); }
#define COM_FORWARD_ISessionStateChangedEvent_GETTER_State_TO_OBJ(obj) COM_FORWARD_ISessionStateChangedEvent_GETTER_State_TO ((obj)->)
#define COM_FORWARD_ISessionStateChangedEvent_GETTER_State_TO_BASE(base) COM_FORWARD_ISessionStateChangedEvent_GETTER_State_TO (base::)
#define COM_FORWARD_ISessionStateChangedEvent_TO(smth) COM_FORWARD_ISessionStateChangedEvent_GETTER_State_TO (smth) 
#define COM_FORWARD_ISessionStateChangedEvent_TO_OBJ(obj) COM_FORWARD_ISessionStateChangedEvent_TO ((obj)->)
#define COM_FORWARD_ISessionStateChangedEvent_TO_BASE(base) COM_FORWARD_ISessionStateChangedEvent_TO (base::)
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Name_TO_OBJ(obj) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Name_TO_BASE(base) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Name_TO (base::)
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Value_TO(smth) HRESULT STDMETHODCALLTYPE get_Value (BSTR * aValue) { return smth get_Value (aValue); }
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Value_TO_OBJ(obj) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Value_TO ((obj)->)
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Value_TO_BASE(base) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Value_TO (base::)
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Flags_TO(smth) HRESULT STDMETHODCALLTYPE get_Flags (BSTR * aFlags) { return smth get_Flags (aFlags); }
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Flags_TO_OBJ(obj) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Flags_TO ((obj)->)
#define COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Flags_TO_BASE(base) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Flags_TO (base::)
#define COM_FORWARD_IGuestPropertyChangedEvent_TO(smth) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Name_TO (smth) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Value_TO (smth) COM_FORWARD_IGuestPropertyChangedEvent_GETTER_Flags_TO (smth) 
#define COM_FORWARD_IGuestPropertyChangedEvent_TO_OBJ(obj) COM_FORWARD_IGuestPropertyChangedEvent_TO ((obj)->)
#define COM_FORWARD_IGuestPropertyChangedEvent_TO_BASE(base) COM_FORWARD_IGuestPropertyChangedEvent_TO (base::)
#define COM_FORWARD_ISnapshotEvent_GETTER_SnapshotId_TO(smth) HRESULT STDMETHODCALLTYPE get_SnapshotId (BSTR * aSnapshotId) { return smth get_SnapshotId (aSnapshotId); }
#define COM_FORWARD_ISnapshotEvent_GETTER_SnapshotId_TO_OBJ(obj) COM_FORWARD_ISnapshotEvent_GETTER_SnapshotId_TO ((obj)->)
#define COM_FORWARD_ISnapshotEvent_GETTER_SnapshotId_TO_BASE(base) COM_FORWARD_ISnapshotEvent_GETTER_SnapshotId_TO (base::)
#define COM_FORWARD_ISnapshotEvent_TO(smth) COM_FORWARD_ISnapshotEvent_GETTER_SnapshotId_TO (smth) 
#define COM_FORWARD_ISnapshotEvent_TO_OBJ(obj) COM_FORWARD_ISnapshotEvent_TO ((obj)->)
#define COM_FORWARD_ISnapshotEvent_TO_BASE(base) COM_FORWARD_ISnapshotEvent_TO (base::)
#define COM_FORWARD_ISnapshotTakenEvent_TO(smth) 
#define COM_FORWARD_ISnapshotTakenEvent_TO_OBJ(obj) COM_FORWARD_ISnapshotTakenEvent_TO ((obj)->)
#define COM_FORWARD_ISnapshotTakenEvent_TO_BASE(base) COM_FORWARD_ISnapshotTakenEvent_TO (base::)
#define COM_FORWARD_ISnapshotDeletedEvent_TO(smth) 
#define COM_FORWARD_ISnapshotDeletedEvent_TO_OBJ(obj) COM_FORWARD_ISnapshotDeletedEvent_TO ((obj)->)
#define COM_FORWARD_ISnapshotDeletedEvent_TO_BASE(base) COM_FORWARD_ISnapshotDeletedEvent_TO (base::)
#define COM_FORWARD_ISnapshotChangedEvent_TO(smth) 
#define COM_FORWARD_ISnapshotChangedEvent_TO_OBJ(obj) COM_FORWARD_ISnapshotChangedEvent_TO ((obj)->)
#define COM_FORWARD_ISnapshotChangedEvent_TO_BASE(base) COM_FORWARD_ISnapshotChangedEvent_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Visible_TO(smth) HRESULT STDMETHODCALLTYPE get_Visible (BOOL * aVisible) { return smth get_Visible (aVisible); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Visible_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Visible_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Visible_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Visible_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Alpha_TO(smth) HRESULT STDMETHODCALLTYPE get_Alpha (BOOL * aAlpha) { return smth get_Alpha (aAlpha); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Alpha_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Alpha_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Alpha_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Alpha_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Xhot_TO(smth) HRESULT STDMETHODCALLTYPE get_Xhot (ULONG * aXhot) { return smth get_Xhot (aXhot); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Xhot_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Xhot_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Xhot_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Xhot_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Yhot_TO(smth) HRESULT STDMETHODCALLTYPE get_Yhot (ULONG * aYhot) { return smth get_Yhot (aYhot); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Yhot_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Yhot_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Yhot_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Yhot_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Width_TO(smth) HRESULT STDMETHODCALLTYPE get_Width (ULONG * aWidth) { return smth get_Width (aWidth); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Width_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Width_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Width_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Width_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Height_TO(smth) HRESULT STDMETHODCALLTYPE get_Height (ULONG * aHeight) { return smth get_Height (aHeight); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Height_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Height_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Height_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Height_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Shape_TO(smth) HRESULT STDMETHODCALLTYPE get_Shape (SAFEARRAY * * aShape) { return smth get_Shape (aShape); }
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Shape_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Shape_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Shape_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Shape_TO (base::)
#define COM_FORWARD_IMousePointerShapeChangedEvent_TO(smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Visible_TO (smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Alpha_TO (smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Xhot_TO (smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Yhot_TO (smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Width_TO (smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Height_TO (smth) COM_FORWARD_IMousePointerShapeChangedEvent_GETTER_Shape_TO (smth) 
#define COM_FORWARD_IMousePointerShapeChangedEvent_TO_OBJ(obj) COM_FORWARD_IMousePointerShapeChangedEvent_TO ((obj)->)
#define COM_FORWARD_IMousePointerShapeChangedEvent_TO_BASE(base) COM_FORWARD_IMousePointerShapeChangedEvent_TO (base::)
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsAbsolute_TO(smth) HRESULT STDMETHODCALLTYPE get_SupportsAbsolute (BOOL * aSupportsAbsolute) { return smth get_SupportsAbsolute (aSupportsAbsolute); }
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsAbsolute_TO_OBJ(obj) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsAbsolute_TO ((obj)->)
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsAbsolute_TO_BASE(base) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsAbsolute_TO (base::)
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsRelative_TO(smth) HRESULT STDMETHODCALLTYPE get_SupportsRelative (BOOL * aSupportsRelative) { return smth get_SupportsRelative (aSupportsRelative); }
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsRelative_TO_OBJ(obj) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsRelative_TO ((obj)->)
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsRelative_TO_BASE(base) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsRelative_TO (base::)
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_NeedsHostCursor_TO(smth) HRESULT STDMETHODCALLTYPE get_NeedsHostCursor (BOOL * aNeedsHostCursor) { return smth get_NeedsHostCursor (aNeedsHostCursor); }
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_NeedsHostCursor_TO_OBJ(obj) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_NeedsHostCursor_TO ((obj)->)
#define COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_NeedsHostCursor_TO_BASE(base) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_NeedsHostCursor_TO (base::)
#define COM_FORWARD_IMouseCapabilityChangedEvent_TO(smth) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsAbsolute_TO (smth) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_SupportsRelative_TO (smth) COM_FORWARD_IMouseCapabilityChangedEvent_GETTER_NeedsHostCursor_TO (smth) 
#define COM_FORWARD_IMouseCapabilityChangedEvent_TO_OBJ(obj) COM_FORWARD_IMouseCapabilityChangedEvent_TO ((obj)->)
#define COM_FORWARD_IMouseCapabilityChangedEvent_TO_BASE(base) COM_FORWARD_IMouseCapabilityChangedEvent_TO (base::)
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_NumLock_TO(smth) HRESULT STDMETHODCALLTYPE get_NumLock (BOOL * aNumLock) { return smth get_NumLock (aNumLock); }
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_NumLock_TO_OBJ(obj) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_NumLock_TO ((obj)->)
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_NumLock_TO_BASE(base) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_NumLock_TO (base::)
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_CapsLock_TO(smth) HRESULT STDMETHODCALLTYPE get_CapsLock (BOOL * aCapsLock) { return smth get_CapsLock (aCapsLock); }
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_CapsLock_TO_OBJ(obj) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_CapsLock_TO ((obj)->)
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_CapsLock_TO_BASE(base) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_CapsLock_TO (base::)
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_ScrollLock_TO(smth) HRESULT STDMETHODCALLTYPE get_ScrollLock (BOOL * aScrollLock) { return smth get_ScrollLock (aScrollLock); }
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_ScrollLock_TO_OBJ(obj) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_ScrollLock_TO ((obj)->)
#define COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_ScrollLock_TO_BASE(base) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_ScrollLock_TO (base::)
#define COM_FORWARD_IKeyboardLedsChangedEvent_TO(smth) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_NumLock_TO (smth) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_CapsLock_TO (smth) COM_FORWARD_IKeyboardLedsChangedEvent_GETTER_ScrollLock_TO (smth) 
#define COM_FORWARD_IKeyboardLedsChangedEvent_TO_OBJ(obj) COM_FORWARD_IKeyboardLedsChangedEvent_TO ((obj)->)
#define COM_FORWARD_IKeyboardLedsChangedEvent_TO_BASE(base) COM_FORWARD_IKeyboardLedsChangedEvent_TO (base::)
#define COM_FORWARD_IStateChangedEvent_GETTER_State_TO(smth) HRESULT STDMETHODCALLTYPE get_State (MachineState * aState) { return smth get_State (aState); }
#define COM_FORWARD_IStateChangedEvent_GETTER_State_TO_OBJ(obj) COM_FORWARD_IStateChangedEvent_GETTER_State_TO ((obj)->)
#define COM_FORWARD_IStateChangedEvent_GETTER_State_TO_BASE(base) COM_FORWARD_IStateChangedEvent_GETTER_State_TO (base::)
#define COM_FORWARD_IStateChangedEvent_TO(smth) COM_FORWARD_IStateChangedEvent_GETTER_State_TO (smth) 
#define COM_FORWARD_IStateChangedEvent_TO_OBJ(obj) COM_FORWARD_IStateChangedEvent_TO ((obj)->)
#define COM_FORWARD_IStateChangedEvent_TO_BASE(base) COM_FORWARD_IStateChangedEvent_TO (base::)
#define COM_FORWARD_IAdditionsStateChangedEvent_TO(smth) 
#define COM_FORWARD_IAdditionsStateChangedEvent_TO_OBJ(obj) COM_FORWARD_IAdditionsStateChangedEvent_TO ((obj)->)
#define COM_FORWARD_IAdditionsStateChangedEvent_TO_BASE(base) COM_FORWARD_IAdditionsStateChangedEvent_TO (base::)
#define COM_FORWARD_INetworkAdapterChangedEvent_GETTER_NetworkAdapter_TO(smth) HRESULT STDMETHODCALLTYPE get_NetworkAdapter (INetworkAdapter * * aNetworkAdapter) { return smth get_NetworkAdapter (aNetworkAdapter); }
#define COM_FORWARD_INetworkAdapterChangedEvent_GETTER_NetworkAdapter_TO_OBJ(obj) COM_FORWARD_INetworkAdapterChangedEvent_GETTER_NetworkAdapter_TO ((obj)->)
#define COM_FORWARD_INetworkAdapterChangedEvent_GETTER_NetworkAdapter_TO_BASE(base) COM_FORWARD_INetworkAdapterChangedEvent_GETTER_NetworkAdapter_TO (base::)
#define COM_FORWARD_INetworkAdapterChangedEvent_TO(smth) COM_FORWARD_INetworkAdapterChangedEvent_GETTER_NetworkAdapter_TO (smth) 
#define COM_FORWARD_INetworkAdapterChangedEvent_TO_OBJ(obj) COM_FORWARD_INetworkAdapterChangedEvent_TO ((obj)->)
#define COM_FORWARD_INetworkAdapterChangedEvent_TO_BASE(base) COM_FORWARD_INetworkAdapterChangedEvent_TO (base::)
#define COM_FORWARD_ISerialPortChangedEvent_GETTER_SerialPort_TO(smth) HRESULT STDMETHODCALLTYPE get_SerialPort (ISerialPort * * aSerialPort) { return smth get_SerialPort (aSerialPort); }
#define COM_FORWARD_ISerialPortChangedEvent_GETTER_SerialPort_TO_OBJ(obj) COM_FORWARD_ISerialPortChangedEvent_GETTER_SerialPort_TO ((obj)->)
#define COM_FORWARD_ISerialPortChangedEvent_GETTER_SerialPort_TO_BASE(base) COM_FORWARD_ISerialPortChangedEvent_GETTER_SerialPort_TO (base::)
#define COM_FORWARD_ISerialPortChangedEvent_TO(smth) COM_FORWARD_ISerialPortChangedEvent_GETTER_SerialPort_TO (smth) 
#define COM_FORWARD_ISerialPortChangedEvent_TO_OBJ(obj) COM_FORWARD_ISerialPortChangedEvent_TO ((obj)->)
#define COM_FORWARD_ISerialPortChangedEvent_TO_BASE(base) COM_FORWARD_ISerialPortChangedEvent_TO (base::)
#define COM_FORWARD_IParallelPortChangedEvent_GETTER_ParallelPort_TO(smth) HRESULT STDMETHODCALLTYPE get_ParallelPort (IParallelPort * * aParallelPort) { return smth get_ParallelPort (aParallelPort); }
#define COM_FORWARD_IParallelPortChangedEvent_GETTER_ParallelPort_TO_OBJ(obj) COM_FORWARD_IParallelPortChangedEvent_GETTER_ParallelPort_TO ((obj)->)
#define COM_FORWARD_IParallelPortChangedEvent_GETTER_ParallelPort_TO_BASE(base) COM_FORWARD_IParallelPortChangedEvent_GETTER_ParallelPort_TO (base::)
#define COM_FORWARD_IParallelPortChangedEvent_TO(smth) COM_FORWARD_IParallelPortChangedEvent_GETTER_ParallelPort_TO (smth) 
#define COM_FORWARD_IParallelPortChangedEvent_TO_OBJ(obj) COM_FORWARD_IParallelPortChangedEvent_TO ((obj)->)
#define COM_FORWARD_IParallelPortChangedEvent_TO_BASE(base) COM_FORWARD_IParallelPortChangedEvent_TO (base::)
#define COM_FORWARD_IStorageControllerChangedEvent_TO(smth) 
#define COM_FORWARD_IStorageControllerChangedEvent_TO_OBJ(obj) COM_FORWARD_IStorageControllerChangedEvent_TO ((obj)->)
#define COM_FORWARD_IStorageControllerChangedEvent_TO_BASE(base) COM_FORWARD_IStorageControllerChangedEvent_TO (base::)
#define COM_FORWARD_IMediumChangedEvent_GETTER_MediumAttachment_TO(smth) HRESULT STDMETHODCALLTYPE get_MediumAttachment (IMediumAttachment * * aMediumAttachment) { return smth get_MediumAttachment (aMediumAttachment); }
#define COM_FORWARD_IMediumChangedEvent_GETTER_MediumAttachment_TO_OBJ(obj) COM_FORWARD_IMediumChangedEvent_GETTER_MediumAttachment_TO ((obj)->)
#define COM_FORWARD_IMediumChangedEvent_GETTER_MediumAttachment_TO_BASE(base) COM_FORWARD_IMediumChangedEvent_GETTER_MediumAttachment_TO (base::)
#define COM_FORWARD_IMediumChangedEvent_TO(smth) COM_FORWARD_IMediumChangedEvent_GETTER_MediumAttachment_TO (smth) 
#define COM_FORWARD_IMediumChangedEvent_TO_OBJ(obj) COM_FORWARD_IMediumChangedEvent_TO ((obj)->)
#define COM_FORWARD_IMediumChangedEvent_TO_BASE(base) COM_FORWARD_IMediumChangedEvent_TO (base::)
#define COM_FORWARD_ICPUChangedEvent_GETTER_Cpu_TO(smth) HRESULT STDMETHODCALLTYPE get_Cpu (ULONG * aCpu) { return smth get_Cpu (aCpu); }
#define COM_FORWARD_ICPUChangedEvent_GETTER_Cpu_TO_OBJ(obj) COM_FORWARD_ICPUChangedEvent_GETTER_Cpu_TO ((obj)->)
#define COM_FORWARD_ICPUChangedEvent_GETTER_Cpu_TO_BASE(base) COM_FORWARD_ICPUChangedEvent_GETTER_Cpu_TO (base::)
#define COM_FORWARD_ICPUChangedEvent_GETTER_Add_TO(smth) HRESULT STDMETHODCALLTYPE get_Add (BOOL * aAdd) { return smth get_Add (aAdd); }
#define COM_FORWARD_ICPUChangedEvent_GETTER_Add_TO_OBJ(obj) COM_FORWARD_ICPUChangedEvent_GETTER_Add_TO ((obj)->)
#define COM_FORWARD_ICPUChangedEvent_GETTER_Add_TO_BASE(base) COM_FORWARD_ICPUChangedEvent_GETTER_Add_TO (base::)
#define COM_FORWARD_ICPUChangedEvent_TO(smth) COM_FORWARD_ICPUChangedEvent_GETTER_Cpu_TO (smth) COM_FORWARD_ICPUChangedEvent_GETTER_Add_TO (smth) 
#define COM_FORWARD_ICPUChangedEvent_TO_OBJ(obj) COM_FORWARD_ICPUChangedEvent_TO ((obj)->)
#define COM_FORWARD_ICPUChangedEvent_TO_BASE(base) COM_FORWARD_ICPUChangedEvent_TO (base::)
#define COM_FORWARD_ICPUExecutionCapChangedEvent_GETTER_ExecutionCap_TO(smth) HRESULT STDMETHODCALLTYPE get_ExecutionCap (ULONG * aExecutionCap) { return smth get_ExecutionCap (aExecutionCap); }
#define COM_FORWARD_ICPUExecutionCapChangedEvent_GETTER_ExecutionCap_TO_OBJ(obj) COM_FORWARD_ICPUExecutionCapChangedEvent_GETTER_ExecutionCap_TO ((obj)->)
#define COM_FORWARD_ICPUExecutionCapChangedEvent_GETTER_ExecutionCap_TO_BASE(base) COM_FORWARD_ICPUExecutionCapChangedEvent_GETTER_ExecutionCap_TO (base::)
#define COM_FORWARD_ICPUExecutionCapChangedEvent_TO(smth) COM_FORWARD_ICPUExecutionCapChangedEvent_GETTER_ExecutionCap_TO (smth) 
#define COM_FORWARD_ICPUExecutionCapChangedEvent_TO_OBJ(obj) COM_FORWARD_ICPUExecutionCapChangedEvent_TO ((obj)->)
#define COM_FORWARD_ICPUExecutionCapChangedEvent_TO_BASE(base) COM_FORWARD_ICPUExecutionCapChangedEvent_TO (base::)
#define COM_FORWARD_IGuestKeyboardEvent_GETTER_Scancodes_TO(smth) HRESULT STDMETHODCALLTYPE get_Scancodes (SAFEARRAY * * aScancodes) { return smth get_Scancodes (aScancodes); }
#define COM_FORWARD_IGuestKeyboardEvent_GETTER_Scancodes_TO_OBJ(obj) COM_FORWARD_IGuestKeyboardEvent_GETTER_Scancodes_TO ((obj)->)
#define COM_FORWARD_IGuestKeyboardEvent_GETTER_Scancodes_TO_BASE(base) COM_FORWARD_IGuestKeyboardEvent_GETTER_Scancodes_TO (base::)
#define COM_FORWARD_IGuestKeyboardEvent_TO(smth) COM_FORWARD_IGuestKeyboardEvent_GETTER_Scancodes_TO (smth) 
#define COM_FORWARD_IGuestKeyboardEvent_TO_OBJ(obj) COM_FORWARD_IGuestKeyboardEvent_TO ((obj)->)
#define COM_FORWARD_IGuestKeyboardEvent_TO_BASE(base) COM_FORWARD_IGuestKeyboardEvent_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Absolute_TO(smth) HRESULT STDMETHODCALLTYPE get_Absolute (BOOL * aAbsolute) { return smth get_Absolute (aAbsolute); }
#define COM_FORWARD_IGuestMouseEvent_GETTER_Absolute_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_GETTER_Absolute_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Absolute_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_GETTER_Absolute_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_GETTER_X_TO(smth) HRESULT STDMETHODCALLTYPE get_X (LONG * aX) { return smth get_X (aX); }
#define COM_FORWARD_IGuestMouseEvent_GETTER_X_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_GETTER_X_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_GETTER_X_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_GETTER_X_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Y_TO(smth) HRESULT STDMETHODCALLTYPE get_Y (LONG * aY) { return smth get_Y (aY); }
#define COM_FORWARD_IGuestMouseEvent_GETTER_Y_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_GETTER_Y_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Y_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_GETTER_Y_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Z_TO(smth) HRESULT STDMETHODCALLTYPE get_Z (LONG * aZ) { return smth get_Z (aZ); }
#define COM_FORWARD_IGuestMouseEvent_GETTER_Z_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_GETTER_Z_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Z_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_GETTER_Z_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_GETTER_W_TO(smth) HRESULT STDMETHODCALLTYPE get_W (LONG * aW) { return smth get_W (aW); }
#define COM_FORWARD_IGuestMouseEvent_GETTER_W_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_GETTER_W_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_GETTER_W_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_GETTER_W_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Buttons_TO(smth) HRESULT STDMETHODCALLTYPE get_Buttons (LONG * aButtons) { return smth get_Buttons (aButtons); }
#define COM_FORWARD_IGuestMouseEvent_GETTER_Buttons_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_GETTER_Buttons_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_GETTER_Buttons_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_GETTER_Buttons_TO (base::)
#define COM_FORWARD_IGuestMouseEvent_TO(smth) COM_FORWARD_IGuestMouseEvent_GETTER_Absolute_TO (smth) COM_FORWARD_IGuestMouseEvent_GETTER_X_TO (smth) COM_FORWARD_IGuestMouseEvent_GETTER_Y_TO (smth) COM_FORWARD_IGuestMouseEvent_GETTER_Z_TO (smth) COM_FORWARD_IGuestMouseEvent_GETTER_W_TO (smth) COM_FORWARD_IGuestMouseEvent_GETTER_Buttons_TO (smth) 
#define COM_FORWARD_IGuestMouseEvent_TO_OBJ(obj) COM_FORWARD_IGuestMouseEvent_TO ((obj)->)
#define COM_FORWARD_IGuestMouseEvent_TO_BASE(base) COM_FORWARD_IGuestMouseEvent_TO (base::)
#define COM_FORWARD_IVRDEServerChangedEvent_TO(smth) 
#define COM_FORWARD_IVRDEServerChangedEvent_TO_OBJ(obj) COM_FORWARD_IVRDEServerChangedEvent_TO ((obj)->)
#define COM_FORWARD_IVRDEServerChangedEvent_TO_BASE(base) COM_FORWARD_IVRDEServerChangedEvent_TO (base::)
#define COM_FORWARD_IVRDEServerInfoChangedEvent_TO(smth) 
#define COM_FORWARD_IVRDEServerInfoChangedEvent_TO_OBJ(obj) COM_FORWARD_IVRDEServerInfoChangedEvent_TO ((obj)->)
#define COM_FORWARD_IVRDEServerInfoChangedEvent_TO_BASE(base) COM_FORWARD_IVRDEServerInfoChangedEvent_TO (base::)
#define COM_FORWARD_IUSBControllerChangedEvent_TO(smth) 
#define COM_FORWARD_IUSBControllerChangedEvent_TO_OBJ(obj) COM_FORWARD_IUSBControllerChangedEvent_TO ((obj)->)
#define COM_FORWARD_IUSBControllerChangedEvent_TO_BASE(base) COM_FORWARD_IUSBControllerChangedEvent_TO (base::)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Device_TO(smth) HRESULT STDMETHODCALLTYPE get_Device (IUSBDevice * * aDevice) { return smth get_Device (aDevice); }
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Device_TO_OBJ(obj) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Device_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Device_TO_BASE(base) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Device_TO (base::)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Attached_TO(smth) HRESULT STDMETHODCALLTYPE get_Attached (BOOL * aAttached) { return smth get_Attached (aAttached); }
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Attached_TO_OBJ(obj) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Attached_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Attached_TO_BASE(base) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Attached_TO (base::)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Error_TO(smth) HRESULT STDMETHODCALLTYPE get_Error (IVirtualBoxErrorInfo * * aError) { return smth get_Error (aError); }
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Error_TO_OBJ(obj) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Error_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Error_TO_BASE(base) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Error_TO (base::)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_TO(smth) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Device_TO (smth) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Attached_TO (smth) COM_FORWARD_IUSBDeviceStateChangedEvent_GETTER_Error_TO (smth) 
#define COM_FORWARD_IUSBDeviceStateChangedEvent_TO_OBJ(obj) COM_FORWARD_IUSBDeviceStateChangedEvent_TO ((obj)->)
#define COM_FORWARD_IUSBDeviceStateChangedEvent_TO_BASE(base) COM_FORWARD_IUSBDeviceStateChangedEvent_TO (base::)
#define COM_FORWARD_ISharedFolderChangedEvent_GETTER_Scope_TO(smth) HRESULT STDMETHODCALLTYPE get_Scope (Scope * aScope) { return smth get_Scope (aScope); }
#define COM_FORWARD_ISharedFolderChangedEvent_GETTER_Scope_TO_OBJ(obj) COM_FORWARD_ISharedFolderChangedEvent_GETTER_Scope_TO ((obj)->)
#define COM_FORWARD_ISharedFolderChangedEvent_GETTER_Scope_TO_BASE(base) COM_FORWARD_ISharedFolderChangedEvent_GETTER_Scope_TO (base::)
#define COM_FORWARD_ISharedFolderChangedEvent_TO(smth) COM_FORWARD_ISharedFolderChangedEvent_GETTER_Scope_TO (smth) 
#define COM_FORWARD_ISharedFolderChangedEvent_TO_OBJ(obj) COM_FORWARD_ISharedFolderChangedEvent_TO ((obj)->)
#define COM_FORWARD_ISharedFolderChangedEvent_TO_BASE(base) COM_FORWARD_ISharedFolderChangedEvent_TO (base::)
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Fatal_TO(smth) HRESULT STDMETHODCALLTYPE get_Fatal (BOOL * aFatal) { return smth get_Fatal (aFatal); }
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Fatal_TO_OBJ(obj) COM_FORWARD_IRuntimeErrorEvent_GETTER_Fatal_TO ((obj)->)
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Fatal_TO_BASE(base) COM_FORWARD_IRuntimeErrorEvent_GETTER_Fatal_TO (base::)
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Id_TO(smth) HRESULT STDMETHODCALLTYPE get_Id (BSTR * aId) { return smth get_Id (aId); }
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Id_TO_OBJ(obj) COM_FORWARD_IRuntimeErrorEvent_GETTER_Id_TO ((obj)->)
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Id_TO_BASE(base) COM_FORWARD_IRuntimeErrorEvent_GETTER_Id_TO (base::)
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Message_TO(smth) HRESULT STDMETHODCALLTYPE get_Message (BSTR * aMessage) { return smth get_Message (aMessage); }
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Message_TO_OBJ(obj) COM_FORWARD_IRuntimeErrorEvent_GETTER_Message_TO ((obj)->)
#define COM_FORWARD_IRuntimeErrorEvent_GETTER_Message_TO_BASE(base) COM_FORWARD_IRuntimeErrorEvent_GETTER_Message_TO (base::)
#define COM_FORWARD_IRuntimeErrorEvent_TO(smth) COM_FORWARD_IRuntimeErrorEvent_GETTER_Fatal_TO (smth) COM_FORWARD_IRuntimeErrorEvent_GETTER_Id_TO (smth) COM_FORWARD_IRuntimeErrorEvent_GETTER_Message_TO (smth) 
#define COM_FORWARD_IRuntimeErrorEvent_TO_OBJ(obj) COM_FORWARD_IRuntimeErrorEvent_TO ((obj)->)
#define COM_FORWARD_IRuntimeErrorEvent_TO_BASE(base) COM_FORWARD_IRuntimeErrorEvent_TO (base::)
#define COM_FORWARD_IEventSourceChangedEvent_GETTER_Listener_TO(smth) HRESULT STDMETHODCALLTYPE get_Listener (IEventListener * * aListener) { return smth get_Listener (aListener); }
#define COM_FORWARD_IEventSourceChangedEvent_GETTER_Listener_TO_OBJ(obj) COM_FORWARD_IEventSourceChangedEvent_GETTER_Listener_TO ((obj)->)
#define COM_FORWARD_IEventSourceChangedEvent_GETTER_Listener_TO_BASE(base) COM_FORWARD_IEventSourceChangedEvent_GETTER_Listener_TO (base::)
#define COM_FORWARD_IEventSourceChangedEvent_GETTER_Add_TO(smth) HRESULT STDMETHODCALLTYPE get_Add (BOOL * aAdd) { return smth get_Add (aAdd); }
#define COM_FORWARD_IEventSourceChangedEvent_GETTER_Add_TO_OBJ(obj) COM_FORWARD_IEventSourceChangedEvent_GETTER_Add_TO ((obj)->)
#define COM_FORWARD_IEventSourceChangedEvent_GETTER_Add_TO_BASE(base) COM_FORWARD_IEventSourceChangedEvent_GETTER_Add_TO (base::)
#define COM_FORWARD_IEventSourceChangedEvent_TO(smth) COM_FORWARD_IEventSourceChangedEvent_GETTER_Listener_TO (smth) COM_FORWARD_IEventSourceChangedEvent_GETTER_Add_TO (smth) 
#define COM_FORWARD_IEventSourceChangedEvent_TO_OBJ(obj) COM_FORWARD_IEventSourceChangedEvent_TO ((obj)->)
#define COM_FORWARD_IEventSourceChangedEvent_TO_BASE(base) COM_FORWARD_IEventSourceChangedEvent_TO (base::)
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_MachineId_TO(smth) HRESULT STDMETHODCALLTYPE get_MachineId (BSTR * aMachineId) { return smth get_MachineId (aMachineId); }
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_MachineId_TO_OBJ(obj) COM_FORWARD_IExtraDataChangedEvent_GETTER_MachineId_TO ((obj)->)
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_MachineId_TO_BASE(base) COM_FORWARD_IExtraDataChangedEvent_GETTER_MachineId_TO (base::)
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_Key_TO(smth) HRESULT STDMETHODCALLTYPE get_Key (BSTR * aKey) { return smth get_Key (aKey); }
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_Key_TO_OBJ(obj) COM_FORWARD_IExtraDataChangedEvent_GETTER_Key_TO ((obj)->)
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_Key_TO_BASE(base) COM_FORWARD_IExtraDataChangedEvent_GETTER_Key_TO (base::)
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_Value_TO(smth) HRESULT STDMETHODCALLTYPE get_Value (BSTR * aValue) { return smth get_Value (aValue); }
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_Value_TO_OBJ(obj) COM_FORWARD_IExtraDataChangedEvent_GETTER_Value_TO ((obj)->)
#define COM_FORWARD_IExtraDataChangedEvent_GETTER_Value_TO_BASE(base) COM_FORWARD_IExtraDataChangedEvent_GETTER_Value_TO (base::)
#define COM_FORWARD_IExtraDataChangedEvent_TO(smth) COM_FORWARD_IExtraDataChangedEvent_GETTER_MachineId_TO (smth) COM_FORWARD_IExtraDataChangedEvent_GETTER_Key_TO (smth) COM_FORWARD_IExtraDataChangedEvent_GETTER_Value_TO (smth) 
#define COM_FORWARD_IExtraDataChangedEvent_TO_OBJ(obj) COM_FORWARD_IExtraDataChangedEvent_TO ((obj)->)
#define COM_FORWARD_IExtraDataChangedEvent_TO_BASE(base) COM_FORWARD_IExtraDataChangedEvent_TO (base::)
#define COM_FORWARD_IVetoEvent_AddVeto_TO(smth) HRESULT STDMETHODCALLTYPE AddVeto (BSTR aReason) { return smth AddVeto (aReason); }
#define COM_FORWARD_IVetoEvent_AddVeto_TO_OBJ(obj) COM_FORWARD_IVetoEvent_AddVeto_TO ((obj)->)
#define COM_FORWARD_IVetoEvent_AddVeto_TO_BASE(base) COM_FORWARD_IVetoEvent_AddVeto_TO (base::)
#define COM_FORWARD_IVetoEvent_IsVetoed_TO(smth) HRESULT STDMETHODCALLTYPE IsVetoed (BOOL * aResult) { return smth IsVetoed (aResult); }
#define COM_FORWARD_IVetoEvent_IsVetoed_TO_OBJ(obj) COM_FORWARD_IVetoEvent_IsVetoed_TO ((obj)->)
#define COM_FORWARD_IVetoEvent_IsVetoed_TO_BASE(base) COM_FORWARD_IVetoEvent_IsVetoed_TO (base::)
#define COM_FORWARD_IVetoEvent_GetVetos_TO(smth) HRESULT STDMETHODCALLTYPE GetVetos (SAFEARRAY * * aResult) { return smth GetVetos (aResult); }
#define COM_FORWARD_IVetoEvent_GetVetos_TO_OBJ(obj) COM_FORWARD_IVetoEvent_GetVetos_TO ((obj)->)
#define COM_FORWARD_IVetoEvent_GetVetos_TO_BASE(base) COM_FORWARD_IVetoEvent_GetVetos_TO (base::)
#define COM_FORWARD_IVetoEvent_TO(smth) COM_FORWARD_IVetoEvent_AddVeto_TO (smth) COM_FORWARD_IVetoEvent_IsVetoed_TO (smth) COM_FORWARD_IVetoEvent_GetVetos_TO (smth) 
#define COM_FORWARD_IVetoEvent_TO_OBJ(obj) COM_FORWARD_IVetoEvent_TO ((obj)->)
#define COM_FORWARD_IVetoEvent_TO_BASE(base) COM_FORWARD_IVetoEvent_TO (base::)
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_MachineId_TO(smth) HRESULT STDMETHODCALLTYPE get_MachineId (BSTR * aMachineId) { return smth get_MachineId (aMachineId); }
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_MachineId_TO_OBJ(obj) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_MachineId_TO ((obj)->)
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_MachineId_TO_BASE(base) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_MachineId_TO (base::)
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Key_TO(smth) HRESULT STDMETHODCALLTYPE get_Key (BSTR * aKey) { return smth get_Key (aKey); }
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Key_TO_OBJ(obj) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Key_TO ((obj)->)
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Key_TO_BASE(base) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Key_TO (base::)
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Value_TO(smth) HRESULT STDMETHODCALLTYPE get_Value (BSTR * aValue) { return smth get_Value (aValue); }
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Value_TO_OBJ(obj) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Value_TO ((obj)->)
#define COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Value_TO_BASE(base) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Value_TO (base::)
#define COM_FORWARD_IExtraDataCanChangeEvent_TO(smth) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_MachineId_TO (smth) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Key_TO (smth) COM_FORWARD_IExtraDataCanChangeEvent_GETTER_Value_TO (smth) 
#define COM_FORWARD_IExtraDataCanChangeEvent_TO_OBJ(obj) COM_FORWARD_IExtraDataCanChangeEvent_TO ((obj)->)
#define COM_FORWARD_IExtraDataCanChangeEvent_TO_BASE(base) COM_FORWARD_IExtraDataCanChangeEvent_TO (base::)
#define COM_FORWARD_ICanShowWindowEvent_TO(smth) 
#define COM_FORWARD_ICanShowWindowEvent_TO_OBJ(obj) COM_FORWARD_ICanShowWindowEvent_TO ((obj)->)
#define COM_FORWARD_ICanShowWindowEvent_TO_BASE(base) COM_FORWARD_ICanShowWindowEvent_TO (base::)
#define COM_FORWARD_IShowWindowEvent_GETTER_WinId_TO(smth) HRESULT STDMETHODCALLTYPE get_WinId (LONG64 * aWinId) { return smth get_WinId (aWinId); }
#define COM_FORWARD_IShowWindowEvent_GETTER_WinId_TO_OBJ(obj) COM_FORWARD_IShowWindowEvent_GETTER_WinId_TO ((obj)->)
#define COM_FORWARD_IShowWindowEvent_GETTER_WinId_TO_BASE(base) COM_FORWARD_IShowWindowEvent_GETTER_WinId_TO (base::)
#define COM_FORWARD_IShowWindowEvent_SETTER_WinId_TO(smth) HRESULT STDMETHODCALLTYPE put_WinId (LONG64 aWinId) { return smth put_WinId (aWinId); }
#define COM_FORWARD_IShowWindowEvent_SETTER_WinId_TO_OBJ(obj) COM_FORWARD_IShowWindowEvent_SETTER_WinId_TO ((obj)->)
#define COM_FORWARD_IShowWindowEvent_SETTER_WinId_TO_BASE(base) COM_FORWARD_IShowWindowEvent_SETTER_WinId_TO (base::)
#define COM_FORWARD_IShowWindowEvent_TO(smth) COM_FORWARD_IShowWindowEvent_GETTER_WinId_TO (smth) COM_FORWARD_IShowWindowEvent_SETTER_WinId_TO (smth) 
#define COM_FORWARD_IShowWindowEvent_TO_OBJ(obj) COM_FORWARD_IShowWindowEvent_TO ((obj)->)
#define COM_FORWARD_IShowWindowEvent_TO_BASE(base) COM_FORWARD_IShowWindowEvent_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_Slot_TO(smth) HRESULT STDMETHODCALLTYPE get_Slot (ULONG * aSlot) { return smth get_Slot (aSlot); }
#define COM_FORWARD_INATRedirectEvent_GETTER_Slot_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_Slot_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_Slot_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_Slot_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_Remove_TO(smth) HRESULT STDMETHODCALLTYPE get_Remove (BOOL * aRemove) { return smth get_Remove (aRemove); }
#define COM_FORWARD_INATRedirectEvent_GETTER_Remove_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_Remove_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_Remove_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_Remove_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_Name_TO(smth) HRESULT STDMETHODCALLTYPE get_Name (BSTR * aName) { return smth get_Name (aName); }
#define COM_FORWARD_INATRedirectEvent_GETTER_Name_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_Name_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_Name_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_Name_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_Proto_TO(smth) HRESULT STDMETHODCALLTYPE get_Proto (NATProtocol * aProto) { return smth get_Proto (aProto); }
#define COM_FORWARD_INATRedirectEvent_GETTER_Proto_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_Proto_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_Proto_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_Proto_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_HostIp_TO(smth) HRESULT STDMETHODCALLTYPE get_HostIp (BSTR * aHostIp) { return smth get_HostIp (aHostIp); }
#define COM_FORWARD_INATRedirectEvent_GETTER_HostIp_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_HostIp_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_HostIp_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_HostIp_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_HostPort_TO(smth) HRESULT STDMETHODCALLTYPE get_HostPort (LONG * aHostPort) { return smth get_HostPort (aHostPort); }
#define COM_FORWARD_INATRedirectEvent_GETTER_HostPort_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_HostPort_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_HostPort_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_HostPort_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_GuestIp_TO(smth) HRESULT STDMETHODCALLTYPE get_GuestIp (BSTR * aGuestIp) { return smth get_GuestIp (aGuestIp); }
#define COM_FORWARD_INATRedirectEvent_GETTER_GuestIp_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_GuestIp_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_GuestIp_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_GuestIp_TO (base::)
#define COM_FORWARD_INATRedirectEvent_GETTER_GuestPort_TO(smth) HRESULT STDMETHODCALLTYPE get_GuestPort (LONG * aGuestPort) { return smth get_GuestPort (aGuestPort); }
#define COM_FORWARD_INATRedirectEvent_GETTER_GuestPort_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_GETTER_GuestPort_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_GETTER_GuestPort_TO_BASE(base) COM_FORWARD_INATRedirectEvent_GETTER_GuestPort_TO (base::)
#define COM_FORWARD_INATRedirectEvent_TO(smth) COM_FORWARD_INATRedirectEvent_GETTER_Slot_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_Remove_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_Name_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_Proto_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_HostIp_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_HostPort_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_GuestIp_TO (smth) COM_FORWARD_INATRedirectEvent_GETTER_GuestPort_TO (smth) 
#define COM_FORWARD_INATRedirectEvent_TO_OBJ(obj) COM_FORWARD_INATRedirectEvent_TO ((obj)->)
#define COM_FORWARD_INATRedirectEvent_TO_BASE(base) COM_FORWARD_INATRedirectEvent_TO (base::)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Plugged_TO(smth) HRESULT STDMETHODCALLTYPE get_Plugged (BOOL * aPlugged) { return smth get_Plugged (aPlugged); }
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Plugged_TO_OBJ(obj) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Plugged_TO ((obj)->)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Plugged_TO_BASE(base) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Plugged_TO (base::)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Success_TO(smth) HRESULT STDMETHODCALLTYPE get_Success (BOOL * aSuccess) { return smth get_Success (aSuccess); }
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Success_TO_OBJ(obj) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Success_TO ((obj)->)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Success_TO_BASE(base) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Success_TO (base::)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Attachment_TO(smth) HRESULT STDMETHODCALLTYPE get_Attachment (IPciDeviceAttachment * * aAttachment) { return smth get_Attachment (aAttachment); }
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Attachment_TO_OBJ(obj) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Attachment_TO ((obj)->)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Attachment_TO_BASE(base) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Attachment_TO (base::)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Message_TO(smth) HRESULT STDMETHODCALLTYPE get_Message (BSTR * aMessage) { return smth get_Message (aMessage); }
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Message_TO_OBJ(obj) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Message_TO ((obj)->)
#define COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Message_TO_BASE(base) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Message_TO (base::)
#define COM_FORWARD_IHostPciDevicePlugEvent_TO(smth) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Plugged_TO (smth) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Success_TO (smth) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Attachment_TO (smth) COM_FORWARD_IHostPciDevicePlugEvent_GETTER_Message_TO (smth) 
#define COM_FORWARD_IHostPciDevicePlugEvent_TO_OBJ(obj) COM_FORWARD_IHostPciDevicePlugEvent_TO ((obj)->)
#define COM_FORWARD_IHostPciDevicePlugEvent_TO_BASE(base) COM_FORWARD_IHostPciDevicePlugEvent_TO (base::)
#define COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_GETTER_Available_TO(smth) HRESULT STDMETHODCALLTYPE get_Available (BOOL * aAvailable) { return smth get_Available (aAvailable); }
#define COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_GETTER_Available_TO_OBJ(obj) COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_GETTER_Available_TO ((obj)->)
#define COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_GETTER_Available_TO_BASE(base) COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_GETTER_Available_TO (base::)
#define COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_TO(smth) COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_GETTER_Available_TO (smth) 
#define COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_TO_OBJ(obj) COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_TO ((obj)->)
#define COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_TO_BASE(base) COM_FORWARD_IVBoxSVCAvailabilityChangedEvent_TO (base::)
#define COM_FORWARD_IBandwidthGroupChangedEvent_GETTER_BandwidthGroup_TO(smth) HRESULT STDMETHODCALLTYPE get_BandwidthGroup (IBandwidthGroup * * aBandwidthGroup) { return smth get_BandwidthGroup (aBandwidthGroup); }
#define COM_FORWARD_IBandwidthGroupChangedEvent_GETTER_BandwidthGroup_TO_OBJ(obj) COM_FORWARD_IBandwidthGroupChangedEvent_GETTER_BandwidthGroup_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroupChangedEvent_GETTER_BandwidthGroup_TO_BASE(base) COM_FORWARD_IBandwidthGroupChangedEvent_GETTER_BandwidthGroup_TO (base::)
#define COM_FORWARD_IBandwidthGroupChangedEvent_TO(smth) COM_FORWARD_IBandwidthGroupChangedEvent_GETTER_BandwidthGroup_TO (smth) 
#define COM_FORWARD_IBandwidthGroupChangedEvent_TO_OBJ(obj) COM_FORWARD_IBandwidthGroupChangedEvent_TO ((obj)->)
#define COM_FORWARD_IBandwidthGroupChangedEvent_TO_BASE(base) COM_FORWARD_IBandwidthGroupChangedEvent_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ChangeType_TO(smth) HRESULT STDMETHODCALLTYPE get_ChangeType (GuestMonitorChangedEventType * aChangeType) { return smth get_ChangeType (aChangeType); }
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ChangeType_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ChangeType_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ChangeType_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ChangeType_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ScreenId_TO(smth) HRESULT STDMETHODCALLTYPE get_ScreenId (ULONG * aScreenId) { return smth get_ScreenId (aScreenId); }
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ScreenId_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ScreenId_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ScreenId_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ScreenId_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginX_TO(smth) HRESULT STDMETHODCALLTYPE get_OriginX (ULONG * aOriginX) { return smth get_OriginX (aOriginX); }
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginX_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginX_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginX_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginX_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginY_TO(smth) HRESULT STDMETHODCALLTYPE get_OriginY (ULONG * aOriginY) { return smth get_OriginY (aOriginY); }
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginY_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginY_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginY_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginY_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Width_TO(smth) HRESULT STDMETHODCALLTYPE get_Width (ULONG * aWidth) { return smth get_Width (aWidth); }
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Width_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Width_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Width_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Width_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Height_TO(smth) HRESULT STDMETHODCALLTYPE get_Height (ULONG * aHeight) { return smth get_Height (aHeight); }
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Height_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Height_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Height_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Height_TO (base::)
#define COM_FORWARD_IGuestMonitorChangedEvent_TO(smth) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ChangeType_TO (smth) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_ScreenId_TO (smth) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginX_TO (smth) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_OriginY_TO (smth) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Width_TO (smth) COM_FORWARD_IGuestMonitorChangedEvent_GETTER_Height_TO (smth) 
#define COM_FORWARD_IGuestMonitorChangedEvent_TO_OBJ(obj) COM_FORWARD_IGuestMonitorChangedEvent_TO ((obj)->)
#define COM_FORWARD_IGuestMonitorChangedEvent_TO_BASE(base) COM_FORWARD_IGuestMonitorChangedEvent_TO (base::)
#define COM_FORWARD_IStorageDeviceChangedEvent_GETTER_StorageDevice_TO(smth) HRESULT STDMETHODCALLTYPE get_StorageDevice (IMediumAttachment * * aStorageDevice) { return smth get_StorageDevice (aStorageDevice); }
#define COM_FORWARD_IStorageDeviceChangedEvent_GETTER_StorageDevice_TO_OBJ(obj) COM_FORWARD_IStorageDeviceChangedEvent_GETTER_StorageDevice_TO ((obj)->)
#define COM_FORWARD_IStorageDeviceChangedEvent_GETTER_StorageDevice_TO_BASE(base) COM_FORWARD_IStorageDeviceChangedEvent_GETTER_StorageDevice_TO (base::)
#define COM_FORWARD_IStorageDeviceChangedEvent_GETTER_Removed_TO(smth) HRESULT STDMETHODCALLTYPE get_Removed (BOOL * aRemoved) { return smth get_Removed (aRemoved); }
#define COM_FORWARD_IStorageDeviceChangedEvent_GETTER_Removed_TO_OBJ(obj) COM_FORWARD_IStorageDeviceChangedEvent_GETTER_Removed_TO ((obj)->)
#define COM_FORWARD_IStorageDeviceChangedEvent_GETTER_Removed_TO_BASE(base) COM_FORWARD_IStorageDeviceChangedEvent_GETTER_Removed_TO (base::)
#define COM_FORWARD_IStorageDeviceChangedEvent_TO(smth) COM_FORWARD_IStorageDeviceChangedEvent_GETTER_StorageDevice_TO (smth) COM_FORWARD_IStorageDeviceChangedEvent_GETTER_Removed_TO (smth) 
#define COM_FORWARD_IStorageDeviceChangedEvent_TO_OBJ(obj) COM_FORWARD_IStorageDeviceChangedEvent_TO ((obj)->)
#define COM_FORWARD_IStorageDeviceChangedEvent_TO_BASE(base) COM_FORWARD_IStorageDeviceChangedEvent_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("e053d3c0-f493-491b-a735-3a9f0b1feed4")
    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 __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("c28be65f-1a8f-43b4-81f1-eb60cb516e66")
    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_APIVersion( 
            /* [retval][out] */ BSTR *aAPIVersion) = 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 /* [propget] */ HRESULT STDMETHODCALLTYPE get_EventSource( 
            /* [retval][out] */ IEventSource **aEventSource) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ExtensionPackManager( 
            /* [retval][out] */ IExtPackManager **aExtensionPackManager) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_InternalNetworks( 
            /* [retval][out] */ SAFEARRAY * *aInternalNetworks) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_GenericNetworkDrivers( 
            /* [retval][out] */ SAFEARRAY * *aGenericNetworkDrivers) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ComposeMachineFilename( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aBaseFolder,
            /* [retval][out] */ BSTR *aFile) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateMachine( 
            /* [in] */ BSTR aSettingsFile,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aOsTypeId,
            /* [in] */ BSTR aId,
            /* [in] */ BOOL aForceOverwrite,
            /* [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 FindMachine( 
            /* [in] */ BSTR aNameOrId,
            /* [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 OpenMedium( 
            /* [in] */ BSTR aLocation,
            /* [in] */ DeviceType aDeviceType,
            /* [in] */ AccessMode aAccessMode,
            /* [in] */ BOOL aForceNewUuid,
            /* [retval][out] */ IMedium **aMedium) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindMedium( 
            /* [in] */ BSTR aLocation,
            /* [in] */ DeviceType aType,
            /* [retval][out] */ IMedium **aMedium) = 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,
            /* [in] */ BOOL aAutomount) = 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 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_APIVersion )( 
            IVirtualBox * This,
            /* [retval][out] */ BSTR *aAPIVersion);
        
        /* [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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventSource )( 
            IVirtualBox * This,
            /* [retval][out] */ IEventSource **aEventSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExtensionPackManager )( 
            IVirtualBox * This,
            /* [retval][out] */ IExtPackManager **aExtensionPackManager);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_InternalNetworks )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aInternalNetworks);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_GenericNetworkDrivers )( 
            IVirtualBox * This,
            /* [retval][out] */ SAFEARRAY * *aGenericNetworkDrivers);
        
        HRESULT ( STDMETHODCALLTYPE *ComposeMachineFilename )( 
            IVirtualBox * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aBaseFolder,
            /* [retval][out] */ BSTR *aFile);
        
        HRESULT ( STDMETHODCALLTYPE *CreateMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aSettingsFile,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aOsTypeId,
            /* [in] */ BSTR aId,
            /* [in] */ BOOL aForceOverwrite,
            /* [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 *FindMachine )( 
            IVirtualBox * This,
            /* [in] */ BSTR aNameOrId,
            /* [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 *OpenMedium )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [in] */ DeviceType aDeviceType,
            /* [in] */ AccessMode aAccessMode,
            /* [in] */ BOOL aForceNewUuid,
            /* [retval][out] */ IMedium **aMedium);
        
        HRESULT ( STDMETHODCALLTYPE *FindMedium )( 
            IVirtualBox * This,
            /* [in] */ BSTR aLocation,
            /* [in] */ DeviceType aType,
            /* [retval][out] */ IMedium **aMedium);
        
        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,
            /* [in] */ BOOL aAutomount);
        
        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 *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_APIVersion(This,aAPIVersion)	\
    (This)->lpVtbl -> get_APIVersion(This,aAPIVersion)

#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_get_EventSource(This,aEventSource)	\
    (This)->lpVtbl -> get_EventSource(This,aEventSource)

#define IVirtualBox_get_ExtensionPackManager(This,aExtensionPackManager)	\
    (This)->lpVtbl -> get_ExtensionPackManager(This,aExtensionPackManager)

#define IVirtualBox_get_InternalNetworks(This,aInternalNetworks)	\
    (This)->lpVtbl -> get_InternalNetworks(This,aInternalNetworks)

#define IVirtualBox_get_GenericNetworkDrivers(This,aGenericNetworkDrivers)	\
    (This)->lpVtbl -> get_GenericNetworkDrivers(This,aGenericNetworkDrivers)

#define IVirtualBox_ComposeMachineFilename(This,aName,aBaseFolder,aFile)	\
    (This)->lpVtbl -> ComposeMachineFilename(This,aName,aBaseFolder,aFile)

#define IVirtualBox_CreateMachine(This,aSettingsFile,aName,aOsTypeId,aId,aForceOverwrite,aMachine)	\
    (This)->lpVtbl -> CreateMachine(This,aSettingsFile,aName,aOsTypeId,aId,aForceOverwrite,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_FindMachine(This,aNameOrId,aMachine)	\
    (This)->lpVtbl -> FindMachine(This,aNameOrId,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_OpenMedium(This,aLocation,aDeviceType,aAccessMode,aForceNewUuid,aMedium)	\
    (This)->lpVtbl -> OpenMedium(This,aLocation,aDeviceType,aAccessMode,aForceNewUuid,aMedium)

#define IVirtualBox_FindMedium(This,aLocation,aType,aMedium)	\
    (This)->lpVtbl -> FindMedium(This,aLocation,aType,aMedium)

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

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

#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_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_APIVersion_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ BSTR *aAPIVersion);


void __RPC_STUB IVirtualBox_get_APIVersion_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);


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_EventSource_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ IEventSource **aEventSource);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBox_get_ExtensionPackManager_Proxy( 
    IVirtualBox * This,
    /* [retval][out] */ IExtPackManager **aExtensionPackManager);


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


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


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


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


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


HRESULT STDMETHODCALLTYPE IVirtualBox_ComposeMachineFilename_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aBaseFolder,
    /* [retval][out] */ BSTR *aFile);


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


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


void __RPC_STUB IVirtualBox_CreateMachine_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_FindMachine_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aNameOrId,
    /* [retval][out] */ IMachine **aMachine);


void __RPC_STUB IVirtualBox_FindMachine_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_OpenMedium_Proxy( 
    IVirtualBox * This,
    /* [in] */ BSTR aLocation,
    /* [in] */ DeviceType aDeviceType,
    /* [in] */ AccessMode aAccessMode,
    /* [in] */ BOOL aForceNewUuid,
    /* [retval][out] */ IMedium **aMedium);


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


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


void __RPC_STUB IVirtualBox_FindMedium_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,
    /* [in] */ BOOL aAutomount);


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_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("003d7f92-d38e-487f-b790-8c5e8631cb2f")
    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,
            /* [out] */ SAFEARRAY * *aASizes,
            /* [out] */ SAFEARRAY * *aAModes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Exists( 
            /* [in] */ SAFEARRAY * aANames,
            /* [retval][out] */ SAFEARRAY * *aAExists) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Remove( 
            /* [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,
            /* [out] */ SAFEARRAY * *aASizes,
            /* [out] */ SAFEARRAY * *aAModes);
        
        HRESULT ( STDMETHODCALLTYPE *Exists )( 
            IVFSExplorer * This,
            /* [in] */ SAFEARRAY * aANames,
            /* [retval][out] */ SAFEARRAY * *aAExists);
        
        HRESULT ( STDMETHODCALLTYPE *Remove )( 
            IVFSExplorer * This,
            /* [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,aASizes,aAModes)	\
    (This)->lpVtbl -> EntryList(This,aANames,aATypes,aASizes,aAModes)

#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,
    /* [out] */ SAFEARRAY * *aASizes,
    /* [out] */ SAFEARRAY * *aAModes);


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


HRESULT STDMETHODCALLTYPE IVFSExplorer_Exists_Proxy( 
    IVFSExplorer * This,
    /* [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,
    /* [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("3059cf9e-25c7-4f0b-9fa5-3c42e441670b")
    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 /* [propget] */ HRESULT STDMETHODCALLTYPE get_Machines( 
            /* [retval][out] */ SAFEARRAY * *aMachines) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Read( 
            /* [in] */ BSTR aFile,
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Interpret( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ImportMachines( 
            /* [in] */ SAFEARRAY * aOptions,
            /* [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] */ BOOL aManifest,
            /* [in] */ BSTR aPath,
            /* [retval][out] */ IProgress **aProgress) = 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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Machines )( 
            IAppliance * This,
            /* [retval][out] */ SAFEARRAY * *aMachines);
        
        HRESULT ( STDMETHODCALLTYPE *Read )( 
            IAppliance * This,
            /* [in] */ BSTR aFile,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Interpret )( 
            IAppliance * This);
        
        HRESULT ( STDMETHODCALLTYPE *ImportMachines )( 
            IAppliance * This,
            /* [in] */ SAFEARRAY * aOptions,
            /* [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] */ BOOL aManifest,
            /* [in] */ BSTR aPath,
            /* [retval][out] */ IProgress **aProgress);
        
        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_get_Machines(This,aMachines)	\
    (This)->lpVtbl -> get_Machines(This,aMachines)

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

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

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

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

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

#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);


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


void __RPC_STUB IAppliance_get_Machines_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,
    /* [in] */ SAFEARRAY * aOptions,
    /* [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] */ BOOL aManifest,
    /* [in] */ BSTR aPath,
    /* [retval][out] */ IProgress **aProgress);


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( 
            /* [in] */ SAFEARRAY * aAEnabled,
            /* [in] */ SAFEARRAY * aAVBoxValues,
            /* [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,
            /* [in] */ SAFEARRAY * aAEnabled,
            /* [in] */ SAFEARRAY * aAVBoxValues,
            /* [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,
    /* [in] */ SAFEARRAY * aAEnabled,
    /* [in] */ SAFEARRAY * aAVBoxValues,
    /* [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("ec824977-e43f-479c-81c9-ac6cae1423a5")
    IInternalMachineControl : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE SetRemoveSavedStateFile( 
            /* [in] */ BOOL aARemove) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UpdateState( 
            /* [in] */ MachineState aState) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetIPCId( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE BeginPowerUp( 
            /* [in] */ IProgress *aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EndPowerUp( 
            /* [in] */ LONG aResult) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE BeginPoweringDown( 
            /* [out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EndPoweringDown( 
            /* [in] */ LONG aResult,
            /* [in] */ BSTR aErrMsg) = 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( 
            /* [out] */ IProgress **aProgress,
            /* [out] */ BSTR *aStateFilePath) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EndSavingState( 
            /* [in] */ LONG aResult,
            /* [in] */ BSTR aErrMsg) = 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 aStartId,
            /* [in] */ BSTR aEndId,
            /* [in] */ BOOL aDeleteAllChildren,
            /* [out] */ MachineState *aMachineState,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FinishOnlineMergeMedium( 
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ IMedium *aSource,
            /* [in] */ IMedium *aTarget,
            /* [in] */ BOOL aMergeForward,
            /* [in] */ IMedium *aParentForTarget,
            /* [in] */ SAFEARRAY * aChildrenToReparent) = 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 PushGuestProperty( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ LONG64 aTimestamp,
            /* [in] */ BSTR aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE LockMedia( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnlockMedia( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EjectMedium( 
            /* [in] */ IMediumAttachment *aAttachment,
            /* [retval][out] */ IMediumAttachment **aNewAttachment) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReportGuestStatistics( 
            /* [in] */ ULONG aValidStats,
            /* [in] */ ULONG aCpuUser,
            /* [in] */ ULONG aCpuKernel,
            /* [in] */ ULONG aCpuIdle,
            /* [in] */ ULONG aMemTotal,
            /* [in] */ ULONG aMemFree,
            /* [in] */ ULONG aMemBalloon,
            /* [in] */ ULONG aMemShared,
            /* [in] */ ULONG aMemCache,
            /* [in] */ ULONG aPagedTotal,
            /* [in] */ ULONG aMemAllocTotal,
            /* [in] */ ULONG aMemFreeTotal,
            /* [in] */ ULONG aMemBalloonTotal,
            /* [in] */ ULONG aMemSharedTotal) = 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 *SetRemoveSavedStateFile )( 
            IInternalMachineControl * This,
            /* [in] */ BOOL aARemove);
        
        HRESULT ( STDMETHODCALLTYPE *UpdateState )( 
            IInternalMachineControl * This,
            /* [in] */ MachineState aState);
        
        HRESULT ( STDMETHODCALLTYPE *GetIPCId )( 
            IInternalMachineControl * This,
            /* [retval][out] */ BSTR *aId);
        
        HRESULT ( STDMETHODCALLTYPE *BeginPowerUp )( 
            IInternalMachineControl * This,
            /* [in] */ IProgress *aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *EndPowerUp )( 
            IInternalMachineControl * This,
            /* [in] */ LONG aResult);
        
        HRESULT ( STDMETHODCALLTYPE *BeginPoweringDown )( 
            IInternalMachineControl * This,
            /* [out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *EndPoweringDown )( 
            IInternalMachineControl * This,
            /* [in] */ LONG aResult,
            /* [in] */ BSTR aErrMsg);
        
        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,
            /* [out] */ IProgress **aProgress,
            /* [out] */ BSTR *aStateFilePath);
        
        HRESULT ( STDMETHODCALLTYPE *EndSavingState )( 
            IInternalMachineControl * This,
            /* [in] */ LONG aResult,
            /* [in] */ BSTR aErrMsg);
        
        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 aStartId,
            /* [in] */ BSTR aEndId,
            /* [in] */ BOOL aDeleteAllChildren,
            /* [out] */ MachineState *aMachineState,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *FinishOnlineMergeMedium )( 
            IInternalMachineControl * This,
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ IMedium *aSource,
            /* [in] */ IMedium *aTarget,
            /* [in] */ BOOL aMergeForward,
            /* [in] */ IMedium *aParentForTarget,
            /* [in] */ SAFEARRAY * aChildrenToReparent);
        
        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 *PushGuestProperty )( 
            IInternalMachineControl * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ LONG64 aTimestamp,
            /* [in] */ BSTR aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *LockMedia )( 
            IInternalMachineControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *UnlockMedia )( 
            IInternalMachineControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *EjectMedium )( 
            IInternalMachineControl * This,
            /* [in] */ IMediumAttachment *aAttachment,
            /* [retval][out] */ IMediumAttachment **aNewAttachment);
        
        HRESULT ( STDMETHODCALLTYPE *ReportGuestStatistics )( 
            IInternalMachineControl * This,
            /* [in] */ ULONG aValidStats,
            /* [in] */ ULONG aCpuUser,
            /* [in] */ ULONG aCpuKernel,
            /* [in] */ ULONG aCpuIdle,
            /* [in] */ ULONG aMemTotal,
            /* [in] */ ULONG aMemFree,
            /* [in] */ ULONG aMemBalloon,
            /* [in] */ ULONG aMemShared,
            /* [in] */ ULONG aMemCache,
            /* [in] */ ULONG aPagedTotal,
            /* [in] */ ULONG aMemAllocTotal,
            /* [in] */ ULONG aMemFreeTotal,
            /* [in] */ ULONG aMemBalloonTotal,
            /* [in] */ ULONG aMemSharedTotal);
        
        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_SetRemoveSavedStateFile(This,aARemove)	\
    (This)->lpVtbl -> SetRemoveSavedStateFile(This,aARemove)

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

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

#define IInternalMachineControl_BeginPowerUp(This,aAProgress)	\
    (This)->lpVtbl -> BeginPowerUp(This,aAProgress)

#define IInternalMachineControl_EndPowerUp(This,aResult)	\
    (This)->lpVtbl -> EndPowerUp(This,aResult)

#define IInternalMachineControl_BeginPoweringDown(This,aProgress)	\
    (This)->lpVtbl -> BeginPoweringDown(This,aProgress)

#define IInternalMachineControl_EndPoweringDown(This,aResult,aErrMsg)	\
    (This)->lpVtbl -> EndPoweringDown(This,aResult,aErrMsg)

#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,aResult,aErrMsg)	\
    (This)->lpVtbl -> EndSavingState(This,aResult,aErrMsg)

#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,aStartId,aEndId,aDeleteAllChildren,aMachineState,aProgress)	\
    (This)->lpVtbl -> DeleteSnapshot(This,aInitiator,aStartId,aEndId,aDeleteAllChildren,aMachineState,aProgress)

#define IInternalMachineControl_FinishOnlineMergeMedium(This,aMediumAttachment,aSource,aTarget,aMergeForward,aParentForTarget,aChildrenToReparent)	\
    (This)->lpVtbl -> FinishOnlineMergeMedium(This,aMediumAttachment,aSource,aTarget,aMergeForward,aParentForTarget,aChildrenToReparent)

#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_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)

#define IInternalMachineControl_EjectMedium(This,aAttachment,aNewAttachment)	\
    (This)->lpVtbl -> EjectMedium(This,aAttachment,aNewAttachment)

#define IInternalMachineControl_ReportGuestStatistics(This,aValidStats,aCpuUser,aCpuKernel,aCpuIdle,aMemTotal,aMemFree,aMemBalloon,aMemShared,aMemCache,aPagedTotal,aMemAllocTotal,aMemFreeTotal,aMemBalloonTotal,aMemSharedTotal)	\
    (This)->lpVtbl -> ReportGuestStatistics(This,aValidStats,aCpuUser,aCpuKernel,aCpuIdle,aMemTotal,aMemFree,aMemBalloon,aMemShared,aMemCache,aPagedTotal,aMemAllocTotal,aMemFreeTotal,aMemBalloonTotal,aMemSharedTotal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


void __RPC_STUB IInternalMachineControl_SetRemoveSavedStateFile_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_BeginPowerUp_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IProgress *aAProgress);


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


HRESULT STDMETHODCALLTYPE IInternalMachineControl_EndPowerUp_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ LONG aResult);


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


HRESULT STDMETHODCALLTYPE IInternalMachineControl_BeginPoweringDown_Proxy( 
    IInternalMachineControl * This,
    /* [out] */ IProgress **aProgress);


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


HRESULT STDMETHODCALLTYPE IInternalMachineControl_EndPoweringDown_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ LONG aResult,
    /* [in] */ BSTR aErrMsg);


void __RPC_STUB IInternalMachineControl_EndPoweringDown_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,
    /* [out] */ 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] */ LONG aResult,
    /* [in] */ BSTR aErrMsg);


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 aStartId,
    /* [in] */ BSTR aEndId,
    /* [in] */ BOOL aDeleteAllChildren,
    /* [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_FinishOnlineMergeMedium_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IMediumAttachment *aMediumAttachment,
    /* [in] */ IMedium *aSource,
    /* [in] */ IMedium *aTarget,
    /* [in] */ BOOL aMergeForward,
    /* [in] */ IMedium *aParentForTarget,
    /* [in] */ SAFEARRAY * aChildrenToReparent);


void __RPC_STUB IInternalMachineControl_FinishOnlineMergeMedium_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_PushGuestProperty_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aValue,
    /* [in] */ LONG64 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);


HRESULT STDMETHODCALLTYPE IInternalMachineControl_EjectMedium_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ IMediumAttachment *aAttachment,
    /* [retval][out] */ IMediumAttachment **aNewAttachment);


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


HRESULT STDMETHODCALLTYPE IInternalMachineControl_ReportGuestStatistics_Proxy( 
    IInternalMachineControl * This,
    /* [in] */ ULONG aValidStats,
    /* [in] */ ULONG aCpuUser,
    /* [in] */ ULONG aCpuKernel,
    /* [in] */ ULONG aCpuIdle,
    /* [in] */ ULONG aMemTotal,
    /* [in] */ ULONG aMemFree,
    /* [in] */ ULONG aMemBalloon,
    /* [in] */ ULONG aMemShared,
    /* [in] */ ULONG aMemCache,
    /* [in] */ ULONG aPagedTotal,
    /* [in] */ ULONG aMemAllocTotal,
    /* [in] */ ULONG aMemFreeTotal,
    /* [in] */ ULONG aMemBalloonTotal,
    /* [in] */ ULONG aMemSharedTotal);


void __RPC_STUB IInternalMachineControl_ReportGuestStatistics_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 __IPciAddress_INTERFACE_DEFINED__
#define __IPciAddress_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IPciAddress;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D88B324F-DB19-4D3B-A1A9-BF5B127199A8")
    IPciAddress : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Bus( 
            /* [retval][out] */ SHORT *aBus) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Bus( 
            /* [in] */ SHORT aBus) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Device( 
            /* [retval][out] */ SHORT *aDevice) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Device( 
            /* [in] */ SHORT aDevice) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DevFunction( 
            /* [retval][out] */ SHORT *aDevFunction) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DevFunction( 
            /* [in] */ SHORT aDevFunction) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AsLong( 
            /* [retval][out] */ LONG *aResult) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FromLong( 
            /* [in] */ LONG aNumber) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPciAddressVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPciAddress * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPciAddress * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPciAddress * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IPciAddress * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IPciAddress * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IPciAddress * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IPciAddress * 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_Bus )( 
            IPciAddress * This,
            /* [retval][out] */ SHORT *aBus);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Bus )( 
            IPciAddress * This,
            /* [in] */ SHORT aBus);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Device )( 
            IPciAddress * This,
            /* [retval][out] */ SHORT *aDevice);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Device )( 
            IPciAddress * This,
            /* [in] */ SHORT aDevice);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DevFunction )( 
            IPciAddress * This,
            /* [retval][out] */ SHORT *aDevFunction);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DevFunction )( 
            IPciAddress * This,
            /* [in] */ SHORT aDevFunction);
        
        HRESULT ( STDMETHODCALLTYPE *AsLong )( 
            IPciAddress * This,
            /* [retval][out] */ LONG *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *FromLong )( 
            IPciAddress * This,
            /* [in] */ LONG aNumber);
        
        END_INTERFACE
    } IPciAddressVtbl;

    interface IPciAddress
    {
        CONST_VTBL struct IPciAddressVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IPciAddress_get_Bus(This,aBus)	\
    (This)->lpVtbl -> get_Bus(This,aBus)

#define IPciAddress_put_Bus(This,aBus)	\
    (This)->lpVtbl -> put_Bus(This,aBus)

#define IPciAddress_get_Device(This,aDevice)	\
    (This)->lpVtbl -> get_Device(This,aDevice)

#define IPciAddress_put_Device(This,aDevice)	\
    (This)->lpVtbl -> put_Device(This,aDevice)

#define IPciAddress_get_DevFunction(This,aDevFunction)	\
    (This)->lpVtbl -> get_DevFunction(This,aDevFunction)

#define IPciAddress_put_DevFunction(This,aDevFunction)	\
    (This)->lpVtbl -> put_DevFunction(This,aDevFunction)

#define IPciAddress_AsLong(This,aResult)	\
    (This)->lpVtbl -> AsLong(This,aResult)

#define IPciAddress_FromLong(This,aNumber)	\
    (This)->lpVtbl -> FromLong(This,aNumber)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IPciAddress_get_Bus_Proxy( 
    IPciAddress * This,
    /* [retval][out] */ SHORT *aBus);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IPciAddress_put_Bus_Proxy( 
    IPciAddress * This,
    /* [in] */ SHORT aBus);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IPciAddress_get_Device_Proxy( 
    IPciAddress * This,
    /* [retval][out] */ SHORT *aDevice);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IPciAddress_put_Device_Proxy( 
    IPciAddress * This,
    /* [in] */ SHORT aDevice);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IPciAddress_get_DevFunction_Proxy( 
    IPciAddress * This,
    /* [retval][out] */ SHORT *aDevFunction);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IPciAddress_put_DevFunction_Proxy( 
    IPciAddress * This,
    /* [in] */ SHORT aDevFunction);


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


HRESULT STDMETHODCALLTYPE IPciAddress_AsLong_Proxy( 
    IPciAddress * This,
    /* [retval][out] */ LONG *aResult);


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


HRESULT STDMETHODCALLTYPE IPciAddress_FromLong_Proxy( 
    IPciAddress * This,
    /* [in] */ LONG aNumber);


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



#endif 	/* __IPciAddress_INTERFACE_DEFINED__ */


#ifndef __IPciDeviceAttachment_INTERFACE_DEFINED__
#define __IPciDeviceAttachment_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IPciDeviceAttachment;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("91f33d6f-e621-4f70-a77e-15f0e3c714d5")
    IPciDeviceAttachment : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsPhysicalDevice( 
            /* [retval][out] */ BOOL *aIsPhysicalDevice) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostAddress( 
            /* [retval][out] */ LONG *aHostAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_GuestAddress( 
            /* [retval][out] */ LONG *aGuestAddress) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IPciDeviceAttachmentVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IPciDeviceAttachment * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IPciDeviceAttachment * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IPciDeviceAttachment * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IPciDeviceAttachment * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IPciDeviceAttachment * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IPciDeviceAttachment * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IPciDeviceAttachment * 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 )( 
            IPciDeviceAttachment * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsPhysicalDevice )( 
            IPciDeviceAttachment * This,
            /* [retval][out] */ BOOL *aIsPhysicalDevice);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostAddress )( 
            IPciDeviceAttachment * This,
            /* [retval][out] */ LONG *aHostAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_GuestAddress )( 
            IPciDeviceAttachment * This,
            /* [retval][out] */ LONG *aGuestAddress);
        
        END_INTERFACE
    } IPciDeviceAttachmentVtbl;

    interface IPciDeviceAttachment
    {
        CONST_VTBL struct IPciDeviceAttachmentVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IPciDeviceAttachment_get_IsPhysicalDevice(This,aIsPhysicalDevice)	\
    (This)->lpVtbl -> get_IsPhysicalDevice(This,aIsPhysicalDevice)

#define IPciDeviceAttachment_get_HostAddress(This,aHostAddress)	\
    (This)->lpVtbl -> get_HostAddress(This,aHostAddress)

#define IPciDeviceAttachment_get_GuestAddress(This,aGuestAddress)	\
    (This)->lpVtbl -> get_GuestAddress(This,aGuestAddress)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IPciDeviceAttachment_get_IsPhysicalDevice_Proxy( 
    IPciDeviceAttachment * This,
    /* [retval][out] */ BOOL *aIsPhysicalDevice);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IPciDeviceAttachment_get_HostAddress_Proxy( 
    IPciDeviceAttachment * This,
    /* [retval][out] */ LONG *aHostAddress);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IPciDeviceAttachment_get_GuestAddress_Proxy( 
    IPciDeviceAttachment * This,
    /* [retval][out] */ LONG *aGuestAddress);


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



#endif 	/* __IPciDeviceAttachment_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("5eaa9319-62fc-4b0a-843c-0cb1940f8a91")
    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_CPUHotPlugEnabled( 
            /* [retval][out] */ BOOL *aCPUHotPlugEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CPUHotPlugEnabled( 
            /* [in] */ BOOL aCPUHotPlugEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CPUExecutionCap( 
            /* [retval][out] */ ULONG *aCPUExecutionCap) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CPUExecutionCap( 
            /* [in] */ ULONG aCPUExecutionCap) = 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_PageFusionEnabled( 
            /* [retval][out] */ BOOL *aPageFusionEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PageFusionEnabled( 
            /* [in] */ BOOL aPageFusionEnabled) = 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_PointingHidType( 
            /* [retval][out] */ PointingHidType *aPointingHidType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PointingHidType( 
            /* [in] */ PointingHidType aPointingHidType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_KeyboardHidType( 
            /* [retval][out] */ KeyboardHidType *aKeyboardHidType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_KeyboardHidType( 
            /* [in] */ KeyboardHidType aKeyboardHidType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HpetEnabled( 
            /* [retval][out] */ BOOL *aHpetEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HpetEnabled( 
            /* [in] */ BOOL aHpetEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ChipsetType( 
            /* [retval][out] */ ChipsetType *aChipsetType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ChipsetType( 
            /* [in] */ ChipsetType aChipsetType) = 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_VRDEServer( 
            /* [retval][out] */ IVRDEServer **aVRDEServer) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EmulatedUSBWebcameraEnabled( 
            /* [retval][out] */ BOOL *aEmulatedUSBWebcameraEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_EmulatedUSBWebcameraEnabled( 
            /* [in] */ BOOL aEmulatedUSBWebcameraEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EmulatedUSBCardReaderEnabled( 
            /* [retval][out] */ BOOL *aEmulatedUSBCardReaderEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_EmulatedUSBCardReaderEnabled( 
            /* [in] */ BOOL aEmulatedUSBCardReaderEnabled) = 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 /* [propget] */ HRESULT STDMETHODCALLTYPE get_FaultToleranceState( 
            /* [retval][out] */ FaultToleranceState *aFaultToleranceState) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FaultToleranceState( 
            /* [in] */ FaultToleranceState aFaultToleranceState) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FaultTolerancePort( 
            /* [retval][out] */ ULONG *aFaultTolerancePort) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FaultTolerancePort( 
            /* [in] */ ULONG aFaultTolerancePort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FaultToleranceAddress( 
            /* [retval][out] */ BSTR *aFaultToleranceAddress) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FaultToleranceAddress( 
            /* [in] */ BSTR aFaultToleranceAddress) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FaultTolerancePassword( 
            /* [retval][out] */ BSTR *aFaultTolerancePassword) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FaultTolerancePassword( 
            /* [in] */ BSTR aFaultTolerancePassword) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FaultToleranceSyncInterval( 
            /* [retval][out] */ ULONG *aFaultToleranceSyncInterval) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FaultToleranceSyncInterval( 
            /* [in] */ ULONG aFaultToleranceSyncInterval) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RTCUseUTC( 
            /* [retval][out] */ BOOL *aRTCUseUTC) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RTCUseUTC( 
            /* [in] */ BOOL aRTCUseUTC) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IoCacheEnabled( 
            /* [retval][out] */ BOOL *aIoCacheEnabled) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IoCacheEnabled( 
            /* [in] */ BOOL aIoCacheEnabled) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IoCacheSize( 
            /* [retval][out] */ ULONG *aIoCacheSize) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IoCacheSize( 
            /* [in] */ ULONG aIoCacheSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BandwidthControl( 
            /* [retval][out] */ IBandwidthControl **aBandwidthControl) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PciDeviceAssignments( 
            /* [retval][out] */ SAFEARRAY * *aPciDeviceAssignments) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE LockMachine( 
            /* [in] */ ISession *aSession,
            /* [in] */ LockType aLockType) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE LaunchVMProcess( 
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aType,
            /* [in] */ BSTR aEnvironment,
            /* [retval][out] */ IProgress **aProgress) = 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] */ IMedium *aMedium) = 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 TemporaryEjectDevice( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BOOL aTemporaryEject) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE NonRotationalDevice( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BOOL aNonRotational) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetBandwidthGroupForDevice( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ IBandwidthGroup *aBandwidthGroup) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MountMedium( 
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ IMedium *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 AttachHostPciDevice( 
            /* [in] */ LONG aHostAddress,
            /* [in] */ LONG aDesiredGuestAddress,
            /* [in] */ BOOL aTryToUnbind) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DetachHostPciDevice( 
            /* [in] */ LONG aHostAddress) = 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 SetStorageControllerBootable( 
            /* [in] */ BSTR aName,
            /* [in] */ BOOL aBootable) = 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 RemoveAllCPUIDLeaves( 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 Unregister( 
            /* [in] */ CleanupMode aCleanupMode,
            /* [retval][out] */ SAFEARRAY * *aAMedia) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Delete( 
            /* [in] */ SAFEARRAY * aAMedia,
            /* [retval][out] */ IProgress **aAProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Export( 
            /* [in] */ IAppliance *aAAppliance,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IVirtualSystemDescription **aADescription) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FindSnapshot( 
            /* [in] */ BSTR aNameOrId,
            /* [retval][out] */ ISnapshot **aSnapshot) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateSharedFolder( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable,
            /* [in] */ BOOL aAutomount) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveSharedFolder( 
            /* [in] */ BSTR aName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CanShowConsoleWindow( 
            /* [retval][out] */ BOOL *aCanShow) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ShowConsoleWindow( 
            /* [retval][out] */ LONG64 *aWinId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetGuestProperty( 
            /* [in] */ BSTR aName,
            /* [out] */ BSTR *aValue,
            /* [out] */ LONG64 *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] */ LONG64 *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 QuerySavedGuestSize( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QuerySavedThumbnailSize( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadSavedThumbnailToArray( 
            /* [in] */ ULONG aScreenId,
            /* [in] */ BOOL aBGR,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadSavedThumbnailPNGToArray( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QuerySavedScreenshotPNGSize( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadSavedScreenshotPNGToArray( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE HotPlugCPU( 
            /* [in] */ ULONG aCpu) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE HotUnplugCPU( 
            /* [in] */ ULONG aCpu) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetCPUStatus( 
            /* [in] */ ULONG aCpu,
            /* [retval][out] */ BOOL *aAttached) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QueryLogFilename( 
            /* [in] */ ULONG aIdx,
            /* [retval][out] */ BSTR *aFilename) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadLog( 
            /* [in] */ ULONG aIdx,
            /* [in] */ LONG64 aOffset,
            /* [in] */ LONG64 aSize,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CloneTo( 
            /* [in] */ IMachine *aTarget,
            /* [in] */ CloneMode aMode,
            /* [in] */ SAFEARRAY * aOptions,
            /* [retval][out] */ IProgress **aProgress) = 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_CPUHotPlugEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aCPUHotPlugEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CPUHotPlugEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aCPUHotPlugEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CPUExecutionCap )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aCPUExecutionCap);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CPUExecutionCap )( 
            IMachine * This,
            /* [in] */ ULONG aCPUExecutionCap);
        
        /* [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_PageFusionEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aPageFusionEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PageFusionEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aPageFusionEnabled);
        
        /* [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_PointingHidType )( 
            IMachine * This,
            /* [retval][out] */ PointingHidType *aPointingHidType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PointingHidType )( 
            IMachine * This,
            /* [in] */ PointingHidType aPointingHidType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardHidType )( 
            IMachine * This,
            /* [retval][out] */ KeyboardHidType *aKeyboardHidType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardHidType )( 
            IMachine * This,
            /* [in] */ KeyboardHidType aKeyboardHidType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HpetEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aHpetEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HpetEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aHpetEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ChipsetType )( 
            IMachine * This,
            /* [retval][out] */ ChipsetType *aChipsetType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ChipsetType )( 
            IMachine * This,
            /* [in] */ ChipsetType aChipsetType);
        
        /* [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_VRDEServer )( 
            IMachine * This,
            /* [retval][out] */ IVRDEServer **aVRDEServer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EmulatedUSBWebcameraEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aEmulatedUSBWebcameraEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_EmulatedUSBWebcameraEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aEmulatedUSBWebcameraEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EmulatedUSBCardReaderEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aEmulatedUSBCardReaderEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_EmulatedUSBCardReaderEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aEmulatedUSBCardReaderEnabled);
        
        /* [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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FaultToleranceState )( 
            IMachine * This,
            /* [retval][out] */ FaultToleranceState *aFaultToleranceState);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FaultToleranceState )( 
            IMachine * This,
            /* [in] */ FaultToleranceState aFaultToleranceState);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FaultTolerancePort )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aFaultTolerancePort);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FaultTolerancePort )( 
            IMachine * This,
            /* [in] */ ULONG aFaultTolerancePort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FaultToleranceAddress )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aFaultToleranceAddress);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FaultToleranceAddress )( 
            IMachine * This,
            /* [in] */ BSTR aFaultToleranceAddress);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FaultTolerancePassword )( 
            IMachine * This,
            /* [retval][out] */ BSTR *aFaultTolerancePassword);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FaultTolerancePassword )( 
            IMachine * This,
            /* [in] */ BSTR aFaultTolerancePassword);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FaultToleranceSyncInterval )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aFaultToleranceSyncInterval);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FaultToleranceSyncInterval )( 
            IMachine * This,
            /* [in] */ ULONG aFaultToleranceSyncInterval);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RTCUseUTC )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aRTCUseUTC);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RTCUseUTC )( 
            IMachine * This,
            /* [in] */ BOOL aRTCUseUTC);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IoCacheEnabled )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aIoCacheEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IoCacheEnabled )( 
            IMachine * This,
            /* [in] */ BOOL aIoCacheEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IoCacheSize )( 
            IMachine * This,
            /* [retval][out] */ ULONG *aIoCacheSize);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IoCacheSize )( 
            IMachine * This,
            /* [in] */ ULONG aIoCacheSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BandwidthControl )( 
            IMachine * This,
            /* [retval][out] */ IBandwidthControl **aBandwidthControl);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PciDeviceAssignments )( 
            IMachine * This,
            /* [retval][out] */ SAFEARRAY * *aPciDeviceAssignments);
        
        HRESULT ( STDMETHODCALLTYPE *LockMachine )( 
            IMachine * This,
            /* [in] */ ISession *aSession,
            /* [in] */ LockType aLockType);
        
        HRESULT ( STDMETHODCALLTYPE *LaunchVMProcess )( 
            IMachine * This,
            /* [in] */ ISession *aSession,
            /* [in] */ BSTR aType,
            /* [in] */ BSTR aEnvironment,
            /* [retval][out] */ IProgress **aProgress);
        
        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] */ IMedium *aMedium);
        
        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 *TemporaryEjectDevice )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BOOL aTemporaryEject);
        
        HRESULT ( STDMETHODCALLTYPE *NonRotationalDevice )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ BOOL aNonRotational);
        
        HRESULT ( STDMETHODCALLTYPE *SetBandwidthGroupForDevice )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ IBandwidthGroup *aBandwidthGroup);
        
        HRESULT ( STDMETHODCALLTYPE *MountMedium )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ LONG aControllerPort,
            /* [in] */ LONG aDevice,
            /* [in] */ IMedium *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 *AttachHostPciDevice )( 
            IMachine * This,
            /* [in] */ LONG aHostAddress,
            /* [in] */ LONG aDesiredGuestAddress,
            /* [in] */ BOOL aTryToUnbind);
        
        HRESULT ( STDMETHODCALLTYPE *DetachHostPciDevice )( 
            IMachine * This,
            /* [in] */ LONG aHostAddress);
        
        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 *SetStorageControllerBootable )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ BOOL aBootable);
        
        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 *RemoveAllCPUIDLeaves )( 
            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 *Unregister )( 
            IMachine * This,
            /* [in] */ CleanupMode aCleanupMode,
            /* [retval][out] */ SAFEARRAY * *aAMedia);
        
        HRESULT ( STDMETHODCALLTYPE *Delete )( 
            IMachine * This,
            /* [in] */ SAFEARRAY * aAMedia,
            /* [retval][out] */ IProgress **aAProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Export )( 
            IMachine * This,
            /* [in] */ IAppliance *aAAppliance,
            /* [in] */ BSTR aLocation,
            /* [retval][out] */ IVirtualSystemDescription **aADescription);
        
        HRESULT ( STDMETHODCALLTYPE *FindSnapshot )( 
            IMachine * This,
            /* [in] */ BSTR aNameOrId,
            /* [retval][out] */ ISnapshot **aSnapshot);
        
        HRESULT ( STDMETHODCALLTYPE *CreateSharedFolder )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aHostPath,
            /* [in] */ BOOL aWritable,
            /* [in] */ BOOL aAutomount);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveSharedFolder )( 
            IMachine * This,
            /* [in] */ BSTR aName);
        
        HRESULT ( STDMETHODCALLTYPE *CanShowConsoleWindow )( 
            IMachine * This,
            /* [retval][out] */ BOOL *aCanShow);
        
        HRESULT ( STDMETHODCALLTYPE *ShowConsoleWindow )( 
            IMachine * This,
            /* [retval][out] */ LONG64 *aWinId);
        
        HRESULT ( STDMETHODCALLTYPE *GetGuestProperty )( 
            IMachine * This,
            /* [in] */ BSTR aName,
            /* [out] */ BSTR *aValue,
            /* [out] */ LONG64 *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] */ LONG64 *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 *QuerySavedGuestSize )( 
            IMachine * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *QuerySavedThumbnailSize )( 
            IMachine * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *ReadSavedThumbnailToArray )( 
            IMachine * This,
            /* [in] */ ULONG aScreenId,
            /* [in] */ BOOL aBGR,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        HRESULT ( STDMETHODCALLTYPE *ReadSavedThumbnailPNGToArray )( 
            IMachine * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        HRESULT ( STDMETHODCALLTYPE *QuerySavedScreenshotPNGSize )( 
            IMachine * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aSize,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *ReadSavedScreenshotPNGToArray )( 
            IMachine * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        HRESULT ( STDMETHODCALLTYPE *HotPlugCPU )( 
            IMachine * This,
            /* [in] */ ULONG aCpu);
        
        HRESULT ( STDMETHODCALLTYPE *HotUnplugCPU )( 
            IMachine * This,
            /* [in] */ ULONG aCpu);
        
        HRESULT ( STDMETHODCALLTYPE *GetCPUStatus )( 
            IMachine * This,
            /* [in] */ ULONG aCpu,
            /* [retval][out] */ BOOL *aAttached);
        
        HRESULT ( STDMETHODCALLTYPE *QueryLogFilename )( 
            IMachine * This,
            /* [in] */ ULONG aIdx,
            /* [retval][out] */ BSTR *aFilename);
        
        HRESULT ( STDMETHODCALLTYPE *ReadLog )( 
            IMachine * This,
            /* [in] */ ULONG aIdx,
            /* [in] */ LONG64 aOffset,
            /* [in] */ LONG64 aSize,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        HRESULT ( STDMETHODCALLTYPE *CloneTo )( 
            IMachine * This,
            /* [in] */ IMachine *aTarget,
            /* [in] */ CloneMode aMode,
            /* [in] */ SAFEARRAY * aOptions,
            /* [retval][out] */ IProgress **aProgress);
        
        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_CPUHotPlugEnabled(This,aCPUHotPlugEnabled)	\
    (This)->lpVtbl -> get_CPUHotPlugEnabled(This,aCPUHotPlugEnabled)

#define IMachine_put_CPUHotPlugEnabled(This,aCPUHotPlugEnabled)	\
    (This)->lpVtbl -> put_CPUHotPlugEnabled(This,aCPUHotPlugEnabled)

#define IMachine_get_CPUExecutionCap(This,aCPUExecutionCap)	\
    (This)->lpVtbl -> get_CPUExecutionCap(This,aCPUExecutionCap)

#define IMachine_put_CPUExecutionCap(This,aCPUExecutionCap)	\
    (This)->lpVtbl -> put_CPUExecutionCap(This,aCPUExecutionCap)

#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_PageFusionEnabled(This,aPageFusionEnabled)	\
    (This)->lpVtbl -> get_PageFusionEnabled(This,aPageFusionEnabled)

#define IMachine_put_PageFusionEnabled(This,aPageFusionEnabled)	\
    (This)->lpVtbl -> put_PageFusionEnabled(This,aPageFusionEnabled)

#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_PointingHidType(This,aPointingHidType)	\
    (This)->lpVtbl -> get_PointingHidType(This,aPointingHidType)

#define IMachine_put_PointingHidType(This,aPointingHidType)	\
    (This)->lpVtbl -> put_PointingHidType(This,aPointingHidType)

#define IMachine_get_KeyboardHidType(This,aKeyboardHidType)	\
    (This)->lpVtbl -> get_KeyboardHidType(This,aKeyboardHidType)

#define IMachine_put_KeyboardHidType(This,aKeyboardHidType)	\
    (This)->lpVtbl -> put_KeyboardHidType(This,aKeyboardHidType)

#define IMachine_get_HpetEnabled(This,aHpetEnabled)	\
    (This)->lpVtbl -> get_HpetEnabled(This,aHpetEnabled)

#define IMachine_put_HpetEnabled(This,aHpetEnabled)	\
    (This)->lpVtbl -> put_HpetEnabled(This,aHpetEnabled)

#define IMachine_get_ChipsetType(This,aChipsetType)	\
    (This)->lpVtbl -> get_ChipsetType(This,aChipsetType)

#define IMachine_put_ChipsetType(This,aChipsetType)	\
    (This)->lpVtbl -> put_ChipsetType(This,aChipsetType)

#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_VRDEServer(This,aVRDEServer)	\
    (This)->lpVtbl -> get_VRDEServer(This,aVRDEServer)

#define IMachine_get_EmulatedUSBWebcameraEnabled(This,aEmulatedUSBWebcameraEnabled)	\
    (This)->lpVtbl -> get_EmulatedUSBWebcameraEnabled(This,aEmulatedUSBWebcameraEnabled)

#define IMachine_put_EmulatedUSBWebcameraEnabled(This,aEmulatedUSBWebcameraEnabled)	\
    (This)->lpVtbl -> put_EmulatedUSBWebcameraEnabled(This,aEmulatedUSBWebcameraEnabled)

#define IMachine_get_EmulatedUSBCardReaderEnabled(This,aEmulatedUSBCardReaderEnabled)	\
    (This)->lpVtbl -> get_EmulatedUSBCardReaderEnabled(This,aEmulatedUSBCardReaderEnabled)

#define IMachine_put_EmulatedUSBCardReaderEnabled(This,aEmulatedUSBCardReaderEnabled)	\
    (This)->lpVtbl -> put_EmulatedUSBCardReaderEnabled(This,aEmulatedUSBCardReaderEnabled)

#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_get_FaultToleranceState(This,aFaultToleranceState)	\
    (This)->lpVtbl -> get_FaultToleranceState(This,aFaultToleranceState)

#define IMachine_put_FaultToleranceState(This,aFaultToleranceState)	\
    (This)->lpVtbl -> put_FaultToleranceState(This,aFaultToleranceState)

#define IMachine_get_FaultTolerancePort(This,aFaultTolerancePort)	\
    (This)->lpVtbl -> get_FaultTolerancePort(This,aFaultTolerancePort)

#define IMachine_put_FaultTolerancePort(This,aFaultTolerancePort)	\
    (This)->lpVtbl -> put_FaultTolerancePort(This,aFaultTolerancePort)

#define IMachine_get_FaultToleranceAddress(This,aFaultToleranceAddress)	\
    (This)->lpVtbl -> get_FaultToleranceAddress(This,aFaultToleranceAddress)

#define IMachine_put_FaultToleranceAddress(This,aFaultToleranceAddress)	\
    (This)->lpVtbl -> put_FaultToleranceAddress(This,aFaultToleranceAddress)

#define IMachine_get_FaultTolerancePassword(This,aFaultTolerancePassword)	\
    (This)->lpVtbl -> get_FaultTolerancePassword(This,aFaultTolerancePassword)

#define IMachine_put_FaultTolerancePassword(This,aFaultTolerancePassword)	\
    (This)->lpVtbl -> put_FaultTolerancePassword(This,aFaultTolerancePassword)

#define IMachine_get_FaultToleranceSyncInterval(This,aFaultToleranceSyncInterval)	\
    (This)->lpVtbl -> get_FaultToleranceSyncInterval(This,aFaultToleranceSyncInterval)

#define IMachine_put_FaultToleranceSyncInterval(This,aFaultToleranceSyncInterval)	\
    (This)->lpVtbl -> put_FaultToleranceSyncInterval(This,aFaultToleranceSyncInterval)

#define IMachine_get_RTCUseUTC(This,aRTCUseUTC)	\
    (This)->lpVtbl -> get_RTCUseUTC(This,aRTCUseUTC)

#define IMachine_put_RTCUseUTC(This,aRTCUseUTC)	\
    (This)->lpVtbl -> put_RTCUseUTC(This,aRTCUseUTC)

#define IMachine_get_IoCacheEnabled(This,aIoCacheEnabled)	\
    (This)->lpVtbl -> get_IoCacheEnabled(This,aIoCacheEnabled)

#define IMachine_put_IoCacheEnabled(This,aIoCacheEnabled)	\
    (This)->lpVtbl -> put_IoCacheEnabled(This,aIoCacheEnabled)

#define IMachine_get_IoCacheSize(This,aIoCacheSize)	\
    (This)->lpVtbl -> get_IoCacheSize(This,aIoCacheSize)

#define IMachine_put_IoCacheSize(This,aIoCacheSize)	\
    (This)->lpVtbl -> put_IoCacheSize(This,aIoCacheSize)

#define IMachine_get_BandwidthControl(This,aBandwidthControl)	\
    (This)->lpVtbl -> get_BandwidthControl(This,aBandwidthControl)

#define IMachine_get_PciDeviceAssignments(This,aPciDeviceAssignments)	\
    (This)->lpVtbl -> get_PciDeviceAssignments(This,aPciDeviceAssignments)

#define IMachine_LockMachine(This,aSession,aLockType)	\
    (This)->lpVtbl -> LockMachine(This,aSession,aLockType)

#define IMachine_LaunchVMProcess(This,aSession,aType,aEnvironment,aProgress)	\
    (This)->lpVtbl -> LaunchVMProcess(This,aSession,aType,aEnvironment,aProgress)

#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,aMedium)	\
    (This)->lpVtbl -> AttachDevice(This,aName,aControllerPort,aDevice,aType,aMedium)

#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_TemporaryEjectDevice(This,aName,aControllerPort,aDevice,aTemporaryEject)	\
    (This)->lpVtbl -> TemporaryEjectDevice(This,aName,aControllerPort,aDevice,aTemporaryEject)

#define IMachine_NonRotationalDevice(This,aName,aControllerPort,aDevice,aNonRotational)	\
    (This)->lpVtbl -> NonRotationalDevice(This,aName,aControllerPort,aDevice,aNonRotational)

#define IMachine_SetBandwidthGroupForDevice(This,aName,aControllerPort,aDevice,aBandwidthGroup)	\
    (This)->lpVtbl -> SetBandwidthGroupForDevice(This,aName,aControllerPort,aDevice,aBandwidthGroup)

#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_AttachHostPciDevice(This,aHostAddress,aDesiredGuestAddress,aTryToUnbind)	\
    (This)->lpVtbl -> AttachHostPciDevice(This,aHostAddress,aDesiredGuestAddress,aTryToUnbind)

#define IMachine_DetachHostPciDevice(This,aHostAddress)	\
    (This)->lpVtbl -> DetachHostPciDevice(This,aHostAddress)

#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_SetStorageControllerBootable(This,aName,aBootable)	\
    (This)->lpVtbl -> SetStorageControllerBootable(This,aName,aBootable)

#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_RemoveAllCPUIDLeaves(This)	\
    (This)->lpVtbl -> RemoveAllCPUIDLeaves(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_Unregister(This,aCleanupMode,aAMedia)	\
    (This)->lpVtbl -> Unregister(This,aCleanupMode,aAMedia)

#define IMachine_Delete(This,aAMedia,aAProgress)	\
    (This)->lpVtbl -> Delete(This,aAMedia,aAProgress)

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

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

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

#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_QuerySavedGuestSize(This,aScreenId,aWidth,aHeight)	\
    (This)->lpVtbl -> QuerySavedGuestSize(This,aScreenId,aWidth,aHeight)

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

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

#define IMachine_ReadSavedThumbnailPNGToArray(This,aScreenId,aWidth,aHeight,aData)	\
    (This)->lpVtbl -> ReadSavedThumbnailPNGToArray(This,aScreenId,aWidth,aHeight,aData)

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

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

#define IMachine_HotPlugCPU(This,aCpu)	\
    (This)->lpVtbl -> HotPlugCPU(This,aCpu)

#define IMachine_HotUnplugCPU(This,aCpu)	\
    (This)->lpVtbl -> HotUnplugCPU(This,aCpu)

#define IMachine_GetCPUStatus(This,aCpu,aAttached)	\
    (This)->lpVtbl -> GetCPUStatus(This,aCpu,aAttached)

#define IMachine_QueryLogFilename(This,aIdx,aFilename)	\
    (This)->lpVtbl -> QueryLogFilename(This,aIdx,aFilename)

#define IMachine_ReadLog(This,aIdx,aOffset,aSize,aData)	\
    (This)->lpVtbl -> ReadLog(This,aIdx,aOffset,aSize,aData)

#define IMachine_CloneTo(This,aTarget,aMode,aOptions,aProgress)	\
    (This)->lpVtbl -> CloneTo(This,aTarget,aMode,aOptions,aProgress)

#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_CPUHotPlugEnabled_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aCPUHotPlugEnabled);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_CPUHotPlugEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aCPUHotPlugEnabled);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_CPUExecutionCap_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aCPUExecutionCap);


void __RPC_STUB IMachine_put_CPUExecutionCap_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_PageFusionEnabled_Proxy( 
    IMachine * This,
    /* [retval][out] */ BOOL *aPageFusionEnabled);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_PageFusionEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aPageFusionEnabled);


void __RPC_STUB IMachine_put_PageFusionEnabled_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_PointingHidType_Proxy( 
    IMachine * This,
    /* [retval][out] */ PointingHidType *aPointingHidType);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_PointingHidType_Proxy( 
    IMachine * This,
    /* [in] */ PointingHidType aPointingHidType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_KeyboardHidType_Proxy( 
    IMachine * This,
    /* [retval][out] */ KeyboardHidType *aKeyboardHidType);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_KeyboardHidType_Proxy( 
    IMachine * This,
    /* [in] */ KeyboardHidType aKeyboardHidType);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_HpetEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aHpetEnabled);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_ChipsetType_Proxy( 
    IMachine * This,
    /* [retval][out] */ ChipsetType *aChipsetType);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_ChipsetType_Proxy( 
    IMachine * This,
    /* [in] */ ChipsetType aChipsetType);


void __RPC_STUB IMachine_put_ChipsetType_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_VRDEServer_Proxy( 
    IMachine * This,
    /* [retval][out] */ IVRDEServer **aVRDEServer);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_EmulatedUSBWebcameraEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aEmulatedUSBWebcameraEnabled);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_EmulatedUSBCardReaderEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aEmulatedUSBCardReaderEnabled);


void __RPC_STUB IMachine_put_EmulatedUSBCardReaderEnabled_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);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_FaultToleranceState_Proxy( 
    IMachine * This,
    /* [retval][out] */ FaultToleranceState *aFaultToleranceState);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_FaultToleranceState_Proxy( 
    IMachine * This,
    /* [in] */ FaultToleranceState aFaultToleranceState);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_FaultTolerancePort_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aFaultTolerancePort);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_FaultToleranceAddress_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aFaultToleranceAddress);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_FaultTolerancePassword_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aFaultTolerancePassword);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_FaultToleranceSyncInterval_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aFaultToleranceSyncInterval);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_RTCUseUTC_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aRTCUseUTC);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_IoCacheEnabled_Proxy( 
    IMachine * This,
    /* [in] */ BOOL aIoCacheEnabled);


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


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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IMachine_put_IoCacheSize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aIoCacheSize);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_BandwidthControl_Proxy( 
    IMachine * This,
    /* [retval][out] */ IBandwidthControl **aBandwidthControl);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachine_get_PciDeviceAssignments_Proxy( 
    IMachine * This,
    /* [retval][out] */ SAFEARRAY * *aPciDeviceAssignments);


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


HRESULT STDMETHODCALLTYPE IMachine_LockMachine_Proxy( 
    IMachine * This,
    /* [in] */ ISession *aSession,
    /* [in] */ LockType aLockType);


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


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


void __RPC_STUB IMachine_LaunchVMProcess_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] */ IMedium *aMedium);


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_TemporaryEjectDevice_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [in] */ BOOL aTemporaryEject);


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


HRESULT STDMETHODCALLTYPE IMachine_NonRotationalDevice_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [in] */ BOOL aNonRotational);


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


HRESULT STDMETHODCALLTYPE IMachine_SetBandwidthGroupForDevice_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ LONG aControllerPort,
    /* [in] */ LONG aDevice,
    /* [in] */ IBandwidthGroup *aBandwidthGroup);


void __RPC_STUB IMachine_SetBandwidthGroupForDevice_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] */ IMedium *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_AttachHostPciDevice_Proxy( 
    IMachine * This,
    /* [in] */ LONG aHostAddress,
    /* [in] */ LONG aDesiredGuestAddress,
    /* [in] */ BOOL aTryToUnbind);


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


HRESULT STDMETHODCALLTYPE IMachine_DetachHostPciDevice_Proxy( 
    IMachine * This,
    /* [in] */ LONG aHostAddress);


void __RPC_STUB IMachine_DetachHostPciDevice_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_SetStorageControllerBootable_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aName,
    /* [in] */ BOOL aBootable);


void __RPC_STUB IMachine_SetStorageControllerBootable_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_RemoveAllCPUIDLeaves_Proxy( 
    IMachine * This);


void __RPC_STUB IMachine_RemoveAllCPUIDLeaves_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_Unregister_Proxy( 
    IMachine * This,
    /* [in] */ CleanupMode aCleanupMode,
    /* [retval][out] */ SAFEARRAY * *aAMedia);


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


HRESULT STDMETHODCALLTYPE IMachine_Delete_Proxy( 
    IMachine * This,
    /* [in] */ SAFEARRAY * aAMedia,
    /* [retval][out] */ IProgress **aAProgress);


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


HRESULT STDMETHODCALLTYPE IMachine_Export_Proxy( 
    IMachine * This,
    /* [in] */ IAppliance *aAAppliance,
    /* [in] */ BSTR aLocation,
    /* [retval][out] */ IVirtualSystemDescription **aADescription);


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


HRESULT STDMETHODCALLTYPE IMachine_FindSnapshot_Proxy( 
    IMachine * This,
    /* [in] */ BSTR aNameOrId,
    /* [retval][out] */ ISnapshot **aSnapshot);


void __RPC_STUB IMachine_FindSnapshot_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,
    /* [in] */ BOOL aAutomount);


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] */ LONG64 *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] */ LONG64 *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] */ LONG64 *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_QuerySavedGuestSize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aScreenId,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight);


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


HRESULT STDMETHODCALLTYPE IMachine_QuerySavedThumbnailSize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aScreenId,
    /* [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] */ ULONG aScreenId,
    /* [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_ReadSavedThumbnailPNGToArray_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aScreenId,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight,
    /* [retval][out] */ SAFEARRAY * *aData);


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


HRESULT STDMETHODCALLTYPE IMachine_QuerySavedScreenshotPNGSize_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aScreenId,
    /* [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,
    /* [in] */ ULONG aScreenId,
    /* [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);


HRESULT STDMETHODCALLTYPE IMachine_HotPlugCPU_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aCpu);


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


HRESULT STDMETHODCALLTYPE IMachine_HotUnplugCPU_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aCpu);


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


HRESULT STDMETHODCALLTYPE IMachine_GetCPUStatus_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aCpu,
    /* [retval][out] */ BOOL *aAttached);


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


HRESULT STDMETHODCALLTYPE IMachine_QueryLogFilename_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aIdx,
    /* [retval][out] */ BSTR *aFilename);


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


HRESULT STDMETHODCALLTYPE IMachine_ReadLog_Proxy( 
    IMachine * This,
    /* [in] */ ULONG aIdx,
    /* [in] */ LONG64 aOffset,
    /* [in] */ LONG64 aSize,
    /* [retval][out] */ SAFEARRAY * *aData);


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


HRESULT STDMETHODCALLTYPE IMachine_CloneTo_Proxy( 
    IMachine * This,
    /* [in] */ IMachine *aTarget,
    /* [in] */ CloneMode aMode,
    /* [in] */ SAFEARRAY * aOptions,
    /* [retval][out] */ IProgress **aProgress);


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



#endif 	/* __IMachine_INTERFACE_DEFINED__ */


#ifndef __IVRDEServerInfo_INTERFACE_DEFINED__
#define __IVRDEServerInfo_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IVRDEServerInfo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("714434a1-58c3-4aab-9049-7652c5df113b")
    IVRDEServerInfo : 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] */ LONG64 *aBytesSent) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesSentTotal( 
            /* [retval][out] */ LONG64 *aBytesSentTotal) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesReceived( 
            /* [retval][out] */ LONG64 *aBytesReceived) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BytesReceivedTotal( 
            /* [retval][out] */ LONG64 *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 IVRDEServerInfoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVRDEServerInfo * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVRDEServerInfo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVRDEServerInfo * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVRDEServerInfo * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVRDEServerInfo * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVRDEServerInfo * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVRDEServerInfo * 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 )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ BOOL *aActive);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Port )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG *aPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumberOfClients )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ ULONG *aNumberOfClients);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BeginTime )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG64 *aBeginTime);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EndTime )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG64 *aEndTime);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesSent )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG64 *aBytesSent);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesSentTotal )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG64 *aBytesSentTotal);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesReceived )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG64 *aBytesReceived);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BytesReceivedTotal )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ LONG64 *aBytesReceivedTotal);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_User )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ BSTR *aUser);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ BSTR *aDomain);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientName )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ BSTR *aClientName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientIP )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ BSTR *aClientIP);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClientVersion )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ ULONG *aClientVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionStyle )( 
            IVRDEServerInfo * This,
            /* [retval][out] */ ULONG *aEncryptionStyle);
        
        END_INTERFACE
    } IVRDEServerInfoVtbl;

    interface IVRDEServerInfo
    {
        CONST_VTBL struct IVRDEServerInfoVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IVRDEServerInfo_get_Active(This,aActive)	\
    (This)->lpVtbl -> get_Active(This,aActive)

#define IVRDEServerInfo_get_Port(This,aPort)	\
    (This)->lpVtbl -> get_Port(This,aPort)

#define IVRDEServerInfo_get_NumberOfClients(This,aNumberOfClients)	\
    (This)->lpVtbl -> get_NumberOfClients(This,aNumberOfClients)

#define IVRDEServerInfo_get_BeginTime(This,aBeginTime)	\
    (This)->lpVtbl -> get_BeginTime(This,aBeginTime)

#define IVRDEServerInfo_get_EndTime(This,aEndTime)	\
    (This)->lpVtbl -> get_EndTime(This,aEndTime)

#define IVRDEServerInfo_get_BytesSent(This,aBytesSent)	\
    (This)->lpVtbl -> get_BytesSent(This,aBytesSent)

#define IVRDEServerInfo_get_BytesSentTotal(This,aBytesSentTotal)	\
    (This)->lpVtbl -> get_BytesSentTotal(This,aBytesSentTotal)

#define IVRDEServerInfo_get_BytesReceived(This,aBytesReceived)	\
    (This)->lpVtbl -> get_BytesReceived(This,aBytesReceived)

#define IVRDEServerInfo_get_BytesReceivedTotal(This,aBytesReceivedTotal)	\
    (This)->lpVtbl -> get_BytesReceivedTotal(This,aBytesReceivedTotal)

#define IVRDEServerInfo_get_User(This,aUser)	\
    (This)->lpVtbl -> get_User(This,aUser)

#define IVRDEServerInfo_get_Domain(This,aDomain)	\
    (This)->lpVtbl -> get_Domain(This,aDomain)

#define IVRDEServerInfo_get_ClientName(This,aClientName)	\
    (This)->lpVtbl -> get_ClientName(This,aClientName)

#define IVRDEServerInfo_get_ClientIP(This,aClientIP)	\
    (This)->lpVtbl -> get_ClientIP(This,aClientIP)

#define IVRDEServerInfo_get_ClientVersion(This,aClientVersion)	\
    (This)->lpVtbl -> get_ClientVersion(This,aClientVersion)

#define IVRDEServerInfo_get_EncryptionStyle(This,aEncryptionStyle)	\
    (This)->lpVtbl -> get_EncryptionStyle(This,aEncryptionStyle)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_Active_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ BOOL *aActive);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_Port_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG *aPort);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_NumberOfClients_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ ULONG *aNumberOfClients);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_BeginTime_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG64 *aBeginTime);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_EndTime_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG64 *aEndTime);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_BytesSent_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG64 *aBytesSent);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_BytesSentTotal_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG64 *aBytesSentTotal);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_BytesReceived_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG64 *aBytesReceived);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_BytesReceivedTotal_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ LONG64 *aBytesReceivedTotal);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_User_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ BSTR *aUser);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_Domain_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ BSTR *aDomain);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_ClientName_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ BSTR *aClientName);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_ClientIP_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ BSTR *aClientIP);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_ClientVersion_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ ULONG *aClientVersion);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServerInfo_get_EncryptionStyle_Proxy( 
    IVRDEServerInfo * This,
    /* [retval][out] */ ULONG *aEncryptionStyle);


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



#endif 	/* __IVRDEServerInfo_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("1968b7d3-e3bf-4ceb-99e0-cb7c913317bb")
    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_VRDEServerInfo( 
            /* [retval][out] */ IVRDEServerInfo **aVRDEServerInfo) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EventSource( 
            /* [retval][out] */ IEventSource **aEventSource) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AttachedPciDevices( 
            /* [retval][out] */ SAFEARRAY * *aAttachedPciDevices) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UseHostClipboard( 
            /* [retval][out] */ BOOL *aUseHostClipboard) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UseHostClipboard( 
            /* [in] */ BOOL aUseHostClipboard) = 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 DiscardSavedState( 
            /* [in] */ BOOL aFRemoveFile) = 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,
            /* [in] */ BOOL aAutomount) = 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 DeleteSnapshotAndAllChildren( 
            /* [in] */ BSTR aId,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteSnapshotRange( 
            /* [in] */ BSTR aStartId,
            /* [in] */ BSTR aEndId,
            /* [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;
        
    };
    
#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_VRDEServerInfo )( 
            IConsole * This,
            /* [retval][out] */ IVRDEServerInfo **aVRDEServerInfo);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventSource )( 
            IConsole * This,
            /* [retval][out] */ IEventSource **aEventSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AttachedPciDevices )( 
            IConsole * This,
            /* [retval][out] */ SAFEARRAY * *aAttachedPciDevices);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UseHostClipboard )( 
            IConsole * This,
            /* [retval][out] */ BOOL *aUseHostClipboard);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UseHostClipboard )( 
            IConsole * This,
            /* [in] */ BOOL aUseHostClipboard);
        
        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 *DiscardSavedState )( 
            IConsole * This,
            /* [in] */ BOOL aFRemoveFile);
        
        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,
            /* [in] */ BOOL aAutomount);
        
        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 *DeleteSnapshotAndAllChildren )( 
            IConsole * This,
            /* [in] */ BSTR aId,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteSnapshotRange )( 
            IConsole * This,
            /* [in] */ BSTR aStartId,
            /* [in] */ BSTR aEndId,
            /* [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);
        
        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_VRDEServerInfo(This,aVRDEServerInfo)	\
    (This)->lpVtbl -> get_VRDEServerInfo(This,aVRDEServerInfo)

#define IConsole_get_EventSource(This,aEventSource)	\
    (This)->lpVtbl -> get_EventSource(This,aEventSource)

#define IConsole_get_AttachedPciDevices(This,aAttachedPciDevices)	\
    (This)->lpVtbl -> get_AttachedPciDevices(This,aAttachedPciDevices)

#define IConsole_get_UseHostClipboard(This,aUseHostClipboard)	\
    (This)->lpVtbl -> get_UseHostClipboard(This,aUseHostClipboard)

#define IConsole_put_UseHostClipboard(This,aUseHostClipboard)	\
    (This)->lpVtbl -> put_UseHostClipboard(This,aUseHostClipboard)

#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_DiscardSavedState(This,aFRemoveFile)	\
    (This)->lpVtbl -> DiscardSavedState(This,aFRemoveFile)

#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,aAutomount)	\
    (This)->lpVtbl -> CreateSharedFolder(This,aName,aHostPath,aWritable,aAutomount)

#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_DeleteSnapshotAndAllChildren(This,aId,aProgress)	\
    (This)->lpVtbl -> DeleteSnapshotAndAllChildren(This,aId,aProgress)

#define IConsole_DeleteSnapshotRange(This,aStartId,aEndId,aProgress)	\
    (This)->lpVtbl -> DeleteSnapshotRange(This,aStartId,aEndId,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)

#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_VRDEServerInfo_Proxy( 
    IConsole * This,
    /* [retval][out] */ IVRDEServerInfo **aVRDEServerInfo);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_EventSource_Proxy( 
    IConsole * This,
    /* [retval][out] */ IEventSource **aEventSource);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_AttachedPciDevices_Proxy( 
    IConsole * This,
    /* [retval][out] */ SAFEARRAY * *aAttachedPciDevices);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IConsole_get_UseHostClipboard_Proxy( 
    IConsole * This,
    /* [retval][out] */ BOOL *aUseHostClipboard);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IConsole_put_UseHostClipboard_Proxy( 
    IConsole * This,
    /* [in] */ BOOL aUseHostClipboard);


void __RPC_STUB IConsole_put_UseHostClipboard_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_DiscardSavedState_Proxy( 
    IConsole * This,
    /* [in] */ BOOL aFRemoveFile);


void __RPC_STUB IConsole_DiscardSavedState_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,
    /* [in] */ BOOL aAutomount);


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_DeleteSnapshotAndAllChildren_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aId,
    /* [retval][out] */ IProgress **aProgress);


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


HRESULT STDMETHODCALLTYPE IConsole_DeleteSnapshotRange_Proxy( 
    IConsole * This,
    /* [in] */ BSTR aStartId,
    /* [in] */ BSTR aEndId,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IConsole_DeleteSnapshotRange_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);



#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("dab4a2b8-c735-4f08-94fc-9bec84182e2f")
    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_ProcessorCoreCount( 
            /* [retval][out] */ ULONG *aProcessorCoreCount) = 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;
        
        virtual HRESULT STDMETHODCALLTYPE GenerateMACAddress( 
            /* [retval][out] */ BSTR *aAddress) = 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_ProcessorCoreCount )( 
            IHost * This,
            /* [retval][out] */ ULONG *aProcessorCoreCount);
        
        /* [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);
        
        HRESULT ( STDMETHODCALLTYPE *GenerateMACAddress )( 
            IHost * This,
            /* [retval][out] */ BSTR *aAddress);
        
        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_ProcessorCoreCount(This,aProcessorCoreCount)	\
    (This)->lpVtbl -> get_ProcessorCoreCount(This,aProcessorCoreCount)

#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)

#define IHost_GenerateMACAddress(This,aAddress)	\
    (This)->lpVtbl -> GenerateMACAddress(This,aAddress)

#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_ProcessorCoreCount_Proxy( 
    IHost * This,
    /* [retval][out] */ ULONG *aProcessorCoreCount);


void __RPC_STUB IHost_get_ProcessorCoreCount_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);


HRESULT STDMETHODCALLTYPE IHost_GenerateMACAddress_Proxy( 
    IHost * This,
    /* [retval][out] */ BSTR *aAddress);


void __RPC_STUB IHost_GenerateMACAddress_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("8a0ab9ab-48c1-4d04-954b-4a751413d084")
    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_MaxGuestMonitors( 
            /* [retval][out] */ ULONG *aMaxGuestMonitors) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_InfoVDSize( 
            /* [retval][out] */ LONG64 *aInfoVDSize) = 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_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_FreeDiskSpaceWarning( 
            /* [retval][out] */ LONG64 *aFreeDiskSpaceWarning) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FreeDiskSpaceWarning( 
            /* [in] */ LONG64 aFreeDiskSpaceWarning) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FreeDiskSpacePercentWarning( 
            /* [retval][out] */ ULONG *aFreeDiskSpacePercentWarning) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FreeDiskSpacePercentWarning( 
            /* [in] */ ULONG aFreeDiskSpacePercentWarning) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FreeDiskSpaceError( 
            /* [retval][out] */ LONG64 *aFreeDiskSpaceError) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FreeDiskSpaceError( 
            /* [in] */ LONG64 aFreeDiskSpaceError) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FreeDiskSpacePercentError( 
            /* [retval][out] */ ULONG *aFreeDiskSpacePercentError) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_FreeDiskSpacePercentError( 
            /* [in] */ ULONG aFreeDiskSpacePercentError) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VRDEAuthLibrary( 
            /* [retval][out] */ BSTR *aVRDEAuthLibrary) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_VRDEAuthLibrary( 
            /* [in] */ BSTR aVRDEAuthLibrary) = 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_DefaultVRDEExtPack( 
            /* [retval][out] */ BSTR *aDefaultVRDEExtPack) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DefaultVRDEExtPack( 
            /* [in] */ BSTR aDefaultVRDEExtPack) = 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 GetMaxNetworkAdapters( 
            /* [in] */ ChipsetType aChipset,
            /* [retval][out] */ ULONG *aMaxNetworkAdapters) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMaxNetworkAdaptersOfType( 
            /* [in] */ ChipsetType aChipset,
            /* [in] */ NetworkAttachmentType aType,
            /* [retval][out] */ ULONG *aMaxNetworkAdapters) = 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] */ ChipsetType aChipset,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxInstances) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDeviceTypesForStorageBus( 
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ SAFEARRAY * *aDeviceTypes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetDefaultIoCacheSettingForStorageController( 
            /* [in] */ StorageControllerType aControllerType,
            /* [retval][out] */ BOOL *aEnabled) = 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_MaxGuestMonitors )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aMaxGuestMonitors);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_InfoVDSize )( 
            ISystemProperties * This,
            /* [retval][out] */ LONG64 *aInfoVDSize);
        
        /* [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_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_FreeDiskSpaceWarning )( 
            ISystemProperties * This,
            /* [retval][out] */ LONG64 *aFreeDiskSpaceWarning);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FreeDiskSpaceWarning )( 
            ISystemProperties * This,
            /* [in] */ LONG64 aFreeDiskSpaceWarning);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeDiskSpacePercentWarning )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aFreeDiskSpacePercentWarning);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FreeDiskSpacePercentWarning )( 
            ISystemProperties * This,
            /* [in] */ ULONG aFreeDiskSpacePercentWarning);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeDiskSpaceError )( 
            ISystemProperties * This,
            /* [retval][out] */ LONG64 *aFreeDiskSpaceError);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FreeDiskSpaceError )( 
            ISystemProperties * This,
            /* [in] */ LONG64 aFreeDiskSpaceError);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FreeDiskSpacePercentError )( 
            ISystemProperties * This,
            /* [retval][out] */ ULONG *aFreeDiskSpacePercentError);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_FreeDiskSpacePercentError )( 
            ISystemProperties * This,
            /* [in] */ ULONG aFreeDiskSpacePercentError);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDEAuthLibrary )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aVRDEAuthLibrary);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_VRDEAuthLibrary )( 
            ISystemProperties * This,
            /* [in] */ BSTR aVRDEAuthLibrary);
        
        /* [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_DefaultVRDEExtPack )( 
            ISystemProperties * This,
            /* [retval][out] */ BSTR *aDefaultVRDEExtPack);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DefaultVRDEExtPack )( 
            ISystemProperties * This,
            /* [in] */ BSTR aDefaultVRDEExtPack);
        
        /* [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 *GetMaxNetworkAdapters )( 
            ISystemProperties * This,
            /* [in] */ ChipsetType aChipset,
            /* [retval][out] */ ULONG *aMaxNetworkAdapters);
        
        HRESULT ( STDMETHODCALLTYPE *GetMaxNetworkAdaptersOfType )( 
            ISystemProperties * This,
            /* [in] */ ChipsetType aChipset,
            /* [in] */ NetworkAttachmentType aType,
            /* [retval][out] */ ULONG *aMaxNetworkAdapters);
        
        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] */ ChipsetType aChipset,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ ULONG *aMaxInstances);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeviceTypesForStorageBus )( 
            ISystemProperties * This,
            /* [in] */ StorageBus aBus,
            /* [retval][out] */ SAFEARRAY * *aDeviceTypes);
        
        HRESULT ( STDMETHODCALLTYPE *GetDefaultIoCacheSettingForStorageController )( 
            ISystemProperties * This,
            /* [in] */ StorageControllerType aControllerType,
            /* [retval][out] */ BOOL *aEnabled);
        
        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_MaxGuestMonitors(This,aMaxGuestMonitors)	\
    (This)->lpVtbl -> get_MaxGuestMonitors(This,aMaxGuestMonitors)

#define ISystemProperties_get_InfoVDSize(This,aInfoVDSize)	\
    (This)->lpVtbl -> get_InfoVDSize(This,aInfoVDSize)

#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_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_FreeDiskSpaceWarning(This,aFreeDiskSpaceWarning)	\
    (This)->lpVtbl -> get_FreeDiskSpaceWarning(This,aFreeDiskSpaceWarning)

#define ISystemProperties_put_FreeDiskSpaceWarning(This,aFreeDiskSpaceWarning)	\
    (This)->lpVtbl -> put_FreeDiskSpaceWarning(This,aFreeDiskSpaceWarning)

#define ISystemProperties_get_FreeDiskSpacePercentWarning(This,aFreeDiskSpacePercentWarning)	\
    (This)->lpVtbl -> get_FreeDiskSpacePercentWarning(This,aFreeDiskSpacePercentWarning)

#define ISystemProperties_put_FreeDiskSpacePercentWarning(This,aFreeDiskSpacePercentWarning)	\
    (This)->lpVtbl -> put_FreeDiskSpacePercentWarning(This,aFreeDiskSpacePercentWarning)

#define ISystemProperties_get_FreeDiskSpaceError(This,aFreeDiskSpaceError)	\
    (This)->lpVtbl -> get_FreeDiskSpaceError(This,aFreeDiskSpaceError)

#define ISystemProperties_put_FreeDiskSpaceError(This,aFreeDiskSpaceError)	\
    (This)->lpVtbl -> put_FreeDiskSpaceError(This,aFreeDiskSpaceError)

#define ISystemProperties_get_FreeDiskSpacePercentError(This,aFreeDiskSpacePercentError)	\
    (This)->lpVtbl -> get_FreeDiskSpacePercentError(This,aFreeDiskSpacePercentError)

#define ISystemProperties_put_FreeDiskSpacePercentError(This,aFreeDiskSpacePercentError)	\
    (This)->lpVtbl -> put_FreeDiskSpacePercentError(This,aFreeDiskSpacePercentError)

#define ISystemProperties_get_VRDEAuthLibrary(This,aVRDEAuthLibrary)	\
    (This)->lpVtbl -> get_VRDEAuthLibrary(This,aVRDEAuthLibrary)

#define ISystemProperties_put_VRDEAuthLibrary(This,aVRDEAuthLibrary)	\
    (This)->lpVtbl -> put_VRDEAuthLibrary(This,aVRDEAuthLibrary)

#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_DefaultVRDEExtPack(This,aDefaultVRDEExtPack)	\
    (This)->lpVtbl -> get_DefaultVRDEExtPack(This,aDefaultVRDEExtPack)

#define ISystemProperties_put_DefaultVRDEExtPack(This,aDefaultVRDEExtPack)	\
    (This)->lpVtbl -> put_DefaultVRDEExtPack(This,aDefaultVRDEExtPack)

#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_GetMaxNetworkAdapters(This,aChipset,aMaxNetworkAdapters)	\
    (This)->lpVtbl -> GetMaxNetworkAdapters(This,aChipset,aMaxNetworkAdapters)

#define ISystemProperties_GetMaxNetworkAdaptersOfType(This,aChipset,aType,aMaxNetworkAdapters)	\
    (This)->lpVtbl -> GetMaxNetworkAdaptersOfType(This,aChipset,aType,aMaxNetworkAdapters)

#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,aChipset,aBus,aMaxInstances)	\
    (This)->lpVtbl -> GetMaxInstancesOfStorageBus(This,aChipset,aBus,aMaxInstances)

#define ISystemProperties_GetDeviceTypesForStorageBus(This,aBus,aDeviceTypes)	\
    (This)->lpVtbl -> GetDeviceTypesForStorageBus(This,aBus,aDeviceTypes)

#define ISystemProperties_GetDefaultIoCacheSettingForStorageController(This,aControllerType,aEnabled)	\
    (This)->lpVtbl -> GetDefaultIoCacheSettingForStorageController(This,aControllerType,aEnabled)

#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_MaxGuestMonitors_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aMaxGuestMonitors);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_InfoVDSize_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ LONG64 *aInfoVDSize);


void __RPC_STUB ISystemProperties_get_InfoVDSize_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_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_FreeDiskSpaceWarning_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ LONG64 *aFreeDiskSpaceWarning);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_FreeDiskSpaceWarning_Proxy( 
    ISystemProperties * This,
    /* [in] */ LONG64 aFreeDiskSpaceWarning);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_FreeDiskSpacePercentWarning_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aFreeDiskSpacePercentWarning);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_FreeDiskSpacePercentWarning_Proxy( 
    ISystemProperties * This,
    /* [in] */ ULONG aFreeDiskSpacePercentWarning);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_FreeDiskSpaceError_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ LONG64 *aFreeDiskSpaceError);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_FreeDiskSpaceError_Proxy( 
    ISystemProperties * This,
    /* [in] */ LONG64 aFreeDiskSpaceError);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_FreeDiskSpacePercentError_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ ULONG *aFreeDiskSpacePercentError);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_FreeDiskSpacePercentError_Proxy( 
    ISystemProperties * This,
    /* [in] */ ULONG aFreeDiskSpacePercentError);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE ISystemProperties_get_VRDEAuthLibrary_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aVRDEAuthLibrary);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_VRDEAuthLibrary_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aVRDEAuthLibrary);


void __RPC_STUB ISystemProperties_put_VRDEAuthLibrary_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_DefaultVRDEExtPack_Proxy( 
    ISystemProperties * This,
    /* [retval][out] */ BSTR *aDefaultVRDEExtPack);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE ISystemProperties_put_DefaultVRDEExtPack_Proxy( 
    ISystemProperties * This,
    /* [in] */ BSTR aDefaultVRDEExtPack);


void __RPC_STUB ISystemProperties_put_DefaultVRDEExtPack_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_GetMaxNetworkAdapters_Proxy( 
    ISystemProperties * This,
    /* [in] */ ChipsetType aChipset,
    /* [retval][out] */ ULONG *aMaxNetworkAdapters);


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


HRESULT STDMETHODCALLTYPE ISystemProperties_GetMaxNetworkAdaptersOfType_Proxy( 
    ISystemProperties * This,
    /* [in] */ ChipsetType aChipset,
    /* [in] */ NetworkAttachmentType aType,
    /* [retval][out] */ ULONG *aMaxNetworkAdapters);


void __RPC_STUB ISystemProperties_GetMaxNetworkAdaptersOfType_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] */ ChipsetType aChipset,
    /* [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);


HRESULT STDMETHODCALLTYPE ISystemProperties_GetDefaultIoCacheSettingForStorageController_Proxy( 
    ISystemProperties * This,
    /* [in] */ StorageControllerType aControllerType,
    /* [retval][out] */ BOOL *aEnabled);


void __RPC_STUB ISystemProperties_GetDefaultIoCacheSettingForStorageController_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("432c1546-1354-4abf-bf08-878a32a373f5")
    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] */ LONG64 *aRecommendedHDD) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdapterType( 
            /* [retval][out] */ NetworkAdapterType *aAdapterType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedPae( 
            /* [retval][out] */ BOOL *aRecommendedPae) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedDvdStorageController( 
            /* [retval][out] */ StorageControllerType *aRecommendedDvdStorageController) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedDvdStorageBus( 
            /* [retval][out] */ StorageBus *aRecommendedDvdStorageBus) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedHdStorageController( 
            /* [retval][out] */ StorageControllerType *aRecommendedHdStorageController) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedHdStorageBus( 
            /* [retval][out] */ StorageBus *aRecommendedHdStorageBus) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedFirmware( 
            /* [retval][out] */ FirmwareType *aRecommendedFirmware) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedUsbHid( 
            /* [retval][out] */ BOOL *aRecommendedUsbHid) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedHpet( 
            /* [retval][out] */ BOOL *aRecommendedHpet) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedUsbTablet( 
            /* [retval][out] */ BOOL *aRecommendedUsbTablet) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedRtcUseUtc( 
            /* [retval][out] */ BOOL *aRecommendedRtcUseUtc) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedChipset( 
            /* [retval][out] */ ChipsetType *aRecommendedChipset) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RecommendedAudioController( 
            /* [retval][out] */ AudioControllerType *aRecommendedAudioController) = 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] */ LONG64 *aRecommendedHDD);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdapterType )( 
            IGuestOSType * This,
            /* [retval][out] */ NetworkAdapterType *aAdapterType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedPae )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedPae);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedDvdStorageController )( 
            IGuestOSType * This,
            /* [retval][out] */ StorageControllerType *aRecommendedDvdStorageController);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedDvdStorageBus )( 
            IGuestOSType * This,
            /* [retval][out] */ StorageBus *aRecommendedDvdStorageBus);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedHdStorageController )( 
            IGuestOSType * This,
            /* [retval][out] */ StorageControllerType *aRecommendedHdStorageController);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedHdStorageBus )( 
            IGuestOSType * This,
            /* [retval][out] */ StorageBus *aRecommendedHdStorageBus);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedFirmware )( 
            IGuestOSType * This,
            /* [retval][out] */ FirmwareType *aRecommendedFirmware);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedUsbHid )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedUsbHid);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedHpet )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedHpet);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedUsbTablet )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedUsbTablet);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedRtcUseUtc )( 
            IGuestOSType * This,
            /* [retval][out] */ BOOL *aRecommendedRtcUseUtc);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedChipset )( 
            IGuestOSType * This,
            /* [retval][out] */ ChipsetType *aRecommendedChipset);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RecommendedAudioController )( 
            IGuestOSType * This,
            /* [retval][out] */ AudioControllerType *aRecommendedAudioController);
        
        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)

#define IGuestOSType_get_RecommendedPae(This,aRecommendedPae)	\
    (This)->lpVtbl -> get_RecommendedPae(This,aRecommendedPae)

#define IGuestOSType_get_RecommendedDvdStorageController(This,aRecommendedDvdStorageController)	\
    (This)->lpVtbl -> get_RecommendedDvdStorageController(This,aRecommendedDvdStorageController)

#define IGuestOSType_get_RecommendedDvdStorageBus(This,aRecommendedDvdStorageBus)	\
    (This)->lpVtbl -> get_RecommendedDvdStorageBus(This,aRecommendedDvdStorageBus)

#define IGuestOSType_get_RecommendedHdStorageController(This,aRecommendedHdStorageController)	\
    (This)->lpVtbl -> get_RecommendedHdStorageController(This,aRecommendedHdStorageController)

#define IGuestOSType_get_RecommendedHdStorageBus(This,aRecommendedHdStorageBus)	\
    (This)->lpVtbl -> get_RecommendedHdStorageBus(This,aRecommendedHdStorageBus)

#define IGuestOSType_get_RecommendedFirmware(This,aRecommendedFirmware)	\
    (This)->lpVtbl -> get_RecommendedFirmware(This,aRecommendedFirmware)

#define IGuestOSType_get_RecommendedUsbHid(This,aRecommendedUsbHid)	\
    (This)->lpVtbl -> get_RecommendedUsbHid(This,aRecommendedUsbHid)

#define IGuestOSType_get_RecommendedHpet(This,aRecommendedHpet)	\
    (This)->lpVtbl -> get_RecommendedHpet(This,aRecommendedHpet)

#define IGuestOSType_get_RecommendedUsbTablet(This,aRecommendedUsbTablet)	\
    (This)->lpVtbl -> get_RecommendedUsbTablet(This,aRecommendedUsbTablet)

#define IGuestOSType_get_RecommendedRtcUseUtc(This,aRecommendedRtcUseUtc)	\
    (This)->lpVtbl -> get_RecommendedRtcUseUtc(This,aRecommendedRtcUseUtc)

#define IGuestOSType_get_RecommendedChipset(This,aRecommendedChipset)	\
    (This)->lpVtbl -> get_RecommendedChipset(This,aRecommendedChipset)

#define IGuestOSType_get_RecommendedAudioController(This,aRecommendedAudioController)	\
    (This)->lpVtbl -> get_RecommendedAudioController(This,aRecommendedAudioController)

#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] */ LONG64 *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);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedPae_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedPae);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedDvdStorageController_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ StorageControllerType *aRecommendedDvdStorageController);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedDvdStorageBus_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ StorageBus *aRecommendedDvdStorageBus);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedHdStorageController_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ StorageControllerType *aRecommendedHdStorageController);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedHdStorageBus_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ StorageBus *aRecommendedHdStorageBus);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedFirmware_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ FirmwareType *aRecommendedFirmware);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedUsbHid_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedUsbHid);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedHpet_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedHpet);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedUsbTablet_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedUsbTablet);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedRtcUseUtc_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ BOOL *aRecommendedRtcUseUtc);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedChipset_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ ChipsetType *aRecommendedChipset);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestOSType_get_RecommendedAudioController_Proxy( 
    IGuestOSType * This,
    /* [retval][out] */ AudioControllerType *aRecommendedAudioController);


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



#endif 	/* __IGuestOSType_INTERFACE_DEFINED__ */


#ifndef __IAdditionsFacility_INTERFACE_DEFINED__
#define __IAdditionsFacility_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IAdditionsFacility;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("54992946-6af1-4e49-98ec-58b558b7291e")
    IAdditionsFacility : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ClassType( 
            /* [retval][out] */ AdditionsFacilityClass *aClassType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LastUpdated( 
            /* [retval][out] */ LONG64 *aLastUpdated) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
            /* [retval][out] */ AdditionsFacilityStatus *aStatus) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ AdditionsFacilityType *aType) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IAdditionsFacilityVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAdditionsFacility * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAdditionsFacility * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAdditionsFacility * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAdditionsFacility * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAdditionsFacility * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAdditionsFacility * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAdditionsFacility * 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_ClassType )( 
            IAdditionsFacility * This,
            /* [retval][out] */ AdditionsFacilityClass *aClassType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LastUpdated )( 
            IAdditionsFacility * This,
            /* [retval][out] */ LONG64 *aLastUpdated);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IAdditionsFacility * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
            IAdditionsFacility * This,
            /* [retval][out] */ AdditionsFacilityStatus *aStatus);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IAdditionsFacility * This,
            /* [retval][out] */ AdditionsFacilityType *aType);
        
        END_INTERFACE
    } IAdditionsFacilityVtbl;

    interface IAdditionsFacility
    {
        CONST_VTBL struct IAdditionsFacilityVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IAdditionsFacility_get_ClassType(This,aClassType)	\
    (This)->lpVtbl -> get_ClassType(This,aClassType)

#define IAdditionsFacility_get_LastUpdated(This,aLastUpdated)	\
    (This)->lpVtbl -> get_LastUpdated(This,aLastUpdated)

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

#define IAdditionsFacility_get_Status(This,aStatus)	\
    (This)->lpVtbl -> get_Status(This,aStatus)

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

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IAdditionsFacility_get_ClassType_Proxy( 
    IAdditionsFacility * This,
    /* [retval][out] */ AdditionsFacilityClass *aClassType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IAdditionsFacility_get_LastUpdated_Proxy( 
    IAdditionsFacility * This,
    /* [retval][out] */ LONG64 *aLastUpdated);


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


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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IAdditionsFacility_get_Status_Proxy( 
    IAdditionsFacility * This,
    /* [retval][out] */ AdditionsFacilityStatus *aStatus);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IAdditionsFacility_get_Type_Proxy( 
    IAdditionsFacility * This,
    /* [retval][out] */ AdditionsFacilityType *aType);


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



#endif 	/* __IAdditionsFacility_INTERFACE_DEFINED__ */


#ifndef __IGuestDirEntry_INTERFACE_DEFINED__
#define __IGuestDirEntry_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IGuestDirEntry;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("20a66efc-c2f6-4438-826f-38454c04369e")
    IGuestDirEntry : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NodeId( 
            /* [retval][out] */ LONG64 *aNodeId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ GuestDirEntryType *aType) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestDirEntryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuestDirEntry * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuestDirEntry * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuestDirEntry * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuestDirEntry * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuestDirEntry * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuestDirEntry * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuestDirEntry * 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_NodeId )( 
            IGuestDirEntry * This,
            /* [retval][out] */ LONG64 *aNodeId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IGuestDirEntry * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IGuestDirEntry * This,
            /* [retval][out] */ GuestDirEntryType *aType);
        
        END_INTERFACE
    } IGuestDirEntryVtbl;

    interface IGuestDirEntry
    {
        CONST_VTBL struct IGuestDirEntryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IGuestDirEntry_get_NodeId(This,aNodeId)	\
    (This)->lpVtbl -> get_NodeId(This,aNodeId)

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestDirEntry_get_NodeId_Proxy( 
    IGuestDirEntry * This,
    /* [retval][out] */ LONG64 *aNodeId);


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


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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestDirEntry_get_Type_Proxy( 
    IGuestDirEntry * This,
    /* [retval][out] */ GuestDirEntryType *aType);


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



#endif 	/* __IGuestDirEntry_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("ed109b6e-0578-4b17-8ace-52646789f1a0")
    IGuest : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OSTypeId( 
            /* [retval][out] */ BSTR *aOSTypeId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdditionsRunLevel( 
            /* [retval][out] */ AdditionsRunLevelType *aAdditionsRunLevel) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdditionsVersion( 
            /* [retval][out] */ BSTR *aAdditionsVersion) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Facilities( 
            /* [retval][out] */ SAFEARRAY * *aFacilities) = 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 InternalGetStatistics( 
            /* [out] */ ULONG *aCpuUser,
            /* [out] */ ULONG *aCpuKernel,
            /* [out] */ ULONG *aCpuIdle,
            /* [out] */ ULONG *aMemTotal,
            /* [out] */ ULONG *aMemFree,
            /* [out] */ ULONG *aMemBalloon,
            /* [out] */ ULONG *aMemShared,
            /* [out] */ ULONG *aMemCache,
            /* [out] */ ULONG *aPagedTotal,
            /* [out] */ ULONG *aMemAllocTotal,
            /* [out] */ ULONG *aMemFreeTotal,
            /* [out] */ ULONG *aMemBalloonTotal,
            /* [out] */ ULONG *aMemSharedTotal) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetFacilityStatus( 
            /* [in] */ AdditionsFacilityType aFacility,
            /* [out] */ LONG64 *aTimestamp,
            /* [retval][out] */ AdditionsFacilityStatus *aStatus) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetAdditionsStatus( 
            /* [in] */ AdditionsRunLevelType aLevel,
            /* [retval][out] */ BOOL *aActive) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetCredentials( 
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ BSTR aDomain,
            /* [in] */ BOOL aAllowInteractiveLogon) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ExecuteProcess( 
            /* [in] */ BSTR aExecName,
            /* [in] */ ULONG aFlags,
            /* [in] */ SAFEARRAY * aArguments,
            /* [in] */ SAFEARRAY * aEnvironment,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aTimeoutMS,
            /* [out] */ ULONG *aPid,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProcessOutput( 
            /* [in] */ ULONG aPid,
            /* [in] */ ULONG aFlags,
            /* [in] */ ULONG aTimeoutMS,
            /* [in] */ LONG64 aSize,
            /* [retval][out] */ SAFEARRAY * *aData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProcessStatus( 
            /* [in] */ ULONG aPid,
            /* [out] */ ULONG *aExitcode,
            /* [out] */ ULONG *aFlags,
            /* [retval][out] */ ExecuteProcessStatus *aReason) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CopyFromGuest( 
            /* [in] */ BSTR aSource,
            /* [in] */ BSTR aDest,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aFlags,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CopyToGuest( 
            /* [in] */ BSTR aSource,
            /* [in] */ BSTR aDest,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aFlags,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DirectoryClose( 
            /* [in] */ ULONG aHandle) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DirectoryCreate( 
            /* [in] */ BSTR aDirectory,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aMode,
            /* [in] */ ULONG aFlags) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DirectoryOpen( 
            /* [in] */ BSTR aDirectory,
            /* [in] */ BSTR aFilter,
            /* [in] */ ULONG aFlags,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [retval][out] */ ULONG *aHandle) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DirectoryRead( 
            /* [in] */ ULONG aHandle,
            /* [retval][out] */ IGuestDirEntry **aEntry) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FileExists( 
            /* [in] */ BSTR aFile,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [retval][out] */ BOOL *aExists) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FileQuerySize( 
            /* [in] */ BSTR aFile,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [retval][out] */ LONG64 *aSize) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetProcessInput( 
            /* [in] */ ULONG aPid,
            /* [in] */ ULONG aFlags,
            /* [in] */ ULONG aTimeoutMS,
            /* [in] */ SAFEARRAY * aData,
            /* [retval][out] */ ULONG *aWritten) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UpdateGuestAdditions( 
            /* [in] */ BSTR aSource,
            /* [in] */ ULONG aFlags,
            /* [retval][out] */ IProgress **aProgress) = 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_AdditionsRunLevel )( 
            IGuest * This,
            /* [retval][out] */ AdditionsRunLevelType *aAdditionsRunLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdditionsVersion )( 
            IGuest * This,
            /* [retval][out] */ BSTR *aAdditionsVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Facilities )( 
            IGuest * This,
            /* [retval][out] */ SAFEARRAY * *aFacilities);
        
        /* [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 *InternalGetStatistics )( 
            IGuest * This,
            /* [out] */ ULONG *aCpuUser,
            /* [out] */ ULONG *aCpuKernel,
            /* [out] */ ULONG *aCpuIdle,
            /* [out] */ ULONG *aMemTotal,
            /* [out] */ ULONG *aMemFree,
            /* [out] */ ULONG *aMemBalloon,
            /* [out] */ ULONG *aMemShared,
            /* [out] */ ULONG *aMemCache,
            /* [out] */ ULONG *aPagedTotal,
            /* [out] */ ULONG *aMemAllocTotal,
            /* [out] */ ULONG *aMemFreeTotal,
            /* [out] */ ULONG *aMemBalloonTotal,
            /* [out] */ ULONG *aMemSharedTotal);
        
        HRESULT ( STDMETHODCALLTYPE *GetFacilityStatus )( 
            IGuest * This,
            /* [in] */ AdditionsFacilityType aFacility,
            /* [out] */ LONG64 *aTimestamp,
            /* [retval][out] */ AdditionsFacilityStatus *aStatus);
        
        HRESULT ( STDMETHODCALLTYPE *GetAdditionsStatus )( 
            IGuest * This,
            /* [in] */ AdditionsRunLevelType aLevel,
            /* [retval][out] */ BOOL *aActive);
        
        HRESULT ( STDMETHODCALLTYPE *SetCredentials )( 
            IGuest * This,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ BSTR aDomain,
            /* [in] */ BOOL aAllowInteractiveLogon);
        
        HRESULT ( STDMETHODCALLTYPE *ExecuteProcess )( 
            IGuest * This,
            /* [in] */ BSTR aExecName,
            /* [in] */ ULONG aFlags,
            /* [in] */ SAFEARRAY * aArguments,
            /* [in] */ SAFEARRAY * aEnvironment,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aTimeoutMS,
            /* [out] */ ULONG *aPid,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *GetProcessOutput )( 
            IGuest * This,
            /* [in] */ ULONG aPid,
            /* [in] */ ULONG aFlags,
            /* [in] */ ULONG aTimeoutMS,
            /* [in] */ LONG64 aSize,
            /* [retval][out] */ SAFEARRAY * *aData);
        
        HRESULT ( STDMETHODCALLTYPE *GetProcessStatus )( 
            IGuest * This,
            /* [in] */ ULONG aPid,
            /* [out] */ ULONG *aExitcode,
            /* [out] */ ULONG *aFlags,
            /* [retval][out] */ ExecuteProcessStatus *aReason);
        
        HRESULT ( STDMETHODCALLTYPE *CopyFromGuest )( 
            IGuest * This,
            /* [in] */ BSTR aSource,
            /* [in] */ BSTR aDest,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aFlags,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CopyToGuest )( 
            IGuest * This,
            /* [in] */ BSTR aSource,
            /* [in] */ BSTR aDest,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aFlags,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *DirectoryClose )( 
            IGuest * This,
            /* [in] */ ULONG aHandle);
        
        HRESULT ( STDMETHODCALLTYPE *DirectoryCreate )( 
            IGuest * This,
            /* [in] */ BSTR aDirectory,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [in] */ ULONG aMode,
            /* [in] */ ULONG aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *DirectoryOpen )( 
            IGuest * This,
            /* [in] */ BSTR aDirectory,
            /* [in] */ BSTR aFilter,
            /* [in] */ ULONG aFlags,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [retval][out] */ ULONG *aHandle);
        
        HRESULT ( STDMETHODCALLTYPE *DirectoryRead )( 
            IGuest * This,
            /* [in] */ ULONG aHandle,
            /* [retval][out] */ IGuestDirEntry **aEntry);
        
        HRESULT ( STDMETHODCALLTYPE *FileExists )( 
            IGuest * This,
            /* [in] */ BSTR aFile,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [retval][out] */ BOOL *aExists);
        
        HRESULT ( STDMETHODCALLTYPE *FileQuerySize )( 
            IGuest * This,
            /* [in] */ BSTR aFile,
            /* [in] */ BSTR aUserName,
            /* [in] */ BSTR aPassword,
            /* [retval][out] */ LONG64 *aSize);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessInput )( 
            IGuest * This,
            /* [in] */ ULONG aPid,
            /* [in] */ ULONG aFlags,
            /* [in] */ ULONG aTimeoutMS,
            /* [in] */ SAFEARRAY * aData,
            /* [retval][out] */ ULONG *aWritten);
        
        HRESULT ( STDMETHODCALLTYPE *UpdateGuestAdditions )( 
            IGuest * This,
            /* [in] */ BSTR aSource,
            /* [in] */ ULONG aFlags,
            /* [retval][out] */ IProgress **aProgress);
        
        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_AdditionsRunLevel(This,aAdditionsRunLevel)	\
    (This)->lpVtbl -> get_AdditionsRunLevel(This,aAdditionsRunLevel)

#define IGuest_get_AdditionsVersion(This,aAdditionsVersion)	\
    (This)->lpVtbl -> get_AdditionsVersion(This,aAdditionsVersion)

#define IGuest_get_Facilities(This,aFacilities)	\
    (This)->lpVtbl -> get_Facilities(This,aFacilities)

#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_InternalGetStatistics(This,aCpuUser,aCpuKernel,aCpuIdle,aMemTotal,aMemFree,aMemBalloon,aMemShared,aMemCache,aPagedTotal,aMemAllocTotal,aMemFreeTotal,aMemBalloonTotal,aMemSharedTotal)	\
    (This)->lpVtbl -> InternalGetStatistics(This,aCpuUser,aCpuKernel,aCpuIdle,aMemTotal,aMemFree,aMemBalloon,aMemShared,aMemCache,aPagedTotal,aMemAllocTotal,aMemFreeTotal,aMemBalloonTotal,aMemSharedTotal)

#define IGuest_GetFacilityStatus(This,aFacility,aTimestamp,aStatus)	\
    (This)->lpVtbl -> GetFacilityStatus(This,aFacility,aTimestamp,aStatus)

#define IGuest_GetAdditionsStatus(This,aLevel,aActive)	\
    (This)->lpVtbl -> GetAdditionsStatus(This,aLevel,aActive)

#define IGuest_SetCredentials(This,aUserName,aPassword,aDomain,aAllowInteractiveLogon)	\
    (This)->lpVtbl -> SetCredentials(This,aUserName,aPassword,aDomain,aAllowInteractiveLogon)

#define IGuest_ExecuteProcess(This,aExecName,aFlags,aArguments,aEnvironment,aUserName,aPassword,aTimeoutMS,aPid,aProgress)	\
    (This)->lpVtbl -> ExecuteProcess(This,aExecName,aFlags,aArguments,aEnvironment,aUserName,aPassword,aTimeoutMS,aPid,aProgress)

#define IGuest_GetProcessOutput(This,aPid,aFlags,aTimeoutMS,aSize,aData)	\
    (This)->lpVtbl -> GetProcessOutput(This,aPid,aFlags,aTimeoutMS,aSize,aData)

#define IGuest_GetProcessStatus(This,aPid,aExitcode,aFlags,aReason)	\
    (This)->lpVtbl -> GetProcessStatus(This,aPid,aExitcode,aFlags,aReason)

#define IGuest_CopyFromGuest(This,aSource,aDest,aUserName,aPassword,aFlags,aProgress)	\
    (This)->lpVtbl -> CopyFromGuest(This,aSource,aDest,aUserName,aPassword,aFlags,aProgress)

#define IGuest_CopyToGuest(This,aSource,aDest,aUserName,aPassword,aFlags,aProgress)	\
    (This)->lpVtbl -> CopyToGuest(This,aSource,aDest,aUserName,aPassword,aFlags,aProgress)

#define IGuest_DirectoryClose(This,aHandle)	\
    (This)->lpVtbl -> DirectoryClose(This,aHandle)

#define IGuest_DirectoryCreate(This,aDirectory,aUserName,aPassword,aMode,aFlags)	\
    (This)->lpVtbl -> DirectoryCreate(This,aDirectory,aUserName,aPassword,aMode,aFlags)

#define IGuest_DirectoryOpen(This,aDirectory,aFilter,aFlags,aUserName,aPassword,aHandle)	\
    (This)->lpVtbl -> DirectoryOpen(This,aDirectory,aFilter,aFlags,aUserName,aPassword,aHandle)

#define IGuest_DirectoryRead(This,aHandle,aEntry)	\
    (This)->lpVtbl -> DirectoryRead(This,aHandle,aEntry)

#define IGuest_FileExists(This,aFile,aUserName,aPassword,aExists)	\
    (This)->lpVtbl -> FileExists(This,aFile,aUserName,aPassword,aExists)

#define IGuest_FileQuerySize(This,aFile,aUserName,aPassword,aSize)	\
    (This)->lpVtbl -> FileQuerySize(This,aFile,aUserName,aPassword,aSize)

#define IGuest_SetProcessInput(This,aPid,aFlags,aTimeoutMS,aData,aWritten)	\
    (This)->lpVtbl -> SetProcessInput(This,aPid,aFlags,aTimeoutMS,aData,aWritten)

#define IGuest_UpdateGuestAdditions(This,aSource,aFlags,aProgress)	\
    (This)->lpVtbl -> UpdateGuestAdditions(This,aSource,aFlags,aProgress)

#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_AdditionsRunLevel_Proxy( 
    IGuest * This,
    /* [retval][out] */ AdditionsRunLevelType *aAdditionsRunLevel);


void __RPC_STUB IGuest_get_AdditionsRunLevel_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_Facilities_Proxy( 
    IGuest * This,
    /* [retval][out] */ SAFEARRAY * *aFacilities);


void __RPC_STUB IGuest_get_Facilities_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_InternalGetStatistics_Proxy( 
    IGuest * This,
    /* [out] */ ULONG *aCpuUser,
    /* [out] */ ULONG *aCpuKernel,
    /* [out] */ ULONG *aCpuIdle,
    /* [out] */ ULONG *aMemTotal,
    /* [out] */ ULONG *aMemFree,
    /* [out] */ ULONG *aMemBalloon,
    /* [out] */ ULONG *aMemShared,
    /* [out] */ ULONG *aMemCache,
    /* [out] */ ULONG *aPagedTotal,
    /* [out] */ ULONG *aMemAllocTotal,
    /* [out] */ ULONG *aMemFreeTotal,
    /* [out] */ ULONG *aMemBalloonTotal,
    /* [out] */ ULONG *aMemSharedTotal);


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


HRESULT STDMETHODCALLTYPE IGuest_GetFacilityStatus_Proxy( 
    IGuest * This,
    /* [in] */ AdditionsFacilityType aFacility,
    /* [out] */ LONG64 *aTimestamp,
    /* [retval][out] */ AdditionsFacilityStatus *aStatus);


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


HRESULT STDMETHODCALLTYPE IGuest_GetAdditionsStatus_Proxy( 
    IGuest * This,
    /* [in] */ AdditionsRunLevelType aLevel,
    /* [retval][out] */ BOOL *aActive);


void __RPC_STUB IGuest_GetAdditionsStatus_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_ExecuteProcess_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aExecName,
    /* [in] */ ULONG aFlags,
    /* [in] */ SAFEARRAY * aArguments,
    /* [in] */ SAFEARRAY * aEnvironment,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [in] */ ULONG aTimeoutMS,
    /* [out] */ ULONG *aPid,
    /* [retval][out] */ IProgress **aProgress);


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


HRESULT STDMETHODCALLTYPE IGuest_GetProcessOutput_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aPid,
    /* [in] */ ULONG aFlags,
    /* [in] */ ULONG aTimeoutMS,
    /* [in] */ LONG64 aSize,
    /* [retval][out] */ SAFEARRAY * *aData);


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


HRESULT STDMETHODCALLTYPE IGuest_GetProcessStatus_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aPid,
    /* [out] */ ULONG *aExitcode,
    /* [out] */ ULONG *aFlags,
    /* [retval][out] */ ExecuteProcessStatus *aReason);


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


HRESULT STDMETHODCALLTYPE IGuest_CopyFromGuest_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aSource,
    /* [in] */ BSTR aDest,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [in] */ ULONG aFlags,
    /* [retval][out] */ IProgress **aProgress);


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


HRESULT STDMETHODCALLTYPE IGuest_CopyToGuest_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aSource,
    /* [in] */ BSTR aDest,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [in] */ ULONG aFlags,
    /* [retval][out] */ IProgress **aProgress);


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


HRESULT STDMETHODCALLTYPE IGuest_DirectoryClose_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aHandle);


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


HRESULT STDMETHODCALLTYPE IGuest_DirectoryCreate_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aDirectory,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [in] */ ULONG aMode,
    /* [in] */ ULONG aFlags);


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


HRESULT STDMETHODCALLTYPE IGuest_DirectoryOpen_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aDirectory,
    /* [in] */ BSTR aFilter,
    /* [in] */ ULONG aFlags,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [retval][out] */ ULONG *aHandle);


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


HRESULT STDMETHODCALLTYPE IGuest_DirectoryRead_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aHandle,
    /* [retval][out] */ IGuestDirEntry **aEntry);


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


HRESULT STDMETHODCALLTYPE IGuest_FileExists_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aFile,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [retval][out] */ BOOL *aExists);


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


HRESULT STDMETHODCALLTYPE IGuest_FileQuerySize_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aFile,
    /* [in] */ BSTR aUserName,
    /* [in] */ BSTR aPassword,
    /* [retval][out] */ LONG64 *aSize);


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


HRESULT STDMETHODCALLTYPE IGuest_SetProcessInput_Proxy( 
    IGuest * This,
    /* [in] */ ULONG aPid,
    /* [in] */ ULONG aFlags,
    /* [in] */ ULONG aTimeoutMS,
    /* [in] */ SAFEARRAY * aData,
    /* [retval][out] */ ULONG *aWritten);


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


HRESULT STDMETHODCALLTYPE IGuest_UpdateGuestAdditions_Proxy( 
    IGuest * This,
    /* [in] */ BSTR aSource,
    /* [in] */ ULONG aFlags,
    /* [retval][out] */ IProgress **aProgress);


void __RPC_STUB IGuest_UpdateGuestAdditions_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("c20238e4-3221-4d3f-8891-81ce92d9f913")
    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_OperationWeight( 
            /* [retval][out] */ ULONG *aOperationWeight) = 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 WaitForAsyncProgressCompletion( 
            /* [in] */ IProgress *aPProgressAsync) = 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_OperationWeight )( 
            IProgress * This,
            /* [retval][out] */ ULONG *aOperationWeight);
        
        /* [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 *WaitForAsyncProgressCompletion )( 
            IProgress * This,
            /* [in] */ IProgress *aPProgressAsync);
        
        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_OperationWeight(This,aOperationWeight)	\
    (This)->lpVtbl -> get_OperationWeight(This,aOperationWeight)

#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_WaitForAsyncProgressCompletion(This,aPProgressAsync)	\
    (This)->lpVtbl -> WaitForAsyncProgressCompletion(This,aPProgressAsync)

#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_OperationWeight_Proxy( 
    IProgress * This,
    /* [retval][out] */ ULONG *aOperationWeight);


void __RPC_STUB IProgress_get_OperationWeight_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_WaitForAsyncProgressCompletion_Proxy( 
    IProgress * This,
    /* [in] */ IProgress *aPProgressAsync);


void __RPC_STUB IProgress_WaitForAsyncProgressCompletion_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("0472823b-c6e7-472a-8e9f-d732e86b8463")
    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;
        
        virtual HRESULT STDMETHODCALLTYPE GetChildrenCount( 
            /* [retval][out] */ ULONG *aChildrenCount) = 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);
        
        HRESULT ( STDMETHODCALLTYPE *GetChildrenCount )( 
            ISnapshot * This,
            /* [retval][out] */ ULONG *aChildrenCount);
        
        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)

#define ISnapshot_GetChildrenCount(This,aChildrenCount)	\
    (This)->lpVtbl -> GetChildrenCount(This,aChildrenCount)

#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);


HRESULT STDMETHODCALLTYPE ISnapshot_GetChildrenCount_Proxy( 
    ISnapshot * This,
    /* [retval][out] */ ULONG *aChildrenCount);


void __RPC_STUB ISnapshot_GetChildrenCount_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("b5dfbb8c-7498-48c3-bf10-78fc60f064e1")
    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;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TemporaryEject( 
            /* [retval][out] */ BOOL *aTemporaryEject) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsEjected( 
            /* [retval][out] */ BOOL *aIsEjected) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NonRotational( 
            /* [retval][out] */ BOOL *aNonRotational) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BandwidthGroup( 
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup) = 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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TemporaryEject )( 
            IMediumAttachment * This,
            /* [retval][out] */ BOOL *aTemporaryEject);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsEjected )( 
            IMediumAttachment * This,
            /* [retval][out] */ BOOL *aIsEjected);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NonRotational )( 
            IMediumAttachment * This,
            /* [retval][out] */ BOOL *aNonRotational);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BandwidthGroup )( 
            IMediumAttachment * This,
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);
        
        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)

#define IMediumAttachment_get_TemporaryEject(This,aTemporaryEject)	\
    (This)->lpVtbl -> get_TemporaryEject(This,aTemporaryEject)

#define IMediumAttachment_get_IsEjected(This,aIsEjected)	\
    (This)->lpVtbl -> get_IsEjected(This,aIsEjected)

#define IMediumAttachment_get_NonRotational(This,aNonRotational)	\
    (This)->lpVtbl -> get_NonRotational(This,aNonRotational)

#define IMediumAttachment_get_BandwidthGroup(This,aBandwidthGroup)	\
    (This)->lpVtbl -> get_BandwidthGroup(This,aBandwidthGroup)

#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);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_TemporaryEject_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ BOOL *aTemporaryEject);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_IsEjected_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ BOOL *aIsEjected);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_NonRotational_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ BOOL *aNonRotational);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumAttachment_get_BandwidthGroup_Proxy( 
    IMediumAttachment * This,
    /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);


void __RPC_STUB IMediumAttachment_get_BandwidthGroup_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("53f9cc0c-e0fd-40a5-a404-a7a5272082cd")
    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_Variant( 
            /* [retval][out] */ ULONG *aVariant) = 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] */ LONG64 *aSize) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Format( 
            /* [retval][out] */ BSTR *aFormat) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumFormat( 
            /* [retval][out] */ IMediumFormat **aMediumFormat) = 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_AllowedTypes( 
            /* [retval][out] */ SAFEARRAY * *aAllowedTypes) = 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] */ LONG64 *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 SetIDs( 
            /* [in] */ BOOL aSetImageId,
            /* [in] */ BSTR aImageId,
            /* [in] */ BOOL aSetParentId,
            /* [in] */ BSTR aParentId) = 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( 
            /* [in] */ SAFEARRAY * aNames,
            /* [in] */ SAFEARRAY * aValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateBaseStorage( 
            /* [in] */ LONG64 aLogicalSize,
            /* [in] */ ULONG aVariant,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteStorage( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateDiffStorage( 
            /* [in] */ IMedium *aTarget,
            /* [in] */ ULONG aVariant,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MergeTo( 
            /* [in] */ IMedium *aTarget,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CloneTo( 
            /* [in] */ IMedium *aTarget,
            /* [in] */ ULONG aVariant,
            /* [in] */ IMedium *aParent,
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Compact( 
            /* [retval][out] */ IProgress **aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Resize( 
            /* [in] */ LONG64 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_Variant )( 
            IMedium * This,
            /* [retval][out] */ ULONG *aVariant);
        
        /* [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] */ LONG64 *aSize);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Format )( 
            IMedium * This,
            /* [retval][out] */ BSTR *aFormat);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumFormat )( 
            IMedium * This,
            /* [retval][out] */ IMediumFormat **aMediumFormat);
        
        /* [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_AllowedTypes )( 
            IMedium * This,
            /* [retval][out] */ SAFEARRAY * *aAllowedTypes);
        
        /* [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] */ LONG64 *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 *SetIDs )( 
            IMedium * This,
            /* [in] */ BOOL aSetImageId,
            /* [in] */ BSTR aImageId,
            /* [in] */ BOOL aSetParentId,
            /* [in] */ BSTR aParentId);
        
        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,
            /* [in] */ SAFEARRAY * aNames,
            /* [in] */ SAFEARRAY * aValues);
        
        HRESULT ( STDMETHODCALLTYPE *CreateBaseStorage )( 
            IMedium * This,
            /* [in] */ LONG64 aLogicalSize,
            /* [in] */ ULONG aVariant,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteStorage )( 
            IMedium * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CreateDiffStorage )( 
            IMedium * This,
            /* [in] */ IMedium *aTarget,
            /* [in] */ ULONG aVariant,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *MergeTo )( 
            IMedium * This,
            /* [in] */ IMedium *aTarget,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *CloneTo )( 
            IMedium * This,
            /* [in] */ IMedium *aTarget,
            /* [in] */ ULONG aVariant,
            /* [in] */ IMedium *aParent,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Compact )( 
            IMedium * This,
            /* [retval][out] */ IProgress **aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *Resize )( 
            IMedium * This,
            /* [in] */ LONG64 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_Variant(This,aVariant)	\
    (This)->lpVtbl -> get_Variant(This,aVariant)

#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_MediumFormat(This,aMediumFormat)	\
    (This)->lpVtbl -> get_MediumFormat(This,aMediumFormat)

#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_AllowedTypes(This,aAllowedTypes)	\
    (This)->lpVtbl -> get_AllowedTypes(This,aAllowedTypes)

#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_SetIDs(This,aSetImageId,aImageId,aSetParentId,aParentId)	\
    (This)->lpVtbl -> SetIDs(This,aSetImageId,aImageId,aSetParentId,aParentId)

#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,aTarget,aProgress)	\
    (This)->lpVtbl -> MergeTo(This,aTarget,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_Variant_Proxy( 
    IMedium * This,
    /* [retval][out] */ ULONG *aVariant);


void __RPC_STUB IMedium_get_Variant_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] */ LONG64 *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_MediumFormat_Proxy( 
    IMedium * This,
    /* [retval][out] */ IMediumFormat **aMediumFormat);


void __RPC_STUB IMedium_get_MediumFormat_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_AllowedTypes_Proxy( 
    IMedium * This,
    /* [retval][out] */ SAFEARRAY * *aAllowedTypes);


void __RPC_STUB IMedium_get_AllowedTypes_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] */ LONG64 *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_SetIDs_Proxy( 
    IMedium * This,
    /* [in] */ BOOL aSetImageId,
    /* [in] */ BSTR aImageId,
    /* [in] */ BOOL aSetParentId,
    /* [in] */ BSTR aParentId);


void __RPC_STUB IMedium_SetIDs_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,
    /* [in] */ SAFEARRAY * aNames,
    /* [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] */ LONG64 aLogicalSize,
    /* [in] */ ULONG 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] */ ULONG 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] */ IMedium *aTarget,
    /* [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] */ ULONG 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] */ LONG64 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("9bd5b655-ea47-4637-99f3-aad0948be35b")
    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_Capabilities( 
            /* [retval][out] */ ULONG *aCapabilities) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DescribeFileExtensions( 
            /* [out] */ SAFEARRAY * *aExtensions,
            /* [out] */ SAFEARRAY * *aType) = 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_Capabilities )( 
            IMediumFormat * This,
            /* [retval][out] */ ULONG *aCapabilities);
        
        HRESULT ( STDMETHODCALLTYPE *DescribeFileExtensions )( 
            IMediumFormat * This,
            /* [out] */ SAFEARRAY * *aExtensions,
            /* [out] */ SAFEARRAY * *aType);
        
        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_Capabilities(This,aCapabilities)	\
    (This)->lpVtbl -> get_Capabilities(This,aCapabilities)

#define IMediumFormat_DescribeFileExtensions(This,aExtensions,aType)	\
    (This)->lpVtbl -> DescribeFileExtensions(This,aExtensions,aType)

#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_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_DescribeFileExtensions_Proxy( 
    IMediumFormat * This,
    /* [out] */ SAFEARRAY * *aExtensions,
    /* [out] */ SAFEARRAY * *aType);


void __RPC_STUB IMediumFormat_DescribeFileExtensions_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("f6916ec5-a881-4237-898f-7de58cf88672")
    IKeyboard : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EventSource( 
            /* [retval][out] */ IEventSource **aEventSource) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PutScancode( 
            /* [in] */ LONG aScancode) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE PutScancodes( 
            /* [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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventSource )( 
            IKeyboard * This,
            /* [retval][out] */ IEventSource **aEventSource);
        
        HRESULT ( STDMETHODCALLTYPE *PutScancode )( 
            IKeyboard * This,
            /* [in] */ LONG aScancode);
        
        HRESULT ( STDMETHODCALLTYPE *PutScancodes )( 
            IKeyboard * This,
            /* [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_get_EventSource(This,aEventSource)	\
    (This)->lpVtbl -> get_EventSource(This,aEventSource)

#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 */



/* [propget] */ HRESULT STDMETHODCALLTYPE IKeyboard_get_EventSource_Proxy( 
    IKeyboard * This,
    /* [retval][out] */ IEventSource **aEventSource);


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


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,
    /* [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("05044a52-7811-4f00-ae3a-0ab7ff707b10")
    IMouse : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AbsoluteSupported( 
            /* [retval][out] */ BOOL *aAbsoluteSupported) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RelativeSupported( 
            /* [retval][out] */ BOOL *aRelativeSupported) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NeedsHostCursor( 
            /* [retval][out] */ BOOL *aNeedsHostCursor) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EventSource( 
            /* [retval][out] */ IEventSource **aEventSource) = 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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RelativeSupported )( 
            IMouse * This,
            /* [retval][out] */ BOOL *aRelativeSupported);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NeedsHostCursor )( 
            IMouse * This,
            /* [retval][out] */ BOOL *aNeedsHostCursor);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventSource )( 
            IMouse * This,
            /* [retval][out] */ IEventSource **aEventSource);
        
        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_get_RelativeSupported(This,aRelativeSupported)	\
    (This)->lpVtbl -> get_RelativeSupported(This,aRelativeSupported)

#define IMouse_get_NeedsHostCursor(This,aNeedsHostCursor)	\
    (This)->lpVtbl -> get_NeedsHostCursor(This,aNeedsHostCursor)

#define IMouse_get_EventSource(This,aEventSource)	\
    (This)->lpVtbl -> get_EventSource(This,aEventSource)

#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);


/* [propget] */ HRESULT STDMETHODCALLTYPE IMouse_get_RelativeSupported_Proxy( 
    IMouse * This,
    /* [retval][out] */ BOOL *aRelativeSupported);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMouse_get_NeedsHostCursor_Proxy( 
    IMouse * This,
    /* [retval][out] */ BOOL *aNeedsHostCursor);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMouse_get_EventSource_Proxy( 
    IMouse * This,
    /* [retval][out] */ IEventSource **aEventSource);


void __RPC_STUB IMouse_get_EventSource_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] */ LONG64 *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] */ LONG64 *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] */ LONG64 *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] */ LONG64 *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("09EED313-CD56-4D06-BD56-FAC0F716B5DD")
    IDisplay : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetScreenResolution( 
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [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] */ ULONG aScreenId,
            /* [in] */ BYTE *aAddress,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE TakeScreenShotToArray( 
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ SAFEARRAY * *aScreenData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE TakeScreenShotPNGToArray( 
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ SAFEARRAY * *aScreenData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DrawToScreen( 
            /* [in] */ ULONG aScreenId,
            /* [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 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);
        
        HRESULT ( STDMETHODCALLTYPE *GetScreenResolution )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId,
            /* [out] */ ULONG *aWidth,
            /* [out] */ ULONG *aHeight,
            /* [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] */ ULONG aScreenId,
            /* [in] */ BYTE *aAddress,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight);
        
        HRESULT ( STDMETHODCALLTYPE *TakeScreenShotToArray )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ SAFEARRAY * *aScreenData);
        
        HRESULT ( STDMETHODCALLTYPE *TakeScreenShotPNGToArray )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId,
            /* [in] */ ULONG aWidth,
            /* [in] */ ULONG aHeight,
            /* [retval][out] */ SAFEARRAY * *aScreenData);
        
        HRESULT ( STDMETHODCALLTYPE *DrawToScreen )( 
            IDisplay * This,
            /* [in] */ ULONG aScreenId,
            /* [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 *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_GetScreenResolution(This,aScreenId,aWidth,aHeight,aBitsPerPixel)	\
    (This)->lpVtbl -> GetScreenResolution(This,aScreenId,aWidth,aHeight,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,aScreenId,aAddress,aWidth,aHeight)	\
    (This)->lpVtbl -> TakeScreenShot(This,aScreenId,aAddress,aWidth,aHeight)

#define IDisplay_TakeScreenShotToArray(This,aScreenId,aWidth,aHeight,aScreenData)	\
    (This)->lpVtbl -> TakeScreenShotToArray(This,aScreenId,aWidth,aHeight,aScreenData)

#define IDisplay_TakeScreenShotPNGToArray(This,aScreenId,aWidth,aHeight,aScreenData)	\
    (This)->lpVtbl -> TakeScreenShotPNGToArray(This,aScreenId,aWidth,aHeight,aScreenData)

#define IDisplay_DrawToScreen(This,aScreenId,aAddress,aX,aY,aWidth,aHeight)	\
    (This)->lpVtbl -> DrawToScreen(This,aScreenId,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_CompleteVHWACommand(This,aCommand)	\
    (This)->lpVtbl -> CompleteVHWACommand(This,aCommand)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IDisplay_GetScreenResolution_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId,
    /* [out] */ ULONG *aWidth,
    /* [out] */ ULONG *aHeight,
    /* [out] */ ULONG *aBitsPerPixel);


void __RPC_STUB IDisplay_GetScreenResolution_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] */ ULONG aScreenId,
    /* [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_TakeScreenShotToArray_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [retval][out] */ SAFEARRAY * *aScreenData);


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


HRESULT STDMETHODCALLTYPE IDisplay_TakeScreenShotPNGToArray_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId,
    /* [in] */ ULONG aWidth,
    /* [in] */ ULONG aHeight,
    /* [retval][out] */ SAFEARRAY * *aScreenData);


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


HRESULT STDMETHODCALLTYPE IDisplay_DrawToScreen_Proxy( 
    IDisplay * This,
    /* [in] */ ULONG aScreenId,
    /* [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_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("8b2e705c-0547-4008-b7bc-788757346092")
    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 /* [propput] */ HRESULT STDMETHODCALLTYPE put_AttachmentType( 
            /* [in] */ NetworkAttachmentType aAttachmentType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BridgedInterface( 
            /* [retval][out] */ BSTR *aBridgedInterface) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BridgedInterface( 
            /* [in] */ BSTR aBridgedInterface) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostOnlyInterface( 
            /* [retval][out] */ BSTR *aHostOnlyInterface) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HostOnlyInterface( 
            /* [in] */ BSTR aHostOnlyInterface) = 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_GenericDriver( 
            /* [retval][out] */ BSTR *aGenericDriver) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_GenericDriver( 
            /* [in] */ BSTR aGenericDriver) = 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_PromiscModePolicy( 
            /* [retval][out] */ NetworkAdapterPromiscModePolicy *aPromiscModePolicy) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PromiscModePolicy( 
            /* [in] */ NetworkAdapterPromiscModePolicy aPromiscModePolicy) = 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 /* [propget] */ HRESULT STDMETHODCALLTYPE get_NatDriver( 
            /* [retval][out] */ INATEngine **aNatDriver) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BootPriority( 
            /* [retval][out] */ ULONG *aBootPriority) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BootPriority( 
            /* [in] */ ULONG aBootPriority) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BandwidthGroup( 
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BandwidthGroup( 
            /* [in] */ IBandwidthGroup *aBandwidthGroup) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProperty( 
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetProperty( 
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetProperties( 
            /* [in] */ BSTR aNames,
            /* [out] */ SAFEARRAY * *aReturnNames,
            /* [retval][out] */ SAFEARRAY * *aReturnValues) = 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);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AttachmentType )( 
            INetworkAdapter * This,
            /* [in] */ NetworkAttachmentType aAttachmentType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BridgedInterface )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aBridgedInterface);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BridgedInterface )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aBridgedInterface);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostOnlyInterface )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aHostOnlyInterface);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HostOnlyInterface )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aHostOnlyInterface);
        
        /* [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_GenericDriver )( 
            INetworkAdapter * This,
            /* [retval][out] */ BSTR *aGenericDriver);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_GenericDriver )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aGenericDriver);
        
        /* [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_PromiscModePolicy )( 
            INetworkAdapter * This,
            /* [retval][out] */ NetworkAdapterPromiscModePolicy *aPromiscModePolicy);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PromiscModePolicy )( 
            INetworkAdapter * This,
            /* [in] */ NetworkAdapterPromiscModePolicy aPromiscModePolicy);
        
        /* [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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NatDriver )( 
            INetworkAdapter * This,
            /* [retval][out] */ INATEngine **aNatDriver);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BootPriority )( 
            INetworkAdapter * This,
            /* [retval][out] */ ULONG *aBootPriority);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BootPriority )( 
            INetworkAdapter * This,
            /* [in] */ ULONG aBootPriority);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BandwidthGroup )( 
            INetworkAdapter * This,
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BandwidthGroup )( 
            INetworkAdapter * This,
            /* [in] */ IBandwidthGroup *aBandwidthGroup);
        
        HRESULT ( STDMETHODCALLTYPE *GetProperty )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetProperty )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetProperties )( 
            INetworkAdapter * This,
            /* [in] */ BSTR aNames,
            /* [out] */ SAFEARRAY * *aReturnNames,
            /* [retval][out] */ SAFEARRAY * *aReturnValues);
        
        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_put_AttachmentType(This,aAttachmentType)	\
    (This)->lpVtbl -> put_AttachmentType(This,aAttachmentType)

#define INetworkAdapter_get_BridgedInterface(This,aBridgedInterface)	\
    (This)->lpVtbl -> get_BridgedInterface(This,aBridgedInterface)

#define INetworkAdapter_put_BridgedInterface(This,aBridgedInterface)	\
    (This)->lpVtbl -> put_BridgedInterface(This,aBridgedInterface)

#define INetworkAdapter_get_HostOnlyInterface(This,aHostOnlyInterface)	\
    (This)->lpVtbl -> get_HostOnlyInterface(This,aHostOnlyInterface)

#define INetworkAdapter_put_HostOnlyInterface(This,aHostOnlyInterface)	\
    (This)->lpVtbl -> put_HostOnlyInterface(This,aHostOnlyInterface)

#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_GenericDriver(This,aGenericDriver)	\
    (This)->lpVtbl -> get_GenericDriver(This,aGenericDriver)

#define INetworkAdapter_put_GenericDriver(This,aGenericDriver)	\
    (This)->lpVtbl -> put_GenericDriver(This,aGenericDriver)

#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_PromiscModePolicy(This,aPromiscModePolicy)	\
    (This)->lpVtbl -> get_PromiscModePolicy(This,aPromiscModePolicy)

#define INetworkAdapter_put_PromiscModePolicy(This,aPromiscModePolicy)	\
    (This)->lpVtbl -> put_PromiscModePolicy(This,aPromiscModePolicy)

#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_get_NatDriver(This,aNatDriver)	\
    (This)->lpVtbl -> get_NatDriver(This,aNatDriver)

#define INetworkAdapter_get_BootPriority(This,aBootPriority)	\
    (This)->lpVtbl -> get_BootPriority(This,aBootPriority)

#define INetworkAdapter_put_BootPriority(This,aBootPriority)	\
    (This)->lpVtbl -> put_BootPriority(This,aBootPriority)

#define INetworkAdapter_get_BandwidthGroup(This,aBandwidthGroup)	\
    (This)->lpVtbl -> get_BandwidthGroup(This,aBandwidthGroup)

#define INetworkAdapter_put_BandwidthGroup(This,aBandwidthGroup)	\
    (This)->lpVtbl -> put_BandwidthGroup(This,aBandwidthGroup)

#define INetworkAdapter_GetProperty(This,aKey,aValue)	\
    (This)->lpVtbl -> GetProperty(This,aKey,aValue)

#define INetworkAdapter_SetProperty(This,aKey,aValue)	\
    (This)->lpVtbl -> SetProperty(This,aKey,aValue)

#define INetworkAdapter_GetProperties(This,aNames,aReturnNames,aReturnValues)	\
    (This)->lpVtbl -> GetProperties(This,aNames,aReturnNames,aReturnValues)

#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);


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_AttachmentType_Proxy( 
    INetworkAdapter * This,
    /* [in] */ NetworkAttachmentType aAttachmentType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_BridgedInterface_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aBridgedInterface);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_BridgedInterface_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aBridgedInterface);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_HostOnlyInterface_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aHostOnlyInterface);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_HostOnlyInterface_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aHostOnlyInterface);


void __RPC_STUB INetworkAdapter_put_HostOnlyInterface_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_GenericDriver_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ BSTR *aGenericDriver);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_GenericDriver_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aGenericDriver);


void __RPC_STUB INetworkAdapter_put_GenericDriver_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_PromiscModePolicy_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ NetworkAdapterPromiscModePolicy *aPromiscModePolicy);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_PromiscModePolicy_Proxy( 
    INetworkAdapter * This,
    /* [in] */ NetworkAdapterPromiscModePolicy aPromiscModePolicy);


void __RPC_STUB INetworkAdapter_put_PromiscModePolicy_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);


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_NatDriver_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ INATEngine **aNatDriver);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_BootPriority_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ ULONG *aBootPriority);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_BootPriority_Proxy( 
    INetworkAdapter * This,
    /* [in] */ ULONG aBootPriority);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_get_BandwidthGroup_Proxy( 
    INetworkAdapter * This,
    /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INetworkAdapter_put_BandwidthGroup_Proxy( 
    INetworkAdapter * This,
    /* [in] */ IBandwidthGroup *aBandwidthGroup);


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


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


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


HRESULT STDMETHODCALLTYPE INetworkAdapter_SetProperty_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aKey,
    /* [in] */ BSTR aValue);


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


HRESULT STDMETHODCALLTYPE INetworkAdapter_GetProperties_Proxy( 
    INetworkAdapter * This,
    /* [in] */ BSTR aNames,
    /* [out] */ SAFEARRAY * *aReturnNames,
    /* [retval][out] */ SAFEARRAY * *aReturnValues);


void __RPC_STUB INetworkAdapter_GetProperties_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("1bfd2fa9-0d91-44d3-9515-368dcbb3eb4d")
    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_LogFlags( 
            /* [retval][out] */ BSTR *aLogFlags) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogGroups( 
            /* [retval][out] */ BSTR *aLogGroups) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LogDestinations( 
            /* [retval][out] */ BSTR *aLogDestinations) = 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_OSName( 
            /* [retval][out] */ BSTR *aOSName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OSVersion( 
            /* [retval][out] */ BSTR *aOSVersion) = 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] */ LONG64 *aVM) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DumpGuestCore( 
            /* [in] */ BSTR aFilename,
            /* [in] */ BSTR aCompression) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DumpHostProcessCore( 
            /* [in] */ BSTR aFilename,
            /* [in] */ BSTR aCompression) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Info( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aArgs,
            /* [retval][out] */ BSTR *aInfo) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE InjectNMI( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ModifyLogGroups( 
            /* [in] */ BSTR aSettings) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ModifyLogFlags( 
            /* [in] */ BSTR aSettings) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ModifyLogDestinations( 
            /* [in] */ BSTR aSettings) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadPhysicalMemory( 
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [retval][out] */ SAFEARRAY * *aBytes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE WritePhysicalMemory( 
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [in] */ SAFEARRAY * aBytes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE ReadVirtualMemory( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [retval][out] */ SAFEARRAY * *aBytes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE WriteVirtualMemory( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [in] */ SAFEARRAY * aBytes) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DetectOS( 
            /* [retval][out] */ BSTR *aOs) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetRegister( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ BSTR aName,
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetRegisters( 
            /* [in] */ ULONG aCpuId,
            /* [out] */ SAFEARRAY * *aNames,
            /* [out] */ SAFEARRAY * *aValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetRegister( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetRegisters( 
            /* [in] */ ULONG aCpuId,
            /* [in] */ SAFEARRAY * aNames,
            /* [in] */ SAFEARRAY * aValues) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DumpGuestStack( 
            /* [in] */ ULONG aCpuId,
            /* [retval][out] */ BSTR *aStack) = 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;
        
    };
    
#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_LogFlags )( 
            IMachineDebugger * This,
            /* [retval][out] */ BSTR *aLogFlags);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogGroups )( 
            IMachineDebugger * This,
            /* [retval][out] */ BSTR *aLogGroups);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LogDestinations )( 
            IMachineDebugger * This,
            /* [retval][out] */ BSTR *aLogDestinations);
        
        /* [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_OSName )( 
            IMachineDebugger * This,
            /* [retval][out] */ BSTR *aOSName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OSVersion )( 
            IMachineDebugger * This,
            /* [retval][out] */ BSTR *aOSVersion);
        
        /* [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] */ LONG64 *aVM);
        
        HRESULT ( STDMETHODCALLTYPE *DumpGuestCore )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aFilename,
            /* [in] */ BSTR aCompression);
        
        HRESULT ( STDMETHODCALLTYPE *DumpHostProcessCore )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aFilename,
            /* [in] */ BSTR aCompression);
        
        HRESULT ( STDMETHODCALLTYPE *Info )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aArgs,
            /* [retval][out] */ BSTR *aInfo);
        
        HRESULT ( STDMETHODCALLTYPE *InjectNMI )( 
            IMachineDebugger * This);
        
        HRESULT ( STDMETHODCALLTYPE *ModifyLogGroups )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aSettings);
        
        HRESULT ( STDMETHODCALLTYPE *ModifyLogFlags )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aSettings);
        
        HRESULT ( STDMETHODCALLTYPE *ModifyLogDestinations )( 
            IMachineDebugger * This,
            /* [in] */ BSTR aSettings);
        
        HRESULT ( STDMETHODCALLTYPE *ReadPhysicalMemory )( 
            IMachineDebugger * This,
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [retval][out] */ SAFEARRAY * *aBytes);
        
        HRESULT ( STDMETHODCALLTYPE *WritePhysicalMemory )( 
            IMachineDebugger * This,
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [in] */ SAFEARRAY * aBytes);
        
        HRESULT ( STDMETHODCALLTYPE *ReadVirtualMemory )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [retval][out] */ SAFEARRAY * *aBytes);
        
        HRESULT ( STDMETHODCALLTYPE *WriteVirtualMemory )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ LONG64 aAddress,
            /* [in] */ ULONG aSize,
            /* [in] */ SAFEARRAY * aBytes);
        
        HRESULT ( STDMETHODCALLTYPE *DetectOS )( 
            IMachineDebugger * This,
            /* [retval][out] */ BSTR *aOs);
        
        HRESULT ( STDMETHODCALLTYPE *GetRegister )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ BSTR aName,
            /* [retval][out] */ BSTR *aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetRegisters )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [out] */ SAFEARRAY * *aNames,
            /* [out] */ SAFEARRAY * *aValues);
        
        HRESULT ( STDMETHODCALLTYPE *SetRegister )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *SetRegisters )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [in] */ SAFEARRAY * aNames,
            /* [in] */ SAFEARRAY * aValues);
        
        HRESULT ( STDMETHODCALLTYPE *DumpGuestStack )( 
            IMachineDebugger * This,
            /* [in] */ ULONG aCpuId,
            /* [retval][out] */ BSTR *aStack);
        
        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);
        
        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_LogFlags(This,aLogFlags)	\
    (This)->lpVtbl -> get_LogFlags(This,aLogFlags)

#define IMachineDebugger_get_LogGroups(This,aLogGroups)	\
    (This)->lpVtbl -> get_LogGroups(This,aLogGroups)

#define IMachineDebugger_get_LogDestinations(This,aLogDestinations)	\
    (This)->lpVtbl -> get_LogDestinations(This,aLogDestinations)

#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_OSName(This,aOSName)	\
    (This)->lpVtbl -> get_OSName(This,aOSName)

#define IMachineDebugger_get_OSVersion(This,aOSVersion)	\
    (This)->lpVtbl -> get_OSVersion(This,aOSVersion)

#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_DumpGuestCore(This,aFilename,aCompression)	\
    (This)->lpVtbl -> DumpGuestCore(This,aFilename,aCompression)

#define IMachineDebugger_DumpHostProcessCore(This,aFilename,aCompression)	\
    (This)->lpVtbl -> DumpHostProcessCore(This,aFilename,aCompression)

#define IMachineDebugger_Info(This,aName,aArgs,aInfo)	\
    (This)->lpVtbl -> Info(This,aName,aArgs,aInfo)

#define IMachineDebugger_InjectNMI(This)	\
    (This)->lpVtbl -> InjectNMI(This)

#define IMachineDebugger_ModifyLogGroups(This,aSettings)	\
    (This)->lpVtbl -> ModifyLogGroups(This,aSettings)

#define IMachineDebugger_ModifyLogFlags(This,aSettings)	\
    (This)->lpVtbl -> ModifyLogFlags(This,aSettings)

#define IMachineDebugger_ModifyLogDestinations(This,aSettings)	\
    (This)->lpVtbl -> ModifyLogDestinations(This,aSettings)

#define IMachineDebugger_ReadPhysicalMemory(This,aAddress,aSize,aBytes)	\
    (This)->lpVtbl -> ReadPhysicalMemory(This,aAddress,aSize,aBytes)

#define IMachineDebugger_WritePhysicalMemory(This,aAddress,aSize,aBytes)	\
    (This)->lpVtbl -> WritePhysicalMemory(This,aAddress,aSize,aBytes)

#define IMachineDebugger_ReadVirtualMemory(This,aCpuId,aAddress,aSize,aBytes)	\
    (This)->lpVtbl -> ReadVirtualMemory(This,aCpuId,aAddress,aSize,aBytes)

#define IMachineDebugger_WriteVirtualMemory(This,aCpuId,aAddress,aSize,aBytes)	\
    (This)->lpVtbl -> WriteVirtualMemory(This,aCpuId,aAddress,aSize,aBytes)

#define IMachineDebugger_DetectOS(This,aOs)	\
    (This)->lpVtbl -> DetectOS(This,aOs)

#define IMachineDebugger_GetRegister(This,aCpuId,aName,aValue)	\
    (This)->lpVtbl -> GetRegister(This,aCpuId,aName,aValue)

#define IMachineDebugger_GetRegisters(This,aCpuId,aNames,aValues)	\
    (This)->lpVtbl -> GetRegisters(This,aCpuId,aNames,aValues)

#define IMachineDebugger_SetRegister(This,aCpuId,aName,aValue)	\
    (This)->lpVtbl -> SetRegister(This,aCpuId,aName,aValue)

#define IMachineDebugger_SetRegisters(This,aCpuId,aNames,aValues)	\
    (This)->lpVtbl -> SetRegisters(This,aCpuId,aNames,aValues)

#define IMachineDebugger_DumpGuestStack(This,aCpuId,aStack)	\
    (This)->lpVtbl -> DumpGuestStack(This,aCpuId,aStack)

#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)

#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_LogFlags_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BSTR *aLogFlags);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_LogGroups_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BSTR *aLogGroups);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_LogDestinations_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BSTR *aLogDestinations);


void __RPC_STUB IMachineDebugger_get_LogDestinations_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_OSName_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BSTR *aOSName);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDebugger_get_OSVersion_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BSTR *aOSVersion);


void __RPC_STUB IMachineDebugger_get_OSVersion_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] */ LONG64 *aVM);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_DumpGuestCore_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aFilename,
    /* [in] */ BSTR aCompression);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_DumpHostProcessCore_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aFilename,
    /* [in] */ BSTR aCompression);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_Info_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aArgs,
    /* [retval][out] */ BSTR *aInfo);


void __RPC_STUB IMachineDebugger_Info_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);


HRESULT STDMETHODCALLTYPE IMachineDebugger_ModifyLogGroups_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aSettings);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_ModifyLogFlags_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aSettings);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_ModifyLogDestinations_Proxy( 
    IMachineDebugger * This,
    /* [in] */ BSTR aSettings);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_ReadPhysicalMemory_Proxy( 
    IMachineDebugger * This,
    /* [in] */ LONG64 aAddress,
    /* [in] */ ULONG aSize,
    /* [retval][out] */ SAFEARRAY * *aBytes);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_WritePhysicalMemory_Proxy( 
    IMachineDebugger * This,
    /* [in] */ LONG64 aAddress,
    /* [in] */ ULONG aSize,
    /* [in] */ SAFEARRAY * aBytes);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_ReadVirtualMemory_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ LONG64 aAddress,
    /* [in] */ ULONG aSize,
    /* [retval][out] */ SAFEARRAY * *aBytes);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_WriteVirtualMemory_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ LONG64 aAddress,
    /* [in] */ ULONG aSize,
    /* [in] */ SAFEARRAY * aBytes);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_DetectOS_Proxy( 
    IMachineDebugger * This,
    /* [retval][out] */ BSTR *aOs);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_GetRegister_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ BSTR aName,
    /* [retval][out] */ BSTR *aValue);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_GetRegisters_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [out] */ SAFEARRAY * *aNames,
    /* [out] */ SAFEARRAY * *aValues);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_SetRegister_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ BSTR aName,
    /* [in] */ BSTR aValue);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_SetRegisters_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [in] */ SAFEARRAY * aNames,
    /* [in] */ SAFEARRAY * aValues);


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


HRESULT STDMETHODCALLTYPE IMachineDebugger_DumpGuestStack_Proxy( 
    IMachineDebugger * This,
    /* [in] */ ULONG aCpuId,
    /* [retval][out] */ BSTR *aStack);


void __RPC_STUB IMachineDebugger_DumpGuestStack_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);



#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("6fdcccc5-abd3-4fec-9387-2ad3914fc4a8")
    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_ProxyAvailable( 
            /* [retval][out] */ BOOL *aProxyAvailable) = 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_ProxyAvailable )( 
            IUSBController * This,
            /* [retval][out] */ BOOL *aProxyAvailable);
        
        /* [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_ProxyAvailable(This,aProxyAvailable)	\
    (This)->lpVtbl -> get_ProxyAvailable(This,aProxyAvailable)

#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_ProxyAvailable_Proxy( 
    IUSBController * This,
    /* [retval][out] */ BOOL *aProxyAvailable);


void __RPC_STUB IUSBController_get_ProxyAvailable_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 __IVRDEServer_INTERFACE_DEFINED__
#define __IVRDEServer_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IVRDEServer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d38de40a-c2c1-4e95-b5a4-167b05f5694c")
    IVRDEServer : 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_AuthType( 
            /* [retval][out] */ AuthType *aAuthType) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AuthType( 
            /* [in] */ AuthType 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;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VRDEExtPack( 
            /* [retval][out] */ BSTR *aVRDEExtPack) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_VRDEExtPack( 
            /* [in] */ BSTR aVRDEExtPack) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AuthLibrary( 
            /* [retval][out] */ BSTR *aAuthLibrary) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AuthLibrary( 
            /* [in] */ BSTR aAuthLibrary) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VRDEProperties( 
            /* [retval][out] */ SAFEARRAY * *aVRDEProperties) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetVRDEProperty( 
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetVRDEProperty( 
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVRDEServerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVRDEServer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVRDEServer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVRDEServer * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVRDEServer * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVRDEServer * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVRDEServer * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVRDEServer * 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 )( 
            IVRDEServer * This,
            /* [retval][out] */ BOOL *aEnabled);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
            IVRDEServer * This,
            /* [in] */ BOOL aEnabled);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AuthType )( 
            IVRDEServer * This,
            /* [retval][out] */ AuthType *aAuthType);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AuthType )( 
            IVRDEServer * This,
            /* [in] */ AuthType aAuthType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AuthTimeout )( 
            IVRDEServer * This,
            /* [retval][out] */ ULONG *aAuthTimeout);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AuthTimeout )( 
            IVRDEServer * This,
            /* [in] */ ULONG aAuthTimeout);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AllowMultiConnection )( 
            IVRDEServer * This,
            /* [retval][out] */ BOOL *aAllowMultiConnection);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AllowMultiConnection )( 
            IVRDEServer * This,
            /* [in] */ BOOL aAllowMultiConnection);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ReuseSingleConnection )( 
            IVRDEServer * This,
            /* [retval][out] */ BOOL *aReuseSingleConnection);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ReuseSingleConnection )( 
            IVRDEServer * This,
            /* [in] */ BOOL aReuseSingleConnection);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDEExtPack )( 
            IVRDEServer * This,
            /* [retval][out] */ BSTR *aVRDEExtPack);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_VRDEExtPack )( 
            IVRDEServer * This,
            /* [in] */ BSTR aVRDEExtPack);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AuthLibrary )( 
            IVRDEServer * This,
            /* [retval][out] */ BSTR *aAuthLibrary);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AuthLibrary )( 
            IVRDEServer * This,
            /* [in] */ BSTR aAuthLibrary);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDEProperties )( 
            IVRDEServer * This,
            /* [retval][out] */ SAFEARRAY * *aVRDEProperties);
        
        HRESULT ( STDMETHODCALLTYPE *SetVRDEProperty )( 
            IVRDEServer * This,
            /* [in] */ BSTR aKey,
            /* [in] */ BSTR aValue);
        
        HRESULT ( STDMETHODCALLTYPE *GetVRDEProperty )( 
            IVRDEServer * This,
            /* [in] */ BSTR aKey,
            /* [retval][out] */ BSTR *aValue);
        
        END_INTERFACE
    } IVRDEServerVtbl;

    interface IVRDEServer
    {
        CONST_VTBL struct IVRDEServerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

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

#define IVRDEServer_get_AuthType(This,aAuthType)	\
    (This)->lpVtbl -> get_AuthType(This,aAuthType)

#define IVRDEServer_put_AuthType(This,aAuthType)	\
    (This)->lpVtbl -> put_AuthType(This,aAuthType)

#define IVRDEServer_get_AuthTimeout(This,aAuthTimeout)	\
    (This)->lpVtbl -> get_AuthTimeout(This,aAuthTimeout)

#define IVRDEServer_put_AuthTimeout(This,aAuthTimeout)	\
    (This)->lpVtbl -> put_AuthTimeout(This,aAuthTimeout)

#define IVRDEServer_get_AllowMultiConnection(This,aAllowMultiConnection)	\
    (This)->lpVtbl -> get_AllowMultiConnection(This,aAllowMultiConnection)

#define IVRDEServer_put_AllowMultiConnection(This,aAllowMultiConnection)	\
    (This)->lpVtbl -> put_AllowMultiConnection(This,aAllowMultiConnection)

#define IVRDEServer_get_ReuseSingleConnection(This,aReuseSingleConnection)	\
    (This)->lpVtbl -> get_ReuseSingleConnection(This,aReuseSingleConnection)

#define IVRDEServer_put_ReuseSingleConnection(This,aReuseSingleConnection)	\
    (This)->lpVtbl -> put_ReuseSingleConnection(This,aReuseSingleConnection)

#define IVRDEServer_get_VRDEExtPack(This,aVRDEExtPack)	\
    (This)->lpVtbl -> get_VRDEExtPack(This,aVRDEExtPack)

#define IVRDEServer_put_VRDEExtPack(This,aVRDEExtPack)	\
    (This)->lpVtbl -> put_VRDEExtPack(This,aVRDEExtPack)

#define IVRDEServer_get_AuthLibrary(This,aAuthLibrary)	\
    (This)->lpVtbl -> get_AuthLibrary(This,aAuthLibrary)

#define IVRDEServer_put_AuthLibrary(This,aAuthLibrary)	\
    (This)->lpVtbl -> put_AuthLibrary(This,aAuthLibrary)

#define IVRDEServer_get_VRDEProperties(This,aVRDEProperties)	\
    (This)->lpVtbl -> get_VRDEProperties(This,aVRDEProperties)

#define IVRDEServer_SetVRDEProperty(This,aKey,aValue)	\
    (This)->lpVtbl -> SetVRDEProperty(This,aKey,aValue)

#define IVRDEServer_GetVRDEProperty(This,aKey,aValue)	\
    (This)->lpVtbl -> GetVRDEProperty(This,aKey,aValue)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_Enabled_Proxy( 
    IVRDEServer * This,
    /* [in] */ BOOL aEnabled);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_AuthType_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ AuthType *aAuthType);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_AuthType_Proxy( 
    IVRDEServer * This,
    /* [in] */ AuthType aAuthType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_AuthTimeout_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ ULONG *aAuthTimeout);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_AuthTimeout_Proxy( 
    IVRDEServer * This,
    /* [in] */ ULONG aAuthTimeout);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_AllowMultiConnection_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ BOOL *aAllowMultiConnection);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_AllowMultiConnection_Proxy( 
    IVRDEServer * This,
    /* [in] */ BOOL aAllowMultiConnection);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_ReuseSingleConnection_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ BOOL *aReuseSingleConnection);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_ReuseSingleConnection_Proxy( 
    IVRDEServer * This,
    /* [in] */ BOOL aReuseSingleConnection);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_VRDEExtPack_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ BSTR *aVRDEExtPack);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_VRDEExtPack_Proxy( 
    IVRDEServer * This,
    /* [in] */ BSTR aVRDEExtPack);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_AuthLibrary_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ BSTR *aAuthLibrary);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IVRDEServer_put_AuthLibrary_Proxy( 
    IVRDEServer * This,
    /* [in] */ BSTR aAuthLibrary);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVRDEServer_get_VRDEProperties_Proxy( 
    IVRDEServer * This,
    /* [retval][out] */ SAFEARRAY * *aVRDEProperties);


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


HRESULT STDMETHODCALLTYPE IVRDEServer_SetVRDEProperty_Proxy( 
    IVRDEServer * This,
    /* [in] */ BSTR aKey,
    /* [in] */ BSTR aValue);


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


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


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



#endif 	/* __IVRDEServer_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("8388da11-b559-4574-a5b7-2bd7acd5cef8")
    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_AutoMount( 
            /* [retval][out] */ BOOL *aAutoMount) = 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_AutoMount )( 
            ISharedFolder * This,
            /* [retval][out] */ BOOL *aAutoMount);
        
        /* [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_AutoMount(This,aAutoMount)	\
    (This)->lpVtbl -> get_AutoMount(This,aAutoMount)

#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_AutoMount_Proxy( 
    ISharedFolder * This,
    /* [retval][out] */ BOOL *aAutoMount);


void __RPC_STUB ISharedFolder_get_AutoMount_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("c2b4cd5f-d3ce-4dd6-b915-123272163ef5")
    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 OnStorageDeviceChange( 
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ BOOL aRemove) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnCPUChange( 
            /* [in] */ ULONG aCpu,
            /* [in] */ BOOL aAdd) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnCPUExecutionCapChange( 
            /* [in] */ ULONG aExecutionCap) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnVRDEServerChange( 
            /* [in] */ BOOL aRestart) = 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] */ LONG64 *aWinId) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OnBandwidthGroupChange( 
            /* [in] */ IBandwidthGroup *aBandwidthGroup) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AccessGuestProperty( 
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags,
            /* [in] */ BOOL aIsSetter,
            /* [out] */ BSTR *aRetValue,
            /* [out] */ LONG64 *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;
        
        virtual HRESULT STDMETHODCALLTYPE OnlineMergeMedium( 
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ ULONG aSourceIdx,
            /* [in] */ ULONG aTargetIdx,
            /* [in] */ IMedium *aSource,
            /* [in] */ IMedium *aTarget,
            /* [in] */ BOOL aMergeForward,
            /* [in] */ IMedium *aParentForTarget,
            /* [in] */ SAFEARRAY * aChildrenToReparent,
            /* [in] */ IProgress *aProgress) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableVMMStatistics( 
            /* [in] */ BOOL aEnable) = 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 *OnStorageDeviceChange )( 
            IInternalSessionControl * This,
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ BOOL aRemove);
        
        HRESULT ( STDMETHODCALLTYPE *OnCPUChange )( 
            IInternalSessionControl * This,
            /* [in] */ ULONG aCpu,
            /* [in] */ BOOL aAdd);
        
        HRESULT ( STDMETHODCALLTYPE *OnCPUExecutionCapChange )( 
            IInternalSessionControl * This,
            /* [in] */ ULONG aExecutionCap);
        
        HRESULT ( STDMETHODCALLTYPE *OnVRDEServerChange )( 
            IInternalSessionControl * This,
            /* [in] */ BOOL aRestart);
        
        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] */ LONG64 *aWinId);
        
        HRESULT ( STDMETHODCALLTYPE *OnBandwidthGroupChange )( 
            IInternalSessionControl * This,
            /* [in] */ IBandwidthGroup *aBandwidthGroup);
        
        HRESULT ( STDMETHODCALLTYPE *AccessGuestProperty )( 
            IInternalSessionControl * This,
            /* [in] */ BSTR aName,
            /* [in] */ BSTR aValue,
            /* [in] */ BSTR aFlags,
            /* [in] */ BOOL aIsSetter,
            /* [out] */ BSTR *aRetValue,
            /* [out] */ LONG64 *aRetTimestamp,
            /* [out] */ BSTR *aRetFlags);
        
        HRESULT ( STDMETHODCALLTYPE *EnumerateGuestProperties )( 
            IInternalSessionControl * This,
            /* [in] */ BSTR aPatterns,
            /* [out] */ SAFEARRAY * *aKey,
            /* [out] */ SAFEARRAY * *aValue,
            /* [out] */ SAFEARRAY * *aTimestamp,
            /* [out] */ SAFEARRAY * *aFlags);
        
        HRESULT ( STDMETHODCALLTYPE *OnlineMergeMedium )( 
            IInternalSessionControl * This,
            /* [in] */ IMediumAttachment *aMediumAttachment,
            /* [in] */ ULONG aSourceIdx,
            /* [in] */ ULONG aTargetIdx,
            /* [in] */ IMedium *aSource,
            /* [in] */ IMedium *aTarget,
            /* [in] */ BOOL aMergeForward,
            /* [in] */ IMedium *aParentForTarget,
            /* [in] */ SAFEARRAY * aChildrenToReparent,
            /* [in] */ IProgress *aProgress);
        
        HRESULT ( STDMETHODCALLTYPE *EnableVMMStatistics )( 
            IInternalSessionControl * This,
            /* [in] */ BOOL aEnable);
        
        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_OnStorageDeviceChange(This,aMediumAttachment,aRemove)	\
    (This)->lpVtbl -> OnStorageDeviceChange(This,aMediumAttachment,aRemove)

#define IInternalSessionControl_OnCPUChange(This,aCpu,aAdd)	\
    (This)->lpVtbl -> OnCPUChange(This,aCpu,aAdd)

#define IInternalSessionControl_OnCPUExecutionCapChange(This,aExecutionCap)	\
    (This)->lpVtbl -> OnCPUExecutionCapChange(This,aExecutionCap)

#define IInternalSessionControl_OnVRDEServerChange(This,aRestart)	\
    (This)->lpVtbl -> OnVRDEServerChange(This,aRestart)

#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_OnBandwidthGroupChange(This,aBandwidthGroup)	\
    (This)->lpVtbl -> OnBandwidthGroupChange(This,aBandwidthGroup)

#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)

#define IInternalSessionControl_OnlineMergeMedium(This,aMediumAttachment,aSourceIdx,aTargetIdx,aSource,aTarget,aMergeForward,aParentForTarget,aChildrenToReparent,aProgress)	\
    (This)->lpVtbl -> OnlineMergeMedium(This,aMediumAttachment,aSourceIdx,aTargetIdx,aSource,aTarget,aMergeForward,aParentForTarget,aChildrenToReparent,aProgress)

#define IInternalSessionControl_EnableVMMStatistics(This,aEnable)	\
    (This)->lpVtbl -> EnableVMMStatistics(This,aEnable)

#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_OnStorageDeviceChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IMediumAttachment *aMediumAttachment,
    /* [in] */ BOOL aRemove);


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


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnCPUChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ ULONG aCpu,
    /* [in] */ BOOL aAdd);


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


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnCPUExecutionCapChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ ULONG aExecutionCap);


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


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnVRDEServerChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BOOL aRestart);


void __RPC_STUB IInternalSessionControl_OnVRDEServerChange_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] */ LONG64 *aWinId);


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


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnBandwidthGroupChange_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IBandwidthGroup *aBandwidthGroup);


void __RPC_STUB IInternalSessionControl_OnBandwidthGroupChange_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] */ LONG64 *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);


HRESULT STDMETHODCALLTYPE IInternalSessionControl_OnlineMergeMedium_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ IMediumAttachment *aMediumAttachment,
    /* [in] */ ULONG aSourceIdx,
    /* [in] */ ULONG aTargetIdx,
    /* [in] */ IMedium *aSource,
    /* [in] */ IMedium *aTarget,
    /* [in] */ BOOL aMergeForward,
    /* [in] */ IMedium *aParentForTarget,
    /* [in] */ SAFEARRAY * aChildrenToReparent,
    /* [in] */ IProgress *aProgress);


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


HRESULT STDMETHODCALLTYPE IInternalSessionControl_EnableVMMStatistics_Proxy( 
    IInternalSessionControl * This,
    /* [in] */ BOOL aEnable);


void __RPC_STUB IInternalSessionControl_EnableVMMStatistics_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 UnlockMachine( 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 *UnlockMachine )( 
            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_UnlockMachine(This)	\
    (This)->lpVtbl -> UnlockMachine(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_UnlockMachine_Proxy( 
    ISession * This);


void __RPC_STUB ISession_UnlockMachine_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("a1556333-09b6-46d9-bfb7-fc239b7fbe1e")
    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 /* [propget] */ HRESULT STDMETHODCALLTYPE get_UseHostIOCache( 
            /* [retval][out] */ BOOL *aUseHostIOCache) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UseHostIOCache( 
            /* [in] */ BOOL aUseHostIOCache) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Bootable( 
            /* [retval][out] */ BOOL *aBootable) = 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);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UseHostIOCache )( 
            IStorageController * This,
            /* [retval][out] */ BOOL *aUseHostIOCache);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UseHostIOCache )( 
            IStorageController * This,
            /* [in] */ BOOL aUseHostIOCache);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Bootable )( 
            IStorageController * This,
            /* [retval][out] */ BOOL *aBootable);
        
        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_get_UseHostIOCache(This,aUseHostIOCache)	\
    (This)->lpVtbl -> get_UseHostIOCache(This,aUseHostIOCache)

#define IStorageController_put_UseHostIOCache(This,aUseHostIOCache)	\
    (This)->lpVtbl -> put_UseHostIOCache(This,aUseHostIOCache)

#define IStorageController_get_Bootable(This,aBootable)	\
    (This)->lpVtbl -> get_Bootable(This,aBootable)

#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);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_UseHostIOCache_Proxy( 
    IStorageController * This,
    /* [retval][out] */ BOOL *aUseHostIOCache);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IStorageController_put_UseHostIOCache_Proxy( 
    IStorageController * This,
    /* [in] */ BOOL aUseHostIOCache);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageController_get_Bootable_Proxy( 
    IStorageController * This,
    /* [retval][out] */ BOOL *aBootable);


void __RPC_STUB IStorageController_get_Bootable_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( 
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [retval][out] */ SAFEARRAY * *aMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetupMetrics( 
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [in] */ ULONG aPeriod,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EnableMetrics( 
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DisableMetrics( 
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QueryMetricsData( 
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [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,
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [retval][out] */ SAFEARRAY * *aMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *SetupMetrics )( 
            IPerformanceCollector * This,
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [in] */ ULONG aPeriod,
            /* [in] */ ULONG aCount,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *EnableMetrics )( 
            IPerformanceCollector * This,
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *DisableMetrics )( 
            IPerformanceCollector * This,
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [in] */ SAFEARRAY * aObjects,
            /* [retval][out] */ SAFEARRAY * *aAffectedMetrics);
        
        HRESULT ( STDMETHODCALLTYPE *QueryMetricsData )( 
            IPerformanceCollector * This,
            /* [in] */ SAFEARRAY * aMetricNames,
            /* [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,
    /* [in] */ SAFEARRAY * aMetricNames,
    /* [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,
    /* [in] */ SAFEARRAY * aMetricNames,
    /* [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,
    /* [in] */ SAFEARRAY * aMetricNames,
    /* [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,
    /* [in] */ SAFEARRAY * aMetricNames,
    /* [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,
    /* [in] */ SAFEARRAY * aMetricNames,
    /* [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__ */


#ifndef __INATEngine_INTERFACE_DEFINED__
#define __INATEngine_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_INATEngine;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4b286616-eb03-11de-b0fb-1701eca42246")
    INATEngine : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Network( 
            /* [retval][out] */ BSTR *aNetwork) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Network( 
            /* [in] */ BSTR aNetwork) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostIP( 
            /* [retval][out] */ BSTR *aHostIP) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_HostIP( 
            /* [in] */ BSTR aHostIP) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TftpPrefix( 
            /* [retval][out] */ BSTR *aTftpPrefix) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TftpPrefix( 
            /* [in] */ BSTR aTftpPrefix) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TftpBootFile( 
            /* [retval][out] */ BSTR *aTftpBootFile) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TftpBootFile( 
            /* [in] */ BSTR aTftpBootFile) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_TftpNextServer( 
            /* [retval][out] */ BSTR *aTftpNextServer) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_TftpNextServer( 
            /* [in] */ BSTR aTftpNextServer) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AliasMode( 
            /* [retval][out] */ ULONG *aAliasMode) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AliasMode( 
            /* [in] */ ULONG aAliasMode) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DnsPassDomain( 
            /* [retval][out] */ BOOL *aDnsPassDomain) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DnsPassDomain( 
            /* [in] */ BOOL aDnsPassDomain) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DnsProxy( 
            /* [retval][out] */ BOOL *aDnsProxy) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DnsProxy( 
            /* [in] */ BOOL aDnsProxy) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DnsUseHostResolver( 
            /* [retval][out] */ BOOL *aDnsUseHostResolver) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DnsUseHostResolver( 
            /* [in] */ BOOL aDnsUseHostResolver) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Redirects( 
            /* [retval][out] */ SAFEARRAY * *aRedirects) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetNetworkSettings( 
            /* [in] */ ULONG aMtu,
            /* [in] */ ULONG aSockSnd,
            /* [in] */ ULONG aSockRcv,
            /* [in] */ ULONG aTcpWndSnd,
            /* [in] */ ULONG aTcpWndRcv) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetNetworkSettings( 
            /* [out] */ ULONG *aMtu,
            /* [out] */ ULONG *aSockSnd,
            /* [out] */ ULONG *aSockRcv,
            /* [out] */ ULONG *aTcpWndSnd,
            /* [out] */ ULONG *aTcpWndRcv) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE AddRedirect( 
            /* [in] */ BSTR aName,
            /* [in] */ NATProtocol aProto,
            /* [in] */ BSTR aHostIp,
            /* [in] */ USHORT aHostPort,
            /* [in] */ BSTR aGuestIp,
            /* [in] */ USHORT aGuestPort) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RemoveRedirect( 
            /* [in] */ BSTR aName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INATEngineVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            INATEngine * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            INATEngine * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            INATEngine * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            INATEngine * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            INATEngine * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            INATEngine * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            INATEngine * 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_Network )( 
            INATEngine * This,
            /* [retval][out] */ BSTR *aNetwork);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Network )( 
            INATEngine * This,
            /* [in] */ BSTR aNetwork);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostIP )( 
            INATEngine * This,
            /* [retval][out] */ BSTR *aHostIP);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_HostIP )( 
            INATEngine * This,
            /* [in] */ BSTR aHostIP);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TftpPrefix )( 
            INATEngine * This,
            /* [retval][out] */ BSTR *aTftpPrefix);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TftpPrefix )( 
            INATEngine * This,
            /* [in] */ BSTR aTftpPrefix);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TftpBootFile )( 
            INATEngine * This,
            /* [retval][out] */ BSTR *aTftpBootFile);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TftpBootFile )( 
            INATEngine * This,
            /* [in] */ BSTR aTftpBootFile);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_TftpNextServer )( 
            INATEngine * This,
            /* [retval][out] */ BSTR *aTftpNextServer);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_TftpNextServer )( 
            INATEngine * This,
            /* [in] */ BSTR aTftpNextServer);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AliasMode )( 
            INATEngine * This,
            /* [retval][out] */ ULONG *aAliasMode);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AliasMode )( 
            INATEngine * This,
            /* [in] */ ULONG aAliasMode);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DnsPassDomain )( 
            INATEngine * This,
            /* [retval][out] */ BOOL *aDnsPassDomain);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DnsPassDomain )( 
            INATEngine * This,
            /* [in] */ BOOL aDnsPassDomain);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DnsProxy )( 
            INATEngine * This,
            /* [retval][out] */ BOOL *aDnsProxy);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DnsProxy )( 
            INATEngine * This,
            /* [in] */ BOOL aDnsProxy);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DnsUseHostResolver )( 
            INATEngine * This,
            /* [retval][out] */ BOOL *aDnsUseHostResolver);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DnsUseHostResolver )( 
            INATEngine * This,
            /* [in] */ BOOL aDnsUseHostResolver);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Redirects )( 
            INATEngine * This,
            /* [retval][out] */ SAFEARRAY * *aRedirects);
        
        HRESULT ( STDMETHODCALLTYPE *SetNetworkSettings )( 
            INATEngine * This,
            /* [in] */ ULONG aMtu,
            /* [in] */ ULONG aSockSnd,
            /* [in] */ ULONG aSockRcv,
            /* [in] */ ULONG aTcpWndSnd,
            /* [in] */ ULONG aTcpWndRcv);
        
        HRESULT ( STDMETHODCALLTYPE *GetNetworkSettings )( 
            INATEngine * This,
            /* [out] */ ULONG *aMtu,
            /* [out] */ ULONG *aSockSnd,
            /* [out] */ ULONG *aSockRcv,
            /* [out] */ ULONG *aTcpWndSnd,
            /* [out] */ ULONG *aTcpWndRcv);
        
        HRESULT ( STDMETHODCALLTYPE *AddRedirect )( 
            INATEngine * This,
            /* [in] */ BSTR aName,
            /* [in] */ NATProtocol aProto,
            /* [in] */ BSTR aHostIp,
            /* [in] */ USHORT aHostPort,
            /* [in] */ BSTR aGuestIp,
            /* [in] */ USHORT aGuestPort);
        
        HRESULT ( STDMETHODCALLTYPE *RemoveRedirect )( 
            INATEngine * This,
            /* [in] */ BSTR aName);
        
        END_INTERFACE
    } INATEngineVtbl;

    interface INATEngine
    {
        CONST_VTBL struct INATEngineVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define INATEngine_get_Network(This,aNetwork)	\
    (This)->lpVtbl -> get_Network(This,aNetwork)

#define INATEngine_put_Network(This,aNetwork)	\
    (This)->lpVtbl -> put_Network(This,aNetwork)

#define INATEngine_get_HostIP(This,aHostIP)	\
    (This)->lpVtbl -> get_HostIP(This,aHostIP)

#define INATEngine_put_HostIP(This,aHostIP)	\
    (This)->lpVtbl -> put_HostIP(This,aHostIP)

#define INATEngine_get_TftpPrefix(This,aTftpPrefix)	\
    (This)->lpVtbl -> get_TftpPrefix(This,aTftpPrefix)

#define INATEngine_put_TftpPrefix(This,aTftpPrefix)	\
    (This)->lpVtbl -> put_TftpPrefix(This,aTftpPrefix)

#define INATEngine_get_TftpBootFile(This,aTftpBootFile)	\
    (This)->lpVtbl -> get_TftpBootFile(This,aTftpBootFile)

#define INATEngine_put_TftpBootFile(This,aTftpBootFile)	\
    (This)->lpVtbl -> put_TftpBootFile(This,aTftpBootFile)

#define INATEngine_get_TftpNextServer(This,aTftpNextServer)	\
    (This)->lpVtbl -> get_TftpNextServer(This,aTftpNextServer)

#define INATEngine_put_TftpNextServer(This,aTftpNextServer)	\
    (This)->lpVtbl -> put_TftpNextServer(This,aTftpNextServer)

#define INATEngine_get_AliasMode(This,aAliasMode)	\
    (This)->lpVtbl -> get_AliasMode(This,aAliasMode)

#define INATEngine_put_AliasMode(This,aAliasMode)	\
    (This)->lpVtbl -> put_AliasMode(This,aAliasMode)

#define INATEngine_get_DnsPassDomain(This,aDnsPassDomain)	\
    (This)->lpVtbl -> get_DnsPassDomain(This,aDnsPassDomain)

#define INATEngine_put_DnsPassDomain(This,aDnsPassDomain)	\
    (This)->lpVtbl -> put_DnsPassDomain(This,aDnsPassDomain)

#define INATEngine_get_DnsProxy(This,aDnsProxy)	\
    (This)->lpVtbl -> get_DnsProxy(This,aDnsProxy)

#define INATEngine_put_DnsProxy(This,aDnsProxy)	\
    (This)->lpVtbl -> put_DnsProxy(This,aDnsProxy)

#define INATEngine_get_DnsUseHostResolver(This,aDnsUseHostResolver)	\
    (This)->lpVtbl -> get_DnsUseHostResolver(This,aDnsUseHostResolver)

#define INATEngine_put_DnsUseHostResolver(This,aDnsUseHostResolver)	\
    (This)->lpVtbl -> put_DnsUseHostResolver(This,aDnsUseHostResolver)

#define INATEngine_get_Redirects(This,aRedirects)	\
    (This)->lpVtbl -> get_Redirects(This,aRedirects)

#define INATEngine_SetNetworkSettings(This,aMtu,aSockSnd,aSockRcv,aTcpWndSnd,aTcpWndRcv)	\
    (This)->lpVtbl -> SetNetworkSettings(This,aMtu,aSockSnd,aSockRcv,aTcpWndSnd,aTcpWndRcv)

#define INATEngine_GetNetworkSettings(This,aMtu,aSockSnd,aSockRcv,aTcpWndSnd,aTcpWndRcv)	\
    (This)->lpVtbl -> GetNetworkSettings(This,aMtu,aSockSnd,aSockRcv,aTcpWndSnd,aTcpWndRcv)

#define INATEngine_AddRedirect(This,aName,aProto,aHostIp,aHostPort,aGuestIp,aGuestPort)	\
    (This)->lpVtbl -> AddRedirect(This,aName,aProto,aHostIp,aHostPort,aGuestIp,aGuestPort)

#define INATEngine_RemoveRedirect(This,aName)	\
    (This)->lpVtbl -> RemoveRedirect(This,aName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_Network_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BSTR *aNetwork);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_Network_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aNetwork);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_HostIP_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BSTR *aHostIP);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_HostIP_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aHostIP);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_TftpPrefix_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BSTR *aTftpPrefix);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_TftpPrefix_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aTftpPrefix);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_TftpBootFile_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BSTR *aTftpBootFile);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_TftpBootFile_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aTftpBootFile);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_TftpNextServer_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BSTR *aTftpNextServer);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_TftpNextServer_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aTftpNextServer);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_AliasMode_Proxy( 
    INATEngine * This,
    /* [retval][out] */ ULONG *aAliasMode);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_AliasMode_Proxy( 
    INATEngine * This,
    /* [in] */ ULONG aAliasMode);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_DnsPassDomain_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BOOL *aDnsPassDomain);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_DnsPassDomain_Proxy( 
    INATEngine * This,
    /* [in] */ BOOL aDnsPassDomain);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_DnsProxy_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BOOL *aDnsProxy);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_DnsProxy_Proxy( 
    INATEngine * This,
    /* [in] */ BOOL aDnsProxy);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_DnsUseHostResolver_Proxy( 
    INATEngine * This,
    /* [retval][out] */ BOOL *aDnsUseHostResolver);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE INATEngine_put_DnsUseHostResolver_Proxy( 
    INATEngine * This,
    /* [in] */ BOOL aDnsUseHostResolver);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE INATEngine_get_Redirects_Proxy( 
    INATEngine * This,
    /* [retval][out] */ SAFEARRAY * *aRedirects);


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


HRESULT STDMETHODCALLTYPE INATEngine_SetNetworkSettings_Proxy( 
    INATEngine * This,
    /* [in] */ ULONG aMtu,
    /* [in] */ ULONG aSockSnd,
    /* [in] */ ULONG aSockRcv,
    /* [in] */ ULONG aTcpWndSnd,
    /* [in] */ ULONG aTcpWndRcv);


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


HRESULT STDMETHODCALLTYPE INATEngine_GetNetworkSettings_Proxy( 
    INATEngine * This,
    /* [out] */ ULONG *aMtu,
    /* [out] */ ULONG *aSockSnd,
    /* [out] */ ULONG *aSockRcv,
    /* [out] */ ULONG *aTcpWndSnd,
    /* [out] */ ULONG *aTcpWndRcv);


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


HRESULT STDMETHODCALLTYPE INATEngine_AddRedirect_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aName,
    /* [in] */ NATProtocol aProto,
    /* [in] */ BSTR aHostIp,
    /* [in] */ USHORT aHostPort,
    /* [in] */ BSTR aGuestIp,
    /* [in] */ USHORT aGuestPort);


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


HRESULT STDMETHODCALLTYPE INATEngine_RemoveRedirect_Proxy( 
    INATEngine * This,
    /* [in] */ BSTR aName);


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



#endif 	/* __INATEngine_INTERFACE_DEFINED__ */


#ifndef __IExtPackPlugIn_INTERFACE_DEFINED__
#define __IExtPackPlugIn_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IExtPackPlugIn;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("58000040-e718-4746-bbce-4b86d96da461")
    IExtPackPlugIn : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Frontend( 
            /* [retval][out] */ BSTR *aFrontend) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ModulePath( 
            /* [retval][out] */ BSTR *aModulePath) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtPackPlugInVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtPackPlugIn * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtPackPlugIn * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtPackPlugIn * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtPackPlugIn * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtPackPlugIn * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtPackPlugIn * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtPackPlugIn * 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 )( 
            IExtPackPlugIn * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IExtPackPlugIn * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Frontend )( 
            IExtPackPlugIn * This,
            /* [retval][out] */ BSTR *aFrontend);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ModulePath )( 
            IExtPackPlugIn * This,
            /* [retval][out] */ BSTR *aModulePath);
        
        END_INTERFACE
    } IExtPackPlugInVtbl;

    interface IExtPackPlugIn
    {
        CONST_VTBL struct IExtPackPlugInVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

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

#define IExtPackPlugIn_get_Frontend(This,aFrontend)	\
    (This)->lpVtbl -> get_Frontend(This,aFrontend)

#define IExtPackPlugIn_get_ModulePath(This,aModulePath)	\
    (This)->lpVtbl -> get_ModulePath(This,aModulePath)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


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


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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackPlugIn_get_Frontend_Proxy( 
    IExtPackPlugIn * This,
    /* [retval][out] */ BSTR *aFrontend);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackPlugIn_get_ModulePath_Proxy( 
    IExtPackPlugIn * This,
    /* [retval][out] */ BSTR *aModulePath);


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



#endif 	/* __IExtPackPlugIn_INTERFACE_DEFINED__ */


#ifndef __IExtPackBase_INTERFACE_DEFINED__
#define __IExtPackBase_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IExtPackBase;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5ffb0b64-0ad6-467d-af62-1157e7dc3c99")
    IExtPackBase : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ BSTR *aDescription) = 0;
        
        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_VRDEModule( 
            /* [retval][out] */ BSTR *aVRDEModule) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PlugIns( 
            /* [retval][out] */ SAFEARRAY * *aPlugIns) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Usable( 
            /* [retval][out] */ BOOL *aUsable) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_WhyUnusable( 
            /* [retval][out] */ BSTR *aWhyUnusable) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ShowLicense( 
            /* [retval][out] */ BOOL *aShowLicense) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_License( 
            /* [retval][out] */ BSTR *aLicense) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QueryLicense( 
            /* [in] */ BSTR aPreferredLocale,
            /* [in] */ BSTR aPreferredLanguage,
            /* [in] */ BSTR aFormat,
            /* [retval][out] */ BSTR *aLicenseText) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtPackBaseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtPackBase * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtPackBase * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtPackBase * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtPackBase * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtPackBase * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtPackBase * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtPackBase * 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 )( 
            IExtPackBase * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IExtPackBase * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
            IExtPackBase * This,
            /* [retval][out] */ BSTR *aVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IExtPackBase * This,
            /* [retval][out] */ ULONG *aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDEModule )( 
            IExtPackBase * This,
            /* [retval][out] */ BSTR *aVRDEModule);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlugIns )( 
            IExtPackBase * This,
            /* [retval][out] */ SAFEARRAY * *aPlugIns);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Usable )( 
            IExtPackBase * This,
            /* [retval][out] */ BOOL *aUsable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WhyUnusable )( 
            IExtPackBase * This,
            /* [retval][out] */ BSTR *aWhyUnusable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowLicense )( 
            IExtPackBase * This,
            /* [retval][out] */ BOOL *aShowLicense);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_License )( 
            IExtPackBase * This,
            /* [retval][out] */ BSTR *aLicense);
        
        HRESULT ( STDMETHODCALLTYPE *QueryLicense )( 
            IExtPackBase * This,
            /* [in] */ BSTR aPreferredLocale,
            /* [in] */ BSTR aPreferredLanguage,
            /* [in] */ BSTR aFormat,
            /* [retval][out] */ BSTR *aLicenseText);
        
        END_INTERFACE
    } IExtPackBaseVtbl;

    interface IExtPackBase
    {
        CONST_VTBL struct IExtPackBaseVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

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

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

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

#define IExtPackBase_get_VRDEModule(This,aVRDEModule)	\
    (This)->lpVtbl -> get_VRDEModule(This,aVRDEModule)

#define IExtPackBase_get_PlugIns(This,aPlugIns)	\
    (This)->lpVtbl -> get_PlugIns(This,aPlugIns)

#define IExtPackBase_get_Usable(This,aUsable)	\
    (This)->lpVtbl -> get_Usable(This,aUsable)

#define IExtPackBase_get_WhyUnusable(This,aWhyUnusable)	\
    (This)->lpVtbl -> get_WhyUnusable(This,aWhyUnusable)

#define IExtPackBase_get_ShowLicense(This,aShowLicense)	\
    (This)->lpVtbl -> get_ShowLicense(This,aShowLicense)

#define IExtPackBase_get_License(This,aLicense)	\
    (This)->lpVtbl -> get_License(This,aLicense)

#define IExtPackBase_QueryLicense(This,aPreferredLocale,aPreferredLanguage,aFormat,aLicenseText)	\
    (This)->lpVtbl -> QueryLicense(This,aPreferredLocale,aPreferredLanguage,aFormat,aLicenseText)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


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


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


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


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


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


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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackBase_get_VRDEModule_Proxy( 
    IExtPackBase * This,
    /* [retval][out] */ BSTR *aVRDEModule);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackBase_get_PlugIns_Proxy( 
    IExtPackBase * This,
    /* [retval][out] */ SAFEARRAY * *aPlugIns);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackBase_get_Usable_Proxy( 
    IExtPackBase * This,
    /* [retval][out] */ BOOL *aUsable);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackBase_get_WhyUnusable_Proxy( 
    IExtPackBase * This,
    /* [retval][out] */ BSTR *aWhyUnusable);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackBase_get_ShowLicense_Proxy( 
    IExtPackBase * This,
    /* [retval][out] */ BOOL *aShowLicense);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackBase_get_License_Proxy( 
    IExtPackBase * This,
    /* [retval][out] */ BSTR *aLicense);


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


HRESULT STDMETHODCALLTYPE IExtPackBase_QueryLicense_Proxy( 
    IExtPackBase * This,
    /* [in] */ BSTR aPreferredLocale,
    /* [in] */ BSTR aPreferredLanguage,
    /* [in] */ BSTR aFormat,
    /* [retval][out] */ BSTR *aLicenseText);


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



#endif 	/* __IExtPackBase_INTERFACE_DEFINED__ */


#ifndef __IExtPack_INTERFACE_DEFINED__
#define __IExtPack_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IExtPack;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("431685da-3618-4ebc-b038-833ba829b4b2")
    IExtPack : public IExtPackBase
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE QueryObject( 
            /* [in] */ BSTR aObjUuid,
            /* [retval][out] */ IUnknown **aReturnInterface) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtPackVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtPack * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtPack * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtPack * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtPack * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtPack * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtPack * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtPack * 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 )( 
            IExtPack * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IExtPack * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
            IExtPack * This,
            /* [retval][out] */ BSTR *aVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IExtPack * This,
            /* [retval][out] */ ULONG *aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDEModule )( 
            IExtPack * This,
            /* [retval][out] */ BSTR *aVRDEModule);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlugIns )( 
            IExtPack * This,
            /* [retval][out] */ SAFEARRAY * *aPlugIns);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Usable )( 
            IExtPack * This,
            /* [retval][out] */ BOOL *aUsable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WhyUnusable )( 
            IExtPack * This,
            /* [retval][out] */ BSTR *aWhyUnusable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowLicense )( 
            IExtPack * This,
            /* [retval][out] */ BOOL *aShowLicense);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_License )( 
            IExtPack * This,
            /* [retval][out] */ BSTR *aLicense);
        
        HRESULT ( STDMETHODCALLTYPE *QueryLicense )( 
            IExtPack * This,
            /* [in] */ BSTR aPreferredLocale,
            /* [in] */ BSTR aPreferredLanguage,
            /* [in] */ BSTR aFormat,
            /* [retval][out] */ BSTR *aLicenseText);
        
        HRESULT ( STDMETHODCALLTYPE *QueryObject )( 
            IExtPack * This,
            /* [in] */ BSTR aObjUuid,
            /* [retval][out] */ IUnknown **aReturnInterface);
        
        END_INTERFACE
    } IExtPackVtbl;

    interface IExtPack
    {
        CONST_VTBL struct IExtPackVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

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

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

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

#define IExtPack_get_VRDEModule(This,aVRDEModule)	\
    (This)->lpVtbl -> get_VRDEModule(This,aVRDEModule)

#define IExtPack_get_PlugIns(This,aPlugIns)	\
    (This)->lpVtbl -> get_PlugIns(This,aPlugIns)

#define IExtPack_get_Usable(This,aUsable)	\
    (This)->lpVtbl -> get_Usable(This,aUsable)

#define IExtPack_get_WhyUnusable(This,aWhyUnusable)	\
    (This)->lpVtbl -> get_WhyUnusable(This,aWhyUnusable)

#define IExtPack_get_ShowLicense(This,aShowLicense)	\
    (This)->lpVtbl -> get_ShowLicense(This,aShowLicense)

#define IExtPack_get_License(This,aLicense)	\
    (This)->lpVtbl -> get_License(This,aLicense)

#define IExtPack_QueryLicense(This,aPreferredLocale,aPreferredLanguage,aFormat,aLicenseText)	\
    (This)->lpVtbl -> QueryLicense(This,aPreferredLocale,aPreferredLanguage,aFormat,aLicenseText)


#define IExtPack_QueryObject(This,aObjUuid,aReturnInterface)	\
    (This)->lpVtbl -> QueryObject(This,aObjUuid,aReturnInterface)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IExtPack_QueryObject_Proxy( 
    IExtPack * This,
    /* [in] */ BSTR aObjUuid,
    /* [retval][out] */ IUnknown **aReturnInterface);


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



#endif 	/* __IExtPack_INTERFACE_DEFINED__ */


#ifndef __IExtPackFile_INTERFACE_DEFINED__
#define __IExtPackFile_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IExtPackFile;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("b6b49f55-efcc-4f08-b486-56e8d8afb10b")
    IExtPackFile : public IExtPackBase
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_FilePath( 
            /* [retval][out] */ BSTR *aFilePath) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Install( 
            /* [in] */ BOOL aReplace,
            /* [in] */ BSTR aDisplayInfo,
            /* [retval][out] */ IProgress **aProgess) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtPackFileVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtPackFile * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtPackFile * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtPackFile * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtPackFile * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtPackFile * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtPackFile * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtPackFile * 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 )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Description )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aDescription);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aVersion);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Revision )( 
            IExtPackFile * This,
            /* [retval][out] */ ULONG *aRevision);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_VRDEModule )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aVRDEModule);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PlugIns )( 
            IExtPackFile * This,
            /* [retval][out] */ SAFEARRAY * *aPlugIns);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Usable )( 
            IExtPackFile * This,
            /* [retval][out] */ BOOL *aUsable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WhyUnusable )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aWhyUnusable);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShowLicense )( 
            IExtPackFile * This,
            /* [retval][out] */ BOOL *aShowLicense);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_License )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aLicense);
        
        HRESULT ( STDMETHODCALLTYPE *QueryLicense )( 
            IExtPackFile * This,
            /* [in] */ BSTR aPreferredLocale,
            /* [in] */ BSTR aPreferredLanguage,
            /* [in] */ BSTR aFormat,
            /* [retval][out] */ BSTR *aLicenseText);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_FilePath )( 
            IExtPackFile * This,
            /* [retval][out] */ BSTR *aFilePath);
        
        HRESULT ( STDMETHODCALLTYPE *Install )( 
            IExtPackFile * This,
            /* [in] */ BOOL aReplace,
            /* [in] */ BSTR aDisplayInfo,
            /* [retval][out] */ IProgress **aProgess);
        
        END_INTERFACE
    } IExtPackFileVtbl;

    interface IExtPackFile
    {
        CONST_VTBL struct IExtPackFileVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

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

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

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

#define IExtPackFile_get_VRDEModule(This,aVRDEModule)	\
    (This)->lpVtbl -> get_VRDEModule(This,aVRDEModule)

#define IExtPackFile_get_PlugIns(This,aPlugIns)	\
    (This)->lpVtbl -> get_PlugIns(This,aPlugIns)

#define IExtPackFile_get_Usable(This,aUsable)	\
    (This)->lpVtbl -> get_Usable(This,aUsable)

#define IExtPackFile_get_WhyUnusable(This,aWhyUnusable)	\
    (This)->lpVtbl -> get_WhyUnusable(This,aWhyUnusable)

#define IExtPackFile_get_ShowLicense(This,aShowLicense)	\
    (This)->lpVtbl -> get_ShowLicense(This,aShowLicense)

#define IExtPackFile_get_License(This,aLicense)	\
    (This)->lpVtbl -> get_License(This,aLicense)

#define IExtPackFile_QueryLicense(This,aPreferredLocale,aPreferredLanguage,aFormat,aLicenseText)	\
    (This)->lpVtbl -> QueryLicense(This,aPreferredLocale,aPreferredLanguage,aFormat,aLicenseText)


#define IExtPackFile_get_FilePath(This,aFilePath)	\
    (This)->lpVtbl -> get_FilePath(This,aFilePath)

#define IExtPackFile_Install(This,aReplace,aDisplayInfo,aProgess)	\
    (This)->lpVtbl -> Install(This,aReplace,aDisplayInfo,aProgess)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackFile_get_FilePath_Proxy( 
    IExtPackFile * This,
    /* [retval][out] */ BSTR *aFilePath);


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


HRESULT STDMETHODCALLTYPE IExtPackFile_Install_Proxy( 
    IExtPackFile * This,
    /* [in] */ BOOL aReplace,
    /* [in] */ BSTR aDisplayInfo,
    /* [retval][out] */ IProgress **aProgess);


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



#endif 	/* __IExtPackFile_INTERFACE_DEFINED__ */


#ifndef __IExtPackManager_INTERFACE_DEFINED__
#define __IExtPackManager_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IExtPackManager;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3295e6ce-b051-47b2-9514-2c588bfe7554")
    IExtPackManager : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_InstalledExtPacks( 
            /* [retval][out] */ SAFEARRAY * *aInstalledExtPacks) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Find( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IExtPack **aReturnData) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE OpenExtPackFile( 
            /* [in] */ BSTR aPath,
            /* [retval][out] */ IExtPackFile **aFile) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Uninstall( 
            /* [in] */ BSTR aName,
            /* [in] */ BOOL aForcedRemoval,
            /* [in] */ BSTR aDisplayInfo,
            /* [retval][out] */ IProgress **aProgess) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Cleanup( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE QueryAllPlugInsForFrontend( 
            /* [in] */ BSTR aFrontendName,
            /* [retval][out] */ SAFEARRAY * *aPlugInModules) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IsExtPackUsable( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ BOOL *aUsable) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtPackManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtPackManager * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtPackManager * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtPackManager * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtPackManager * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtPackManager * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtPackManager * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtPackManager * 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_InstalledExtPacks )( 
            IExtPackManager * This,
            /* [retval][out] */ SAFEARRAY * *aInstalledExtPacks);
        
        HRESULT ( STDMETHODCALLTYPE *Find )( 
            IExtPackManager * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IExtPack **aReturnData);
        
        HRESULT ( STDMETHODCALLTYPE *OpenExtPackFile )( 
            IExtPackManager * This,
            /* [in] */ BSTR aPath,
            /* [retval][out] */ IExtPackFile **aFile);
        
        HRESULT ( STDMETHODCALLTYPE *Uninstall )( 
            IExtPackManager * This,
            /* [in] */ BSTR aName,
            /* [in] */ BOOL aForcedRemoval,
            /* [in] */ BSTR aDisplayInfo,
            /* [retval][out] */ IProgress **aProgess);
        
        HRESULT ( STDMETHODCALLTYPE *Cleanup )( 
            IExtPackManager * This);
        
        HRESULT ( STDMETHODCALLTYPE *QueryAllPlugInsForFrontend )( 
            IExtPackManager * This,
            /* [in] */ BSTR aFrontendName,
            /* [retval][out] */ SAFEARRAY * *aPlugInModules);
        
        HRESULT ( STDMETHODCALLTYPE *IsExtPackUsable )( 
            IExtPackManager * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ BOOL *aUsable);
        
        END_INTERFACE
    } IExtPackManagerVtbl;

    interface IExtPackManager
    {
        CONST_VTBL struct IExtPackManagerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IExtPackManager_get_InstalledExtPacks(This,aInstalledExtPacks)	\
    (This)->lpVtbl -> get_InstalledExtPacks(This,aInstalledExtPacks)

#define IExtPackManager_Find(This,aName,aReturnData)	\
    (This)->lpVtbl -> Find(This,aName,aReturnData)

#define IExtPackManager_OpenExtPackFile(This,aPath,aFile)	\
    (This)->lpVtbl -> OpenExtPackFile(This,aPath,aFile)

#define IExtPackManager_Uninstall(This,aName,aForcedRemoval,aDisplayInfo,aProgess)	\
    (This)->lpVtbl -> Uninstall(This,aName,aForcedRemoval,aDisplayInfo,aProgess)

#define IExtPackManager_Cleanup(This)	\
    (This)->lpVtbl -> Cleanup(This)

#define IExtPackManager_QueryAllPlugInsForFrontend(This,aFrontendName,aPlugInModules)	\
    (This)->lpVtbl -> QueryAllPlugInsForFrontend(This,aFrontendName,aPlugInModules)

#define IExtPackManager_IsExtPackUsable(This,aName,aUsable)	\
    (This)->lpVtbl -> IsExtPackUsable(This,aName,aUsable)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IExtPackManager_get_InstalledExtPacks_Proxy( 
    IExtPackManager * This,
    /* [retval][out] */ SAFEARRAY * *aInstalledExtPacks);


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


HRESULT STDMETHODCALLTYPE IExtPackManager_Find_Proxy( 
    IExtPackManager * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IExtPack **aReturnData);


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


HRESULT STDMETHODCALLTYPE IExtPackManager_OpenExtPackFile_Proxy( 
    IExtPackManager * This,
    /* [in] */ BSTR aPath,
    /* [retval][out] */ IExtPackFile **aFile);


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


HRESULT STDMETHODCALLTYPE IExtPackManager_Uninstall_Proxy( 
    IExtPackManager * This,
    /* [in] */ BSTR aName,
    /* [in] */ BOOL aForcedRemoval,
    /* [in] */ BSTR aDisplayInfo,
    /* [retval][out] */ IProgress **aProgess);


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


HRESULT STDMETHODCALLTYPE IExtPackManager_Cleanup_Proxy( 
    IExtPackManager * This);


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


HRESULT STDMETHODCALLTYPE IExtPackManager_QueryAllPlugInsForFrontend_Proxy( 
    IExtPackManager * This,
    /* [in] */ BSTR aFrontendName,
    /* [retval][out] */ SAFEARRAY * *aPlugInModules);


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


HRESULT STDMETHODCALLTYPE IExtPackManager_IsExtPackUsable_Proxy( 
    IExtPackManager * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ BOOL *aUsable);


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



#endif 	/* __IExtPackManager_INTERFACE_DEFINED__ */


#ifndef __IBandwidthGroup_INTERFACE_DEFINED__
#define __IBandwidthGroup_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IBandwidthGroup;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("badea2d7-0261-4146-89f0-6a57cc34833d")
    IBandwidthGroup : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ BandwidthGroupType *aType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Reference( 
            /* [retval][out] */ ULONG *aReference) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxMbPerSec( 
            /* [retval][out] */ ULONG *aMaxMbPerSec) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MaxMbPerSec( 
            /* [in] */ ULONG aMaxMbPerSec) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBandwidthGroupVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IBandwidthGroup * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IBandwidthGroup * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IBandwidthGroup * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IBandwidthGroup * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IBandwidthGroup * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IBandwidthGroup * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IBandwidthGroup * 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 )( 
            IBandwidthGroup * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Type )( 
            IBandwidthGroup * This,
            /* [retval][out] */ BandwidthGroupType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Reference )( 
            IBandwidthGroup * This,
            /* [retval][out] */ ULONG *aReference);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxMbPerSec )( 
            IBandwidthGroup * This,
            /* [retval][out] */ ULONG *aMaxMbPerSec);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaxMbPerSec )( 
            IBandwidthGroup * This,
            /* [in] */ ULONG aMaxMbPerSec);
        
        END_INTERFACE
    } IBandwidthGroupVtbl;

    interface IBandwidthGroup
    {
        CONST_VTBL struct IBandwidthGroupVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

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

#define IBandwidthGroup_get_Reference(This,aReference)	\
    (This)->lpVtbl -> get_Reference(This,aReference)

#define IBandwidthGroup_get_MaxMbPerSec(This,aMaxMbPerSec)	\
    (This)->lpVtbl -> get_MaxMbPerSec(This,aMaxMbPerSec)

#define IBandwidthGroup_put_MaxMbPerSec(This,aMaxMbPerSec)	\
    (This)->lpVtbl -> put_MaxMbPerSec(This,aMaxMbPerSec)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IBandwidthGroup_get_Type_Proxy( 
    IBandwidthGroup * This,
    /* [retval][out] */ BandwidthGroupType *aType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IBandwidthGroup_get_Reference_Proxy( 
    IBandwidthGroup * This,
    /* [retval][out] */ ULONG *aReference);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IBandwidthGroup_get_MaxMbPerSec_Proxy( 
    IBandwidthGroup * This,
    /* [retval][out] */ ULONG *aMaxMbPerSec);


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


/* [propput] */ HRESULT STDMETHODCALLTYPE IBandwidthGroup_put_MaxMbPerSec_Proxy( 
    IBandwidthGroup * This,
    /* [in] */ ULONG aMaxMbPerSec);


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



#endif 	/* __IBandwidthGroup_INTERFACE_DEFINED__ */


#ifndef __IBandwidthControl_INTERFACE_DEFINED__
#define __IBandwidthControl_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IBandwidthControl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e2eb3930-d2f4-4f87-be17-0707e30f019f")
    IBandwidthControl : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NumGroups( 
            /* [retval][out] */ ULONG *aNumGroups) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateBandwidthGroup( 
            /* [in] */ BSTR aName,
            /* [in] */ BandwidthGroupType aType,
            /* [in] */ ULONG aMaxMbPerSec) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE DeleteBandwidthGroup( 
            /* [in] */ BSTR aName) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetBandwidthGroup( 
            /* [in] */ BSTR aName,
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetAllBandwidthGroups( 
            /* [retval][out] */ SAFEARRAY * *aBandwidthGroups) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBandwidthControlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IBandwidthControl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IBandwidthControl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IBandwidthControl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IBandwidthControl * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IBandwidthControl * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IBandwidthControl * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IBandwidthControl * 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_NumGroups )( 
            IBandwidthControl * This,
            /* [retval][out] */ ULONG *aNumGroups);
        
        HRESULT ( STDMETHODCALLTYPE *CreateBandwidthGroup )( 
            IBandwidthControl * This,
            /* [in] */ BSTR aName,
            /* [in] */ BandwidthGroupType aType,
            /* [in] */ ULONG aMaxMbPerSec);
        
        HRESULT ( STDMETHODCALLTYPE *DeleteBandwidthGroup )( 
            IBandwidthControl * This,
            /* [in] */ BSTR aName);
        
        HRESULT ( STDMETHODCALLTYPE *GetBandwidthGroup )( 
            IBandwidthControl * This,
            /* [in] */ BSTR aName,
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);
        
        HRESULT ( STDMETHODCALLTYPE *GetAllBandwidthGroups )( 
            IBandwidthControl * This,
            /* [retval][out] */ SAFEARRAY * *aBandwidthGroups);
        
        END_INTERFACE
    } IBandwidthControlVtbl;

    interface IBandwidthControl
    {
        CONST_VTBL struct IBandwidthControlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IBandwidthControl_get_NumGroups(This,aNumGroups)	\
    (This)->lpVtbl -> get_NumGroups(This,aNumGroups)

#define IBandwidthControl_CreateBandwidthGroup(This,aName,aType,aMaxMbPerSec)	\
    (This)->lpVtbl -> CreateBandwidthGroup(This,aName,aType,aMaxMbPerSec)

#define IBandwidthControl_DeleteBandwidthGroup(This,aName)	\
    (This)->lpVtbl -> DeleteBandwidthGroup(This,aName)

#define IBandwidthControl_GetBandwidthGroup(This,aName,aBandwidthGroup)	\
    (This)->lpVtbl -> GetBandwidthGroup(This,aName,aBandwidthGroup)

#define IBandwidthControl_GetAllBandwidthGroups(This,aBandwidthGroups)	\
    (This)->lpVtbl -> GetAllBandwidthGroups(This,aBandwidthGroups)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IBandwidthControl_get_NumGroups_Proxy( 
    IBandwidthControl * This,
    /* [retval][out] */ ULONG *aNumGroups);


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


HRESULT STDMETHODCALLTYPE IBandwidthControl_CreateBandwidthGroup_Proxy( 
    IBandwidthControl * This,
    /* [in] */ BSTR aName,
    /* [in] */ BandwidthGroupType aType,
    /* [in] */ ULONG aMaxMbPerSec);


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


HRESULT STDMETHODCALLTYPE IBandwidthControl_DeleteBandwidthGroup_Proxy( 
    IBandwidthControl * This,
    /* [in] */ BSTR aName);


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


HRESULT STDMETHODCALLTYPE IBandwidthControl_GetBandwidthGroup_Proxy( 
    IBandwidthControl * This,
    /* [in] */ BSTR aName,
    /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);


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


HRESULT STDMETHODCALLTYPE IBandwidthControl_GetAllBandwidthGroups_Proxy( 
    IBandwidthControl * This,
    /* [retval][out] */ SAFEARRAY * *aBandwidthGroups);


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



#endif 	/* __IBandwidthControl_INTERFACE_DEFINED__ */


#ifndef __IVirtualBoxClient_INTERFACE_DEFINED__
#define __IVirtualBoxClient_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IVirtualBoxClient;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5fe0bd48-1181-40d1-991f-3b02f269a823")
    IVirtualBoxClient : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_VirtualBox( 
            /* [retval][out] */ IVirtualBox **aVirtualBox) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Session( 
            /* [retval][out] */ ISession **aSession) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_EventSource( 
            /* [retval][out] */ IEventSource **aEventSource) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVirtualBoxClientVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVirtualBoxClient * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVirtualBoxClient * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVirtualBoxClient * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVirtualBoxClient * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVirtualBoxClient * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVirtualBoxClient * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVirtualBoxClient * 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_VirtualBox )( 
            IVirtualBoxClient * This,
            /* [retval][out] */ IVirtualBox **aVirtualBox);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Session )( 
            IVirtualBoxClient * This,
            /* [retval][out] */ ISession **aSession);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_EventSource )( 
            IVirtualBoxClient * This,
            /* [retval][out] */ IEventSource **aEventSource);
        
        END_INTERFACE
    } IVirtualBoxClientVtbl;

    interface IVirtualBoxClient
    {
        CONST_VTBL struct IVirtualBoxClientVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IVirtualBoxClient_get_VirtualBox(This,aVirtualBox)	\
    (This)->lpVtbl -> get_VirtualBox(This,aVirtualBox)

#define IVirtualBoxClient_get_Session(This,aSession)	\
    (This)->lpVtbl -> get_Session(This,aSession)

#define IVirtualBoxClient_get_EventSource(This,aEventSource)	\
    (This)->lpVtbl -> get_EventSource(This,aEventSource)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxClient_get_VirtualBox_Proxy( 
    IVirtualBoxClient * This,
    /* [retval][out] */ IVirtualBox **aVirtualBox);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxClient_get_Session_Proxy( 
    IVirtualBoxClient * This,
    /* [retval][out] */ ISession **aSession);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IVirtualBoxClient_get_EventSource_Proxy( 
    IVirtualBoxClient * This,
    /* [retval][out] */ IEventSource **aEventSource);


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



#endif 	/* __IVirtualBoxClient_INTERFACE_DEFINED__ */


#ifndef __IEventSource_INTERFACE_DEFINED__
#define __IEventSource_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IEventSource;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9b6e1aee-35f3-4f4d-b5bb-ed0ecefd8538")
    IEventSource : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE CreateListener( 
            /* [retval][out] */ IEventListener **aListener) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE CreateAggregator( 
            /* [in] */ SAFEARRAY * aSubordinates,
            /* [retval][out] */ IEventSource **aResult) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE RegisterListener( 
            /* [in] */ IEventListener *aListener,
            /* [in] */ SAFEARRAY * aInteresting,
            /* [in] */ BOOL aActive) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE UnregisterListener( 
            /* [in] */ IEventListener *aListener) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE FireEvent( 
            /* [in] */ IEvent *aEvent,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetEvent( 
            /* [in] */ IEventListener *aListener,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ IEvent **aEvent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE EventProcessed( 
            /* [in] */ IEventListener *aListener,
            /* [in] */ IEvent *aEvent) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEventSourceVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IEventSource * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IEventSource * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IEventSource * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IEventSource * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IEventSource * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IEventSource * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IEventSource * 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 *CreateListener )( 
            IEventSource * This,
            /* [retval][out] */ IEventListener **aListener);
        
        HRESULT ( STDMETHODCALLTYPE *CreateAggregator )( 
            IEventSource * This,
            /* [in] */ SAFEARRAY * aSubordinates,
            /* [retval][out] */ IEventSource **aResult);
        
        HRESULT ( STDMETHODCALLTYPE *RegisterListener )( 
            IEventSource * This,
            /* [in] */ IEventListener *aListener,
            /* [in] */ SAFEARRAY * aInteresting,
            /* [in] */ BOOL aActive);
        
        HRESULT ( STDMETHODCALLTYPE *UnregisterListener )( 
            IEventSource * This,
            /* [in] */ IEventListener *aListener);
        
        HRESULT ( STDMETHODCALLTYPE *FireEvent )( 
            IEventSource * This,
            /* [in] */ IEvent *aEvent,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *GetEvent )( 
            IEventSource * This,
            /* [in] */ IEventListener *aListener,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ IEvent **aEvent);
        
        HRESULT ( STDMETHODCALLTYPE *EventProcessed )( 
            IEventSource * This,
            /* [in] */ IEventListener *aListener,
            /* [in] */ IEvent *aEvent);
        
        END_INTERFACE
    } IEventSourceVtbl;

    interface IEventSource
    {
        CONST_VTBL struct IEventSourceVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IEventSource_CreateListener(This,aListener)	\
    (This)->lpVtbl -> CreateListener(This,aListener)

#define IEventSource_CreateAggregator(This,aSubordinates,aResult)	\
    (This)->lpVtbl -> CreateAggregator(This,aSubordinates,aResult)

#define IEventSource_RegisterListener(This,aListener,aInteresting,aActive)	\
    (This)->lpVtbl -> RegisterListener(This,aListener,aInteresting,aActive)

#define IEventSource_UnregisterListener(This,aListener)	\
    (This)->lpVtbl -> UnregisterListener(This,aListener)

#define IEventSource_FireEvent(This,aEvent,aTimeout,aResult)	\
    (This)->lpVtbl -> FireEvent(This,aEvent,aTimeout,aResult)

#define IEventSource_GetEvent(This,aListener,aTimeout,aEvent)	\
    (This)->lpVtbl -> GetEvent(This,aListener,aTimeout,aEvent)

#define IEventSource_EventProcessed(This,aListener,aEvent)	\
    (This)->lpVtbl -> EventProcessed(This,aListener,aEvent)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IEventSource_CreateListener_Proxy( 
    IEventSource * This,
    /* [retval][out] */ IEventListener **aListener);


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


HRESULT STDMETHODCALLTYPE IEventSource_CreateAggregator_Proxy( 
    IEventSource * This,
    /* [in] */ SAFEARRAY * aSubordinates,
    /* [retval][out] */ IEventSource **aResult);


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


HRESULT STDMETHODCALLTYPE IEventSource_RegisterListener_Proxy( 
    IEventSource * This,
    /* [in] */ IEventListener *aListener,
    /* [in] */ SAFEARRAY * aInteresting,
    /* [in] */ BOOL aActive);


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


HRESULT STDMETHODCALLTYPE IEventSource_UnregisterListener_Proxy( 
    IEventSource * This,
    /* [in] */ IEventListener *aListener);


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


HRESULT STDMETHODCALLTYPE IEventSource_FireEvent_Proxy( 
    IEventSource * This,
    /* [in] */ IEvent *aEvent,
    /* [in] */ LONG aTimeout,
    /* [retval][out] */ BOOL *aResult);


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


HRESULT STDMETHODCALLTYPE IEventSource_GetEvent_Proxy( 
    IEventSource * This,
    /* [in] */ IEventListener *aListener,
    /* [in] */ LONG aTimeout,
    /* [retval][out] */ IEvent **aEvent);


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


HRESULT STDMETHODCALLTYPE IEventSource_EventProcessed_Proxy( 
    IEventSource * This,
    /* [in] */ IEventListener *aListener,
    /* [in] */ IEvent *aEvent);


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



#endif 	/* __IEventSource_INTERFACE_DEFINED__ */


#ifndef __IEventListener_INTERFACE_DEFINED__
#define __IEventListener_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IEventListener;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("67099191-32e7-4f6c-85ee-422304c71b90")
    IEventListener : public IDispatch
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE HandleEvent( 
            /* [in] */ IEvent *aEvent) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEventListenerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IEventListener * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IEventListener * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IEventListener * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IEventListener * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IEventListener * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IEventListener * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IEventListener * 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 *HandleEvent )( 
            IEventListener * This,
            /* [in] */ IEvent *aEvent);
        
        END_INTERFACE
    } IEventListenerVtbl;

    interface IEventListener
    {
        CONST_VTBL struct IEventListenerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define IEventListener_HandleEvent(This,aEvent)	\
    (This)->lpVtbl -> HandleEvent(This,aEvent)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IEventListener_HandleEvent_Proxy( 
    IEventListener * This,
    /* [in] */ IEvent *aEvent);


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



#endif 	/* __IEventListener_INTERFACE_DEFINED__ */


#ifndef __IEvent_INTERFACE_DEFINED__
#define __IEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0ca2adba-8f30-401b-a8cd-fe31dbe839c0")
    IEvent : public IDispatch
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Type( 
            /* [retval][out] */ VBoxEventType *aType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Source( 
            /* [retval][out] */ IEventSource **aSource) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Waitable( 
            /* [retval][out] */ BOOL *aWaitable) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE SetProcessed( void) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE WaitProcessed( 
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IEvent * 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_Type )( 
            IEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IEventVtbl;

    interface IEvent
    {
        CONST_VTBL struct IEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IEvent_get_Type_Proxy( 
    IEvent * This,
    /* [retval][out] */ VBoxEventType *aType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IEvent_get_Source_Proxy( 
    IEvent * This,
    /* [retval][out] */ IEventSource **aSource);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IEvent_get_Waitable_Proxy( 
    IEvent * This,
    /* [retval][out] */ BOOL *aWaitable);


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


HRESULT STDMETHODCALLTYPE IEvent_SetProcessed_Proxy( 
    IEvent * This);


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


HRESULT STDMETHODCALLTYPE IEvent_WaitProcessed_Proxy( 
    IEvent * This,
    /* [in] */ LONG aTimeout,
    /* [retval][out] */ BOOL *aResult);


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



#endif 	/* __IEvent_INTERFACE_DEFINED__ */


#ifndef __IReusableEvent_INTERFACE_DEFINED__
#define __IReusableEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IReusableEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("69bfb134-80f6-4266-8e20-16371f68fa25")
    IReusableEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Generation( 
            /* [retval][out] */ ULONG *aGeneration) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE Reuse( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IReusableEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IReusableEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IReusableEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IReusableEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IReusableEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IReusableEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IReusableEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IReusableEvent * 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_Type )( 
            IReusableEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IReusableEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IReusableEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IReusableEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IReusableEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Generation )( 
            IReusableEvent * This,
            /* [retval][out] */ ULONG *aGeneration);
        
        HRESULT ( STDMETHODCALLTYPE *Reuse )( 
            IReusableEvent * This);
        
        END_INTERFACE
    } IReusableEventVtbl;

    interface IReusableEvent
    {
        CONST_VTBL struct IReusableEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IReusableEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IReusableEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IReusableEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IReusableEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IReusableEvent_get_Generation(This,aGeneration)	\
    (This)->lpVtbl -> get_Generation(This,aGeneration)

#define IReusableEvent_Reuse(This)	\
    (This)->lpVtbl -> Reuse(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IReusableEvent_get_Generation_Proxy( 
    IReusableEvent * This,
    /* [retval][out] */ ULONG *aGeneration);


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


HRESULT STDMETHODCALLTYPE IReusableEvent_Reuse_Proxy( 
    IReusableEvent * This);


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



#endif 	/* __IReusableEvent_INTERFACE_DEFINED__ */


#ifndef __IMachineEvent_INTERFACE_DEFINED__
#define __IMachineEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMachineEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("92ed7b1a-0d96-40ed-ae46-a564d484325e")
    IMachineEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MachineId( 
            /* [retval][out] */ BSTR *aMachineId) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMachineEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMachineEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMachineEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMachineEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMachineEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMachineEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMachineEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMachineEvent * 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_Type )( 
            IMachineEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMachineEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMachineEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMachineEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMachineEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IMachineEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        END_INTERFACE
    } IMachineEventVtbl;

    interface IMachineEvent
    {
        CONST_VTBL struct IMachineEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMachineEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMachineEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMachineEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMachineEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMachineEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineEvent_get_MachineId_Proxy( 
    IMachineEvent * This,
    /* [retval][out] */ BSTR *aMachineId);


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



#endif 	/* __IMachineEvent_INTERFACE_DEFINED__ */


#ifndef __IMachineStateChangedEvent_INTERFACE_DEFINED__
#define __IMachineStateChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMachineStateChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5748F794-48DF-438D-85EB-98FFD70D18C9")
    IMachineStateChangedEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ MachineState *aState) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMachineStateChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMachineStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMachineStateChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMachineStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMachineStateChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMachineStateChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMachineStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMachineStateChangedEvent * 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_Type )( 
            IMachineStateChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMachineStateChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMachineStateChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMachineStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMachineStateChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IMachineStateChangedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IMachineStateChangedEvent * This,
            /* [retval][out] */ MachineState *aState);
        
        END_INTERFACE
    } IMachineStateChangedEventVtbl;

    interface IMachineStateChangedEvent
    {
        CONST_VTBL struct IMachineStateChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMachineStateChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMachineStateChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMachineStateChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMachineStateChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMachineStateChangedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


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

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineStateChangedEvent_get_State_Proxy( 
    IMachineStateChangedEvent * This,
    /* [retval][out] */ MachineState *aState);


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



#endif 	/* __IMachineStateChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IMachineDataChangedEvent_INTERFACE_DEFINED__
#define __IMachineDataChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMachineDataChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("abe94809-2e88-4436-83d7-50f3e64d0503")
    IMachineDataChangedEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Temporary( 
            /* [retval][out] */ BOOL *aTemporary) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMachineDataChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMachineDataChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMachineDataChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMachineDataChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMachineDataChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMachineDataChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMachineDataChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMachineDataChangedEvent * 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_Type )( 
            IMachineDataChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMachineDataChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMachineDataChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMachineDataChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMachineDataChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IMachineDataChangedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Temporary )( 
            IMachineDataChangedEvent * This,
            /* [retval][out] */ BOOL *aTemporary);
        
        END_INTERFACE
    } IMachineDataChangedEventVtbl;

    interface IMachineDataChangedEvent
    {
        CONST_VTBL struct IMachineDataChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMachineDataChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMachineDataChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMachineDataChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMachineDataChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMachineDataChangedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define IMachineDataChangedEvent_get_Temporary(This,aTemporary)	\
    (This)->lpVtbl -> get_Temporary(This,aTemporary)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineDataChangedEvent_get_Temporary_Proxy( 
    IMachineDataChangedEvent * This,
    /* [retval][out] */ BOOL *aTemporary);


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



#endif 	/* __IMachineDataChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IMediumRegisteredEvent_INTERFACE_DEFINED__
#define __IMediumRegisteredEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMediumRegisteredEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("53fac49a-b7f1-4a5a-a4ef-a11dd9c2a458")
    IMediumRegisteredEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumId( 
            /* [retval][out] */ BSTR *aMediumId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumType( 
            /* [retval][out] */ DeviceType *aMediumType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Registered( 
            /* [retval][out] */ BOOL *aRegistered) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMediumRegisteredEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMediumRegisteredEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMediumRegisteredEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMediumRegisteredEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMediumRegisteredEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMediumRegisteredEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMediumRegisteredEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMediumRegisteredEvent * 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_Type )( 
            IMediumRegisteredEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMediumRegisteredEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMediumRegisteredEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMediumRegisteredEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMediumRegisteredEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumId )( 
            IMediumRegisteredEvent * This,
            /* [retval][out] */ BSTR *aMediumId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumType )( 
            IMediumRegisteredEvent * This,
            /* [retval][out] */ DeviceType *aMediumType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Registered )( 
            IMediumRegisteredEvent * This,
            /* [retval][out] */ BOOL *aRegistered);
        
        END_INTERFACE
    } IMediumRegisteredEventVtbl;

    interface IMediumRegisteredEvent
    {
        CONST_VTBL struct IMediumRegisteredEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMediumRegisteredEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMediumRegisteredEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMediumRegisteredEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMediumRegisteredEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMediumRegisteredEvent_get_MediumId(This,aMediumId)	\
    (This)->lpVtbl -> get_MediumId(This,aMediumId)

#define IMediumRegisteredEvent_get_MediumType(This,aMediumType)	\
    (This)->lpVtbl -> get_MediumType(This,aMediumType)

#define IMediumRegisteredEvent_get_Registered(This,aRegistered)	\
    (This)->lpVtbl -> get_Registered(This,aRegistered)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumRegisteredEvent_get_MediumId_Proxy( 
    IMediumRegisteredEvent * This,
    /* [retval][out] */ BSTR *aMediumId);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumRegisteredEvent_get_MediumType_Proxy( 
    IMediumRegisteredEvent * This,
    /* [retval][out] */ DeviceType *aMediumType);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumRegisteredEvent_get_Registered_Proxy( 
    IMediumRegisteredEvent * This,
    /* [retval][out] */ BOOL *aRegistered);


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



#endif 	/* __IMediumRegisteredEvent_INTERFACE_DEFINED__ */


#ifndef __IMachineRegisteredEvent_INTERFACE_DEFINED__
#define __IMachineRegisteredEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMachineRegisteredEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("c354a762-3ff2-4f2e-8f09-07382ee25088")
    IMachineRegisteredEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Registered( 
            /* [retval][out] */ BOOL *aRegistered) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMachineRegisteredEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMachineRegisteredEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMachineRegisteredEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMachineRegisteredEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMachineRegisteredEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMachineRegisteredEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMachineRegisteredEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMachineRegisteredEvent * 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_Type )( 
            IMachineRegisteredEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMachineRegisteredEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMachineRegisteredEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMachineRegisteredEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMachineRegisteredEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IMachineRegisteredEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Registered )( 
            IMachineRegisteredEvent * This,
            /* [retval][out] */ BOOL *aRegistered);
        
        END_INTERFACE
    } IMachineRegisteredEventVtbl;

    interface IMachineRegisteredEvent
    {
        CONST_VTBL struct IMachineRegisteredEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMachineRegisteredEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMachineRegisteredEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMachineRegisteredEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMachineRegisteredEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMachineRegisteredEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define IMachineRegisteredEvent_get_Registered(This,aRegistered)	\
    (This)->lpVtbl -> get_Registered(This,aRegistered)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMachineRegisteredEvent_get_Registered_Proxy( 
    IMachineRegisteredEvent * This,
    /* [retval][out] */ BOOL *aRegistered);


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



#endif 	/* __IMachineRegisteredEvent_INTERFACE_DEFINED__ */


#ifndef __ISessionStateChangedEvent_INTERFACE_DEFINED__
#define __ISessionStateChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ISessionStateChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("714a3eef-799a-4489-86cd-fe8e45b2ff8e")
    ISessionStateChangedEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ SessionState *aState) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISessionStateChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISessionStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISessionStateChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISessionStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISessionStateChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISessionStateChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISessionStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISessionStateChangedEvent * 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_Type )( 
            ISessionStateChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISessionStateChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISessionStateChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISessionStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISessionStateChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            ISessionStateChangedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            ISessionStateChangedEvent * This,
            /* [retval][out] */ SessionState *aState);
        
        END_INTERFACE
    } ISessionStateChangedEventVtbl;

    interface ISessionStateChangedEvent
    {
        CONST_VTBL struct ISessionStateChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ISessionStateChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISessionStateChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISessionStateChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISessionStateChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISessionStateChangedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


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

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISessionStateChangedEvent_get_State_Proxy( 
    ISessionStateChangedEvent * This,
    /* [retval][out] */ SessionState *aState);


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



#endif 	/* __ISessionStateChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IGuestPropertyChangedEvent_INTERFACE_DEFINED__
#define __IGuestPropertyChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IGuestPropertyChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3f63597a-26f1-4edb-8dd2-6bddd0912368")
    IGuestPropertyChangedEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ BSTR *aValue) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Flags( 
            /* [retval][out] */ BSTR *aFlags) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestPropertyChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuestPropertyChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuestPropertyChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuestPropertyChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuestPropertyChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuestPropertyChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuestPropertyChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuestPropertyChangedEvent * 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_Type )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IGuestPropertyChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IGuestPropertyChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ BSTR *aValue);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Flags )( 
            IGuestPropertyChangedEvent * This,
            /* [retval][out] */ BSTR *aFlags);
        
        END_INTERFACE
    } IGuestPropertyChangedEventVtbl;

    interface IGuestPropertyChangedEvent
    {
        CONST_VTBL struct IGuestPropertyChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IGuestPropertyChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IGuestPropertyChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IGuestPropertyChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IGuestPropertyChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IGuestPropertyChangedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


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

#define IGuestPropertyChangedEvent_get_Value(This,aValue)	\
    (This)->lpVtbl -> get_Value(This,aValue)

#define IGuestPropertyChangedEvent_get_Flags(This,aFlags)	\
    (This)->lpVtbl -> get_Flags(This,aFlags)

#endif /* COBJMACROS */


#endif 	/* C style interface */



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


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestPropertyChangedEvent_get_Value_Proxy( 
    IGuestPropertyChangedEvent * This,
    /* [retval][out] */ BSTR *aValue);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestPropertyChangedEvent_get_Flags_Proxy( 
    IGuestPropertyChangedEvent * This,
    /* [retval][out] */ BSTR *aFlags);


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



#endif 	/* __IGuestPropertyChangedEvent_INTERFACE_DEFINED__ */


#ifndef __ISnapshotEvent_INTERFACE_DEFINED__
#define __ISnapshotEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ISnapshotEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("21637b0e-34b8-42d3-acfb-7e96daf77c22")
    ISnapshotEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SnapshotId( 
            /* [retval][out] */ BSTR *aSnapshotId) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISnapshotEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISnapshotEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISnapshotEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISnapshotEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISnapshotEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISnapshotEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISnapshotEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISnapshotEvent * 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_Type )( 
            ISnapshotEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISnapshotEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISnapshotEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISnapshotEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISnapshotEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            ISnapshotEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapshotId )( 
            ISnapshotEvent * This,
            /* [retval][out] */ BSTR *aSnapshotId);
        
        END_INTERFACE
    } ISnapshotEventVtbl;

    interface ISnapshotEvent
    {
        CONST_VTBL struct ISnapshotEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ISnapshotEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISnapshotEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISnapshotEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISnapshotEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISnapshotEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define ISnapshotEvent_get_SnapshotId(This,aSnapshotId)	\
    (This)->lpVtbl -> get_SnapshotId(This,aSnapshotId)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISnapshotEvent_get_SnapshotId_Proxy( 
    ISnapshotEvent * This,
    /* [retval][out] */ BSTR *aSnapshotId);


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



#endif 	/* __ISnapshotEvent_INTERFACE_DEFINED__ */


#ifndef __ISnapshotTakenEvent_INTERFACE_DEFINED__
#define __ISnapshotTakenEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ISnapshotTakenEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d27c0b3d-6038-422c-b45e-6d4a0503d9f1")
    ISnapshotTakenEvent : public ISnapshotEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct ISnapshotTakenEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISnapshotTakenEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISnapshotTakenEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISnapshotTakenEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISnapshotTakenEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISnapshotTakenEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISnapshotTakenEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISnapshotTakenEvent * 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_Type )( 
            ISnapshotTakenEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISnapshotTakenEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISnapshotTakenEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISnapshotTakenEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISnapshotTakenEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            ISnapshotTakenEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapshotId )( 
            ISnapshotTakenEvent * This,
            /* [retval][out] */ BSTR *aSnapshotId);
        
        END_INTERFACE
    } ISnapshotTakenEventVtbl;

    interface ISnapshotTakenEvent
    {
        CONST_VTBL struct ISnapshotTakenEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ISnapshotTakenEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISnapshotTakenEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISnapshotTakenEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISnapshotTakenEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISnapshotTakenEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define ISnapshotTakenEvent_get_SnapshotId(This,aSnapshotId)	\
    (This)->lpVtbl -> get_SnapshotId(This,aSnapshotId)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ISnapshotTakenEvent_INTERFACE_DEFINED__ */


#ifndef __ISnapshotDeletedEvent_INTERFACE_DEFINED__
#define __ISnapshotDeletedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ISnapshotDeletedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("c48f3401-4a9e-43f4-b7a7-54bd285e22f4")
    ISnapshotDeletedEvent : public ISnapshotEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct ISnapshotDeletedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISnapshotDeletedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISnapshotDeletedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISnapshotDeletedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISnapshotDeletedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISnapshotDeletedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISnapshotDeletedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISnapshotDeletedEvent * 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_Type )( 
            ISnapshotDeletedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISnapshotDeletedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISnapshotDeletedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISnapshotDeletedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISnapshotDeletedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            ISnapshotDeletedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapshotId )( 
            ISnapshotDeletedEvent * This,
            /* [retval][out] */ BSTR *aSnapshotId);
        
        END_INTERFACE
    } ISnapshotDeletedEventVtbl;

    interface ISnapshotDeletedEvent
    {
        CONST_VTBL struct ISnapshotDeletedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ISnapshotDeletedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISnapshotDeletedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISnapshotDeletedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISnapshotDeletedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISnapshotDeletedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define ISnapshotDeletedEvent_get_SnapshotId(This,aSnapshotId)	\
    (This)->lpVtbl -> get_SnapshotId(This,aSnapshotId)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ISnapshotDeletedEvent_INTERFACE_DEFINED__ */


#ifndef __ISnapshotChangedEvent_INTERFACE_DEFINED__
#define __ISnapshotChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ISnapshotChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("07541941-8079-447a-a33e-47a69c7980db")
    ISnapshotChangedEvent : public ISnapshotEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct ISnapshotChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISnapshotChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISnapshotChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISnapshotChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISnapshotChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISnapshotChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISnapshotChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISnapshotChangedEvent * 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_Type )( 
            ISnapshotChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISnapshotChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISnapshotChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISnapshotChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISnapshotChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            ISnapshotChangedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SnapshotId )( 
            ISnapshotChangedEvent * This,
            /* [retval][out] */ BSTR *aSnapshotId);
        
        END_INTERFACE
    } ISnapshotChangedEventVtbl;

    interface ISnapshotChangedEvent
    {
        CONST_VTBL struct ISnapshotChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ISnapshotChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISnapshotChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISnapshotChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISnapshotChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISnapshotChangedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define ISnapshotChangedEvent_get_SnapshotId(This,aSnapshotId)	\
    (This)->lpVtbl -> get_SnapshotId(This,aSnapshotId)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ISnapshotChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IMousePointerShapeChangedEvent_INTERFACE_DEFINED__
#define __IMousePointerShapeChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMousePointerShapeChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("a6dcf6e8-416b-4181-8c4a-45ec95177aef")
    IMousePointerShapeChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Visible( 
            /* [retval][out] */ BOOL *aVisible) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Alpha( 
            /* [retval][out] */ BOOL *aAlpha) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Xhot( 
            /* [retval][out] */ ULONG *aXhot) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Yhot( 
            /* [retval][out] */ ULONG *aYhot) = 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_Shape( 
            /* [retval][out] */ SAFEARRAY * *aShape) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMousePointerShapeChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMousePointerShapeChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMousePointerShapeChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMousePointerShapeChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMousePointerShapeChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMousePointerShapeChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMousePointerShapeChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMousePointerShapeChangedEvent * 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_Type )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMousePointerShapeChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMousePointerShapeChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Visible )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ BOOL *aVisible);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Alpha )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ BOOL *aAlpha);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Xhot )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ ULONG *aXhot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Yhot )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ ULONG *aYhot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ ULONG *aWidth);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ ULONG *aHeight);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Shape )( 
            IMousePointerShapeChangedEvent * This,
            /* [retval][out] */ SAFEARRAY * *aShape);
        
        END_INTERFACE
    } IMousePointerShapeChangedEventVtbl;

    interface IMousePointerShapeChangedEvent
    {
        CONST_VTBL struct IMousePointerShapeChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMousePointerShapeChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMousePointerShapeChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMousePointerShapeChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMousePointerShapeChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMousePointerShapeChangedEvent_get_Visible(This,aVisible)	\
    (This)->lpVtbl -> get_Visible(This,aVisible)

#define IMousePointerShapeChangedEvent_get_Alpha(This,aAlpha)	\
    (This)->lpVtbl -> get_Alpha(This,aAlpha)

#define IMousePointerShapeChangedEvent_get_Xhot(This,aXhot)	\
    (This)->lpVtbl -> get_Xhot(This,aXhot)

#define IMousePointerShapeChangedEvent_get_Yhot(This,aYhot)	\
    (This)->lpVtbl -> get_Yhot(This,aYhot)

#define IMousePointerShapeChangedEvent_get_Width(This,aWidth)	\
    (This)->lpVtbl -> get_Width(This,aWidth)

#define IMousePointerShapeChangedEvent_get_Height(This,aHeight)	\
    (This)->lpVtbl -> get_Height(This,aHeight)

#define IMousePointerShapeChangedEvent_get_Shape(This,aShape)	\
    (This)->lpVtbl -> get_Shape(This,aShape)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Visible_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ BOOL *aVisible);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Alpha_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ BOOL *aAlpha);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Xhot_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ ULONG *aXhot);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Yhot_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ ULONG *aYhot);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Width_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ ULONG *aWidth);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Height_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ ULONG *aHeight);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMousePointerShapeChangedEvent_get_Shape_Proxy( 
    IMousePointerShapeChangedEvent * This,
    /* [retval][out] */ SAFEARRAY * *aShape);


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



#endif 	/* __IMousePointerShapeChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IMouseCapabilityChangedEvent_INTERFACE_DEFINED__
#define __IMouseCapabilityChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMouseCapabilityChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d633ad48-820c-4207-b46c-6bd3596640d5")
    IMouseCapabilityChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SupportsAbsolute( 
            /* [retval][out] */ BOOL *aSupportsAbsolute) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SupportsRelative( 
            /* [retval][out] */ BOOL *aSupportsRelative) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NeedsHostCursor( 
            /* [retval][out] */ BOOL *aNeedsHostCursor) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMouseCapabilityChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMouseCapabilityChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMouseCapabilityChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMouseCapabilityChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMouseCapabilityChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMouseCapabilityChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMouseCapabilityChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMouseCapabilityChangedEvent * 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_Type )( 
            IMouseCapabilityChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMouseCapabilityChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMouseCapabilityChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMouseCapabilityChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMouseCapabilityChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportsAbsolute )( 
            IMouseCapabilityChangedEvent * This,
            /* [retval][out] */ BOOL *aSupportsAbsolute);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportsRelative )( 
            IMouseCapabilityChangedEvent * This,
            /* [retval][out] */ BOOL *aSupportsRelative);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NeedsHostCursor )( 
            IMouseCapabilityChangedEvent * This,
            /* [retval][out] */ BOOL *aNeedsHostCursor);
        
        END_INTERFACE
    } IMouseCapabilityChangedEventVtbl;

    interface IMouseCapabilityChangedEvent
    {
        CONST_VTBL struct IMouseCapabilityChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMouseCapabilityChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMouseCapabilityChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMouseCapabilityChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMouseCapabilityChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMouseCapabilityChangedEvent_get_SupportsAbsolute(This,aSupportsAbsolute)	\
    (This)->lpVtbl -> get_SupportsAbsolute(This,aSupportsAbsolute)

#define IMouseCapabilityChangedEvent_get_SupportsRelative(This,aSupportsRelative)	\
    (This)->lpVtbl -> get_SupportsRelative(This,aSupportsRelative)

#define IMouseCapabilityChangedEvent_get_NeedsHostCursor(This,aNeedsHostCursor)	\
    (This)->lpVtbl -> get_NeedsHostCursor(This,aNeedsHostCursor)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMouseCapabilityChangedEvent_get_SupportsAbsolute_Proxy( 
    IMouseCapabilityChangedEvent * This,
    /* [retval][out] */ BOOL *aSupportsAbsolute);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMouseCapabilityChangedEvent_get_SupportsRelative_Proxy( 
    IMouseCapabilityChangedEvent * This,
    /* [retval][out] */ BOOL *aSupportsRelative);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IMouseCapabilityChangedEvent_get_NeedsHostCursor_Proxy( 
    IMouseCapabilityChangedEvent * This,
    /* [retval][out] */ BOOL *aNeedsHostCursor);


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



#endif 	/* __IMouseCapabilityChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IKeyboardLedsChangedEvent_INTERFACE_DEFINED__
#define __IKeyboardLedsChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IKeyboardLedsChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6DDEF35E-4737-457B-99FC-BC52C851A44F")
    IKeyboardLedsChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NumLock( 
            /* [retval][out] */ BOOL *aNumLock) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CapsLock( 
            /* [retval][out] */ BOOL *aCapsLock) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ScrollLock( 
            /* [retval][out] */ BOOL *aScrollLock) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IKeyboardLedsChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IKeyboardLedsChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IKeyboardLedsChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IKeyboardLedsChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IKeyboardLedsChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IKeyboardLedsChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IKeyboardLedsChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IKeyboardLedsChangedEvent * 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_Type )( 
            IKeyboardLedsChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IKeyboardLedsChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IKeyboardLedsChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IKeyboardLedsChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IKeyboardLedsChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NumLock )( 
            IKeyboardLedsChangedEvent * This,
            /* [retval][out] */ BOOL *aNumLock);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CapsLock )( 
            IKeyboardLedsChangedEvent * This,
            /* [retval][out] */ BOOL *aCapsLock);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScrollLock )( 
            IKeyboardLedsChangedEvent * This,
            /* [retval][out] */ BOOL *aScrollLock);
        
        END_INTERFACE
    } IKeyboardLedsChangedEventVtbl;

    interface IKeyboardLedsChangedEvent
    {
        CONST_VTBL struct IKeyboardLedsChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IKeyboardLedsChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IKeyboardLedsChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IKeyboardLedsChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IKeyboardLedsChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IKeyboardLedsChangedEvent_get_NumLock(This,aNumLock)	\
    (This)->lpVtbl -> get_NumLock(This,aNumLock)

#define IKeyboardLedsChangedEvent_get_CapsLock(This,aCapsLock)	\
    (This)->lpVtbl -> get_CapsLock(This,aCapsLock)

#define IKeyboardLedsChangedEvent_get_ScrollLock(This,aScrollLock)	\
    (This)->lpVtbl -> get_ScrollLock(This,aScrollLock)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IKeyboardLedsChangedEvent_get_NumLock_Proxy( 
    IKeyboardLedsChangedEvent * This,
    /* [retval][out] */ BOOL *aNumLock);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IKeyboardLedsChangedEvent_get_CapsLock_Proxy( 
    IKeyboardLedsChangedEvent * This,
    /* [retval][out] */ BOOL *aCapsLock);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IKeyboardLedsChangedEvent_get_ScrollLock_Proxy( 
    IKeyboardLedsChangedEvent * This,
    /* [retval][out] */ BOOL *aScrollLock);


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



#endif 	/* __IKeyboardLedsChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IStateChangedEvent_INTERFACE_DEFINED__
#define __IStateChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IStateChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4376693C-CF37-453B-9289-3B0F521CAF27")
    IStateChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_State( 
            /* [retval][out] */ MachineState *aState) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IStateChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IStateChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IStateChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IStateChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IStateChangedEvent * 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_Type )( 
            IStateChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IStateChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IStateChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IStateChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
            IStateChangedEvent * This,
            /* [retval][out] */ MachineState *aState);
        
        END_INTERFACE
    } IStateChangedEventVtbl;

    interface IStateChangedEvent
    {
        CONST_VTBL struct IStateChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IStateChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IStateChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IStateChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IStateChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


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

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IStateChangedEvent_get_State_Proxy( 
    IStateChangedEvent * This,
    /* [retval][out] */ MachineState *aState);


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



#endif 	/* __IStateChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IAdditionsStateChangedEvent_INTERFACE_DEFINED__
#define __IAdditionsStateChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IAdditionsStateChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D70F7915-DA7C-44C8-A7AC-9F173490446A")
    IAdditionsStateChangedEvent : public IEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IAdditionsStateChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IAdditionsStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IAdditionsStateChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IAdditionsStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IAdditionsStateChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IAdditionsStateChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IAdditionsStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IAdditionsStateChangedEvent * 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_Type )( 
            IAdditionsStateChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IAdditionsStateChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IAdditionsStateChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IAdditionsStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IAdditionsStateChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IAdditionsStateChangedEventVtbl;

    interface IAdditionsStateChangedEvent
    {
        CONST_VTBL struct IAdditionsStateChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IAdditionsStateChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IAdditionsStateChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IAdditionsStateChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IAdditionsStateChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IAdditionsStateChangedEvent_INTERFACE_DEFINED__ */


#ifndef __INetworkAdapterChangedEvent_INTERFACE_DEFINED__
#define __INetworkAdapterChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_INetworkAdapterChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("08889892-1EC6-4883-801D-77F56CFD0103")
    INetworkAdapterChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_NetworkAdapter( 
            /* [retval][out] */ INetworkAdapter **aNetworkAdapter) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INetworkAdapterChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            INetworkAdapterChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            INetworkAdapterChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            INetworkAdapterChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            INetworkAdapterChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            INetworkAdapterChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            INetworkAdapterChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            INetworkAdapterChangedEvent * 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_Type )( 
            INetworkAdapterChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            INetworkAdapterChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            INetworkAdapterChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            INetworkAdapterChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            INetworkAdapterChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_NetworkAdapter )( 
            INetworkAdapterChangedEvent * This,
            /* [retval][out] */ INetworkAdapter **aNetworkAdapter);
        
        END_INTERFACE
    } INetworkAdapterChangedEventVtbl;

    interface INetworkAdapterChangedEvent
    {
        CONST_VTBL struct INetworkAdapterChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define INetworkAdapterChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define INetworkAdapterChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define INetworkAdapterChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define INetworkAdapterChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define INetworkAdapterChangedEvent_get_NetworkAdapter(This,aNetworkAdapter)	\
    (This)->lpVtbl -> get_NetworkAdapter(This,aNetworkAdapter)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE INetworkAdapterChangedEvent_get_NetworkAdapter_Proxy( 
    INetworkAdapterChangedEvent * This,
    /* [retval][out] */ INetworkAdapter **aNetworkAdapter);


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



#endif 	/* __INetworkAdapterChangedEvent_INTERFACE_DEFINED__ */


#ifndef __ISerialPortChangedEvent_INTERFACE_DEFINED__
#define __ISerialPortChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ISerialPortChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3BA329DC-659C-488B-835C-4ECA7AE71C6C")
    ISerialPortChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SerialPort( 
            /* [retval][out] */ ISerialPort **aSerialPort) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISerialPortChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISerialPortChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISerialPortChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISerialPortChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISerialPortChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISerialPortChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISerialPortChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISerialPortChangedEvent * 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_Type )( 
            ISerialPortChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISerialPortChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISerialPortChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISerialPortChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISerialPortChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SerialPort )( 
            ISerialPortChangedEvent * This,
            /* [retval][out] */ ISerialPort **aSerialPort);
        
        END_INTERFACE
    } ISerialPortChangedEventVtbl;

    interface ISerialPortChangedEvent
    {
        CONST_VTBL struct ISerialPortChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ISerialPortChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISerialPortChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISerialPortChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISerialPortChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISerialPortChangedEvent_get_SerialPort(This,aSerialPort)	\
    (This)->lpVtbl -> get_SerialPort(This,aSerialPort)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISerialPortChangedEvent_get_SerialPort_Proxy( 
    ISerialPortChangedEvent * This,
    /* [retval][out] */ ISerialPort **aSerialPort);


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



#endif 	/* __ISerialPortChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IParallelPortChangedEvent_INTERFACE_DEFINED__
#define __IParallelPortChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IParallelPortChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("813C99FC-9849-4F47-813E-24A75DC85615")
    IParallelPortChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ParallelPort( 
            /* [retval][out] */ IParallelPort **aParallelPort) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IParallelPortChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IParallelPortChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IParallelPortChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IParallelPortChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IParallelPortChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IParallelPortChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IParallelPortChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IParallelPortChangedEvent * 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_Type )( 
            IParallelPortChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IParallelPortChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IParallelPortChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IParallelPortChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IParallelPortChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ParallelPort )( 
            IParallelPortChangedEvent * This,
            /* [retval][out] */ IParallelPort **aParallelPort);
        
        END_INTERFACE
    } IParallelPortChangedEventVtbl;

    interface IParallelPortChangedEvent
    {
        CONST_VTBL struct IParallelPortChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IParallelPortChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IParallelPortChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IParallelPortChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IParallelPortChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IParallelPortChangedEvent_get_ParallelPort(This,aParallelPort)	\
    (This)->lpVtbl -> get_ParallelPort(This,aParallelPort)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IParallelPortChangedEvent_get_ParallelPort_Proxy( 
    IParallelPortChangedEvent * This,
    /* [retval][out] */ IParallelPort **aParallelPort);


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



#endif 	/* __IParallelPortChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IStorageControllerChangedEvent_INTERFACE_DEFINED__
#define __IStorageControllerChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IStorageControllerChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("715212BF-DA59-426E-8230-3831FAA52C56")
    IStorageControllerChangedEvent : public IEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IStorageControllerChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IStorageControllerChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IStorageControllerChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IStorageControllerChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IStorageControllerChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IStorageControllerChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IStorageControllerChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IStorageControllerChangedEvent * 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_Type )( 
            IStorageControllerChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IStorageControllerChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IStorageControllerChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IStorageControllerChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IStorageControllerChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IStorageControllerChangedEventVtbl;

    interface IStorageControllerChangedEvent
    {
        CONST_VTBL struct IStorageControllerChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IStorageControllerChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IStorageControllerChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IStorageControllerChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IStorageControllerChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IStorageControllerChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IMediumChangedEvent_INTERFACE_DEFINED__
#define __IMediumChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IMediumChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0FE2DA40-5637-472A-9736-72019EABD7DE")
    IMediumChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MediumAttachment( 
            /* [retval][out] */ IMediumAttachment **aMediumAttachment) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMediumChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IMediumChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IMediumChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IMediumChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IMediumChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IMediumChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IMediumChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IMediumChangedEvent * 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_Type )( 
            IMediumChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IMediumChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IMediumChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IMediumChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IMediumChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MediumAttachment )( 
            IMediumChangedEvent * This,
            /* [retval][out] */ IMediumAttachment **aMediumAttachment);
        
        END_INTERFACE
    } IMediumChangedEventVtbl;

    interface IMediumChangedEvent
    {
        CONST_VTBL struct IMediumChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IMediumChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IMediumChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IMediumChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IMediumChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IMediumChangedEvent_get_MediumAttachment(This,aMediumAttachment)	\
    (This)->lpVtbl -> get_MediumAttachment(This,aMediumAttachment)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IMediumChangedEvent_get_MediumAttachment_Proxy( 
    IMediumChangedEvent * This,
    /* [retval][out] */ IMediumAttachment **aMediumAttachment);


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



#endif 	/* __IMediumChangedEvent_INTERFACE_DEFINED__ */


#ifndef __ICPUChangedEvent_INTERFACE_DEFINED__
#define __ICPUChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ICPUChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D0F0BECC-EE17-4D17-A8CC-383B0EB55E9D")
    ICPUChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Cpu( 
            /* [retval][out] */ ULONG *aCpu) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Add( 
            /* [retval][out] */ BOOL *aAdd) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICPUChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ICPUChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ICPUChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ICPUChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ICPUChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ICPUChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ICPUChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ICPUChangedEvent * 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_Type )( 
            ICPUChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ICPUChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ICPUChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ICPUChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ICPUChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Cpu )( 
            ICPUChangedEvent * This,
            /* [retval][out] */ ULONG *aCpu);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Add )( 
            ICPUChangedEvent * This,
            /* [retval][out] */ BOOL *aAdd);
        
        END_INTERFACE
    } ICPUChangedEventVtbl;

    interface ICPUChangedEvent
    {
        CONST_VTBL struct ICPUChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ICPUChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ICPUChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ICPUChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ICPUChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ICPUChangedEvent_get_Cpu(This,aCpu)	\
    (This)->lpVtbl -> get_Cpu(This,aCpu)

#define ICPUChangedEvent_get_Add(This,aAdd)	\
    (This)->lpVtbl -> get_Add(This,aAdd)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ICPUChangedEvent_get_Cpu_Proxy( 
    ICPUChangedEvent * This,
    /* [retval][out] */ ULONG *aCpu);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE ICPUChangedEvent_get_Add_Proxy( 
    ICPUChangedEvent * This,
    /* [retval][out] */ BOOL *aAdd);


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



#endif 	/* __ICPUChangedEvent_INTERFACE_DEFINED__ */


#ifndef __ICPUExecutionCapChangedEvent_INTERFACE_DEFINED__
#define __ICPUExecutionCapChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_ICPUExecutionCapChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("dfa7e4f5-b4a4-44ce-85a8-127ac5eb59dc")
    ICPUExecutionCapChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ExecutionCap( 
            /* [retval][out] */ ULONG *aExecutionCap) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICPUExecutionCapChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ICPUExecutionCapChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ICPUExecutionCapChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ICPUExecutionCapChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ICPUExecutionCapChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ICPUExecutionCapChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ICPUExecutionCapChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ICPUExecutionCapChangedEvent * 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_Type )( 
            ICPUExecutionCapChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ICPUExecutionCapChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ICPUExecutionCapChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ICPUExecutionCapChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ICPUExecutionCapChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ExecutionCap )( 
            ICPUExecutionCapChangedEvent * This,
            /* [retval][out] */ ULONG *aExecutionCap);
        
        END_INTERFACE
    } ICPUExecutionCapChangedEventVtbl;

    interface ICPUExecutionCapChangedEvent
    {
        CONST_VTBL struct ICPUExecutionCapChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define ICPUExecutionCapChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ICPUExecutionCapChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ICPUExecutionCapChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ICPUExecutionCapChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ICPUExecutionCapChangedEvent_get_ExecutionCap(This,aExecutionCap)	\
    (This)->lpVtbl -> get_ExecutionCap(This,aExecutionCap)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ICPUExecutionCapChangedEvent_get_ExecutionCap_Proxy( 
    ICPUExecutionCapChangedEvent * This,
    /* [retval][out] */ ULONG *aExecutionCap);


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



#endif 	/* __ICPUExecutionCapChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IGuestKeyboardEvent_INTERFACE_DEFINED__
#define __IGuestKeyboardEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IGuestKeyboardEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("88394258-7006-40d4-b339-472ee3801844")
    IGuestKeyboardEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Scancodes( 
            /* [retval][out] */ SAFEARRAY * *aScancodes) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestKeyboardEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuestKeyboardEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuestKeyboardEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuestKeyboardEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuestKeyboardEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuestKeyboardEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuestKeyboardEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuestKeyboardEvent * 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_Type )( 
            IGuestKeyboardEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IGuestKeyboardEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IGuestKeyboardEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IGuestKeyboardEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IGuestKeyboardEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Scancodes )( 
            IGuestKeyboardEvent * This,
            /* [retval][out] */ SAFEARRAY * *aScancodes);
        
        END_INTERFACE
    } IGuestKeyboardEventVtbl;

    interface IGuestKeyboardEvent
    {
        CONST_VTBL struct IGuestKeyboardEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IGuestKeyboardEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IGuestKeyboardEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IGuestKeyboardEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IGuestKeyboardEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IGuestKeyboardEvent_get_Scancodes(This,aScancodes)	\
    (This)->lpVtbl -> get_Scancodes(This,aScancodes)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestKeyboardEvent_get_Scancodes_Proxy( 
    IGuestKeyboardEvent * This,
    /* [retval][out] */ SAFEARRAY * *aScancodes);


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



#endif 	/* __IGuestKeyboardEvent_INTERFACE_DEFINED__ */


#ifndef __IGuestMouseEvent_INTERFACE_DEFINED__
#define __IGuestMouseEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IGuestMouseEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1f85d35c-c524-40ff-8e98-307000df0992")
    IGuestMouseEvent : public IReusableEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Absolute( 
            /* [retval][out] */ BOOL *aAbsolute) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_X( 
            /* [retval][out] */ LONG *aX) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Y( 
            /* [retval][out] */ LONG *aY) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Z( 
            /* [retval][out] */ LONG *aZ) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_W( 
            /* [retval][out] */ LONG *aW) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Buttons( 
            /* [retval][out] */ LONG *aButtons) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestMouseEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuestMouseEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuestMouseEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuestMouseEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuestMouseEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuestMouseEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuestMouseEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuestMouseEvent * 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_Type )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IGuestMouseEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IGuestMouseEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Generation )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ ULONG *aGeneration);
        
        HRESULT ( STDMETHODCALLTYPE *Reuse )( 
            IGuestMouseEvent * This);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Absolute )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ BOOL *aAbsolute);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_X )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ LONG *aX);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Y )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ LONG *aY);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Z )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ LONG *aZ);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_W )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ LONG *aW);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Buttons )( 
            IGuestMouseEvent * This,
            /* [retval][out] */ LONG *aButtons);
        
        END_INTERFACE
    } IGuestMouseEventVtbl;

    interface IGuestMouseEvent
    {
        CONST_VTBL struct IGuestMouseEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IGuestMouseEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IGuestMouseEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IGuestMouseEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IGuestMouseEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IGuestMouseEvent_get_Generation(This,aGeneration)	\
    (This)->lpVtbl -> get_Generation(This,aGeneration)

#define IGuestMouseEvent_Reuse(This)	\
    (This)->lpVtbl -> Reuse(This)


#define IGuestMouseEvent_get_Absolute(This,aAbsolute)	\
    (This)->lpVtbl -> get_Absolute(This,aAbsolute)

#define IGuestMouseEvent_get_X(This,aX)	\
    (This)->lpVtbl -> get_X(This,aX)

#define IGuestMouseEvent_get_Y(This,aY)	\
    (This)->lpVtbl -> get_Y(This,aY)

#define IGuestMouseEvent_get_Z(This,aZ)	\
    (This)->lpVtbl -> get_Z(This,aZ)

#define IGuestMouseEvent_get_W(This,aW)	\
    (This)->lpVtbl -> get_W(This,aW)

#define IGuestMouseEvent_get_Buttons(This,aButtons)	\
    (This)->lpVtbl -> get_Buttons(This,aButtons)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMouseEvent_get_Absolute_Proxy( 
    IGuestMouseEvent * This,
    /* [retval][out] */ BOOL *aAbsolute);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMouseEvent_get_X_Proxy( 
    IGuestMouseEvent * This,
    /* [retval][out] */ LONG *aX);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMouseEvent_get_Y_Proxy( 
    IGuestMouseEvent * This,
    /* [retval][out] */ LONG *aY);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMouseEvent_get_Z_Proxy( 
    IGuestMouseEvent * This,
    /* [retval][out] */ LONG *aZ);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMouseEvent_get_W_Proxy( 
    IGuestMouseEvent * This,
    /* [retval][out] */ LONG *aW);


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


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMouseEvent_get_Buttons_Proxy( 
    IGuestMouseEvent * This,
    /* [retval][out] */ LONG *aButtons);


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



#endif 	/* __IGuestMouseEvent_INTERFACE_DEFINED__ */


#ifndef __IVRDEServerChangedEvent_INTERFACE_DEFINED__
#define __IVRDEServerChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IVRDEServerChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("a06fd66a-3188-4c8c-8756-1395e8cb691c")
    IVRDEServerChangedEvent : public IEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IVRDEServerChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVRDEServerChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVRDEServerChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVRDEServerChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVRDEServerChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVRDEServerChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVRDEServerChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVRDEServerChangedEvent * 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_Type )( 
            IVRDEServerChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IVRDEServerChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IVRDEServerChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IVRDEServerChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IVRDEServerChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IVRDEServerChangedEventVtbl;

    interface IVRDEServerChangedEvent
    {
        CONST_VTBL struct IVRDEServerChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IVRDEServerChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IVRDEServerChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IVRDEServerChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IVRDEServerChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IVRDEServerChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IVRDEServerInfoChangedEvent_INTERFACE_DEFINED__
#define __IVRDEServerInfoChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IVRDEServerInfoChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("dd6a1080-e1b7-4339-a549-f0878115596e")
    IVRDEServerInfoChangedEvent : public IEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IVRDEServerInfoChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVRDEServerInfoChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVRDEServerInfoChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVRDEServerInfoChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVRDEServerInfoChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVRDEServerInfoChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVRDEServerInfoChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVRDEServerInfoChangedEvent * 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_Type )( 
            IVRDEServerInfoChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IVRDEServerInfoChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IVRDEServerInfoChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IVRDEServerInfoChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IVRDEServerInfoChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IVRDEServerInfoChangedEventVtbl;

    interface IVRDEServerInfoChangedEvent
    {
        CONST_VTBL struct IVRDEServerInfoChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


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

#define IVRDEServerInfoChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IVRDEServerInfoChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IVRDEServerInfoChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IVRDEServerInfoChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IVRDEServerInfoChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IUSBControllerChangedEvent_INTERFACE_DEFINED__
#define __IUSBControllerChangedEvent_INTERFACE_DEFINED__

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


EXTERN_C const IID IID_IUSBControllerChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("93BADC0C-61D9-4940-A084-E6BB29AF3D83")
    IUSBControllerChangedEvent : public IEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IUSBControllerChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IUSBControllerChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IUSBControllerChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IUSBControllerChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IUSBControllerChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IUSBControllerChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IUSBControllerChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IUSBControllerChangedEvent * 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_Type )( 
            IUSBControllerChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IUSBControllerChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IUSBControllerChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IUSBControllerChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IUSBControllerChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        END_INTERFACE
    } IUSBControllerChangedEventVtbl;

    interface IUSBControllerChangedEvent
    {
        CONST_VTBL struct IUSBControllerChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

#define IUSBControllerChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUSBControllerChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUSBControllerChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IUSBControllerChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IUSBControllerChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IUSBControllerChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IUSBControllerChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IUSBControllerChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IUSBDeviceStateChangedEvent_INTERFACE_DEFINED__
#define __IUSBDeviceStateChangedEvent_INTERFACE_DEFINED__

/* interface IUSBDeviceStateChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IUSBDeviceStateChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("806da61b-6679-422a-b629-51b06b0c6d93")
    IUSBDeviceStateChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Device( 
            /* [retval][out] */ IUSBDevice **aDevice) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Attached( 
            /* [retval][out] */ BOOL *aAttached) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Error( 
            /* [retval][out] */ IVirtualBoxErrorInfo **aError) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IUSBDeviceStateChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IUSBDeviceStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IUSBDeviceStateChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IUSBDeviceStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IUSBDeviceStateChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IUSBDeviceStateChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IUSBDeviceStateChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IUSBDeviceStateChangedEvent * 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_Type )( 
            IUSBDeviceStateChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IUSBDeviceStateChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IUSBDeviceStateChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IUSBDeviceStateChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IUSBDeviceStateChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Device )( 
            IUSBDeviceStateChangedEvent * This,
            /* [retval][out] */ IUSBDevice **aDevice);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Attached )( 
            IUSBDeviceStateChangedEvent * This,
            /* [retval][out] */ BOOL *aAttached);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Error )( 
            IUSBDeviceStateChangedEvent * This,
            /* [retval][out] */ IVirtualBoxErrorInfo **aError);
        
        END_INTERFACE
    } IUSBDeviceStateChangedEventVtbl;

    interface IUSBDeviceStateChangedEvent
    {
        CONST_VTBL struct IUSBDeviceStateChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IUSBDeviceStateChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IUSBDeviceStateChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IUSBDeviceStateChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IUSBDeviceStateChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IUSBDeviceStateChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IUSBDeviceStateChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IUSBDeviceStateChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IUSBDeviceStateChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IUSBDeviceStateChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IUSBDeviceStateChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IUSBDeviceStateChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IUSBDeviceStateChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IUSBDeviceStateChangedEvent_get_Device(This,aDevice)	\
    (This)->lpVtbl -> get_Device(This,aDevice)

#define IUSBDeviceStateChangedEvent_get_Attached(This,aAttached)	\
    (This)->lpVtbl -> get_Attached(This,aAttached)

#define IUSBDeviceStateChangedEvent_get_Error(This,aError)	\
    (This)->lpVtbl -> get_Error(This,aError)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceStateChangedEvent_get_Device_Proxy( 
    IUSBDeviceStateChangedEvent * This,
    /* [retval][out] */ IUSBDevice **aDevice);


void __RPC_STUB IUSBDeviceStateChangedEvent_get_Device_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceStateChangedEvent_get_Attached_Proxy( 
    IUSBDeviceStateChangedEvent * This,
    /* [retval][out] */ BOOL *aAttached);


void __RPC_STUB IUSBDeviceStateChangedEvent_get_Attached_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IUSBDeviceStateChangedEvent_get_Error_Proxy( 
    IUSBDeviceStateChangedEvent * This,
    /* [retval][out] */ IVirtualBoxErrorInfo **aError);


void __RPC_STUB IUSBDeviceStateChangedEvent_get_Error_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IUSBDeviceStateChangedEvent_INTERFACE_DEFINED__ */


#ifndef __ISharedFolderChangedEvent_INTERFACE_DEFINED__
#define __ISharedFolderChangedEvent_INTERFACE_DEFINED__

/* interface ISharedFolderChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ISharedFolderChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B66349B5-3534-4239-B2DE-8E1535D94C0B")
    ISharedFolderChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Scope( 
            /* [retval][out] */ Scope *aScope) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ISharedFolderChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ISharedFolderChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ISharedFolderChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ISharedFolderChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ISharedFolderChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ISharedFolderChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ISharedFolderChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ISharedFolderChangedEvent * 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_Type )( 
            ISharedFolderChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ISharedFolderChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ISharedFolderChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ISharedFolderChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ISharedFolderChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Scope )( 
            ISharedFolderChangedEvent * This,
            /* [retval][out] */ Scope *aScope);
        
        END_INTERFACE
    } ISharedFolderChangedEventVtbl;

    interface ISharedFolderChangedEvent
    {
        CONST_VTBL struct ISharedFolderChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ISharedFolderChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ISharedFolderChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ISharedFolderChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ISharedFolderChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ISharedFolderChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ISharedFolderChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ISharedFolderChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ISharedFolderChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define ISharedFolderChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ISharedFolderChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ISharedFolderChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ISharedFolderChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ISharedFolderChangedEvent_get_Scope(This,aScope)	\
    (This)->lpVtbl -> get_Scope(This,aScope)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE ISharedFolderChangedEvent_get_Scope_Proxy( 
    ISharedFolderChangedEvent * This,
    /* [retval][out] */ Scope *aScope);


void __RPC_STUB ISharedFolderChangedEvent_get_Scope_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ISharedFolderChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IRuntimeErrorEvent_INTERFACE_DEFINED__
#define __IRuntimeErrorEvent_INTERFACE_DEFINED__

/* interface IRuntimeErrorEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IRuntimeErrorEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("883DD18B-0721-4CDE-867C-1A82ABAF914C")
    IRuntimeErrorEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Fatal( 
            /* [retval][out] */ BOOL *aFatal) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Id( 
            /* [retval][out] */ BSTR *aId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Message( 
            /* [retval][out] */ BSTR *aMessage) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRuntimeErrorEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRuntimeErrorEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRuntimeErrorEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRuntimeErrorEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRuntimeErrorEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRuntimeErrorEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRuntimeErrorEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRuntimeErrorEvent * 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_Type )( 
            IRuntimeErrorEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IRuntimeErrorEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IRuntimeErrorEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IRuntimeErrorEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IRuntimeErrorEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Fatal )( 
            IRuntimeErrorEvent * This,
            /* [retval][out] */ BOOL *aFatal);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Id )( 
            IRuntimeErrorEvent * This,
            /* [retval][out] */ BSTR *aId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Message )( 
            IRuntimeErrorEvent * This,
            /* [retval][out] */ BSTR *aMessage);
        
        END_INTERFACE
    } IRuntimeErrorEventVtbl;

    interface IRuntimeErrorEvent
    {
        CONST_VTBL struct IRuntimeErrorEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRuntimeErrorEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRuntimeErrorEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRuntimeErrorEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRuntimeErrorEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRuntimeErrorEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRuntimeErrorEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRuntimeErrorEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRuntimeErrorEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IRuntimeErrorEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IRuntimeErrorEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IRuntimeErrorEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IRuntimeErrorEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IRuntimeErrorEvent_get_Fatal(This,aFatal)	\
    (This)->lpVtbl -> get_Fatal(This,aFatal)

#define IRuntimeErrorEvent_get_Id(This,aId)	\
    (This)->lpVtbl -> get_Id(This,aId)

#define IRuntimeErrorEvent_get_Message(This,aMessage)	\
    (This)->lpVtbl -> get_Message(This,aMessage)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IRuntimeErrorEvent_get_Fatal_Proxy( 
    IRuntimeErrorEvent * This,
    /* [retval][out] */ BOOL *aFatal);


void __RPC_STUB IRuntimeErrorEvent_get_Fatal_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRuntimeErrorEvent_get_Id_Proxy( 
    IRuntimeErrorEvent * This,
    /* [retval][out] */ BSTR *aId);


void __RPC_STUB IRuntimeErrorEvent_get_Id_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IRuntimeErrorEvent_get_Message_Proxy( 
    IRuntimeErrorEvent * This,
    /* [retval][out] */ BSTR *aMessage);


void __RPC_STUB IRuntimeErrorEvent_get_Message_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRuntimeErrorEvent_INTERFACE_DEFINED__ */


#ifndef __IEventSourceChangedEvent_INTERFACE_DEFINED__
#define __IEventSourceChangedEvent_INTERFACE_DEFINED__

/* interface IEventSourceChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IEventSourceChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e7932cb8-f6d4-4ab6-9cbf-558eb8959a6a")
    IEventSourceChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Listener( 
            /* [retval][out] */ IEventListener **aListener) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Add( 
            /* [retval][out] */ BOOL *aAdd) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IEventSourceChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IEventSourceChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IEventSourceChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IEventSourceChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IEventSourceChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IEventSourceChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IEventSourceChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IEventSourceChangedEvent * 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_Type )( 
            IEventSourceChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IEventSourceChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IEventSourceChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IEventSourceChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IEventSourceChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Listener )( 
            IEventSourceChangedEvent * This,
            /* [retval][out] */ IEventListener **aListener);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Add )( 
            IEventSourceChangedEvent * This,
            /* [retval][out] */ BOOL *aAdd);
        
        END_INTERFACE
    } IEventSourceChangedEventVtbl;

    interface IEventSourceChangedEvent
    {
        CONST_VTBL struct IEventSourceChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IEventSourceChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IEventSourceChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IEventSourceChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IEventSourceChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IEventSourceChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IEventSourceChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IEventSourceChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IEventSourceChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IEventSourceChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IEventSourceChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IEventSourceChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IEventSourceChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IEventSourceChangedEvent_get_Listener(This,aListener)	\
    (This)->lpVtbl -> get_Listener(This,aListener)

#define IEventSourceChangedEvent_get_Add(This,aAdd)	\
    (This)->lpVtbl -> get_Add(This,aAdd)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IEventSourceChangedEvent_get_Listener_Proxy( 
    IEventSourceChangedEvent * This,
    /* [retval][out] */ IEventListener **aListener);


void __RPC_STUB IEventSourceChangedEvent_get_Listener_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IEventSourceChangedEvent_get_Add_Proxy( 
    IEventSourceChangedEvent * This,
    /* [retval][out] */ BOOL *aAdd);


void __RPC_STUB IEventSourceChangedEvent_get_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IEventSourceChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IExtraDataChangedEvent_INTERFACE_DEFINED__
#define __IExtraDataChangedEvent_INTERFACE_DEFINED__

/* interface IExtraDataChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IExtraDataChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("024F00CE-6E0B-492A-A8D0-968472A94DC7")
    IExtraDataChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MachineId( 
            /* [retval][out] */ BSTR *aMachineId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Key( 
            /* [retval][out] */ BSTR *aKey) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ BSTR *aValue) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtraDataChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtraDataChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtraDataChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtraDataChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtraDataChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtraDataChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtraDataChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtraDataChangedEvent * 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_Type )( 
            IExtraDataChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IExtraDataChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IExtraDataChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IExtraDataChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IExtraDataChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IExtraDataChangedEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Key )( 
            IExtraDataChangedEvent * This,
            /* [retval][out] */ BSTR *aKey);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            IExtraDataChangedEvent * This,
            /* [retval][out] */ BSTR *aValue);
        
        END_INTERFACE
    } IExtraDataChangedEventVtbl;

    interface IExtraDataChangedEvent
    {
        CONST_VTBL struct IExtraDataChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExtraDataChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExtraDataChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExtraDataChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExtraDataChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExtraDataChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExtraDataChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExtraDataChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExtraDataChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IExtraDataChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IExtraDataChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IExtraDataChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IExtraDataChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IExtraDataChangedEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)

#define IExtraDataChangedEvent_get_Key(This,aKey)	\
    (This)->lpVtbl -> get_Key(This,aKey)

#define IExtraDataChangedEvent_get_Value(This,aValue)	\
    (This)->lpVtbl -> get_Value(This,aValue)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IExtraDataChangedEvent_get_MachineId_Proxy( 
    IExtraDataChangedEvent * This,
    /* [retval][out] */ BSTR *aMachineId);


void __RPC_STUB IExtraDataChangedEvent_get_MachineId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtraDataChangedEvent_get_Key_Proxy( 
    IExtraDataChangedEvent * This,
    /* [retval][out] */ BSTR *aKey);


void __RPC_STUB IExtraDataChangedEvent_get_Key_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtraDataChangedEvent_get_Value_Proxy( 
    IExtraDataChangedEvent * This,
    /* [retval][out] */ BSTR *aValue);


void __RPC_STUB IExtraDataChangedEvent_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExtraDataChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IVetoEvent_INTERFACE_DEFINED__
#define __IVetoEvent_INTERFACE_DEFINED__

/* interface IVetoEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVetoEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9a1a4130-69fe-472f-ac10-c6fa25d75007")
    IVetoEvent : public IEvent
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE AddVeto( 
            /* [in] */ BSTR aReason) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IsVetoed( 
            /* [retval][out] */ BOOL *aResult) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetVetos( 
            /* [retval][out] */ SAFEARRAY * *aResult) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVetoEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVetoEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVetoEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVetoEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVetoEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVetoEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVetoEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVetoEvent * 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_Type )( 
            IVetoEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IVetoEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IVetoEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IVetoEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IVetoEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *AddVeto )( 
            IVetoEvent * This,
            /* [in] */ BSTR aReason);
        
        HRESULT ( STDMETHODCALLTYPE *IsVetoed )( 
            IVetoEvent * This,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *GetVetos )( 
            IVetoEvent * This,
            /* [retval][out] */ SAFEARRAY * *aResult);
        
        END_INTERFACE
    } IVetoEventVtbl;

    interface IVetoEvent
    {
        CONST_VTBL struct IVetoEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVetoEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVetoEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVetoEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVetoEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVetoEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVetoEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVetoEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVetoEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IVetoEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IVetoEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IVetoEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IVetoEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IVetoEvent_AddVeto(This,aReason)	\
    (This)->lpVtbl -> AddVeto(This,aReason)

#define IVetoEvent_IsVetoed(This,aResult)	\
    (This)->lpVtbl -> IsVetoed(This,aResult)

#define IVetoEvent_GetVetos(This,aResult)	\
    (This)->lpVtbl -> GetVetos(This,aResult)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IVetoEvent_AddVeto_Proxy( 
    IVetoEvent * This,
    /* [in] */ BSTR aReason);


void __RPC_STUB IVetoEvent_AddVeto_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVetoEvent_IsVetoed_Proxy( 
    IVetoEvent * This,
    /* [retval][out] */ BOOL *aResult);


void __RPC_STUB IVetoEvent_IsVetoed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IVetoEvent_GetVetos_Proxy( 
    IVetoEvent * This,
    /* [retval][out] */ SAFEARRAY * *aResult);


void __RPC_STUB IVetoEvent_GetVetos_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVetoEvent_INTERFACE_DEFINED__ */


#ifndef __IExtraDataCanChangeEvent_INTERFACE_DEFINED__
#define __IExtraDataCanChangeEvent_INTERFACE_DEFINED__

/* interface IExtraDataCanChangeEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IExtraDataCanChangeEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("245d88bd-800a-40f8-87a6-170d02249a55")
    IExtraDataCanChangeEvent : public IVetoEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MachineId( 
            /* [retval][out] */ BSTR *aMachineId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Key( 
            /* [retval][out] */ BSTR *aKey) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ BSTR *aValue) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IExtraDataCanChangeEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IExtraDataCanChangeEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IExtraDataCanChangeEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IExtraDataCanChangeEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IExtraDataCanChangeEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IExtraDataCanChangeEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IExtraDataCanChangeEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IExtraDataCanChangeEvent * 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_Type )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IExtraDataCanChangeEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IExtraDataCanChangeEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *AddVeto )( 
            IExtraDataCanChangeEvent * This,
            /* [in] */ BSTR aReason);
        
        HRESULT ( STDMETHODCALLTYPE *IsVetoed )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *GetVetos )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ SAFEARRAY * *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Key )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ BSTR *aKey);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            IExtraDataCanChangeEvent * This,
            /* [retval][out] */ BSTR *aValue);
        
        END_INTERFACE
    } IExtraDataCanChangeEventVtbl;

    interface IExtraDataCanChangeEvent
    {
        CONST_VTBL struct IExtraDataCanChangeEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IExtraDataCanChangeEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IExtraDataCanChangeEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IExtraDataCanChangeEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IExtraDataCanChangeEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IExtraDataCanChangeEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IExtraDataCanChangeEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IExtraDataCanChangeEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IExtraDataCanChangeEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IExtraDataCanChangeEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IExtraDataCanChangeEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IExtraDataCanChangeEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IExtraDataCanChangeEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IExtraDataCanChangeEvent_AddVeto(This,aReason)	\
    (This)->lpVtbl -> AddVeto(This,aReason)

#define IExtraDataCanChangeEvent_IsVetoed(This,aResult)	\
    (This)->lpVtbl -> IsVetoed(This,aResult)

#define IExtraDataCanChangeEvent_GetVetos(This,aResult)	\
    (This)->lpVtbl -> GetVetos(This,aResult)


#define IExtraDataCanChangeEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)

#define IExtraDataCanChangeEvent_get_Key(This,aKey)	\
    (This)->lpVtbl -> get_Key(This,aKey)

#define IExtraDataCanChangeEvent_get_Value(This,aValue)	\
    (This)->lpVtbl -> get_Value(This,aValue)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IExtraDataCanChangeEvent_get_MachineId_Proxy( 
    IExtraDataCanChangeEvent * This,
    /* [retval][out] */ BSTR *aMachineId);


void __RPC_STUB IExtraDataCanChangeEvent_get_MachineId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtraDataCanChangeEvent_get_Key_Proxy( 
    IExtraDataCanChangeEvent * This,
    /* [retval][out] */ BSTR *aKey);


void __RPC_STUB IExtraDataCanChangeEvent_get_Key_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IExtraDataCanChangeEvent_get_Value_Proxy( 
    IExtraDataCanChangeEvent * This,
    /* [retval][out] */ BSTR *aValue);


void __RPC_STUB IExtraDataCanChangeEvent_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IExtraDataCanChangeEvent_INTERFACE_DEFINED__ */


#ifndef __ICanShowWindowEvent_INTERFACE_DEFINED__
#define __ICanShowWindowEvent_INTERFACE_DEFINED__

/* interface ICanShowWindowEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_ICanShowWindowEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("adf292b0-92c9-4a77-9d35-e058b39fe0b9")
    ICanShowWindowEvent : public IVetoEvent
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct ICanShowWindowEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ICanShowWindowEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ICanShowWindowEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ICanShowWindowEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ICanShowWindowEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ICanShowWindowEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ICanShowWindowEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ICanShowWindowEvent * 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_Type )( 
            ICanShowWindowEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            ICanShowWindowEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            ICanShowWindowEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            ICanShowWindowEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            ICanShowWindowEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *AddVeto )( 
            ICanShowWindowEvent * This,
            /* [in] */ BSTR aReason);
        
        HRESULT ( STDMETHODCALLTYPE *IsVetoed )( 
            ICanShowWindowEvent * This,
            /* [retval][out] */ BOOL *aResult);
        
        HRESULT ( STDMETHODCALLTYPE *GetVetos )( 
            ICanShowWindowEvent * This,
            /* [retval][out] */ SAFEARRAY * *aResult);
        
        END_INTERFACE
    } ICanShowWindowEventVtbl;

    interface ICanShowWindowEvent
    {
        CONST_VTBL struct ICanShowWindowEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICanShowWindowEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICanShowWindowEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICanShowWindowEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICanShowWindowEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICanShowWindowEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICanShowWindowEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICanShowWindowEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICanShowWindowEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define ICanShowWindowEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define ICanShowWindowEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define ICanShowWindowEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define ICanShowWindowEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define ICanShowWindowEvent_AddVeto(This,aReason)	\
    (This)->lpVtbl -> AddVeto(This,aReason)

#define ICanShowWindowEvent_IsVetoed(This,aResult)	\
    (This)->lpVtbl -> IsVetoed(This,aResult)

#define ICanShowWindowEvent_GetVetos(This,aResult)	\
    (This)->lpVtbl -> GetVetos(This,aResult)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __ICanShowWindowEvent_INTERFACE_DEFINED__ */


#ifndef __IShowWindowEvent_INTERFACE_DEFINED__
#define __IShowWindowEvent_INTERFACE_DEFINED__

/* interface IShowWindowEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IShowWindowEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B0A0904D-2F05-4D28-855F-488F96BAD2B2")
    IShowWindowEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_WinId( 
            /* [retval][out] */ LONG64 *aWinId) = 0;
        
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_WinId( 
            /* [in] */ LONG64 aWinId) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IShowWindowEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IShowWindowEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IShowWindowEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IShowWindowEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IShowWindowEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IShowWindowEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IShowWindowEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IShowWindowEvent * 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_Type )( 
            IShowWindowEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IShowWindowEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IShowWindowEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IShowWindowEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IShowWindowEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_WinId )( 
            IShowWindowEvent * This,
            /* [retval][out] */ LONG64 *aWinId);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_WinId )( 
            IShowWindowEvent * This,
            /* [in] */ LONG64 aWinId);
        
        END_INTERFACE
    } IShowWindowEventVtbl;

    interface IShowWindowEvent
    {
        CONST_VTBL struct IShowWindowEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IShowWindowEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IShowWindowEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IShowWindowEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IShowWindowEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IShowWindowEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IShowWindowEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IShowWindowEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IShowWindowEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IShowWindowEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IShowWindowEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IShowWindowEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IShowWindowEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IShowWindowEvent_get_WinId(This,aWinId)	\
    (This)->lpVtbl -> get_WinId(This,aWinId)

#define IShowWindowEvent_put_WinId(This,aWinId)	\
    (This)->lpVtbl -> put_WinId(This,aWinId)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IShowWindowEvent_get_WinId_Proxy( 
    IShowWindowEvent * This,
    /* [retval][out] */ LONG64 *aWinId);


void __RPC_STUB IShowWindowEvent_get_WinId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propput] */ HRESULT STDMETHODCALLTYPE IShowWindowEvent_put_WinId_Proxy( 
    IShowWindowEvent * This,
    /* [in] */ LONG64 aWinId);


void __RPC_STUB IShowWindowEvent_put_WinId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IShowWindowEvent_INTERFACE_DEFINED__ */


#ifndef __INATRedirectEvent_INTERFACE_DEFINED__
#define __INATRedirectEvent_INTERFACE_DEFINED__

/* interface INATRedirectEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_INATRedirectEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("57DE97D7-3CBB-42A0-888F-610D5832D16B")
    INATRedirectEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Slot( 
            /* [retval][out] */ ULONG *aSlot) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Remove( 
            /* [retval][out] */ BOOL *aRemove) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR *aName) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Proto( 
            /* [retval][out] */ NATProtocol *aProto) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostIp( 
            /* [retval][out] */ BSTR *aHostIp) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HostPort( 
            /* [retval][out] */ LONG *aHostPort) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_GuestIp( 
            /* [retval][out] */ BSTR *aGuestIp) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_GuestPort( 
            /* [retval][out] */ LONG *aGuestPort) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct INATRedirectEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            INATRedirectEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            INATRedirectEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            INATRedirectEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            INATRedirectEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            INATRedirectEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            INATRedirectEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            INATRedirectEvent * 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_Type )( 
            INATRedirectEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            INATRedirectEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            INATRedirectEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            INATRedirectEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            INATRedirectEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            INATRedirectEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Slot )( 
            INATRedirectEvent * This,
            /* [retval][out] */ ULONG *aSlot);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Remove )( 
            INATRedirectEvent * This,
            /* [retval][out] */ BOOL *aRemove);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            INATRedirectEvent * This,
            /* [retval][out] */ BSTR *aName);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Proto )( 
            INATRedirectEvent * This,
            /* [retval][out] */ NATProtocol *aProto);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostIp )( 
            INATRedirectEvent * This,
            /* [retval][out] */ BSTR *aHostIp);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HostPort )( 
            INATRedirectEvent * This,
            /* [retval][out] */ LONG *aHostPort);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_GuestIp )( 
            INATRedirectEvent * This,
            /* [retval][out] */ BSTR *aGuestIp);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_GuestPort )( 
            INATRedirectEvent * This,
            /* [retval][out] */ LONG *aGuestPort);
        
        END_INTERFACE
    } INATRedirectEventVtbl;

    interface INATRedirectEvent
    {
        CONST_VTBL struct INATRedirectEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define INATRedirectEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define INATRedirectEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define INATRedirectEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define INATRedirectEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define INATRedirectEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define INATRedirectEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define INATRedirectEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define INATRedirectEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define INATRedirectEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define INATRedirectEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define INATRedirectEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define INATRedirectEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define INATRedirectEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define INATRedirectEvent_get_Slot(This,aSlot)	\
    (This)->lpVtbl -> get_Slot(This,aSlot)

#define INATRedirectEvent_get_Remove(This,aRemove)	\
    (This)->lpVtbl -> get_Remove(This,aRemove)

#define INATRedirectEvent_get_Name(This,aName)	\
    (This)->lpVtbl -> get_Name(This,aName)

#define INATRedirectEvent_get_Proto(This,aProto)	\
    (This)->lpVtbl -> get_Proto(This,aProto)

#define INATRedirectEvent_get_HostIp(This,aHostIp)	\
    (This)->lpVtbl -> get_HostIp(This,aHostIp)

#define INATRedirectEvent_get_HostPort(This,aHostPort)	\
    (This)->lpVtbl -> get_HostPort(This,aHostPort)

#define INATRedirectEvent_get_GuestIp(This,aGuestIp)	\
    (This)->lpVtbl -> get_GuestIp(This,aGuestIp)

#define INATRedirectEvent_get_GuestPort(This,aGuestPort)	\
    (This)->lpVtbl -> get_GuestPort(This,aGuestPort)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_Slot_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ ULONG *aSlot);


void __RPC_STUB INATRedirectEvent_get_Slot_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_Remove_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ BOOL *aRemove);


void __RPC_STUB INATRedirectEvent_get_Remove_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_Name_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ BSTR *aName);


void __RPC_STUB INATRedirectEvent_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_Proto_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ NATProtocol *aProto);


void __RPC_STUB INATRedirectEvent_get_Proto_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_HostIp_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ BSTR *aHostIp);


void __RPC_STUB INATRedirectEvent_get_HostIp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_HostPort_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ LONG *aHostPort);


void __RPC_STUB INATRedirectEvent_get_HostPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_GuestIp_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ BSTR *aGuestIp);


void __RPC_STUB INATRedirectEvent_get_GuestIp_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE INATRedirectEvent_get_GuestPort_Proxy( 
    INATRedirectEvent * This,
    /* [retval][out] */ LONG *aGuestPort);


void __RPC_STUB INATRedirectEvent_get_GuestPort_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __INATRedirectEvent_INTERFACE_DEFINED__ */


#ifndef __IHostPciDevicePlugEvent_INTERFACE_DEFINED__
#define __IHostPciDevicePlugEvent_INTERFACE_DEFINED__

/* interface IHostPciDevicePlugEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IHostPciDevicePlugEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9cebfc27-c579-4965-8eb7-d31794cd7dcf")
    IHostPciDevicePlugEvent : public IMachineEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Plugged( 
            /* [retval][out] */ BOOL *aPlugged) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Success( 
            /* [retval][out] */ BOOL *aSuccess) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Attachment( 
            /* [retval][out] */ IPciDeviceAttachment **aAttachment) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Message( 
            /* [retval][out] */ BSTR *aMessage) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IHostPciDevicePlugEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IHostPciDevicePlugEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IHostPciDevicePlugEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IHostPciDevicePlugEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IHostPciDevicePlugEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IHostPciDevicePlugEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IHostPciDevicePlugEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IHostPciDevicePlugEvent * 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_Type )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IHostPciDevicePlugEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IHostPciDevicePlugEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MachineId )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ BSTR *aMachineId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Plugged )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ BOOL *aPlugged);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Success )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ BOOL *aSuccess);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Attachment )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ IPciDeviceAttachment **aAttachment);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Message )( 
            IHostPciDevicePlugEvent * This,
            /* [retval][out] */ BSTR *aMessage);
        
        END_INTERFACE
    } IHostPciDevicePlugEventVtbl;

    interface IHostPciDevicePlugEvent
    {
        CONST_VTBL struct IHostPciDevicePlugEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IHostPciDevicePlugEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IHostPciDevicePlugEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IHostPciDevicePlugEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IHostPciDevicePlugEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IHostPciDevicePlugEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IHostPciDevicePlugEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IHostPciDevicePlugEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IHostPciDevicePlugEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IHostPciDevicePlugEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IHostPciDevicePlugEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IHostPciDevicePlugEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IHostPciDevicePlugEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IHostPciDevicePlugEvent_get_MachineId(This,aMachineId)	\
    (This)->lpVtbl -> get_MachineId(This,aMachineId)


#define IHostPciDevicePlugEvent_get_Plugged(This,aPlugged)	\
    (This)->lpVtbl -> get_Plugged(This,aPlugged)

#define IHostPciDevicePlugEvent_get_Success(This,aSuccess)	\
    (This)->lpVtbl -> get_Success(This,aSuccess)

#define IHostPciDevicePlugEvent_get_Attachment(This,aAttachment)	\
    (This)->lpVtbl -> get_Attachment(This,aAttachment)

#define IHostPciDevicePlugEvent_get_Message(This,aMessage)	\
    (This)->lpVtbl -> get_Message(This,aMessage)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IHostPciDevicePlugEvent_get_Plugged_Proxy( 
    IHostPciDevicePlugEvent * This,
    /* [retval][out] */ BOOL *aPlugged);


void __RPC_STUB IHostPciDevicePlugEvent_get_Plugged_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostPciDevicePlugEvent_get_Success_Proxy( 
    IHostPciDevicePlugEvent * This,
    /* [retval][out] */ BOOL *aSuccess);


void __RPC_STUB IHostPciDevicePlugEvent_get_Success_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostPciDevicePlugEvent_get_Attachment_Proxy( 
    IHostPciDevicePlugEvent * This,
    /* [retval][out] */ IPciDeviceAttachment **aAttachment);


void __RPC_STUB IHostPciDevicePlugEvent_get_Attachment_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IHostPciDevicePlugEvent_get_Message_Proxy( 
    IHostPciDevicePlugEvent * This,
    /* [retval][out] */ BSTR *aMessage);


void __RPC_STUB IHostPciDevicePlugEvent_get_Message_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IHostPciDevicePlugEvent_INTERFACE_DEFINED__ */


#ifndef __IVBoxSVCAvailabilityChangedEvent_INTERFACE_DEFINED__
#define __IVBoxSVCAvailabilityChangedEvent_INTERFACE_DEFINED__

/* interface IVBoxSVCAvailabilityChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IVBoxSVCAvailabilityChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("97c78fcd-d4fc-485f-8613-5af88bfcfcdc")
    IVBoxSVCAvailabilityChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Available( 
            /* [retval][out] */ BOOL *aAvailable) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IVBoxSVCAvailabilityChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IVBoxSVCAvailabilityChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IVBoxSVCAvailabilityChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IVBoxSVCAvailabilityChangedEvent * 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_Type )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IVBoxSVCAvailabilityChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Available )( 
            IVBoxSVCAvailabilityChangedEvent * This,
            /* [retval][out] */ BOOL *aAvailable);
        
        END_INTERFACE
    } IVBoxSVCAvailabilityChangedEventVtbl;

    interface IVBoxSVCAvailabilityChangedEvent
    {
        CONST_VTBL struct IVBoxSVCAvailabilityChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IVBoxSVCAvailabilityChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IVBoxSVCAvailabilityChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IVBoxSVCAvailabilityChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IVBoxSVCAvailabilityChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IVBoxSVCAvailabilityChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IVBoxSVCAvailabilityChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IVBoxSVCAvailabilityChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IVBoxSVCAvailabilityChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IVBoxSVCAvailabilityChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IVBoxSVCAvailabilityChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IVBoxSVCAvailabilityChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IVBoxSVCAvailabilityChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IVBoxSVCAvailabilityChangedEvent_get_Available(This,aAvailable)	\
    (This)->lpVtbl -> get_Available(This,aAvailable)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IVBoxSVCAvailabilityChangedEvent_get_Available_Proxy( 
    IVBoxSVCAvailabilityChangedEvent * This,
    /* [retval][out] */ BOOL *aAvailable);


void __RPC_STUB IVBoxSVCAvailabilityChangedEvent_get_Available_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IVBoxSVCAvailabilityChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IBandwidthGroupChangedEvent_INTERFACE_DEFINED__
#define __IBandwidthGroupChangedEvent_INTERFACE_DEFINED__

/* interface IBandwidthGroupChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IBandwidthGroupChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("334df94a-7556-4cbc-8c04-043096b02d82")
    IBandwidthGroupChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BandwidthGroup( 
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IBandwidthGroupChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IBandwidthGroupChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IBandwidthGroupChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IBandwidthGroupChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IBandwidthGroupChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IBandwidthGroupChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IBandwidthGroupChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IBandwidthGroupChangedEvent * 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_Type )( 
            IBandwidthGroupChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IBandwidthGroupChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IBandwidthGroupChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IBandwidthGroupChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IBandwidthGroupChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BandwidthGroup )( 
            IBandwidthGroupChangedEvent * This,
            /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);
        
        END_INTERFACE
    } IBandwidthGroupChangedEventVtbl;

    interface IBandwidthGroupChangedEvent
    {
        CONST_VTBL struct IBandwidthGroupChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IBandwidthGroupChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IBandwidthGroupChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IBandwidthGroupChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IBandwidthGroupChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IBandwidthGroupChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IBandwidthGroupChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IBandwidthGroupChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IBandwidthGroupChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IBandwidthGroupChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IBandwidthGroupChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IBandwidthGroupChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IBandwidthGroupChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IBandwidthGroupChangedEvent_get_BandwidthGroup(This,aBandwidthGroup)	\
    (This)->lpVtbl -> get_BandwidthGroup(This,aBandwidthGroup)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IBandwidthGroupChangedEvent_get_BandwidthGroup_Proxy( 
    IBandwidthGroupChangedEvent * This,
    /* [retval][out] */ IBandwidthGroup **aBandwidthGroup);


void __RPC_STUB IBandwidthGroupChangedEvent_get_BandwidthGroup_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IBandwidthGroupChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IGuestMonitorChangedEvent_INTERFACE_DEFINED__
#define __IGuestMonitorChangedEvent_INTERFACE_DEFINED__

/* interface IGuestMonitorChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IGuestMonitorChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0f7b8a22-c71f-4a36-8e5f-a77d01d76090")
    IGuestMonitorChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ChangeType( 
            /* [retval][out] */ GuestMonitorChangedEventType *aChangeType) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ScreenId( 
            /* [retval][out] */ ULONG *aScreenId) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OriginX( 
            /* [retval][out] */ ULONG *aOriginX) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_OriginY( 
            /* [retval][out] */ ULONG *aOriginY) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Width( 
            /* [retval][out] */ ULONG *aWidth) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Height( 
            /* [retval][out] */ ULONG *aHeight) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGuestMonitorChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGuestMonitorChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGuestMonitorChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGuestMonitorChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IGuestMonitorChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IGuestMonitorChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IGuestMonitorChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IGuestMonitorChangedEvent * 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_Type )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IGuestMonitorChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IGuestMonitorChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ChangeType )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ GuestMonitorChangedEventType *aChangeType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ScreenId )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ ULONG *aScreenId);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OriginX )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ ULONG *aOriginX);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_OriginY )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ ULONG *aOriginY);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Width )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ ULONG *aWidth);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Height )( 
            IGuestMonitorChangedEvent * This,
            /* [retval][out] */ ULONG *aHeight);
        
        END_INTERFACE
    } IGuestMonitorChangedEventVtbl;

    interface IGuestMonitorChangedEvent
    {
        CONST_VTBL struct IGuestMonitorChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IGuestMonitorChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IGuestMonitorChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IGuestMonitorChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IGuestMonitorChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IGuestMonitorChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IGuestMonitorChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IGuestMonitorChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IGuestMonitorChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IGuestMonitorChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IGuestMonitorChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IGuestMonitorChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IGuestMonitorChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IGuestMonitorChangedEvent_get_ChangeType(This,aChangeType)	\
    (This)->lpVtbl -> get_ChangeType(This,aChangeType)

#define IGuestMonitorChangedEvent_get_ScreenId(This,aScreenId)	\
    (This)->lpVtbl -> get_ScreenId(This,aScreenId)

#define IGuestMonitorChangedEvent_get_OriginX(This,aOriginX)	\
    (This)->lpVtbl -> get_OriginX(This,aOriginX)

#define IGuestMonitorChangedEvent_get_OriginY(This,aOriginY)	\
    (This)->lpVtbl -> get_OriginY(This,aOriginY)

#define IGuestMonitorChangedEvent_get_Width(This,aWidth)	\
    (This)->lpVtbl -> get_Width(This,aWidth)

#define IGuestMonitorChangedEvent_get_Height(This,aHeight)	\
    (This)->lpVtbl -> get_Height(This,aHeight)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMonitorChangedEvent_get_ChangeType_Proxy( 
    IGuestMonitorChangedEvent * This,
    /* [retval][out] */ GuestMonitorChangedEventType *aChangeType);


void __RPC_STUB IGuestMonitorChangedEvent_get_ChangeType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMonitorChangedEvent_get_ScreenId_Proxy( 
    IGuestMonitorChangedEvent * This,
    /* [retval][out] */ ULONG *aScreenId);


void __RPC_STUB IGuestMonitorChangedEvent_get_ScreenId_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMonitorChangedEvent_get_OriginX_Proxy( 
    IGuestMonitorChangedEvent * This,
    /* [retval][out] */ ULONG *aOriginX);


void __RPC_STUB IGuestMonitorChangedEvent_get_OriginX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMonitorChangedEvent_get_OriginY_Proxy( 
    IGuestMonitorChangedEvent * This,
    /* [retval][out] */ ULONG *aOriginY);


void __RPC_STUB IGuestMonitorChangedEvent_get_OriginY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMonitorChangedEvent_get_Width_Proxy( 
    IGuestMonitorChangedEvent * This,
    /* [retval][out] */ ULONG *aWidth);


void __RPC_STUB IGuestMonitorChangedEvent_get_Width_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IGuestMonitorChangedEvent_get_Height_Proxy( 
    IGuestMonitorChangedEvent * This,
    /* [retval][out] */ ULONG *aHeight);


void __RPC_STUB IGuestMonitorChangedEvent_get_Height_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IGuestMonitorChangedEvent_INTERFACE_DEFINED__ */


#ifndef __IStorageDeviceChangedEvent_INTERFACE_DEFINED__
#define __IStorageDeviceChangedEvent_INTERFACE_DEFINED__

/* interface IStorageDeviceChangedEvent */
/* [oleautomation][dual][object][uuid] */ 


EXTERN_C const IID IID_IStorageDeviceChangedEvent;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8a5c2dce-e341-49d4-afce-c95979f7d70c")
    IStorageDeviceChangedEvent : public IEvent
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_StorageDevice( 
            /* [retval][out] */ IMediumAttachment **aStorageDevice) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Removed( 
            /* [retval][out] */ BOOL *aRemoved) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IStorageDeviceChangedEventVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IStorageDeviceChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IStorageDeviceChangedEvent * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IStorageDeviceChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IStorageDeviceChangedEvent * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IStorageDeviceChangedEvent * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IStorageDeviceChangedEvent * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IStorageDeviceChangedEvent * 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_Type )( 
            IStorageDeviceChangedEvent * This,
            /* [retval][out] */ VBoxEventType *aType);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
            IStorageDeviceChangedEvent * This,
            /* [retval][out] */ IEventSource **aSource);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Waitable )( 
            IStorageDeviceChangedEvent * This,
            /* [retval][out] */ BOOL *aWaitable);
        
        HRESULT ( STDMETHODCALLTYPE *SetProcessed )( 
            IStorageDeviceChangedEvent * This);
        
        HRESULT ( STDMETHODCALLTYPE *WaitProcessed )( 
            IStorageDeviceChangedEvent * This,
            /* [in] */ LONG aTimeout,
            /* [retval][out] */ BOOL *aResult);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_StorageDevice )( 
            IStorageDeviceChangedEvent * This,
            /* [retval][out] */ IMediumAttachment **aStorageDevice);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Removed )( 
            IStorageDeviceChangedEvent * This,
            /* [retval][out] */ BOOL *aRemoved);
        
        END_INTERFACE
    } IStorageDeviceChangedEventVtbl;

    interface IStorageDeviceChangedEvent
    {
        CONST_VTBL struct IStorageDeviceChangedEventVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IStorageDeviceChangedEvent_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IStorageDeviceChangedEvent_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IStorageDeviceChangedEvent_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IStorageDeviceChangedEvent_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IStorageDeviceChangedEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IStorageDeviceChangedEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IStorageDeviceChangedEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IStorageDeviceChangedEvent_get_Type(This,aType)	\
    (This)->lpVtbl -> get_Type(This,aType)

#define IStorageDeviceChangedEvent_get_Source(This,aSource)	\
    (This)->lpVtbl -> get_Source(This,aSource)

#define IStorageDeviceChangedEvent_get_Waitable(This,aWaitable)	\
    (This)->lpVtbl -> get_Waitable(This,aWaitable)

#define IStorageDeviceChangedEvent_SetProcessed(This)	\
    (This)->lpVtbl -> SetProcessed(This)

#define IStorageDeviceChangedEvent_WaitProcessed(This,aTimeout,aResult)	\
    (This)->lpVtbl -> WaitProcessed(This,aTimeout,aResult)


#define IStorageDeviceChangedEvent_get_StorageDevice(This,aStorageDevice)	\
    (This)->lpVtbl -> get_StorageDevice(This,aStorageDevice)

#define IStorageDeviceChangedEvent_get_Removed(This,aRemoved)	\
    (This)->lpVtbl -> get_Removed(This,aRemoved)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageDeviceChangedEvent_get_StorageDevice_Proxy( 
    IStorageDeviceChangedEvent * This,
    /* [retval][out] */ IMediumAttachment **aStorageDevice);


void __RPC_STUB IStorageDeviceChangedEvent_get_StorageDevice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [propget] */ HRESULT STDMETHODCALLTYPE IStorageDeviceChangedEvent_get_Removed_Proxy( 
    IStorageDeviceChangedEvent * This,
    /* [retval][out] */ BOOL *aRemoved);


void __RPC_STUB IStorageDeviceChangedEvent_get_Removed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IStorageDeviceChangedEvent_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_VirtualBoxClient;

#ifdef __cplusplus

class DECLSPEC_UUID("dd3fc71d-26c0-4fe1-bf6f-67f633265bba")
VirtualBoxClient;
#endif

EXTERN_C const CLSID CLSID_Session;

#ifdef __cplusplus

class DECLSPEC_UUID("3C02F46D-C9D2-4F11-A384-53F0CF917214")
Session;
#endif
#endif /* __VirtualBox_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


