Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> --- src/vbox/vbox_CAPI_v6_1.h | 32896 ++++++++++++++++++++++++++++++++++++ 1 file changed, 32896 insertions(+) create mode 100644 src/vbox/vbox_CAPI_v6_1.h diff --git a/src/vbox/vbox_CAPI_v6_1.h b/src/vbox/vbox_CAPI_v6_1.h new file mode 100644 index 0000000000..7d5f615a7c --- /dev/null +++ b/src/vbox/vbox_CAPI_v6_1.h @@ -0,0 +1,32896 @@ +/* + * Libvirt notice: this file is derived from the VirtualBox SDK, with + * libvirt edits (fixing preprocessor indentation by cppi); do not + * regenerate in the context of libvirt. + */ +/* + * DO NOT EDIT! This is a generated file. + * + * Header file which provides C declarations for VirtualBox Main API + * (COM interfaces), generated from XIDL (XML interface definition). + * On Windows (which uses COM instead of XPCOM) the native C support + * is used, and most of this file is not used. + * + * Source : src/VBox/Main/idl/VirtualBox.xidl + * Generator : src/VBox/Main/cbinding/capiidl.xsl + * + * This file contains portions from the following Mozilla XPCOM files: + * xpcom/include/xpcom/nsID.h + * xpcom/include/nsIException.h + * xpcom/include/nsprpub/prtypes.h + * xpcom/include/xpcom/nsISupportsBase.h + * + * These files were originally triple-licensed (MPL/GPL2/LGPL2.1). Oracle + * elects to distribute this derived work under the LGPL2.1 only. + */ + +/* + * Copyright (C) 2008-2020 Oracle Corporation + * + * This file is part of a free software library; you can redistribute + * it and/or modify it under the terms of the GNU Lesser General + * Public License version 2.1 as published by the Free Software + * Foundation and shipped in the "COPYING.LESSER" file with this library. + * The library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY of any kind. + * + * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if + * any license choice other than GPL or LGPL is available it will + * apply instead, Oracle elects to use only the Lesser General Public + * License version 2.1 (LGPLv2) at this time for any software where + * a choice of LGPL license versions is made available with the + * language indicating that LGPLv2 or any later version may be used, + * or where a choice of which version of the LGPL is applied is + * otherwise unspecified. + */ + +#ifndef ___VirtualBox_CXPCOM_h +# define ___VirtualBox_CXPCOM_h + +# ifdef _WIN32 +# pragma warning(push) +# pragma warning(disable:4668 4255) /* -Wall and windows.h */ +# if _MSC_VER >= 1800 /*RT_MSC_VER_VC120*/ +# pragma warning(disable:4005) /* sdk/v7.1/include/sal_supp.h(57) : warning C4005: '__useHeader' : macro redefinition */ +# endif +# undef COBJMACROS +# define COBJMACROS +# include "Windows.h" +# pragma warning(pop) +# endif /* _WIN32 */ + +# ifdef WIN32 +# ifdef IN_VBOXCAPI +# define VBOXCAPI_DECL(type) extern __declspec(dllexport) type +# else /* !IN_VBOXCAPI */ +# define VBOXCAPI_DECL(type) __declspec(dllimport) type +# endif /* !IN_VBOXCAPI */ +# endif /* WIN32 */ + +# ifdef __cplusplus +/* The C++ treatment in this file is not meant for SDK users, it only exists + * so that this file can be used to produce the VBoxCAPI shared library which + * has to use C++ as it does all the conversion magic. */ +# ifdef IN_VBOXCAPI +# include "VBox/com/VirtualBox.h" +# ifndef WIN32 +# include "nsIEventQueue.h" +# endif /* !WIN32 */ +# else /* !IN_VBOXCAPI */ +# error Do not include this header file from C++ code +# endif /* !IN_VBOXCAPI */ +# endif /* __cplusplus */ + +# ifdef __GNUC__ +# define VBOX_EXTERN_CONST(type, name) extern const type name __attribute__((nocommon)) +# else /* !__GNUC__ */ +# define VBOX_EXTERN_CONST(type, name) extern const type name +# endif /* !__GNUC__ */ + +/* Treat WIN32 completely separately, as on Windows VirtualBox uses COM, not + * XPCOM like on all other platforms. While the code below would also compile + * on Windows, we need to switch to the native C support provided by the header + * files produced by the COM IDL compiler. */ +# ifdef WIN32 +# include "ObjBase.h" +# include "oaidl.h" +# include "VirtualBox.h" + +# ifndef __cplusplus +/* Skip this in the C++ case as there's already a definition for CBSTR. */ +typedef const BSTR CBSTR; +# endif /* !__cplusplus */ + +# define VBOX_WINAPI WINAPI + +# define ComSafeArrayAsInParam(f) (f) +# define ComSafeArrayAsOutParam(f) (&(f)) +# define ComSafeArrayAsOutTypeParam(f,t) (&(f)) +# define ComSafeArrayAsOutIfaceParam(f,t) (&(f)) + +# else /* !WIN32 */ + +# include <stddef.h> +# include "wchar.h" + +# ifdef IN_VBOXCAPI +# define VBOXCAPI_DECL(type) PR_EXPORT(type) +# else /* !IN_VBOXCAPI */ +# define VBOXCAPI_DECL(type) PR_IMPORT(type) +# endif /* !IN_VBOXCAPI */ + +# ifndef __cplusplus + +# if defined(WIN32) + +# define PR_EXPORT(__type) extern __declspec(dllexport) __type +# define PR_EXPORT_DATA(__type) extern __declspec(dllexport) __type +# define PR_IMPORT(__type) __declspec(dllimport) __type +# define PR_IMPORT_DATA(__type) __declspec(dllimport) __type + +# define PR_EXTERN(__type) extern __declspec(dllexport) __type +# define PR_IMPLEMENT(__type) __declspec(dllexport) __type +# define PR_EXTERN_DATA(__type) extern __declspec(dllexport) __type +# define PR_IMPLEMENT_DATA(__type) __declspec(dllexport) __type + +# define PR_CALLBACK +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x + +# elif defined(XP_BEOS) + +# define PR_EXPORT(__type) extern __declspec(dllexport) __type +# define PR_EXPORT_DATA(__type) extern __declspec(dllexport) __type +# define PR_IMPORT(__type) extern __declspec(dllexport) __type +# define PR_IMPORT_DATA(__type) extern __declspec(dllexport) __type + +# define PR_EXTERN(__type) extern __declspec(dllexport) __type +# define PR_IMPLEMENT(__type) __declspec(dllexport) __type +# define PR_EXTERN_DATA(__type) extern __declspec(dllexport) __type +# define PR_IMPLEMENT_DATA(__type) __declspec(dllexport) __type + +# define PR_CALLBACK +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x + +# elif defined(WIN16) + +# define PR_CALLBACK_DECL __cdecl + +# if defined(_WINDLL) +# define PR_EXPORT(__type) extern __type _cdecl _export _loadds +# define PR_IMPORT(__type) extern __type _cdecl _export _loadds +# define PR_EXPORT_DATA(__type) extern __type _export +# define PR_IMPORT_DATA(__type) extern __type _export + +# define PR_EXTERN(__type) extern __type _cdecl _export _loadds +# define PR_IMPLEMENT(__type) __type _cdecl _export _loadds +# define PR_EXTERN_DATA(__type) extern __type _export +# define PR_IMPLEMENT_DATA(__type) __type _export + +# define PR_CALLBACK __cdecl __loadds +# define PR_STATIC_CALLBACK(__x) static __x PR_CALLBACK + +# else /* this must be .EXE */ +# define PR_EXPORT(__type) extern __type _cdecl _export +# define PR_IMPORT(__type) extern __type _cdecl _export +# define PR_EXPORT_DATA(__type) extern __type _export +# define PR_IMPORT_DATA(__type) extern __type _export + +# define PR_EXTERN(__type) extern __type _cdecl _export +# define PR_IMPLEMENT(__type) __type _cdecl _export +# define PR_EXTERN_DATA(__type) extern __type _export +# define PR_IMPLEMENT_DATA(__type) __type _export + +# define PR_CALLBACK __cdecl __loadds +# define PR_STATIC_CALLBACK(__x) __x PR_CALLBACK +# endif /* _WINDLL */ + +# elif defined(XP_MAC) + +# define PR_EXPORT(__type) extern __declspec(export) __type +# define PR_EXPORT_DATA(__type) extern __declspec(export) __type +# define PR_IMPORT(__type) extern __declspec(export) __type +# define PR_IMPORT_DATA(__type) extern __declspec(export) __type + +# define PR_EXTERN(__type) extern __declspec(export) __type +# define PR_IMPLEMENT(__type) __declspec(export) __type +# define PR_EXTERN_DATA(__type) extern __declspec(export) __type +# define PR_IMPLEMENT_DATA(__type) __declspec(export) __type + +# define PR_CALLBACK +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x + +# elif defined(XP_OS2) && defined(__declspec) + +# define PR_EXPORT(__type) extern __declspec(dllexport) __type +# define PR_EXPORT_DATA(__type) extern __declspec(dllexport) __type +# define PR_IMPORT(__type) __declspec(dllimport) __type +# define PR_IMPORT_DATA(__type) __declspec(dllimport) __type + +# define PR_EXTERN(__type) extern __declspec(dllexport) __type +# define PR_IMPLEMENT(__type) __declspec(dllexport) __type +# define PR_EXTERN_DATA(__type) extern __declspec(dllexport) __type +# define PR_IMPLEMENT_DATA(__type) __declspec(dllexport) __type + +# define PR_CALLBACK +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x + +# elif defined(XP_OS2_VACPP) + +# define PR_EXPORT(__type) extern __type +# define PR_EXPORT_DATA(__type) extern __type +# define PR_IMPORT(__type) extern __type +# define PR_IMPORT_DATA(__type) extern __type + +# define PR_EXTERN(__type) extern __type +# define PR_IMPLEMENT(__type) __type +# define PR_EXTERN_DATA(__type) extern __type +# define PR_IMPLEMENT_DATA(__type) __type +# define PR_CALLBACK _Optlink +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x PR_CALLBACK + +# else /* Unix */ + +# ifdef VBOX_HAVE_VISIBILITY_HIDDEN +# define PR_EXPORT(__type) __attribute__((visibility("default"))) extern __type +# define PR_EXPORT_DATA(__type) __attribute__((visibility("default"))) extern __type +# define PR_IMPORT(__type) extern __type +# define PR_IMPORT_DATA(__type) extern __type +# define PR_EXTERN(__type) __attribute__((visibility("default"))) extern __type +# define PR_IMPLEMENT(__type) __attribute__((visibility("default"))) __type +# define PR_EXTERN_DATA(__type) __attribute__((visibility("default"))) extern __type +# define PR_IMPLEMENT_DATA(__type) __attribute__((visibility("default"))) __type +# define PR_CALLBACK +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x +# else +# define PR_EXPORT(__type) extern __type +# define PR_EXPORT_DATA(__type) extern __type +# define PR_IMPORT(__type) extern __type +# define PR_IMPORT_DATA(__type) extern __type +# define PR_EXTERN(__type) extern __type +# define PR_IMPLEMENT(__type) __type +# define PR_EXTERN_DATA(__type) extern __type +# define PR_IMPLEMENT_DATA(__type) __type +# define PR_CALLBACK +# define PR_CALLBACK_DECL +# define PR_STATIC_CALLBACK(__x) static __x +# endif +# endif + +# if defined(_NSPR_BUILD_) +# define NSPR_API(__type) PR_EXPORT(__type) +# define NSPR_DATA_API(__type) PR_EXPORT_DATA(__type) +# else +# define NSPR_API(__type) PR_IMPORT(__type) +# define NSPR_DATA_API(__type) PR_IMPORT_DATA(__type) +# endif + +typedef unsigned char PRUint8; +# if (defined(HPUX) && defined(__cplusplus) \ + && !defined(__GNUC__) && __cplusplus < 199707L) \ + || (defined(SCO) && defined(__cplusplus) \ + && !defined(__GNUC__) && __cplusplus == 1L) +typedef char PRInt8; +# else +typedef signed char PRInt8; +# endif + +# define PR_INT8_MAX 127 +# define PR_INT8_MIN (-128) +# define PR_UINT8_MAX 255U + +typedef unsigned short PRUint16; +typedef short PRInt16; + +# define PR_INT16_MAX 32767 +# define PR_INT16_MIN (-32768) +# define PR_UINT16_MAX 65535U + +typedef unsigned int PRUint32; +typedef int PRInt32; +# define PR_INT32(x) x +# define PR_UINT32(x) x ## U + +# define PR_INT32_MAX PR_INT32(2147483647) +# define PR_INT32_MIN (-PR_INT32_MAX - 1) +# define PR_UINT32_MAX PR_UINT32(4294967295) + +typedef long PRInt64; +typedef unsigned long PRUint64; +typedef int PRIntn; +typedef unsigned int PRUintn; + +typedef double PRFloat64; +typedef size_t PRSize; + +typedef ptrdiff_t PRPtrdiff; + +typedef unsigned long PRUptrdiff; + +typedef PRIntn PRBool; + +# define PR_TRUE 1 +# define PR_FALSE 0 + +typedef PRUint8 PRPackedBool; + +/* +** Status code used by some routines that have a single point of failure or +** special status return. +*/ +typedef enum { PR_FAILURE = -1, PR_SUCCESS = 0 } PRStatus; + +# ifndef __PRUNICHAR__ +# define __PRUNICHAR__ +# if defined(WIN32) || defined(XP_MAC) +typedef wchar_t PRUnichar; +# else +typedef PRUint16 PRUnichar; +# endif +typedef PRUnichar *BSTR; +typedef const PRUnichar *CBSTR; +# endif + +typedef long PRWord; +typedef unsigned long PRUword; + +# define nsnull 0 +typedef PRUint32 nsresult; + +# if defined(__GNUC__) && (__GNUC__ > 2) +# define NS_LIKELY(x) (__builtin_expect((x), 1)) +# define NS_UNLIKELY(x) (__builtin_expect((x), 0)) +# else +# define NS_LIKELY(x) (x) +# define NS_UNLIKELY(x) (x) +# endif + +# define NS_FAILED(_nsresult) (NS_UNLIKELY((_nsresult) & 0x80000000)) +# define NS_SUCCEEDED(_nsresult) (NS_LIKELY(!((_nsresult) & 0x80000000))) + +# ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP +# define PR_IntervalNow VBoxNsprPR_IntervalNow +# define PR_TicksPerSecond VBoxNsprPR_TicksPerSecond +# define PR_SecondsToInterval VBoxNsprPR_SecondsToInterval +# define PR_MillisecondsToInterval VBoxNsprPR_MillisecondsToInterval +# define PR_MicrosecondsToInterval VBoxNsprPR_MicrosecondsToInterval +# define PR_IntervalToSeconds VBoxNsprPR_IntervalToSeconds +# define PR_IntervalToMilliseconds VBoxNsprPR_IntervalToMilliseconds +# define PR_IntervalToMicroseconds VBoxNsprPR_IntervalToMicroseconds +# define PR_EnterMonitor VBoxNsprPR_EnterMonitor +# define PR_ExitMonitor VBoxNsprPR_ExitMonitor +# define PR_Notify VBoxNsprPR_Notify +# define PR_NotifyAll VBoxNsprPR_NotifyAll +# define PR_Wait VBoxNsprPR_Wait +# define PR_NewMonitor VBoxNsprPR_NewMonitor +# define PR_DestroyMonitor VBoxNsprPR_DestroyMonitor +# endif /* VBOX_WITH_XPCOM_NAMESPACE_CLEANUP */ + +typedef PRUint32 PRIntervalTime; + +# define PR_INTERVAL_MIN 1000UL +# define PR_INTERVAL_MAX 100000UL +# define PR_INTERVAL_NO_WAIT 0UL +# define PR_INTERVAL_NO_TIMEOUT 0xffffffffUL + +NSPR_API(PRIntervalTime) PR_IntervalNow(void); +NSPR_API(PRUint32) PR_TicksPerSecond(void); +NSPR_API(PRIntervalTime) PR_SecondsToInterval(PRUint32 seconds); +NSPR_API(PRIntervalTime) PR_MillisecondsToInterval(PRUint32 milli); +NSPR_API(PRIntervalTime) PR_MicrosecondsToInterval(PRUint32 micro); +NSPR_API(PRUint32) PR_IntervalToSeconds(PRIntervalTime ticks); +NSPR_API(PRUint32) PR_IntervalToMilliseconds(PRIntervalTime ticks); +NSPR_API(PRUint32) PR_IntervalToMicroseconds(PRIntervalTime ticks); + +typedef struct PRMonitor PRMonitor; + +NSPR_API(PRMonitor*) PR_NewMonitor(void); +NSPR_API(void) PR_DestroyMonitor(PRMonitor *mon); +NSPR_API(void) PR_EnterMonitor(PRMonitor *mon); +NSPR_API(PRStatus) PR_ExitMonitor(PRMonitor *mon); +NSPR_API(PRStatus) PR_Wait(PRMonitor *mon, PRIntervalTime ticks); +NSPR_API(PRStatus) PR_Notify(PRMonitor *mon); +NSPR_API(PRStatus) PR_NotifyAll(PRMonitor *mon); + +# ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP +# define PR_CreateThread VBoxNsprPR_CreateThread +# define PR_JoinThread VBoxNsprPR_JoinThread +# define PR_Sleep VBoxNsprPR_Sleep +# define PR_GetCurrentThread VBoxNsprPR_GetCurrentThread +# define PR_GetThreadState VBoxNsprPR_GetThreadState +# define PR_SetThreadPrivate VBoxNsprPR_SetThreadPrivate +# define PR_GetThreadPrivate VBoxNsprPR_GetThreadPrivate +# define PR_NewThreadPrivateIndex VBoxNsprPR_NewThreadPrivateIndex +# define PR_GetThreadPriority VBoxNsprPR_GetThreadPriority +# define PR_SetThreadPriority VBoxNsprPR_SetThreadPriority +# define PR_Interrupt VBoxNsprPR_Interrupt +# define PR_ClearInterrupt VBoxNsprPR_ClearInterrupt +# define PR_BlockInterrupt VBoxNsprPR_BlockInterrupt +# define PR_UnblockInterrupt VBoxNsprPR_UnblockInterrupt +# define PR_GetThreadScope VBoxNsprPR_GetThreadScope +# define PR_GetThreadType VBoxNsprPR_GetThreadType +# endif /* VBOX_WITH_XPCOM_NAMESPACE_CLEANUP */ + +typedef struct PRThread PRThread; +typedef struct PRThreadStack PRThreadStack; + +typedef enum PRThreadType { + PR_USER_THREAD, + PR_SYSTEM_THREAD +} PRThreadType; + +typedef enum PRThreadScope { + PR_LOCAL_THREAD, + PR_GLOBAL_THREAD, + PR_GLOBAL_BOUND_THREAD +} PRThreadScope; + +typedef enum PRThreadState { + PR_JOINABLE_THREAD, + PR_UNJOINABLE_THREAD +} PRThreadState; + +typedef enum PRThreadPriority +{ + PR_PRIORITY_FIRST = 0, /* just a placeholder */ + PR_PRIORITY_LOW = 0, /* the lowest possible priority */ + PR_PRIORITY_NORMAL = 1, /* most common expected priority */ + PR_PRIORITY_HIGH = 2, /* slightly more aggressive scheduling */ + PR_PRIORITY_URGENT = 3, /* it does little good to have more than one */ + PR_PRIORITY_LAST = 3 /* this is just a placeholder */ +} PRThreadPriority; + +NSPR_API(PRThread*) PR_CreateThread(PRThreadType type, + void (PR_CALLBACK *start)(void *arg), + void *arg, + PRThreadPriority priority, + PRThreadScope scope, + PRThreadState state, + PRUint32 stackSize); +NSPR_API(PRStatus) PR_JoinThread(PRThread *thread); +NSPR_API(PRThread*) PR_GetCurrentThread(void); +# ifndef NO_NSPR_10_SUPPORT +# define PR_CurrentThread() PR_GetCurrentThread() /* for nspr1.0 compat. */ +# endif /* NO_NSPR_10_SUPPORT */ +NSPR_API(PRThreadPriority) PR_GetThreadPriority(const PRThread *thread); +NSPR_API(void) PR_SetThreadPriority(PRThread *thread, PRThreadPriority priority); + +typedef void (PR_CALLBACK *PRThreadPrivateDTOR)(void *priv); + +NSPR_API(PRStatus) PR_NewThreadPrivateIndex( + PRUintn *newIndex, PRThreadPrivateDTOR destructor); +NSPR_API(PRStatus) PR_SetThreadPrivate(PRUintn tpdIndex, void *priv); +NSPR_API(void*) PR_GetThreadPrivate(PRUintn tpdIndex); +NSPR_API(PRStatus) PR_Interrupt(PRThread *thread); +NSPR_API(void) PR_ClearInterrupt(void); +NSPR_API(void) PR_BlockInterrupt(void); +NSPR_API(void) PR_UnblockInterrupt(void); +NSPR_API(PRStatus) PR_Sleep(PRIntervalTime ticks); +NSPR_API(PRThreadScope) PR_GetThreadScope(const PRThread *thread); +NSPR_API(PRThreadType) PR_GetThreadType(const PRThread *thread); +NSPR_API(PRThreadState) PR_GetThreadState(const PRThread *thread); + +# ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP +# define PR_DestroyLock VBoxNsprPR_DestroyLock +# define PR_Lock VBoxNsprPR_Lock +# define PR_NewLock VBoxNsprPR_NewLock +# define PR_Unlock VBoxNsprPR_Unlock +# endif /* VBOX_WITH_XPCOM_NAMESPACE_CLEANUP */ + +typedef struct PRLock PRLock; + +NSPR_API(PRLock*) PR_NewLock(void); +NSPR_API(void) PR_DestroyLock(PRLock *lock); +NSPR_API(void) PR_Lock(PRLock *lock); +NSPR_API(PRStatus) PR_Unlock(PRLock *lock); + +# ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP +# define PR_NewCondVar VBoxNsprPR_NewCondVar +# define PR_DestroyCondVar VBoxNsprPR_DestroyCondVar +# define PR_WaitCondVar VBoxNsprPR_WaitCondVar +# define PR_NotifyCondVar VBoxNsprPR_NotifyCondVar +# define PR_NotifyAllCondVar VBoxNsprPR_NotifyAllCondVar +# endif /* VBOX_WITH_XPCOM_NAMESPACE_CLEANUP */ + +typedef struct PRCondVar PRCondVar; + +NSPR_API(PRCondVar*) PR_NewCondVar(PRLock *lock); +NSPR_API(void) PR_DestroyCondVar(PRCondVar *cvar); +NSPR_API(PRStatus) PR_WaitCondVar(PRCondVar *cvar, PRIntervalTime timeout); +NSPR_API(PRStatus) PR_NotifyCondVar(PRCondVar *cvar); +NSPR_API(PRStatus) PR_NotifyAllCondVar(PRCondVar *cvar); + +typedef struct PRCListStr PRCList; + +struct PRCListStr { + PRCList *next; + PRCList *prev; +}; + +# ifdef VBOX_WITH_XPCOM_NAMESPACE_CLEANUP +# define PL_DestroyEvent VBoxNsplPL_DestroyEvent +# define PL_HandleEvent VBoxNsplPL_HandleEvent +# define PL_InitEvent VBoxNsplPL_InitEvent +# define PL_CreateEventQueue VBoxNsplPL_CreateEventQueue +# define PL_CreateMonitoredEventQueue VBoxNsplPL_CreateMonitoredEventQueue +# define PL_CreateNativeEventQueue VBoxNsplPL_CreateNativeEventQueue +# define PL_DequeueEvent VBoxNsplPL_DequeueEvent +# define PL_DestroyEventQueue VBoxNsplPL_DestroyEventQueue +# define PL_EventAvailable VBoxNsplPL_EventAvailable +# define PL_EventLoop VBoxNsplPL_EventLoop +# define PL_GetEvent VBoxNsplPL_GetEvent +# define PL_GetEventOwner VBoxNsplPL_GetEventOwner +# define PL_GetEventQueueMonitor VBoxNsplPL_GetEventQueueMonitor +# define PL_GetEventQueueSelectFD VBoxNsplPL_GetEventQueueSelectFD +# define PL_MapEvents VBoxNsplPL_MapEvents +# define PL_PostEvent VBoxNsplPL_PostEvent +# define PL_PostSynchronousEvent VBoxNsplPL_PostSynchronousEvent +# define PL_ProcessEventsBeforeID VBoxNsplPL_ProcessEventsBeforeID +# define PL_ProcessPendingEvents VBoxNsplPL_ProcessPendingEvents +# define PL_RegisterEventIDFunc VBoxNsplPL_RegisterEventIDFunc +# define PL_RevokeEvents VBoxNsplPL_RevokeEvents +# define PL_UnregisterEventIDFunc VBoxNsplPL_UnregisterEventIDFunc +# define PL_WaitForEvent VBoxNsplPL_WaitForEvent +# define PL_IsQueueNative VBoxNsplPL_IsQueueNative +# define PL_IsQueueOnCurrentThread VBoxNsplPL_IsQueueOnCurrentThread +# define PL_FavorPerformanceHint VBoxNsplPL_FavorPerformanceHint +# endif /* VBOX_WITH_XPCOM_NAMESPACE_CLEANUP */ + +typedef struct PLEvent PLEvent; +typedef struct PLEventQueue PLEventQueue; + +PR_EXTERN(PLEventQueue*) +PL_CreateEventQueue(const char* name, PRThread* handlerThread); +PR_EXTERN(PLEventQueue *) + PL_CreateNativeEventQueue( + const char *name, + PRThread *handlerThread + ); +PR_EXTERN(PLEventQueue *) + PL_CreateMonitoredEventQueue( + const char *name, + PRThread *handlerThread + ); +PR_EXTERN(void) +PL_DestroyEventQueue(PLEventQueue* self); +PR_EXTERN(PRMonitor*) +PL_GetEventQueueMonitor(PLEventQueue* self); + +# define PL_ENTER_EVENT_QUEUE_MONITOR(queue) \ + PR_EnterMonitor(PL_GetEventQueueMonitor(queue)) + +# define PL_EXIT_EVENT_QUEUE_MONITOR(queue) \ + PR_ExitMonitor(PL_GetEventQueueMonitor(queue)) + +PR_EXTERN(PRStatus) PL_PostEvent(PLEventQueue* self, PLEvent* event); +PR_EXTERN(void*) PL_PostSynchronousEvent(PLEventQueue* self, PLEvent* event); +PR_EXTERN(PLEvent*) PL_GetEvent(PLEventQueue* self); +PR_EXTERN(PRBool) PL_EventAvailable(PLEventQueue* self); + +typedef void (PR_CALLBACK *PLEventFunProc)(PLEvent* event, void* data, PLEventQueue* queue); + +PR_EXTERN(void) PL_MapEvents(PLEventQueue* self, PLEventFunProc fun, void* data); +PR_EXTERN(void) PL_RevokeEvents(PLEventQueue* self, void* owner); +PR_EXTERN(void) PL_ProcessPendingEvents(PLEventQueue* self); +PR_EXTERN(PLEvent*) PL_WaitForEvent(PLEventQueue* self); +PR_EXTERN(void) PL_EventLoop(PLEventQueue* self); +PR_EXTERN(PRInt32) PL_GetEventQueueSelectFD(PLEventQueue* self); +PR_EXTERN(PRBool) PL_IsQueueOnCurrentThread( PLEventQueue *queue ); +PR_EXTERN(PRBool) PL_IsQueueNative(PLEventQueue *queue); + +typedef void* (PR_CALLBACK *PLHandleEventProc)(PLEvent* self); +typedef void (PR_CALLBACK *PLDestroyEventProc)(PLEvent* self); +PR_EXTERN(void) +PL_InitEvent(PLEvent* self, void* owner, + PLHandleEventProc handler, + PLDestroyEventProc destructor); +PR_EXTERN(void*) PL_GetEventOwner(PLEvent* self); +PR_EXTERN(void) PL_HandleEvent(PLEvent* self); +PR_EXTERN(void) PL_DestroyEvent(PLEvent* self); +PR_EXTERN(void) PL_DequeueEvent(PLEvent* self, PLEventQueue* queue); +PR_EXTERN(void) PL_FavorPerformanceHint(PRBool favorPerformanceOverEventStarvation, PRUint32 starvationDelay); + +struct PLEvent { + PRCList link; + PLHandleEventProc handler; + PLDestroyEventProc destructor; + void* owner; + void* synchronousResult; + PRLock* lock; + PRCondVar* condVar; + PRBool handled; +# ifdef PL_POST_TIMINGS + PRIntervalTime postTime; +# endif +# ifdef XP_UNIX + unsigned long id; +# endif /* XP_UNIX */ + /* other fields follow... */ +}; + +# if defined(XP_WIN) || defined(XP_OS2) + +PR_EXTERN(HWND) + PL_GetNativeEventReceiverWindow( + PLEventQueue *eqp + ); +# endif /* XP_WIN || XP_OS2 */ + +# ifdef XP_UNIX + +PR_EXTERN(PRInt32) +PL_ProcessEventsBeforeID(PLEventQueue *aSelf, unsigned long aID); + +typedef unsigned long (PR_CALLBACK *PLGetEventIDFunc)(void *aClosure); + +PR_EXTERN(void) +PL_RegisterEventIDFunc(PLEventQueue *aSelf, PLGetEventIDFunc aFunc, + void *aClosure); +PR_EXTERN(void) PL_UnregisterEventIDFunc(PLEventQueue *aSelf); + +# endif /* XP_UNIX */ + +/* Standard "it worked" return value */ +# define NS_OK 0 + +# define NS_ERROR_BASE ((nsresult) 0xC1F30000) + +/* Returned when an instance is not initialized */ +# define NS_ERROR_NOT_INITIALIZED (NS_ERROR_BASE + 1) + +/* Returned when an instance is already initialized */ +# define NS_ERROR_ALREADY_INITIALIZED (NS_ERROR_BASE + 2) + +/* Returned by a not implemented function */ +# define NS_ERROR_NOT_IMPLEMENTED ((nsresult) 0x80004001L) + +/* Returned when a given interface is not supported. */ +# define NS_NOINTERFACE ((nsresult) 0x80004002L) +# define NS_ERROR_NO_INTERFACE NS_NOINTERFACE + +# define NS_ERROR_INVALID_POINTER ((nsresult) 0x80004003L) +# define NS_ERROR_NULL_POINTER NS_ERROR_INVALID_POINTER + +/* Returned when a function aborts */ +# define NS_ERROR_ABORT ((nsresult) 0x80004004L) + +/* Returned when a function fails */ +# define NS_ERROR_FAILURE ((nsresult) 0x80004005L) + +/* Returned when an unexpected error occurs */ +# define NS_ERROR_UNEXPECTED ((nsresult) 0x8000ffffL) + +/* Returned when a memory allocation fails */ +# define NS_ERROR_OUT_OF_MEMORY ((nsresult) 0x8007000eL) + +/* Returned when an illegal value is passed */ +# define NS_ERROR_ILLEGAL_VALUE ((nsresult) 0x80070057L) +# define NS_ERROR_INVALID_ARG NS_ERROR_ILLEGAL_VALUE + +/* Returned when a class doesn't allow aggregation */ +# define NS_ERROR_NO_AGGREGATION ((nsresult) 0x80040110L) + +/* Returned when an operation can't complete due to an unavailable resource */ +# define NS_ERROR_NOT_AVAILABLE ((nsresult) 0x80040111L) + +/* Returned when a class is not registered */ +# define NS_ERROR_FACTORY_NOT_REGISTERED ((nsresult) 0x80040154L) + +/* Returned when a class cannot be registered, but may be tried again later */ +# define NS_ERROR_FACTORY_REGISTER_AGAIN ((nsresult) 0x80040155L) + +/* Returned when a dynamically loaded factory couldn't be found */ +# define NS_ERROR_FACTORY_NOT_LOADED ((nsresult) 0x800401f8L) + +/* Returned when a factory doesn't support signatures */ +# define NS_ERROR_FACTORY_NO_SIGNATURE_SUPPORT \ + (NS_ERROR_BASE + 0x101) + +/* Returned when a factory already is registered */ +# define NS_ERROR_FACTORY_EXISTS (NS_ERROR_BASE + 0x100) + +/** + * An "interface id" which can be used to uniquely identify a given + * interface. + * A "unique identifier". This is modeled after OSF DCE UUIDs. + */ + +struct nsID { + PRUint32 m0; + PRUint16 m1; + PRUint16 m2; + PRUint8 m3[8]; +}; + +typedef struct nsID nsID; +typedef nsID nsIID; +typedef nsID nsCID; + +# endif /* __cplusplus */ + +# define VBOX_WINAPI + +/* Various COM types defined by their XPCOM equivalent */ +typedef PRInt64 LONG64; +typedef PRInt32 LONG; +typedef PRInt32 DWORD; +typedef PRInt16 SHORT; +typedef PRUint64 ULONG64; +typedef PRUint32 ULONG; +typedef PRUint16 USHORT; + +typedef PRBool BOOL; + +# ifndef FALSE +# define FALSE 0 +# define TRUE 1 +# endif + +# define HRESULT nsresult +# define SUCCEEDED NS_SUCCEEDED +# define FAILED NS_FAILED + +/* OLE error codes */ +# define S_OK ((nsresult)NS_OK) +# define E_UNEXPECTED NS_ERROR_UNEXPECTED +# define E_NOTIMPL NS_ERROR_NOT_IMPLEMENTED +# define E_OUTOFMEMORY NS_ERROR_OUT_OF_MEMORY +# define E_INVALIDARG NS_ERROR_INVALID_ARG +# define E_NOINTERFACE NS_ERROR_NO_INTERFACE +# define E_POINTER NS_ERROR_NULL_POINTER +# define E_ABORT NS_ERROR_ABORT +# define E_FAIL NS_ERROR_FAILURE +/* Note: a better analog for E_ACCESSDENIED would probably be + * NS_ERROR_NOT_AVAILABLE, but we want binary compatibility for now. */ +# define E_ACCESSDENIED ((nsresult)0x80070005L) + +/* Basic vartype for COM compatibility. */ +typedef enum VARTYPE +{ + VT_I2 = 2, + VT_I4 = 3, + VT_BSTR = 8, + VT_DISPATCH = 9, + VT_BOOL = 11, + VT_UNKNOWN = 13, + VT_I1 = 16, + VT_UI1 = 17, + VT_UI2 = 18, + VT_UI4 = 19, + VT_I8 = 20, + VT_UI8 = 21, + VT_HRESULT = 25 +} VARTYPE; + +/* Basic safearray type for COM compatibility. */ +typedef struct SAFEARRAY +{ + void *pv; + ULONG c; +} SAFEARRAY; + +# define ComSafeArrayAsInParam(f) ((f) ? (f)->c : 0), ((f) ? (f)->pv : NULL) +# define ComSafeArrayAsOutParam(f) (&((f)->c)), (&((f)->pv)) +# define ComSafeArrayAsOutTypeParam(f,t) (&((f)->c)), (t**)(&((f)->pv)) +# define ComSafeArrayAsOutIfaceParam(f,t) (&((f)->c)), (t**)(&((f)->pv)) + +/* Glossing over differences between COM and XPCOM */ +# define IErrorInfo nsIException +# define IUnknown nsISupports +# define IDispatch nsISupports + +/* Make things as COM compatible as possible */ +# define interface struct +# ifdef CONST_VTABLE +# define CONST_VTBL const +# else /* !CONST_VTABLE */ +# define CONST_VTBL +# endif /* !CONST_VTABLE */ + +# ifndef __cplusplus + +/** @todo this first batch of forward declarations (and the corresponding ones + * generated for each interface) are 100% redundant, remove eventually. */ +interface nsISupports; /* forward declaration */ +interface nsIException; /* forward declaration */ +interface nsIStackFrame; /* forward declaration */ +interface nsIEventTarget;/* forward declaration */ +interface nsIEventQueue; /* forward declaration */ + +typedef interface nsISupports nsISupports; /* forward declaration */ +typedef interface nsIException nsIException; /* forward declaration */ +typedef interface nsIStackFrame nsIStackFrame; /* forward declaration */ +typedef interface nsIEventTarget nsIEventTarget;/* forward declaration */ +typedef interface nsIEventQueue nsIEventQueue; /* forward declaration */ + +/* starting interface: nsISupports */ +# define NS_ISUPPORTS_IID_STR "00000000-0000-0000-c000-000000000046" + +# define NS_ISUPPORTS_IID \ + { 0x00000000, 0x0000, 0x0000, \ + {0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46} } + +/** + * Reference count values + * + * This is the return type for AddRef() and Release() in nsISupports. + * IUnknown of COM returns an unsigned long from equivalent functions. + * The following ifdef exists to maintain binary compatibility with + * IUnknown. + */ +# if defined(XP_WIN) && PR_BYTES_PER_LONG == 4 +typedef unsigned long nsrefcnt; +# else +typedef PRUint32 nsrefcnt; +# endif + +/** + * Basic component object model interface. Objects which implement + * this interface support runtime interface discovery (QueryInterface) + * and a reference counted memory model (AddRef/Release). This is + * modelled after the win32 IUnknown API. + */ +# ifndef VBOX_WITH_GLUE +struct nsISupports_vtbl +{ + nsresult (*QueryInterface)(nsISupports *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(nsISupports *pThis); + nsrefcnt (*Release)(nsISupports *pThis); +}; +# else /* !VBOX_WITH_GLUE */ +struct nsISupportsVtbl +{ + nsresult (*QueryInterface)(nsISupports *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(nsISupports *pThis); + nsrefcnt (*Release)(nsISupports *pThis); +}; +# define nsISupports_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define nsISupports_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define nsISupports_Release(p) ((p)->lpVtbl->Release(p)) +# define IUnknown_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUnknown_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUnknown_Release(p) ((p)->lpVtbl->Release(p)) +# define IDispatch_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDispatch_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDispatch_Release(p) ((p)->lpVtbl->Release(p)) +# endif /* !VBOX_WITH_GLUE */ + +interface nsISupports +{ +# ifndef VBOX_WITH_GLUE + struct nsISupports_vtbl *vtbl; +# else /* !VBOX_WITH_GLUE */ + CONST_VTBL struct nsISupportsVtbl *lpVtbl; +# endif /* !VBOX_WITH_GLUE */ +}; + +/* starting interface: nsIException */ +# define NS_IEXCEPTION_IID_STR "f3a8d3b4-c424-4edc-8bf6-8974c983ba78" + +# define NS_IEXCEPTION_IID \ + {0xf3a8d3b4, 0xc424, 0x4edc, \ + { 0x8b, 0xf6, 0x89, 0x74, 0xc9, 0x83, 0xba, 0x78 }} + +# ifndef VBOX_WITH_GLUE +struct nsIException_vtbl +{ + /* Methods from the interface nsISupports */ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMessage)(nsIException *pThis, PRUnichar * *aMessage); + nsresult (*GetResult)(nsIException *pThis, nsresult *aResult); + nsresult (*GetName)(nsIException *pThis, PRUnichar * *aName); + nsresult (*GetFilename)(nsIException *pThis, PRUnichar * *aFilename); + nsresult (*GetLineNumber)(nsIException *pThis, PRUint32 *aLineNumber); + nsresult (*GetColumnNumber)(nsIException *pThis, PRUint32 *aColumnNumber); + nsresult (*GetLocation)(nsIException *pThis, nsIStackFrame * *aLocation); + nsresult (*GetInner)(nsIException *pThis, nsIException * *aInner); + nsresult (*GetData)(nsIException *pThis, nsISupports * *aData); + nsresult (*ToString)(nsIException *pThis, PRUnichar **_retval); +}; +# else /* !VBOX_WITH_GLUE */ +struct nsIExceptionVtbl +{ + nsresult (*QueryInterface)(nsIException *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(nsIException *pThis); + nsrefcnt (*Release)(nsIException *pThis); + + nsresult (*GetMessage)(nsIException *pThis, PRUnichar * *aMessage); + nsresult (*GetResult)(nsIException *pThis, nsresult *aResult); + nsresult (*GetName)(nsIException *pThis, PRUnichar * *aName); + nsresult (*GetFilename)(nsIException *pThis, PRUnichar * *aFilename); + nsresult (*GetLineNumber)(nsIException *pThis, PRUint32 *aLineNumber); + nsresult (*GetColumnNumber)(nsIException *pThis, PRUint32 *aColumnNumber); + nsresult (*GetLocation)(nsIException *pThis, nsIStackFrame * *aLocation); + nsresult (*GetInner)(nsIException *pThis, nsIException * *aInner); + nsresult (*GetData)(nsIException *pThis, nsISupports * *aData); + nsresult (*ToString)(nsIException *pThis, PRUnichar **_retval); +}; +# define nsIException_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define nsIException_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define nsIException_Release(p) ((p)->lpVtbl->Release(p)) +# define nsIException_get_Message(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define nsIException_GetMessage(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define nsIException_get_Result(p, aResult) ((p)->lpVtbl->GetResult(p, aResult)) +# define nsIException_GetResult(p, aResult) ((p)->lpVtbl->GetResult(p, aResult)) +# define nsIException_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define nsIException_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define nsIException_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define nsIException_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define nsIException_get_LineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define nsIException_GetLineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define nsIException_get_ColumnNumber(p, aColumnNumber) ((p)->lpVtbl->GetColumnNumber(p, aColumnNumber)) +# define nsIException_GetColumnNumber(p, aColumnNumber) ((p)->lpVtbl->GetColumnNumber(p, aColumnNumber)) +# define nsIException_get_Inner(p, aInner) ((p)->lpVtbl->GetInner(p, aInner)) +# define nsIException_GetInner(p, aInner) ((p)->lpVtbl->GetInner(p, aInner)) +# define nsIException_get_Data(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define nsIException_GetData(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define nsIException_ToString(p, retval) ((p)->lpVtbl->ToString(p, retval)) +# define IErrorInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IErrorInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IErrorInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define IErrorInfo_get_Message(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define IErrorInfo_GetMessage(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define IErrorInfo_get_Result(p, aResult) ((p)->lpVtbl->GetResult(p, aResult)) +# define IErrorInfo_GetResult(p, aResult) ((p)->lpVtbl->GetResult(p, aResult)) +# define IErrorInfo_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IErrorInfo_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IErrorInfo_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IErrorInfo_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IErrorInfo_get_LineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define IErrorInfo_GetLineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define IErrorInfo_get_ColumnNumber(p, aColumnNumber) ((p)->lpVtbl->GetColumnNumber(p, aColumnNumber)) +# define IErrorInfo_GetColumnNumber(p, aColumnNumber) ((p)->lpVtbl->GetColumnNumber(p, aColumnNumber)) +# define IErrorInfo_get_Inner(p, aInner) ((p)->lpVtbl->GetInner(p, aInner)) +# define IErrorInfo_GetInner(p, aInner) ((p)->lpVtbl->GetInner(p, aInner)) +# define IErrorInfo_get_Data(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define IErrorInfo_GetData(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define IErrorInfo_ToString(p, retval) ((p)->lpVtbl->ToString(p, retval)) +# endif /* !VBOX_WITH_GLUE */ + +interface nsIException +{ +# ifndef VBOX_WITH_GLUE + struct nsIException_vtbl *vtbl; +# else /* !VBOX_WITH_GLUE */ + CONST_VTBL struct nsIExceptionVtbl *lpVtbl; +# endif /* !VBOX_WITH_GLUE */ +}; + +/* starting interface: nsIStackFrame */ +# define NS_ISTACKFRAME_IID_STR "91d82105-7c62-4f8b-9779-154277c0ee90" + +# define NS_ISTACKFRAME_IID \ + {0x91d82105, 0x7c62, 0x4f8b, \ + { 0x97, 0x79, 0x15, 0x42, 0x77, 0xc0, 0xee, 0x90 }} + +# ifndef VBOX_WITH_GLUE +struct nsIStackFrame_vtbl +{ + /* Methods from the interface nsISupports */ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetLanguage)(nsIStackFrame *pThis, PRUint32 *aLanguage); + nsresult (*GetLanguageName)(nsIStackFrame *pThis, PRUnichar * *aLanguageName); + nsresult (*GetFilename)(nsIStackFrame *pThis, PRUnichar * *aFilename); + nsresult (*GetName)(nsIStackFrame *pThis, PRUnichar * *aName); + nsresult (*GetLineNumber)(nsIStackFrame *pThis, PRInt32 *aLineNumber); + nsresult (*GetSourceLine)(nsIStackFrame *pThis, PRUnichar * *aSourceLine); + nsresult (*GetCaller)(nsIStackFrame *pThis, nsIStackFrame * *aCaller); + nsresult (*ToString)(nsIStackFrame *pThis, PRUnichar **_retval); +}; +# else /* !VBOX_WITH_GLUE */ +struct nsIStackFrameVtbl +{ + nsresult (*QueryInterface)(nsIStackFrame *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(nsIStackFrame *pThis); + nsrefcnt (*Release)(nsIStackFrame *pThis); + + nsresult (*GetLanguage)(nsIStackFrame *pThis, PRUint32 *aLanguage); + nsresult (*GetLanguageName)(nsIStackFrame *pThis, PRUnichar * *aLanguageName); + nsresult (*GetFilename)(nsIStackFrame *pThis, PRUnichar * *aFilename); + nsresult (*GetName)(nsIStackFrame *pThis, PRUnichar * *aName); + nsresult (*GetLineNumber)(nsIStackFrame *pThis, PRInt32 *aLineNumber); + nsresult (*GetSourceLine)(nsIStackFrame *pThis, PRUnichar * *aSourceLine); + nsresult (*GetCaller)(nsIStackFrame *pThis, nsIStackFrame * *aCaller); + nsresult (*ToString)(nsIStackFrame *pThis, PRUnichar **_retval); +}; +# define nsIStackFrame_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define nsIStackFrame_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define nsIStackFrame_Release(p) ((p)->lpVtbl->Release(p)) +# define nsIStackFrame_get_Language(p, aLanguage) ((p)->lpVtbl->GetLanguge(p, aLanguage)) +# define nsIStackFrame_GetLanguage(p, aLanguage) ((p)->lpVtbl->GetLanguge(p, aLanguage)) +# define nsIStackFrame_get_LanguageName(p, aLanguageName) ((p)->lpVtbl->GetLanguageName(p, aLanguageName)) +# define nsIStackFrame_GetLanguageName(p, aLanguageName) ((p)->lpVtbl->GetLanguageName(p, aLanguageName)) +# define nsIStackFrame_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define nsIStackFrame_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define nsIStackFrame_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define nsIStackFrame_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define nsIStackFrame_get_LineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define nsIStackFrame_GetLineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define nsIStackFrame_get_SourceLine(p, aSourceLine) ((p)->lpVtbl->GetSourceLine(p, aSourceLine)) +# define nsIStackFrame_GetSourceLine(p, aSourceLine) ((p)->lpVtbl->GetSourceLine(p, aSourceLine)) +# define nsIStackFrame_get_Caller(p, aCaller) ((p)->lpVtbl->GetCaller(p, aCaller)) +# define nsIStackFrame_GetCaller(p, aCaller) ((p)->lpVtbl->GetCaller(p, aCaller)) +# define nsIStackFrame_ToString(p, retval) ((p)->lpVtbl->ToString(p, retval)) +# endif /* !VBOX_WITH_GLUE */ + +interface nsIStackFrame +{ +# ifndef VBOX_WITH_GLUE + struct nsIStackFrame_vtbl *vtbl; +# else /* !VBOX_WITH_GLUE */ + CONST_VTBL struct nsIStackFrameVtbl *lpVtbl; +# endif /* !VBOX_WITH_GLUE */ +}; + +/* starting interface: nsIEventTarget */ +# define NS_IEVENTTARGET_IID_STR "ea99ad5b-cc67-4efb-97c9-2ef620a59f2a" + +# define NS_IEVENTTARGET_IID \ + {0xea99ad5b, 0xcc67, 0x4efb, \ + { 0x97, 0xc9, 0x2e, 0xf6, 0x20, 0xa5, 0x9f, 0x2a }} + +# ifndef VBOX_WITH_GLUE +struct nsIEventTarget_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*PostEvent)(nsIEventTarget *pThis, PLEvent * aEvent); + nsresult (*IsOnCurrentThread)(nsIEventTarget *pThis, PRBool *_retval); +}; +# else /* !VBOX_WITH_GLUE */ +struct nsIEventTargetVtbl +{ + nsresult (*QueryInterface)(nsIEventTarget *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(nsIEventTarget *pThis); + nsrefcnt (*Release)(nsIEventTarget *pThis); + + nsresult (*PostEvent)(nsIEventTarget *pThis, PLEvent * aEvent); + nsresult (*IsOnCurrentThread)(nsIEventTarget *pThis, PRBool *_retval); +}; +# define nsIEventTarget_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define nsIEventTarget_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define nsIEventTarget_Release(p) ((p)->lpVtbl->Release(p)) +# define nsIEventTarget_PostEvent(p, aEvent) ((p)->lpVtbl->PostEvent(p, aEvent)) +# define nsIEventTarget_IsOnCurrentThread(p, retval) ((p)->lpVtbl->IsOnCurrentThread(p, retval)) +# endif /* !VBOX_WITH_GLUE */ + +interface nsIEventTarget +{ +# ifndef VBOX_WITH_GLUE + struct nsIEventTarget_vtbl *vtbl; +# else /* !VBOX_WITH_GLUE */ + CONST_VTBL struct nsIEventTargetVtbl *lpVtbl; +# endif /* !VBOX_WITH_GLUE */ +}; + +/* starting interface: nsIEventQueue */ +# define NS_IEVENTQUEUE_IID_STR "176afb41-00a4-11d3-9f2a-00400553eef0" + +# define NS_IEVENTQUEUE_IID \ + {0x176afb41, 0x00a4, 0x11d3, \ + { 0x9f, 0x2a, 0x00, 0x40, 0x05, 0x53, 0xee, 0xf0 }} + +# ifndef VBOX_WITH_GLUE +struct nsIEventQueue_vtbl +{ + struct nsIEventTarget_vtbl nsieventtarget; + + nsresult (*InitEvent)(nsIEventQueue *pThis, PLEvent * aEvent, void * owner, PLHandleEventProc handler, PLDestroyEventProc destructor); + nsresult (*PostSynchronousEvent)(nsIEventQueue *pThis, PLEvent * aEvent, void * *aResult); + nsresult (*PendingEvents)(nsIEventQueue *pThis, PRBool *_retval); + nsresult (*ProcessPendingEvents)(nsIEventQueue *pThis); + nsresult (*EventLoop)(nsIEventQueue *pThis); + nsresult (*EventAvailable)(nsIEventQueue *pThis, PRBool *aResult); + nsresult (*GetEvent)(nsIEventQueue *pThis, PLEvent * *_retval); + nsresult (*HandleEvent)(nsIEventQueue *pThis, PLEvent * aEvent); + nsresult (*WaitForEvent)(nsIEventQueue *pThis, PLEvent * *_retval); + PRInt32 (*GetEventQueueSelectFD)(nsIEventQueue *pThis); + nsresult (*Init)(nsIEventQueue *pThis, PRBool aNative); + nsresult (*InitFromPRThread)(nsIEventQueue *pThis, PRThread * thread, PRBool aNative); + nsresult (*InitFromPLQueue)(nsIEventQueue *pThis, PLEventQueue * aQueue); + nsresult (*EnterMonitor)(nsIEventQueue *pThis); + nsresult (*ExitMonitor)(nsIEventQueue *pThis); + nsresult (*RevokeEvents)(nsIEventQueue *pThis, void * owner); + nsresult (*GetPLEventQueue)(nsIEventQueue *pThis, PLEventQueue * *_retval); + nsresult (*IsQueueNative)(nsIEventQueue *pThis, PRBool *_retval); + nsresult (*StopAcceptingEvents)(nsIEventQueue *pThis); +}; +# else /* !VBOX_WITH_GLUE */ +struct nsIEventQueueVtbl +{ + nsresult (*QueryInterface)(nsIEventQueue *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(nsIEventQueue *pThis); + nsrefcnt (*Release)(nsIEventQueue *pThis); + + nsresult (*PostEvent)(nsIEventQueue *pThis, PLEvent * aEvent); + nsresult (*IsOnCurrentThread)(nsIEventQueue *pThis, PRBool *_retval); + + nsresult (*InitEvent)(nsIEventQueue *pThis, PLEvent * aEvent, void * owner, PLHandleEventProc handler, PLDestroyEventProc destructor); + nsresult (*PostSynchronousEvent)(nsIEventQueue *pThis, PLEvent * aEvent, void * *aResult); + nsresult (*PendingEvents)(nsIEventQueue *pThis, PRBool *_retval); + nsresult (*ProcessPendingEvents)(nsIEventQueue *pThis); + nsresult (*EventLoop)(nsIEventQueue *pThis); + nsresult (*EventAvailable)(nsIEventQueue *pThis, PRBool *aResult); + nsresult (*GetEvent)(nsIEventQueue *pThis, PLEvent * *_retval); + nsresult (*HandleEvent)(nsIEventQueue *pThis, PLEvent * aEvent); + nsresult (*WaitForEvent)(nsIEventQueue *pThis, PLEvent * *_retval); + PRInt32 (*GetEventQueueSelectFD)(nsIEventQueue *pThis); + nsresult (*Init)(nsIEventQueue *pThis, PRBool aNative); + nsresult (*InitFromPRThread)(nsIEventQueue *pThis, PRThread * thread, PRBool aNative); + nsresult (*InitFromPLQueue)(nsIEventQueue *pThis, PLEventQueue * aQueue); + nsresult (*EnterMonitor)(nsIEventQueue *pThis); + nsresult (*ExitMonitor)(nsIEventQueue *pThis); + nsresult (*RevokeEvents)(nsIEventQueue *pThis, void * owner); + nsresult (*GetPLEventQueue)(nsIEventQueue *pThis, PLEventQueue * *_retval); + nsresult (*IsQueueNative)(nsIEventQueue *pThis, PRBool *_retval); + nsresult (*StopAcceptingEvents)(nsIEventQueue *pThis); +}; +# define nsIEventQueue_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define nsIEventQueue_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define nsIEventQueue_Release(p) ((p)->lpVtbl->Release(p)) +# define nsIEventQueue_PostEvent(p, aEvent) ((p)->lpVtbl->PostEvent(p, aEvent)) +# define nsIEventQueue_IsOnCurrentThread(p, retval) ((p)->lpVtbl->IsOnCurrentThread(p, retval)) +# define nsIEventQueue_InitEvent(p, aEvent, owner, handler, destructor) ((p)->lpVtbl->InitEvent(p, aEvent, owner, handler, destructor)) +# define nsIEventQueue_PostSynchronousEvent(p, aEvent, aResult) ((p)->lpVtbl->PostSynchronousEvent(p, aEvent, aResult)) +# define nsIEventQueue_ProcessPendingEvents(p) ((p)->lpVtbl->ProcessPendingEvents(p)) +# define nsIEventQueue_EventLoop(p) ((p)->lpVtbl->EventLoop(p)) +# define nsIEventQueue_EventAvailable(p, aResult) ((p)->lpVtbl->EventAvailable(p, aResult)) +# define nsIEventQueue_get_Event(p, aEvent) ((p)->lpVtbl->GetEvent(p, aEvent)) +# define nsIEventQueue_GetEvent(p, aEvent) ((p)->lpVtbl->GetEvent(p, aEvent)) +# define nsIEventQueue_HandleEvent(p, aEvent) ((p)->lpVtbl->HandleEvent(p, aEvent)) +# define nsIEventQueue_WaitForEvent(p, aEvent) ((p)->lpVtbl->WaitForEvent(p, aEvent)) +# define nsIEventQueue_GetEventQueueSelectFD(p) ((p)->lpVtbl->GetEventQueueSelectFD(p)) +# define nsIEventQueue_Init(p, aNative) ((p)->lpVtbl->Init(p, aNative)) +# define nsIEventQueue_InitFromPLQueue(p, aQueue) ((p)->lpVtbl->InitFromPLQueue(p, aQueue)) +# define nsIEventQueue_EnterMonitor(p) ((p)->lpVtbl->EnterMonitor(p)) +# define nsIEventQueue_ExitMonitor(p) ((p)->lpVtbl->ExitMonitor(p)) +# define nsIEventQueue_RevokeEvents(p, owner) ((p)->lpVtbl->RevokeEvents(p, owner)) +# define nsIEventQueue_GetPLEventQueue(p, retval) ((p)->lpVtbl->GetPLEventQueue(p, retval)) +# define nsIEventQueue_IsQueueNative(p, retval) ((p)->lpVtbl->IsQueueNative(p, retval)) +# define nsIEventQueue_StopAcceptingEvents(p) ((p)->lpVtbl->StopAcceptingEvents(p)) +# endif /* !VBOX_WITH_GLUE */ + +interface nsIEventQueue +{ +# ifndef VBOX_WITH_GLUE + struct nsIEventQueue_vtbl *vtbl; +# else /* !VBOX_WITH_GLUE */ + CONST_VTBL struct nsIEventQueueVtbl *lpVtbl; +# endif /* !VBOX_WITH_GLUE */ +}; + + +# define VBOX_E_OBJECT_NOT_FOUND ((HRESULT)0x80BB0001) +# define VBOX_E_INVALID_VM_STATE ((HRESULT)0x80BB0002) +# define VBOX_E_VM_ERROR ((HRESULT)0x80BB0003) +# define VBOX_E_FILE_ERROR ((HRESULT)0x80BB0004) +# define VBOX_E_IPRT_ERROR ((HRESULT)0x80BB0005) +# define VBOX_E_PDM_ERROR ((HRESULT)0x80BB0006) +# define VBOX_E_INVALID_OBJECT_STATE ((HRESULT)0x80BB0007) +# define VBOX_E_HOST_ERROR ((HRESULT)0x80BB0008) +# define VBOX_E_NOT_SUPPORTED ((HRESULT)0x80BB0009) +# define VBOX_E_XML_ERROR ((HRESULT)0x80BB000A) +# define VBOX_E_INVALID_SESSION_STATE ((HRESULT)0x80BB000B) +# define VBOX_E_OBJECT_IN_USE ((HRESULT)0x80BB000C) +# define VBOX_E_PASSWORD_INCORRECT ((HRESULT)0x80BB000D) +# define VBOX_E_MAXIMUM_REACHED ((HRESULT)0x80BB000E) +# define VBOX_E_GSTCTL_GUEST_ERROR ((HRESULT)0x80BB000F) +# define VBOX_E_TIMEOUT ((HRESULT)0x80BB0010) + + +interface IVirtualBoxErrorInfo; +interface INATNetwork; +interface ICloudNetwork; +interface IDHCPServer; +interface IDHCPConfig; +interface IDHCPGlobalConfig; +interface IDHCPGroupCondition; +interface IDHCPGroupConfig; +interface IDHCPIndividualConfig; +interface IVirtualBox; +interface IVFSExplorer; +interface ICertificate; +interface IAppliance; +interface IVirtualSystemDescription; +interface IUnattended; +interface IGraphicsAdapter; +interface IBIOSSettings; +interface IRecordingScreenSettings; +interface IRecordingSettings; +interface IPCIAddress; +interface IPCIDeviceAttachment; +interface IMachine; +interface IEmulatedUSB; +interface IVRDEServerInfo; +interface IConsole; +interface IHostNetworkInterface; +interface IHostVideoInputDevice; +interface IHostUpdate; +interface IHost; +interface ISystemProperties; +interface IGuestOSType; +interface IAdditionsFacility; +interface IDnDBase; +interface IDnDSource; +interface IGuestDnDSource; +interface IDnDTarget; +interface IGuestDnDTarget; +interface IGuestSession; +interface IProcess; +interface IGuestProcess; +interface IDirectory; +interface IGuestDirectory; +interface IFile; +interface IGuestFile; +interface IFsObjInfo; +interface IGuestFsObjInfo; +interface IGuest; +interface IProgress; +interface ISnapshot; +interface IMediumAttachment; +interface IMedium; +interface IMediumFormat; +interface IDataStream; +interface IMediumIO; +interface IToken; +interface IKeyboard; +interface IMousePointerShape; +interface IMouse; +interface IDisplaySourceBitmap; +interface IFramebuffer; +interface IFramebufferOverlay; +interface IGuestScreenInfo; +interface IDisplay; +interface INetworkAdapter; +interface ISerialPort; +interface IParallelPort; +interface IMachineDebugger; +interface IUSBDeviceFilters; +interface IUSBController; +interface IUSBDevice; +interface IUSBDeviceFilter; +interface IHostUSBDevice; +interface IHostUSBDeviceFilter; +interface IUSBProxyBackend; +interface IAudioAdapter; +interface IVRDEServer; +interface ISharedFolder; +interface ISession; +interface IStorageController; +interface IPerformanceMetric; +interface IPerformanceCollector; +interface INATEngine; +interface IExtPackPlugIn; +interface IExtPackBase; +interface IExtPack; +interface IExtPackFile; +interface IExtPackManager; +interface IBandwidthGroup; +interface IBandwidthControl; +interface IVirtualBoxClient; +interface IEventSource; +interface IEventListener; +interface IEvent; +interface IReusableEvent; +interface IMachineEvent; +interface IMachineStateChangedEvent; +interface IMachineDataChangedEvent; +interface IMediumRegisteredEvent; +interface IMediumConfigChangedEvent; +interface IMachineRegisteredEvent; +interface ISessionStateChangedEvent; +interface IGuestPropertyChangedEvent; +interface ISnapshotEvent; +interface ISnapshotTakenEvent; +interface ISnapshotDeletedEvent; +interface ISnapshotRestoredEvent; +interface ISnapshotChangedEvent; +interface IMousePointerShapeChangedEvent; +interface IMouseCapabilityChangedEvent; +interface IKeyboardLedsChangedEvent; +interface IStateChangedEvent; +interface IAdditionsStateChangedEvent; +interface INetworkAdapterChangedEvent; +interface IAudioAdapterChangedEvent; +interface ISerialPortChangedEvent; +interface IParallelPortChangedEvent; +interface IStorageControllerChangedEvent; +interface IMediumChangedEvent; +interface IClipboardModeChangedEvent; +interface IClipboardFileTransferModeChangedEvent; +interface IDnDModeChangedEvent; +interface ICPUChangedEvent; +interface ICPUExecutionCapChangedEvent; +interface IGuestKeyboardEvent; +interface IGuestMouseEvent; +interface IGuestMultiTouchEvent; +interface IGuestSessionEvent; +interface IGuestSessionStateChangedEvent; +interface IGuestSessionRegisteredEvent; +interface IGuestProcessEvent; +interface IGuestProcessRegisteredEvent; +interface IGuestProcessStateChangedEvent; +interface IGuestProcessIOEvent; +interface IGuestProcessInputNotifyEvent; +interface IGuestProcessOutputEvent; +interface IGuestFileEvent; +interface IGuestFileRegisteredEvent; +interface IGuestFileStateChangedEvent; +interface IGuestFileIOEvent; +interface IGuestFileOffsetChangedEvent; +interface IGuestFileSizeChangedEvent; +interface IGuestFileReadEvent; +interface IGuestFileWriteEvent; +interface IVRDEServerChangedEvent; +interface IVRDEServerInfoChangedEvent; +interface IRecordingChangedEvent; +interface IUSBControllerChangedEvent; +interface IUSBDeviceStateChangedEvent; +interface ISharedFolderChangedEvent; +interface IRuntimeErrorEvent; +interface IEventSourceChangedEvent; +interface IExtraDataChangedEvent; +interface IVetoEvent; +interface IExtraDataCanChangeEvent; +interface ICanShowWindowEvent; +interface IShowWindowEvent; +interface INATRedirectEvent; +interface IHostPCIDevicePlugEvent; +interface IVBoxSVCAvailabilityChangedEvent; +interface IBandwidthGroupChangedEvent; +interface IGuestMonitorChangedEvent; +interface IGuestUserStateChangedEvent; +interface IStorageDeviceChangedEvent; +interface INATNetworkChangedEvent; +interface INATNetworkStartStopEvent; +interface INATNetworkAlterEvent; +interface INATNetworkCreationDeletionEvent; +interface INATNetworkSettingEvent; +interface INATNetworkPortForwardEvent; +interface IHostNameResolutionConfigurationChangeEvent; +interface IProgressEvent; +interface IProgressPercentageChangedEvent; +interface IProgressTaskCompletedEvent; +interface ICursorPositionChangedEvent; +interface IGuestAdditionsStatusChangedEvent; +interface IGuestMonitorInfoChangedEvent; +interface IStringArray; +interface IFormValue; +interface IBooleanFormValue; +interface IRangedIntegerFormValue; +interface IStringFormValue; +interface IChoiceFormValue; +interface IForm; +interface IVirtualSystemDescriptionForm; +interface ICloudNetworkGatewayInfo; +interface ICloudClient; +interface ICloudProfile; +interface ICloudProvider; +interface ICloudProviderManager; + +typedef interface IVirtualBoxErrorInfo IVirtualBoxErrorInfo; +typedef interface INATNetwork INATNetwork; +typedef interface ICloudNetwork ICloudNetwork; +typedef interface IDHCPServer IDHCPServer; +typedef interface IDHCPConfig IDHCPConfig; +typedef interface IDHCPGlobalConfig IDHCPGlobalConfig; +typedef interface IDHCPGroupCondition IDHCPGroupCondition; +typedef interface IDHCPGroupConfig IDHCPGroupConfig; +typedef interface IDHCPIndividualConfig IDHCPIndividualConfig; +typedef interface IVirtualBox IVirtualBox; +typedef interface IVFSExplorer IVFSExplorer; +typedef interface ICertificate ICertificate; +typedef interface IAppliance IAppliance; +typedef interface IVirtualSystemDescription IVirtualSystemDescription; +typedef interface IUnattended IUnattended; +typedef interface IGraphicsAdapter IGraphicsAdapter; +typedef interface IBIOSSettings IBIOSSettings; +typedef interface IRecordingScreenSettings IRecordingScreenSettings; +typedef interface IRecordingSettings IRecordingSettings; +typedef interface IPCIAddress IPCIAddress; +typedef interface IPCIDeviceAttachment IPCIDeviceAttachment; +typedef interface IMachine IMachine; +typedef interface IEmulatedUSB IEmulatedUSB; +typedef interface IVRDEServerInfo IVRDEServerInfo; +typedef interface IConsole IConsole; +typedef interface IHostNetworkInterface IHostNetworkInterface; +typedef interface IHostVideoInputDevice IHostVideoInputDevice; +typedef interface IHostUpdate IHostUpdate; +typedef interface IHost IHost; +typedef interface ISystemProperties ISystemProperties; +typedef interface IGuestOSType IGuestOSType; +typedef interface IAdditionsFacility IAdditionsFacility; +typedef interface IDnDBase IDnDBase; +typedef interface IDnDSource IDnDSource; +typedef interface IGuestDnDSource IGuestDnDSource; +typedef interface IDnDTarget IDnDTarget; +typedef interface IGuestDnDTarget IGuestDnDTarget; +typedef interface IGuestSession IGuestSession; +typedef interface IProcess IProcess; +typedef interface IGuestProcess IGuestProcess; +typedef interface IDirectory IDirectory; +typedef interface IGuestDirectory IGuestDirectory; +typedef interface IFile IFile; +typedef interface IGuestFile IGuestFile; +typedef interface IFsObjInfo IFsObjInfo; +typedef interface IGuestFsObjInfo IGuestFsObjInfo; +typedef interface IGuest IGuest; +typedef interface IProgress IProgress; +typedef interface ISnapshot ISnapshot; +typedef interface IMediumAttachment IMediumAttachment; +typedef interface IMedium IMedium; +typedef interface IMediumFormat IMediumFormat; +typedef interface IDataStream IDataStream; +typedef interface IMediumIO IMediumIO; +typedef interface IToken IToken; +typedef interface IKeyboard IKeyboard; +typedef interface IMousePointerShape IMousePointerShape; +typedef interface IMouse IMouse; +typedef interface IDisplaySourceBitmap IDisplaySourceBitmap; +typedef interface IFramebuffer IFramebuffer; +typedef interface IFramebufferOverlay IFramebufferOverlay; +typedef interface IGuestScreenInfo IGuestScreenInfo; +typedef interface IDisplay IDisplay; +typedef interface INetworkAdapter INetworkAdapter; +typedef interface ISerialPort ISerialPort; +typedef interface IParallelPort IParallelPort; +typedef interface IMachineDebugger IMachineDebugger; +typedef interface IUSBDeviceFilters IUSBDeviceFilters; +typedef interface IUSBController IUSBController; +typedef interface IUSBDevice IUSBDevice; +typedef interface IUSBDeviceFilter IUSBDeviceFilter; +typedef interface IHostUSBDevice IHostUSBDevice; +typedef interface IHostUSBDeviceFilter IHostUSBDeviceFilter; +typedef interface IUSBProxyBackend IUSBProxyBackend; +typedef interface IAudioAdapter IAudioAdapter; +typedef interface IVRDEServer IVRDEServer; +typedef interface ISharedFolder ISharedFolder; +typedef interface ISession ISession; +typedef interface IStorageController IStorageController; +typedef interface IPerformanceMetric IPerformanceMetric; +typedef interface IPerformanceCollector IPerformanceCollector; +typedef interface INATEngine INATEngine; +typedef interface IExtPackPlugIn IExtPackPlugIn; +typedef interface IExtPackBase IExtPackBase; +typedef interface IExtPack IExtPack; +typedef interface IExtPackFile IExtPackFile; +typedef interface IExtPackManager IExtPackManager; +typedef interface IBandwidthGroup IBandwidthGroup; +typedef interface IBandwidthControl IBandwidthControl; +typedef interface IVirtualBoxClient IVirtualBoxClient; +typedef interface IEventSource IEventSource; +typedef interface IEventListener IEventListener; +typedef interface IEvent IEvent; +typedef interface IReusableEvent IReusableEvent; +typedef interface IMachineEvent IMachineEvent; +typedef interface IMachineStateChangedEvent IMachineStateChangedEvent; +typedef interface IMachineDataChangedEvent IMachineDataChangedEvent; +typedef interface IMediumRegisteredEvent IMediumRegisteredEvent; +typedef interface IMediumConfigChangedEvent IMediumConfigChangedEvent; +typedef interface IMachineRegisteredEvent IMachineRegisteredEvent; +typedef interface ISessionStateChangedEvent ISessionStateChangedEvent; +typedef interface IGuestPropertyChangedEvent IGuestPropertyChangedEvent; +typedef interface ISnapshotEvent ISnapshotEvent; +typedef interface ISnapshotTakenEvent ISnapshotTakenEvent; +typedef interface ISnapshotDeletedEvent ISnapshotDeletedEvent; +typedef interface ISnapshotRestoredEvent ISnapshotRestoredEvent; +typedef interface ISnapshotChangedEvent ISnapshotChangedEvent; +typedef interface IMousePointerShapeChangedEvent IMousePointerShapeChangedEvent; +typedef interface IMouseCapabilityChangedEvent IMouseCapabilityChangedEvent; +typedef interface IKeyboardLedsChangedEvent IKeyboardLedsChangedEvent; +typedef interface IStateChangedEvent IStateChangedEvent; +typedef interface IAdditionsStateChangedEvent IAdditionsStateChangedEvent; +typedef interface INetworkAdapterChangedEvent INetworkAdapterChangedEvent; +typedef interface IAudioAdapterChangedEvent IAudioAdapterChangedEvent; +typedef interface ISerialPortChangedEvent ISerialPortChangedEvent; +typedef interface IParallelPortChangedEvent IParallelPortChangedEvent; +typedef interface IStorageControllerChangedEvent IStorageControllerChangedEvent; +typedef interface IMediumChangedEvent IMediumChangedEvent; +typedef interface IClipboardModeChangedEvent IClipboardModeChangedEvent; +typedef interface IClipboardFileTransferModeChangedEvent IClipboardFileTransferModeChangedEvent; +typedef interface IDnDModeChangedEvent IDnDModeChangedEvent; +typedef interface ICPUChangedEvent ICPUChangedEvent; +typedef interface ICPUExecutionCapChangedEvent ICPUExecutionCapChangedEvent; +typedef interface IGuestKeyboardEvent IGuestKeyboardEvent; +typedef interface IGuestMouseEvent IGuestMouseEvent; +typedef interface IGuestMultiTouchEvent IGuestMultiTouchEvent; +typedef interface IGuestSessionEvent IGuestSessionEvent; +typedef interface IGuestSessionStateChangedEvent IGuestSessionStateChangedEvent; +typedef interface IGuestSessionRegisteredEvent IGuestSessionRegisteredEvent; +typedef interface IGuestProcessEvent IGuestProcessEvent; +typedef interface IGuestProcessRegisteredEvent IGuestProcessRegisteredEvent; +typedef interface IGuestProcessStateChangedEvent IGuestProcessStateChangedEvent; +typedef interface IGuestProcessIOEvent IGuestProcessIOEvent; +typedef interface IGuestProcessInputNotifyEvent IGuestProcessInputNotifyEvent; +typedef interface IGuestProcessOutputEvent IGuestProcessOutputEvent; +typedef interface IGuestFileEvent IGuestFileEvent; +typedef interface IGuestFileRegisteredEvent IGuestFileRegisteredEvent; +typedef interface IGuestFileStateChangedEvent IGuestFileStateChangedEvent; +typedef interface IGuestFileIOEvent IGuestFileIOEvent; +typedef interface IGuestFileOffsetChangedEvent IGuestFileOffsetChangedEvent; +typedef interface IGuestFileSizeChangedEvent IGuestFileSizeChangedEvent; +typedef interface IGuestFileReadEvent IGuestFileReadEvent; +typedef interface IGuestFileWriteEvent IGuestFileWriteEvent; +typedef interface IVRDEServerChangedEvent IVRDEServerChangedEvent; +typedef interface IVRDEServerInfoChangedEvent IVRDEServerInfoChangedEvent; +typedef interface IRecordingChangedEvent IRecordingChangedEvent; +typedef interface IUSBControllerChangedEvent IUSBControllerChangedEvent; +typedef interface IUSBDeviceStateChangedEvent IUSBDeviceStateChangedEvent; +typedef interface ISharedFolderChangedEvent ISharedFolderChangedEvent; +typedef interface IRuntimeErrorEvent IRuntimeErrorEvent; +typedef interface IEventSourceChangedEvent IEventSourceChangedEvent; +typedef interface IExtraDataChangedEvent IExtraDataChangedEvent; +typedef interface IVetoEvent IVetoEvent; +typedef interface IExtraDataCanChangeEvent IExtraDataCanChangeEvent; +typedef interface ICanShowWindowEvent ICanShowWindowEvent; +typedef interface IShowWindowEvent IShowWindowEvent; +typedef interface INATRedirectEvent INATRedirectEvent; +typedef interface IHostPCIDevicePlugEvent IHostPCIDevicePlugEvent; +typedef interface IVBoxSVCAvailabilityChangedEvent IVBoxSVCAvailabilityChangedEvent; +typedef interface IBandwidthGroupChangedEvent IBandwidthGroupChangedEvent; +typedef interface IGuestMonitorChangedEvent IGuestMonitorChangedEvent; +typedef interface IGuestUserStateChangedEvent IGuestUserStateChangedEvent; +typedef interface IStorageDeviceChangedEvent IStorageDeviceChangedEvent; +typedef interface INATNetworkChangedEvent INATNetworkChangedEvent; +typedef interface INATNetworkStartStopEvent INATNetworkStartStopEvent; +typedef interface INATNetworkAlterEvent INATNetworkAlterEvent; +typedef interface INATNetworkCreationDeletionEvent INATNetworkCreationDeletionEvent; +typedef interface INATNetworkSettingEvent INATNetworkSettingEvent; +typedef interface INATNetworkPortForwardEvent INATNetworkPortForwardEvent; +typedef interface IHostNameResolutionConfigurationChangeEvent IHostNameResolutionConfigurationChangeEvent; +typedef interface IProgressEvent IProgressEvent; +typedef interface IProgressPercentageChangedEvent IProgressPercentageChangedEvent; +typedef interface IProgressTaskCompletedEvent IProgressTaskCompletedEvent; +typedef interface ICursorPositionChangedEvent ICursorPositionChangedEvent; +typedef interface IGuestAdditionsStatusChangedEvent IGuestAdditionsStatusChangedEvent; +typedef interface IGuestMonitorInfoChangedEvent IGuestMonitorInfoChangedEvent; +typedef interface IStringArray IStringArray; +typedef interface IFormValue IFormValue; +typedef interface IBooleanFormValue IBooleanFormValue; +typedef interface IRangedIntegerFormValue IRangedIntegerFormValue; +typedef interface IStringFormValue IStringFormValue; +typedef interface IChoiceFormValue IChoiceFormValue; +typedef interface IForm IForm; +typedef interface IVirtualSystemDescriptionForm IVirtualSystemDescriptionForm; +typedef interface ICloudNetworkGatewayInfo ICloudNetworkGatewayInfo; +typedef interface ICloudClient ICloudClient; +typedef interface ICloudProfile ICloudProfile; +typedef interface ICloudProvider ICloudProvider; +typedef interface ICloudProviderManager ICloudProviderManager; + +/* Start of enum SettingsVersion declaration */ +# define SETTINGSVERSION_IID_STR "b4cc23c2-96f2-419d-830b-bd13c1135dfb" +# define SETTINGSVERSION_IID { \ + 0xb4cc23c2, 0x96f2, 0x419d, \ + { 0x83, 0x0b, 0xbd, 0x13, 0xc1, 0x13, 0x5d, 0xfb } \ +} +typedef enum SettingsVersion +{ + 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_v1_13 = 15, + SettingsVersion_v1_14 = 16, + SettingsVersion_v1_15 = 17, + SettingsVersion_v1_16 = 18, + SettingsVersion_v1_17 = 19, + SettingsVersion_v1_18 = 20, + SettingsVersion_Future = 99999 +} SettingsVersion; +/* End of enum SettingsVersion declaration */ +# define SettingsVersion_T PRUint32 + + +/* Start of enum AccessMode declaration */ +# define ACCESSMODE_IID_STR "1da0007c-ddf7-4be8-bcac-d84a1558785f" +# define ACCESSMODE_IID { \ + 0x1da0007c, 0xddf7, 0x4be8, \ + { 0xbc, 0xac, 0xd8, 0x4a, 0x15, 0x58, 0x78, 0x5f } \ +} +typedef enum AccessMode +{ + AccessMode_ReadOnly = 1, + AccessMode_ReadWrite = 2 +} AccessMode; +/* End of enum AccessMode declaration */ +# define AccessMode_T PRUint32 + + +/* Start of enum MachineState declaration */ +# define MACHINESTATE_IID_STR "00bc01b5-00a4-48db-000a-9061008357aa" +# define MACHINESTATE_IID { \ + 0x00bc01b5, 0x00a4, 0x48db, \ + { 0x00, 0x0a, 0x90, 0x61, 0x00, 0x83, 0x57, 0xaa } \ +} +typedef enum MachineState +{ + 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_DeletingSnapshotOnline = 16, + MachineState_DeletingSnapshotPaused = 17, + MachineState_OnlineSnapshotting = 18, + MachineState_RestoringSnapshot = 19, + MachineState_DeletingSnapshot = 20, + MachineState_SettingUp = 21, + MachineState_Snapshotting = 22, + MachineState_FirstOnline = 5, + MachineState_LastOnline = 18, + MachineState_FirstTransient = 8, + MachineState_LastTransient = 22 +} MachineState; +/* End of enum MachineState declaration */ +# define MachineState_T PRUint32 + + +/* Start of enum SessionState declaration */ +# define SESSIONSTATE_IID_STR "cf2700c0-ea4b-47ae-9725-7810114b94d8" +# define SESSIONSTATE_IID { \ + 0xcf2700c0, 0xea4b, 0x47ae, \ + { 0x97, 0x25, 0x78, 0x10, 0x11, 0x4b, 0x94, 0xd8 } \ +} +typedef enum SessionState +{ + SessionState_Null = 0, + SessionState_Unlocked = 1, + SessionState_Locked = 2, + SessionState_Spawning = 3, + SessionState_Unlocking = 4 +} SessionState; +/* End of enum SessionState declaration */ +# define SessionState_T PRUint32 + + +/* Start of enum CPUPropertyType declaration */ +# define CPUPROPERTYTYPE_IID_STR "3fcfe589-ca66-468f-e313-656f9d0b2eb6" +# define CPUPROPERTYTYPE_IID { \ + 0x3fcfe589, 0xca66, 0x468f, \ + { 0xe3, 0x13, 0x65, 0x6f, 0x9d, 0x0b, 0x2e, 0xb6 } \ +} +typedef enum CPUPropertyType +{ + CPUPropertyType_Null = 0, + CPUPropertyType_PAE = 1, + CPUPropertyType_LongMode = 2, + CPUPropertyType_TripleFaultReset = 3, + CPUPropertyType_APIC = 4, + CPUPropertyType_X2APIC = 5, + CPUPropertyType_IBPBOnVMExit = 6, + CPUPropertyType_IBPBOnVMEntry = 7, + CPUPropertyType_HWVirt = 8, + CPUPropertyType_SpecCtrl = 9, + CPUPropertyType_SpecCtrlByHost = 10, + CPUPropertyType_L1DFlushOnEMTScheduling = 11, + CPUPropertyType_L1DFlushOnVMEntry = 12, + CPUPropertyType_MDSClearOnEMTScheduling = 13, + CPUPropertyType_MDSClearOnVMEntry = 14 +} CPUPropertyType; +/* End of enum CPUPropertyType declaration */ +# define CPUPropertyType_T PRUint32 + + +/* Start of enum HWVirtExPropertyType declaration */ +# define HWVIRTEXPROPERTYTYPE_IID_STR "bc05551e-e288-467e-1ea3-233de08e4480" +# define HWVIRTEXPROPERTYTYPE_IID { \ + 0xbc05551e, 0xe288, 0x467e, \ + { 0x1e, 0xa3, 0x23, 0x3d, 0xe0, 0x8e, 0x44, 0x80 } \ +} +typedef enum HWVirtExPropertyType +{ + HWVirtExPropertyType_Null = 0, + HWVirtExPropertyType_Enabled = 1, + HWVirtExPropertyType_VPID = 2, + HWVirtExPropertyType_NestedPaging = 3, + HWVirtExPropertyType_UnrestrictedExecution = 4, + HWVirtExPropertyType_LargePages = 5, + HWVirtExPropertyType_Force = 6, + HWVirtExPropertyType_UseNativeApi = 7 +} HWVirtExPropertyType; +/* End of enum HWVirtExPropertyType declaration */ +# define HWVirtExPropertyType_T PRUint32 + + +/* Start of enum ParavirtProvider declaration */ +# define PARAVIRTPROVIDER_IID_STR "696453ec-3742-4a05-bead-658ccbf2c944" +# define PARAVIRTPROVIDER_IID { \ + 0x696453ec, 0x3742, 0x4a05, \ + { 0xbe, 0xad, 0x65, 0x8c, 0xcb, 0xf2, 0xc9, 0x44 } \ +} +typedef enum ParavirtProvider +{ + ParavirtProvider_None = 0, + ParavirtProvider_Default = 1, + ParavirtProvider_Legacy = 2, + ParavirtProvider_Minimal = 3, + ParavirtProvider_HyperV = 4, + ParavirtProvider_KVM = 5 +} ParavirtProvider; +/* End of enum ParavirtProvider declaration */ +# define ParavirtProvider_T PRUint32 + + +/* Start of enum LockType declaration */ +# define LOCKTYPE_IID_STR "678aaf14-2815-4c3e-b20a-e86ed0216498" +# define LOCKTYPE_IID { \ + 0x678aaf14, 0x2815, 0x4c3e, \ + { 0xb2, 0x0a, 0xe8, 0x6e, 0xd0, 0x21, 0x64, 0x98 } \ +} +typedef enum LockType +{ + LockType_Null = 0, + LockType_Shared = 1, + LockType_Write = 2, + LockType_VM = 3 +} LockType; +/* End of enum LockType declaration */ +# define LockType_T PRUint32 + + +/* Start of enum SessionType declaration */ +# define SESSIONTYPE_IID_STR "A13C02CB-0C2C-421E-8317-AC0E8AAA153A" +# define SESSIONTYPE_IID { \ + 0xA13C02CB, 0x0C2C, 0x421E, \ + { 0x83, 0x17, 0xAC, 0x0E, 0x8A, 0xAA, 0x15, 0x3A } \ +} +typedef enum SessionType +{ + SessionType_Null = 0, + SessionType_WriteLock = 1, + SessionType_Remote = 2, + SessionType_Shared = 3 +} SessionType; +/* End of enum SessionType declaration */ +# define SessionType_T PRUint32 + + +/* Start of enum DeviceType declaration */ +# define DEVICETYPE_IID_STR "cb977be1-d1fb-41f8-ad7e-951736c6cb3e" +# define DEVICETYPE_IID { \ + 0xcb977be1, 0xd1fb, 0x41f8, \ + { 0xad, 0x7e, 0x95, 0x17, 0x36, 0xc6, 0xcb, 0x3e } \ +} +typedef enum DeviceType +{ + DeviceType_Null = 0, + DeviceType_Floppy = 1, + DeviceType_DVD = 2, + DeviceType_HardDisk = 3, + DeviceType_Network = 4, + DeviceType_USB = 5, + DeviceType_SharedFolder = 6, + DeviceType_Graphics3D = 7 +} DeviceType; +/* End of enum DeviceType declaration */ +# define DeviceType_T PRUint32 + + +/* Start of enum DeviceActivity declaration */ +# define DEVICEACTIVITY_IID_STR "6FC8AEAA-130A-4eb5-8954-3F921422D707" +# define DEVICEACTIVITY_IID { \ + 0x6FC8AEAA, 0x130A, 0x4eb5, \ + { 0x89, 0x54, 0x3F, 0x92, 0x14, 0x22, 0xD7, 0x07 } \ +} +typedef enum DeviceActivity +{ + DeviceActivity_Null = 0, + DeviceActivity_Idle = 1, + DeviceActivity_Reading = 2, + DeviceActivity_Writing = 3 +} DeviceActivity; +/* End of enum DeviceActivity declaration */ +# define DeviceActivity_T PRUint32 + + +/* Start of enum ClipboardMode declaration */ +# define CLIPBOARDMODE_IID_STR "33364716-4008-4701-8f14-be0fa3d62950" +# define CLIPBOARDMODE_IID { \ + 0x33364716, 0x4008, 0x4701, \ + { 0x8f, 0x14, 0xbe, 0x0f, 0xa3, 0xd6, 0x29, 0x50 } \ +} +typedef enum ClipboardMode +{ + ClipboardMode_Disabled = 0, + ClipboardMode_HostToGuest = 1, + ClipboardMode_GuestToHost = 2, + ClipboardMode_Bidirectional = 3 +} ClipboardMode; +/* End of enum ClipboardMode declaration */ +# define ClipboardMode_T PRUint32 + + +/* Start of enum DnDMode declaration */ +# define DNDMODE_IID_STR "07af8800-f936-4b33-9172-cd400e83c148" +# define DNDMODE_IID { \ + 0x07af8800, 0xf936, 0x4b33, \ + { 0x91, 0x72, 0xcd, 0x40, 0x0e, 0x83, 0xc1, 0x48 } \ +} +typedef enum DnDMode +{ + DnDMode_Disabled = 0, + DnDMode_HostToGuest = 1, + DnDMode_GuestToHost = 2, + DnDMode_Bidirectional = 3 +} DnDMode; +/* End of enum DnDMode declaration */ +# define DnDMode_T PRUint32 + + +/* Start of enum Scope declaration */ +# define SCOPE_IID_STR "7c91096e-499e-4eca-9f9b-9001438d7855" +# define SCOPE_IID { \ + 0x7c91096e, 0x499e, 0x4eca, \ + { 0x9f, 0x9b, 0x90, 0x01, 0x43, 0x8d, 0x78, 0x55 } \ +} +typedef enum Scope +{ + Scope_Global = 0, + Scope_Machine = 1, + Scope_Session = 2 +} Scope; +/* End of enum Scope declaration */ +# define Scope_T PRUint32 + + +/* Start of enum BIOSBootMenuMode declaration */ +# define BIOSBOOTMENUMODE_IID_STR "ae4fb9f7-29d2-45b4-b2c7-d579603135d5" +# define BIOSBOOTMENUMODE_IID { \ + 0xae4fb9f7, 0x29d2, 0x45b4, \ + { 0xb2, 0xc7, 0xd5, 0x79, 0x60, 0x31, 0x35, 0xd5 } \ +} +typedef enum BIOSBootMenuMode +{ + BIOSBootMenuMode_Disabled = 0, + BIOSBootMenuMode_MenuOnly = 1, + BIOSBootMenuMode_MessageAndMenu = 2 +} BIOSBootMenuMode; +/* End of enum BIOSBootMenuMode declaration */ +# define BIOSBootMenuMode_T PRUint32 + + +/* Start of enum APICMode declaration */ +# define APICMODE_IID_STR "c6884ba5-3cc4-4a92-a7f6-4410f9fd894e" +# define APICMODE_IID { \ + 0xc6884ba5, 0x3cc4, 0x4a92, \ + { 0xa7, 0xf6, 0x44, 0x10, 0xf9, 0xfd, 0x89, 0x4e } \ +} +typedef enum APICMode +{ + APICMode_Disabled = 0, + APICMode_APIC = 1, + APICMode_X2APIC = 2 +} APICMode; +/* End of enum APICMode declaration */ +# define APICMode_T PRUint32 + + +/* Start of enum ProcessorFeature declaration */ +# define PROCESSORFEATURE_IID_STR "fed0e385-dc5a-4cef-b9e2-66bafb6af6aa" +# define PROCESSORFEATURE_IID { \ + 0xfed0e385, 0xdc5a, 0x4cef, \ + { 0xb9, 0xe2, 0x66, 0xba, 0xfb, 0x6a, 0xf6, 0xaa } \ +} +typedef enum ProcessorFeature +{ + ProcessorFeature_HWVirtEx = 0, + ProcessorFeature_PAE = 1, + ProcessorFeature_LongMode = 2, + ProcessorFeature_NestedPaging = 3, + ProcessorFeature_UnrestrictedGuest = 4, + ProcessorFeature_NestedHWVirt = 5 +} ProcessorFeature; +/* End of enum ProcessorFeature declaration */ +# define ProcessorFeature_T PRUint32 + + +/* Start of enum FirmwareType declaration */ +# define FIRMWARETYPE_IID_STR "b903f264-c230-483e-ac74-2b37ce60d371" +# define FIRMWARETYPE_IID { \ + 0xb903f264, 0xc230, 0x483e, \ + { 0xac, 0x74, 0x2b, 0x37, 0xce, 0x60, 0xd3, 0x71 } \ +} +typedef enum FirmwareType +{ + FirmwareType_BIOS = 1, + FirmwareType_EFI = 2, + FirmwareType_EFI32 = 3, + FirmwareType_EFI64 = 4, + FirmwareType_EFIDUAL = 5 +} FirmwareType; +/* End of enum FirmwareType declaration */ +# define FirmwareType_T PRUint32 + + +/* Start of enum PointingHIDType declaration */ +# define POINTINGHIDTYPE_IID_STR "19964e93-0050-45c4-9382-a7bccc53e666" +# define POINTINGHIDTYPE_IID { \ + 0x19964e93, 0x0050, 0x45c4, \ + { 0x93, 0x82, 0xa7, 0xbc, 0xcc, 0x53, 0xe6, 0x66 } \ +} +typedef enum PointingHIDType +{ + PointingHIDType_None = 1, + PointingHIDType_PS2Mouse = 2, + PointingHIDType_USBMouse = 3, + PointingHIDType_USBTablet = 4, + PointingHIDType_ComboMouse = 5, + PointingHIDType_USBMultiTouch = 6 +} PointingHIDType; +/* End of enum PointingHIDType declaration */ +# define PointingHIDType_T PRUint32 + + +/* Start of enum KeyboardHIDType declaration */ +# define KEYBOARDHIDTYPE_IID_STR "383e43d7-5c7c-4ec8-9cb8-eda1bccd6699" +# define KEYBOARDHIDTYPE_IID { \ + 0x383e43d7, 0x5c7c, 0x4ec8, \ + { 0x9c, 0xb8, 0xed, 0xa1, 0xbc, 0xcd, 0x66, 0x99 } \ +} +typedef enum KeyboardHIDType +{ + KeyboardHIDType_None = 1, + KeyboardHIDType_PS2Keyboard = 2, + KeyboardHIDType_USBKeyboard = 3, + KeyboardHIDType_ComboKeyboard = 4 +} KeyboardHIDType; +/* End of enum KeyboardHIDType declaration */ +# define KeyboardHIDType_T PRUint32 + + +/* Start of enum BitmapFormat declaration */ +# define BITMAPFORMAT_IID_STR "afb2bf39-8b1e-4f9f-8948-d1b887f83eb0" +# define BITMAPFORMAT_IID { \ + 0xafb2bf39, 0x8b1e, 0x4f9f, \ + { 0x89, 0x48, 0xd1, 0xb8, 0x87, 0xf8, 0x3e, 0xb0 } \ +} +typedef enum BitmapFormat +{ + BitmapFormat_Opaque = 0, + BitmapFormat_BGR = 0x20524742, + BitmapFormat_BGR0 = 0x30524742, + BitmapFormat_BGRA = 0x41524742, + BitmapFormat_RGBA = 0x41424752, + BitmapFormat_PNG = 0x20474E50, + BitmapFormat_JPEG = 0x4745504A +} BitmapFormat; +/* End of enum BitmapFormat declaration */ +# define BitmapFormat_T PRUint32 + + +/* Start of enum DHCPOption declaration */ +# define DHCPOPTION_IID_STR "00f5b10f-0021-4513-00f7-5bf4000982bf" +# define DHCPOPTION_IID { \ + 0x00f5b10f, 0x0021, 0x4513, \ + { 0x00, 0xf7, 0x5b, 0xf4, 0x00, 0x09, 0x82, 0xbf } \ +} +typedef enum DHCPOption +{ + DHCPOption_SubnetMask = 1, + DHCPOption_TimeOffset = 2, + DHCPOption_Routers = 3, + DHCPOption_TimeServers = 4, + DHCPOption_NameServers = 5, + DHCPOption_DomainNameServers = 6, + DHCPOption_LogServers = 7, + DHCPOption_CookieServers = 8, + DHCPOption_LPRServers = 9, + DHCPOption_ImpressServers = 10, + DHCPOption_ResourseLocationServers = 11, + DHCPOption_HostName = 12, + DHCPOption_BootFileSize = 13, + DHCPOption_MeritDumpFile = 14, + DHCPOption_DomainName = 15, + DHCPOption_SwapServer = 16, + DHCPOption_RootPath = 17, + DHCPOption_ExtensionPath = 18, + DHCPOption_IPForwarding = 19, + DHCPOption_OptNonLocalSourceRouting = 20, + DHCPOption_PolicyFilter = 21, + DHCPOption_MaxDgramReassemblySize = 22, + DHCPOption_DefaultIPTTL = 23, + DHCPOption_PathMTUAgingTimeout = 24, + DHCPOption_PathMTUPlateauTable = 25, + DHCPOption_InterfaceMTU = 26, + DHCPOption_AllSubnetsAreLocal = 27, + DHCPOption_BroadcastAddress = 28, + DHCPOption_PerformMaskDiscovery = 29, + DHCPOption_MaskSupplier = 30, + DHCPOption_PerformRouterDiscovery = 31, + DHCPOption_RouterSolicitationAddress = 32, + DHCPOption_StaticRoute = 33, + DHCPOption_TrailerEncapsulation = 34, + DHCPOption_ARPCacheTimeout = 35, + DHCPOption_EthernetEncapsulation = 36, + DHCPOption_TCPDefaultTTL = 37, + DHCPOption_TCPKeepaliveInterval = 38, + DHCPOption_TCPKeepaliveGarbage = 39, + DHCPOption_NISDomain = 40, + DHCPOption_NISServers = 41, + DHCPOption_NTPServers = 42, + DHCPOption_VendorSpecificInfo = 43, + DHCPOption_NetBIOSNameServers = 44, + DHCPOption_NetBIOSDatagramServers = 45, + DHCPOption_NetBIOSNodeType = 46, + DHCPOption_NetBIOSScope = 47, + DHCPOption_XWindowsFontServers = 48, + DHCPOption_XWindowsDisplayManager = 49, + DHCPOption_NetWareIPDomainName = 62, + DHCPOption_NetWareIPInformation = 63, + DHCPOption_NISPlusDomain = 64, + DHCPOption_NISPlusServers = 65, + DHCPOption_TFTPServerName = 66, + DHCPOption_BootfileName = 67, + DHCPOption_MobileIPHomeAgents = 68, + DHCPOption_SMTPServers = 69, + DHCPOption_POP3Servers = 70, + DHCPOption_NNTPServers = 71, + DHCPOption_WWWServers = 72, + DHCPOption_FingerServers = 73, + DHCPOption_IRCServers = 74, + DHCPOption_StreetTalkServers = 75, + DHCPOption_STDAServers = 76, + DHCPOption_SLPDirectoryAgent = 78, + DHCPOption_SLPServiceScope = 79, + DHCPOption_DomainSearch = 119 +} DHCPOption; +/* End of enum DHCPOption declaration */ +# define DHCPOption_T PRUint32 + + +/* Start of enum DHCPOptionEncoding declaration */ +# define DHCPOPTIONENCODING_IID_STR "84b6d460-2838-4682-c0d6-ef5b573ef28a" +# define DHCPOPTIONENCODING_IID { \ + 0x84b6d460, 0x2838, 0x4682, \ + { 0xc0, 0xd6, 0xef, 0x5b, 0x57, 0x3e, 0xf2, 0x8a } \ +} +typedef enum DHCPOptionEncoding +{ + DHCPOptionEncoding_Normal = 0, + DHCPOptionEncoding_Hex = 1 +} DHCPOptionEncoding; +/* End of enum DHCPOptionEncoding declaration */ +# define DHCPOptionEncoding_T PRUint32 + + +/* Start of enum DHCPConfigScope declaration */ +# define DHCPCONFIGSCOPE_IID_STR "469c42e4-b9ec-43f2-bdcb-9e9d1eb434ae" +# define DHCPCONFIGSCOPE_IID { \ + 0x469c42e4, 0xb9ec, 0x43f2, \ + { 0xbd, 0xcb, 0x9e, 0x9d, 0x1e, 0xb4, 0x34, 0xae } \ +} +typedef enum DHCPConfigScope +{ + DHCPConfigScope_Global = 0, + DHCPConfigScope_Group = 1, + DHCPConfigScope_MachineNIC = 2, + DHCPConfigScope_MAC = 3 +} DHCPConfigScope; +/* End of enum DHCPConfigScope declaration */ +# define DHCPConfigScope_T PRUint32 + + +/* Start of enum DHCPGroupConditionType declaration */ +# define DHCPGROUPCONDITIONTYPE_IID_STR "2cb9280f-ada2-4194-dee8-bfb8ad77119d" +# define DHCPGROUPCONDITIONTYPE_IID { \ + 0x2cb9280f, 0xada2, 0x4194, \ + { 0xde, 0xe8, 0xbf, 0xb8, 0xad, 0x77, 0x11, 0x9d } \ +} +typedef enum DHCPGroupConditionType +{ + DHCPGroupConditionType_MAC = 0, + DHCPGroupConditionType_MACWildcard = 1, + DHCPGroupConditionType_vendorClassID = 2, + DHCPGroupConditionType_vendorClassIDWildcard = 3, + DHCPGroupConditionType_userClassID = 4, + DHCPGroupConditionType_userClassIDWildcard = 5 +} DHCPGroupConditionType; +/* End of enum DHCPGroupConditionType declaration */ +# define DHCPGroupConditionType_T PRUint32 + + +/* Start of enum VFSType declaration */ +# define VFSTYPE_IID_STR "813999ba-b949-48a8-9230-aadc6285e2f2" +# define VFSTYPE_IID { \ + 0x813999ba, 0xb949, 0x48a8, \ + { 0x92, 0x30, 0xaa, 0xdc, 0x62, 0x85, 0xe2, 0xf2 } \ +} +typedef enum VFSType +{ + VFSType_File = 1, + VFSType_Cloud = 2, + VFSType_S3 = 3, + VFSType_WebDav = 4 +} VFSType; +/* End of enum VFSType declaration */ +# define VFSType_T PRUint32 + + +/* Start of enum ImportOptions declaration */ +# define IMPORTOPTIONS_IID_STR "0a981523-3b20-4004-8ee3-dfd322202ace" +# define IMPORTOPTIONS_IID { \ + 0x0a981523, 0x3b20, 0x4004, \ + { 0x8e, 0xe3, 0xdf, 0xd3, 0x22, 0x20, 0x2a, 0xce } \ +} +typedef enum ImportOptions +{ + ImportOptions_KeepAllMACs = 1, + ImportOptions_KeepNATMACs = 2, + ImportOptions_ImportToVDI = 3 +} ImportOptions; +/* End of enum ImportOptions declaration */ +# define ImportOptions_T PRUint32 + + +/* Start of enum ExportOptions declaration */ +# define EXPORTOPTIONS_IID_STR "8f45eb08-fd34-41ee-af95-a880bdee5554" +# define EXPORTOPTIONS_IID { \ + 0x8f45eb08, 0xfd34, 0x41ee, \ + { 0xaf, 0x95, 0xa8, 0x80, 0xbd, 0xee, 0x55, 0x54 } \ +} +typedef enum ExportOptions +{ + ExportOptions_CreateManifest = 1, + ExportOptions_ExportDVDImages = 2, + ExportOptions_StripAllMACs = 3, + ExportOptions_StripAllNonNATMACs = 4 +} ExportOptions; +/* End of enum ExportOptions declaration */ +# define ExportOptions_T PRUint32 + + +/* Start of enum CertificateVersion declaration */ +# define CERTIFICATEVERSION_IID_STR "9e232a99-51d0-4dbd-96a0-ffac4bc3e2a8" +# define CERTIFICATEVERSION_IID { \ + 0x9e232a99, 0x51d0, 0x4dbd, \ + { 0x96, 0xa0, 0xff, 0xac, 0x4b, 0xc3, 0xe2, 0xa8 } \ +} +typedef enum CertificateVersion +{ + CertificateVersion_V1 = 1, + CertificateVersion_V2 = 2, + CertificateVersion_V3 = 3, + CertificateVersion_Unknown = 99 +} CertificateVersion; +/* End of enum CertificateVersion declaration */ +# define CertificateVersion_T PRUint32 + + +/* Start of enum VirtualSystemDescriptionType declaration */ +# define VIRTUALSYSTEMDESCRIPTIONTYPE_IID_STR "9078595f-74cf-4454-8787-34a8f72beed5" +# define VIRTUALSYSTEMDESCRIPTIONTYPE_IID { \ + 0x9078595f, 0x74cf, 0x4454, \ + { 0x87, 0x87, 0x34, 0xa8, 0xf7, 0x2b, 0xee, 0xd5 } \ +} +typedef enum VirtualSystemDescriptionType +{ + 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_BaseFolder = 25, + VirtualSystemDescriptionType_PrimaryGroup = 26, + VirtualSystemDescriptionType_CloudInstanceShape = 27, + VirtualSystemDescriptionType_CloudDomain = 28, + VirtualSystemDescriptionType_CloudBootDiskSize = 29, + VirtualSystemDescriptionType_CloudBucket = 30, + VirtualSystemDescriptionType_CloudOCIVCN = 31, + VirtualSystemDescriptionType_CloudPublicIP = 32, + VirtualSystemDescriptionType_CloudProfileName = 33, + VirtualSystemDescriptionType_CloudOCISubnet = 34, + VirtualSystemDescriptionType_CloudKeepObject = 35, + VirtualSystemDescriptionType_CloudLaunchInstance = 36, + VirtualSystemDescriptionType_CloudInstanceId = 37, + VirtualSystemDescriptionType_CloudImageId = 38, + VirtualSystemDescriptionType_CloudInstanceState = 39, + VirtualSystemDescriptionType_CloudImageState = 40, + VirtualSystemDescriptionType_CloudInstanceDisplayName = 41, + VirtualSystemDescriptionType_CloudImageDisplayName = 42, + VirtualSystemDescriptionType_CloudOCILaunchMode = 43, + VirtualSystemDescriptionType_CloudPrivateIP = 44, + VirtualSystemDescriptionType_CloudBootVolumeId = 45, + VirtualSystemDescriptionType_CloudOCIVCNCompartment = 46, + VirtualSystemDescriptionType_CloudOCISubnetCompartment = 47, + VirtualSystemDescriptionType_CloudPublicSSHKey = 48, + VirtualSystemDescriptionType_BootingFirmware = 49 +} VirtualSystemDescriptionType; +/* End of enum VirtualSystemDescriptionType declaration */ +# define VirtualSystemDescriptionType_T PRUint32 + + +/* Start of enum VirtualSystemDescriptionValueType declaration */ +# define VIRTUALSYSTEMDESCRIPTIONVALUETYPE_IID_STR "56d9403f-3425-4118-9919-36f2a9b8c77c" +# define VIRTUALSYSTEMDESCRIPTIONVALUETYPE_IID { \ + 0x56d9403f, 0x3425, 0x4118, \ + { 0x99, 0x19, 0x36, 0xf2, 0xa9, 0xb8, 0xc7, 0x7c } \ +} +typedef enum VirtualSystemDescriptionValueType +{ + VirtualSystemDescriptionValueType_Reference = 1, + VirtualSystemDescriptionValueType_Original = 2, + VirtualSystemDescriptionValueType_Auto = 3, + VirtualSystemDescriptionValueType_ExtraConfig = 4 +} VirtualSystemDescriptionValueType; +/* End of enum VirtualSystemDescriptionValueType declaration */ +# define VirtualSystemDescriptionValueType_T PRUint32 + + +/* Start of enum RecordingDestination declaration */ +# define RECORDINGDESTINATION_IID_STR "11E3F06B-DEC1-48B9-BDC4-1E618D72893C" +# define RECORDINGDESTINATION_IID { \ + 0x11E3F06B, 0xDEC1, 0x48B9, \ + { 0xBD, 0xC4, 0x1E, 0x61, 0x8D, 0x72, 0x89, 0x3C } \ +} +typedef enum RecordingDestination +{ + RecordingDestination_None = 0, + RecordingDestination_File = 1 +} RecordingDestination; +/* End of enum RecordingDestination declaration */ +# define RecordingDestination_T PRUint32 + + +/* Start of enum RecordingFeature declaration */ +# define RECORDINGFEATURE_IID_STR "A7DDC6A5-DAA8-4485-B860-E9F2E98A7794" +# define RECORDINGFEATURE_IID { \ + 0xA7DDC6A5, 0xDAA8, 0x4485, \ + { 0xB8, 0x60, 0xE9, 0xF2, 0xE9, 0x8A, 0x77, 0x94 } \ +} +typedef enum RecordingFeature +{ + RecordingFeature_None = 0, + RecordingFeature_Video = 1, + RecordingFeature_Audio = 2 +} RecordingFeature; +/* End of enum RecordingFeature declaration */ +# define RecordingFeature_T PRUint32 + + +/* Start of enum RecordingAudioCodec declaration */ +# define RECORDINGAUDIOCODEC_IID_STR "0AEFF775-053A-42F8-9C00-E445107DBED8" +# define RECORDINGAUDIOCODEC_IID { \ + 0x0AEFF775, 0x053A, 0x42F8, \ + { 0x9C, 0x00, 0xE4, 0x45, 0x10, 0x7D, 0xBE, 0xD8 } \ +} +typedef enum RecordingAudioCodec +{ + RecordingAudioCodec_None = 0, + RecordingAudioCodec_WavPCM = 1, + RecordingAudioCodec_Opus = 2 +} RecordingAudioCodec; +/* End of enum RecordingAudioCodec declaration */ +# define RecordingAudioCodec_T PRUint32 + + +/* Start of enum RecordingVideoCodec declaration */ +# define RECORDINGVIDEOCODEC_IID_STR "663BFC39-AFFF-49FA-98DD-322A857E877B" +# define RECORDINGVIDEOCODEC_IID { \ + 0x663BFC39, 0xAFFF, 0x49FA, \ + { 0x98, 0xDD, 0x32, 0x2A, 0x85, 0x7E, 0x87, 0x7B } \ +} +typedef enum RecordingVideoCodec +{ + RecordingVideoCodec_None = 0, + RecordingVideoCodec_VP8 = 1, + RecordingVideoCodec_VP9 = 2, + RecordingVideoCodec_AV1 = 3 +} RecordingVideoCodec; +/* End of enum RecordingVideoCodec declaration */ +# define RecordingVideoCodec_T PRUint32 + + +/* Start of enum RecordingVideoScalingMethod declaration */ +# define RECORDINGVIDEOSCALINGMETHOD_IID_STR "5576D890-48EE-449A-A81B-B776233598B7" +# define RECORDINGVIDEOSCALINGMETHOD_IID { \ + 0x5576D890, 0x48EE, 0x449A, \ + { 0xA8, 0x1B, 0xB7, 0x76, 0x23, 0x35, 0x98, 0xB7 } \ +} +typedef enum RecordingVideoScalingMethod +{ + RecordingVideoScalingMethod_None = 0, + RecordingVideoScalingMethod_NearestNeighbor = 1, + RecordingVideoScalingMethod_Bilinear = 2, + RecordingVideoScalingMethod_Bicubic = 3 +} RecordingVideoScalingMethod; +/* End of enum RecordingVideoScalingMethod declaration */ +# define RecordingVideoScalingMethod_T PRUint32 + + +/* Start of enum RecordingVideoRateControlMode declaration */ +# define RECORDINGVIDEORATECONTROLMODE_IID_STR "D4EFB692-9F98-4112-88D3-A16FBE2BF6A8" +# define RECORDINGVIDEORATECONTROLMODE_IID { \ + 0xD4EFB692, 0x9F98, 0x4112, \ + { 0x88, 0xD3, 0xA1, 0x6F, 0xBE, 0x2B, 0xF6, 0xA8 } \ +} +typedef enum RecordingVideoRateControlMode +{ + RecordingVideoRateControlMode_CBR = 0, + RecordingVideoRateControlMode_VBR = 1 +} RecordingVideoRateControlMode; +/* End of enum RecordingVideoRateControlMode declaration */ +# define RecordingVideoRateControlMode_T PRUint32 + + +/* Start of enum GraphicsControllerType declaration */ +# define GRAPHICSCONTROLLERTYPE_IID_STR "3e009bb0-2b57-4283-a39b-4c363d4f0808" +# define GRAPHICSCONTROLLERTYPE_IID { \ + 0x3e009bb0, 0x2b57, 0x4283, \ + { 0xa3, 0x9b, 0x4c, 0x36, 0x3d, 0x4f, 0x08, 0x08 } \ +} +typedef enum GraphicsControllerType +{ + GraphicsControllerType_Null = 0, + GraphicsControllerType_VBoxVGA = 1, + GraphicsControllerType_VMSVGA = 2, + GraphicsControllerType_VBoxSVGA = 3 +} GraphicsControllerType; +/* End of enum GraphicsControllerType declaration */ +# define GraphicsControllerType_T PRUint32 + + +/* Start of enum CleanupMode declaration */ +# define CLEANUPMODE_IID_STR "67897c50-7cca-47a9-83f6-ce8fd8eb5441" +# define CLEANUPMODE_IID { \ + 0x67897c50, 0x7cca, 0x47a9, \ + { 0x83, 0xf6, 0xce, 0x8f, 0xd8, 0xeb, 0x54, 0x41 } \ +} +typedef enum CleanupMode +{ + CleanupMode_UnregisterOnly = 1, + CleanupMode_DetachAllReturnNone = 2, + CleanupMode_DetachAllReturnHardDisksOnly = 3, + CleanupMode_Full = 4 +} CleanupMode; +/* End of enum CleanupMode declaration */ +# define CleanupMode_T PRUint32 + + +/* Start of enum CloneMode declaration */ +# define CLONEMODE_IID_STR "A7A159FE-5096-4B8D-8C3C-D033CB0B35A8" +# define CLONEMODE_IID { \ + 0xA7A159FE, 0x5096, 0x4B8D, \ + { 0x8C, 0x3C, 0xD0, 0x33, 0xCB, 0x0B, 0x35, 0xA8 } \ +} +typedef enum CloneMode +{ + CloneMode_MachineState = 1, + CloneMode_MachineAndChildStates = 2, + CloneMode_AllStates = 3 +} CloneMode; +/* End of enum CloneMode declaration */ +# define CloneMode_T PRUint32 + + +/* Start of enum CloneOptions declaration */ +# define CLONEOPTIONS_IID_STR "22243f8e-96ab-497c-8cf0-f40a566c630b" +# define CLONEOPTIONS_IID { \ + 0x22243f8e, 0x96ab, 0x497c, \ + { 0x8c, 0xf0, 0xf4, 0x0a, 0x56, 0x6c, 0x63, 0x0b } \ +} +typedef enum CloneOptions +{ + CloneOptions_Link = 1, + CloneOptions_KeepAllMACs = 2, + CloneOptions_KeepNATMACs = 3, + CloneOptions_KeepDiskNames = 4, + CloneOptions_KeepHwUUIDs = 5 +} CloneOptions; +/* End of enum CloneOptions declaration */ +# define CloneOptions_T PRUint32 + + +/* Start of enum AutostopType declaration */ +# define AUTOSTOPTYPE_IID_STR "6bb96740-cf34-470d-aab2-2cd48ea2e10e" +# define AUTOSTOPTYPE_IID { \ + 0x6bb96740, 0xcf34, 0x470d, \ + { 0xaa, 0xb2, 0x2c, 0xd4, 0x8e, 0xa2, 0xe1, 0x0e } \ +} +typedef enum AutostopType +{ + AutostopType_Disabled = 1, + AutostopType_SaveState = 2, + AutostopType_PowerOff = 3, + AutostopType_AcpiShutdown = 4 +} AutostopType; +/* End of enum AutostopType declaration */ +# define AutostopType_T PRUint32 + + +/* Start of enum VMProcPriority declaration */ +# define VMPROCPRIORITY_IID_STR "6fa72dd5-19b7-46ba-bc52-f223c98c7d80" +# define VMPROCPRIORITY_IID { \ + 0x6fa72dd5, 0x19b7, 0x46ba, \ + { 0xbc, 0x52, 0xf2, 0x23, 0xc9, 0x8c, 0x7d, 0x80 } \ +} +typedef enum VMProcPriority +{ + VMProcPriority_Invalid = 0, + VMProcPriority_Default = 1, + VMProcPriority_Flat = 2, + VMProcPriority_Low = 3, + VMProcPriority_Normal = 5, + VMProcPriority_High = 6 +} VMProcPriority; +/* End of enum VMProcPriority declaration */ +# define VMProcPriority_T PRUint32 + + +/* Start of enum HostNetworkInterfaceMediumType declaration */ +# define HOSTNETWORKINTERFACEMEDIUMTYPE_IID_STR "1aa54aaf-2497-45a2-bfb1-8eb225e93d5b" +# define HOSTNETWORKINTERFACEMEDIUMTYPE_IID { \ + 0x1aa54aaf, 0x2497, 0x45a2, \ + { 0xbf, 0xb1, 0x8e, 0xb2, 0x25, 0xe9, 0x3d, 0x5b } \ +} +typedef enum HostNetworkInterfaceMediumType +{ + HostNetworkInterfaceMediumType_Unknown = 0, + HostNetworkInterfaceMediumType_Ethernet = 1, + HostNetworkInterfaceMediumType_PPP = 2, + HostNetworkInterfaceMediumType_SLIP = 3 +} HostNetworkInterfaceMediumType; +/* End of enum HostNetworkInterfaceMediumType declaration */ +# define HostNetworkInterfaceMediumType_T PRUint32 + + +/* Start of enum HostNetworkInterfaceStatus declaration */ +# define HOSTNETWORKINTERFACESTATUS_IID_STR "CC474A69-2710-434B-8D99-C38E5D5A6F41" +# define HOSTNETWORKINTERFACESTATUS_IID { \ + 0xCC474A69, 0x2710, 0x434B, \ + { 0x8D, 0x99, 0xC3, 0x8E, 0x5D, 0x5A, 0x6F, 0x41 } \ +} +typedef enum HostNetworkInterfaceStatus +{ + HostNetworkInterfaceStatus_Unknown = 0, + HostNetworkInterfaceStatus_Up = 1, + HostNetworkInterfaceStatus_Down = 2 +} HostNetworkInterfaceStatus; +/* End of enum HostNetworkInterfaceStatus declaration */ +# define HostNetworkInterfaceStatus_T PRUint32 + + +/* Start of enum HostNetworkInterfaceType declaration */ +# define HOSTNETWORKINTERFACETYPE_IID_STR "67431b00-9946-48a2-bc02-b25c5919f4f3" +# define HOSTNETWORKINTERFACETYPE_IID { \ + 0x67431b00, 0x9946, 0x48a2, \ + { 0xbc, 0x02, 0xb2, 0x5c, 0x59, 0x19, 0xf4, 0xf3 } \ +} +typedef enum HostNetworkInterfaceType +{ + HostNetworkInterfaceType_Bridged = 1, + HostNetworkInterfaceType_HostOnly = 2 +} HostNetworkInterfaceType; +/* End of enum HostNetworkInterfaceType declaration */ +# define HostNetworkInterfaceType_T PRUint32 + + +/* Start of enum ProxyMode declaration */ +# define PROXYMODE_IID_STR "885264b3-b517-40fc-ce46-36e3bae895a4" +# define PROXYMODE_IID { \ + 0x885264b3, 0xb517, 0x40fc, \ + { 0xce, 0x46, 0x36, 0xe3, 0xba, 0xe8, 0x95, 0xa4 } \ +} +typedef enum ProxyMode +{ + ProxyMode_System = 0, + ProxyMode_NoProxy = 1, + ProxyMode_Manual = 2 +} ProxyMode; +/* End of enum ProxyMode declaration */ +# define ProxyMode_T PRUint32 + + +/* Start of enum AdditionsFacilityType declaration */ +# define ADDITIONSFACILITYTYPE_IID_STR "c4b10d74-dd48-4ff4-9a40-785a2a389ade" +# define ADDITIONSFACILITYTYPE_IID { \ + 0xc4b10d74, 0xdd48, 0x4ff4, \ + { 0x9a, 0x40, 0x78, 0x5a, 0x2a, 0x38, 0x9a, 0xde } \ +} +typedef enum AdditionsFacilityType +{ + AdditionsFacilityType_None = 0, + AdditionsFacilityType_VBoxGuestDriver = 20, + AdditionsFacilityType_AutoLogon = 90, + AdditionsFacilityType_VBoxService = 100, + AdditionsFacilityType_VBoxTrayClient = 101, + AdditionsFacilityType_Seamless = 1000, + AdditionsFacilityType_Graphics = 1100, + AdditionsFacilityType_MonitorAttach = 1101, + AdditionsFacilityType_All = 2147483646 +} AdditionsFacilityType; +/* End of enum AdditionsFacilityType declaration */ +# define AdditionsFacilityType_T PRUint32 + + +/* Start of enum AdditionsFacilityClass declaration */ +# define ADDITIONSFACILITYCLASS_IID_STR "446451b2-c88d-4e5d-84c9-91bc7f533f5f" +# define ADDITIONSFACILITYCLASS_IID { \ + 0x446451b2, 0xc88d, 0x4e5d, \ + { 0x84, 0xc9, 0x91, 0xbc, 0x7f, 0x53, 0x3f, 0x5f } \ +} +typedef enum AdditionsFacilityClass +{ + AdditionsFacilityClass_None = 0, + AdditionsFacilityClass_Driver = 10, + AdditionsFacilityClass_Service = 30, + AdditionsFacilityClass_Program = 50, + AdditionsFacilityClass_Feature = 100, + AdditionsFacilityClass_ThirdParty = 999, + AdditionsFacilityClass_All = 2147483646 +} AdditionsFacilityClass; +/* End of enum AdditionsFacilityClass declaration */ +# define AdditionsFacilityClass_T PRUint32 + + +/* Start of enum AdditionsFacilityStatus declaration */ +# define ADDITIONSFACILITYSTATUS_IID_STR "ce06f9e1-394e-4fe9-9368-5a88c567dbde" +# define ADDITIONSFACILITYSTATUS_IID { \ + 0xce06f9e1, 0x394e, 0x4fe9, \ + { 0x93, 0x68, 0x5a, 0x88, 0xc5, 0x67, 0xdb, 0xde } \ +} +typedef enum AdditionsFacilityStatus +{ + 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; +/* End of enum AdditionsFacilityStatus declaration */ +# define AdditionsFacilityStatus_T PRUint32 + + +/* Start of enum AdditionsRunLevelType declaration */ +# define ADDITIONSRUNLEVELTYPE_IID_STR "a25417ee-a9dd-4f5b-b0dc-377860087754" +# define ADDITIONSRUNLEVELTYPE_IID { \ + 0xa25417ee, 0xa9dd, 0x4f5b, \ + { 0xb0, 0xdc, 0x37, 0x78, 0x60, 0x08, 0x77, 0x54 } \ +} +typedef enum AdditionsRunLevelType +{ + AdditionsRunLevelType_None = 0, + AdditionsRunLevelType_System = 1, + AdditionsRunLevelType_Userland = 2, + AdditionsRunLevelType_Desktop = 3 +} AdditionsRunLevelType; +/* End of enum AdditionsRunLevelType declaration */ +# define AdditionsRunLevelType_T PRUint32 + + +/* Start of enum AdditionsUpdateFlag declaration */ +# define ADDITIONSUPDATEFLAG_IID_STR "726a818d-18d6-4389-94e8-3e9e6826171a" +# define ADDITIONSUPDATEFLAG_IID { \ + 0x726a818d, 0x18d6, 0x4389, \ + { 0x94, 0xe8, 0x3e, 0x9e, 0x68, 0x26, 0x17, 0x1a } \ +} +typedef enum AdditionsUpdateFlag +{ + AdditionsUpdateFlag_None = 0, + AdditionsUpdateFlag_WaitForUpdateStartOnly = 1 +} AdditionsUpdateFlag; +/* End of enum AdditionsUpdateFlag declaration */ +# define AdditionsUpdateFlag_T PRUint32 + + +/* Start of enum GuestSessionStatus declaration */ +# define GUESTSESSIONSTATUS_IID_STR "ac2669da-4624-44f2-85b5-0b0bfb8d8673" +# define GUESTSESSIONSTATUS_IID { \ + 0xac2669da, 0x4624, 0x44f2, \ + { 0x85, 0xb5, 0x0b, 0x0b, 0xfb, 0x8d, 0x86, 0x73 } \ +} +typedef enum GuestSessionStatus +{ + GuestSessionStatus_Undefined = 0, + GuestSessionStatus_Starting = 10, + GuestSessionStatus_Started = 100, + GuestSessionStatus_Terminating = 480, + GuestSessionStatus_Terminated = 500, + GuestSessionStatus_TimedOutKilled = 512, + GuestSessionStatus_TimedOutAbnormally = 513, + GuestSessionStatus_Down = 600, + GuestSessionStatus_Error = 800 +} GuestSessionStatus; +/* End of enum GuestSessionStatus declaration */ +# define GuestSessionStatus_T PRUint32 + + +/* Start of enum GuestSessionWaitForFlag declaration */ +# define GUESTSESSIONWAITFORFLAG_IID_STR "bb7a372a-f635-4e11-a81a-e707f3a52ef5" +# define GUESTSESSIONWAITFORFLAG_IID { \ + 0xbb7a372a, 0xf635, 0x4e11, \ + { 0xa8, 0x1a, 0xe7, 0x07, 0xf3, 0xa5, 0x2e, 0xf5 } \ +} +typedef enum GuestSessionWaitForFlag +{ + GuestSessionWaitForFlag_None = 0, + GuestSessionWaitForFlag_Start = 1, + GuestSessionWaitForFlag_Terminate = 2, + GuestSessionWaitForFlag_Status = 4 +} GuestSessionWaitForFlag; +/* End of enum GuestSessionWaitForFlag declaration */ +# define GuestSessionWaitForFlag_T PRUint32 + + +/* Start of enum GuestSessionWaitResult declaration */ +# define GUESTSESSIONWAITRESULT_IID_STR "c0f6a8a5-fdb6-42bf-a582-56c6f82bcd2d" +# define GUESTSESSIONWAITRESULT_IID { \ + 0xc0f6a8a5, 0xfdb6, 0x42bf, \ + { 0xa5, 0x82, 0x56, 0xc6, 0xf8, 0x2b, 0xcd, 0x2d } \ +} +typedef enum GuestSessionWaitResult +{ + GuestSessionWaitResult_None = 0, + GuestSessionWaitResult_Start = 1, + GuestSessionWaitResult_Terminate = 2, + GuestSessionWaitResult_Status = 3, + GuestSessionWaitResult_Error = 4, + GuestSessionWaitResult_Timeout = 5, + GuestSessionWaitResult_WaitFlagNotSupported = 6 +} GuestSessionWaitResult; +/* End of enum GuestSessionWaitResult declaration */ +# define GuestSessionWaitResult_T PRUint32 + + +/* Start of enum GuestUserState declaration */ +# define GUESTUSERSTATE_IID_STR "b2a82b02-fd3d-4fc2-ba84-6ba5ac8be198" +# define GUESTUSERSTATE_IID { \ + 0xb2a82b02, 0xfd3d, 0x4fc2, \ + { 0xba, 0x84, 0x6b, 0xa5, 0xac, 0x8b, 0xe1, 0x98 } \ +} +typedef enum GuestUserState +{ + GuestUserState_Unknown = 0, + GuestUserState_LoggedIn = 1, + GuestUserState_LoggedOut = 2, + GuestUserState_Locked = 3, + GuestUserState_Unlocked = 4, + GuestUserState_Disabled = 5, + GuestUserState_Idle = 6, + GuestUserState_InUse = 7, + GuestUserState_Created = 8, + GuestUserState_Deleted = 9, + GuestUserState_SessionChanged = 10, + GuestUserState_CredentialsChanged = 11, + GuestUserState_RoleChanged = 12, + GuestUserState_GroupAdded = 13, + GuestUserState_GroupRemoved = 14, + GuestUserState_Elevated = 15 +} GuestUserState; +/* End of enum GuestUserState declaration */ +# define GuestUserState_T PRUint32 + + +/* Start of enum FileSeekOrigin declaration */ +# define FILESEEKORIGIN_IID_STR "ad32f789-4279-4530-979c-f16892e1c263" +# define FILESEEKORIGIN_IID { \ + 0xad32f789, 0x4279, 0x4530, \ + { 0x97, 0x9c, 0xf1, 0x68, 0x92, 0xe1, 0xc2, 0x63 } \ +} +typedef enum FileSeekOrigin +{ + FileSeekOrigin_Begin = 0, + FileSeekOrigin_Current = 1, + FileSeekOrigin_End = 2 +} FileSeekOrigin; +/* End of enum FileSeekOrigin declaration */ +# define FileSeekOrigin_T PRUint32 + + +/* Start of enum ProcessInputFlag declaration */ +# define PROCESSINPUTFLAG_IID_STR "5d38c1dd-2604-4ddf-92e5-0c0cdd3bdbd5" +# define PROCESSINPUTFLAG_IID { \ + 0x5d38c1dd, 0x2604, 0x4ddf, \ + { 0x92, 0xe5, 0x0c, 0x0c, 0xdd, 0x3b, 0xdb, 0xd5 } \ +} +typedef enum ProcessInputFlag +{ + ProcessInputFlag_None = 0, + ProcessInputFlag_EndOfFile = 1 +} ProcessInputFlag; +/* End of enum ProcessInputFlag declaration */ +# define ProcessInputFlag_T PRUint32 + + +/* Start of enum ProcessOutputFlag declaration */ +# define PROCESSOUTPUTFLAG_IID_STR "9979e85a-52bb-40b7-870c-57115e27e0f1" +# define PROCESSOUTPUTFLAG_IID { \ + 0x9979e85a, 0x52bb, 0x40b7, \ + { 0x87, 0x0c, 0x57, 0x11, 0x5e, 0x27, 0xe0, 0xf1 } \ +} +typedef enum ProcessOutputFlag +{ + ProcessOutputFlag_None = 0, + ProcessOutputFlag_StdErr = 1 +} ProcessOutputFlag; +/* End of enum ProcessOutputFlag declaration */ +# define ProcessOutputFlag_T PRUint32 + + +/* Start of enum ProcessWaitForFlag declaration */ +# define PROCESSWAITFORFLAG_IID_STR "23b550c7-78e1-437e-98f0-65fd9757bcd2" +# define PROCESSWAITFORFLAG_IID { \ + 0x23b550c7, 0x78e1, 0x437e, \ + { 0x98, 0xf0, 0x65, 0xfd, 0x97, 0x57, 0xbc, 0xd2 } \ +} +typedef enum ProcessWaitForFlag +{ + ProcessWaitForFlag_None = 0, + ProcessWaitForFlag_Start = 1, + ProcessWaitForFlag_Terminate = 2, + ProcessWaitForFlag_StdIn = 4, + ProcessWaitForFlag_StdOut = 8, + ProcessWaitForFlag_StdErr = 16 +} ProcessWaitForFlag; +/* End of enum ProcessWaitForFlag declaration */ +# define ProcessWaitForFlag_T PRUint32 + + +/* Start of enum ProcessWaitResult declaration */ +# define PROCESSWAITRESULT_IID_STR "40719cbe-f192-4fe9-a231-6697b3c8e2b4" +# define PROCESSWAITRESULT_IID { \ + 0x40719cbe, 0xf192, 0x4fe9, \ + { 0xa2, 0x31, 0x66, 0x97, 0xb3, 0xc8, 0xe2, 0xb4 } \ +} +typedef enum ProcessWaitResult +{ + ProcessWaitResult_None = 0, + ProcessWaitResult_Start = 1, + ProcessWaitResult_Terminate = 2, + ProcessWaitResult_Status = 3, + ProcessWaitResult_Error = 4, + ProcessWaitResult_Timeout = 5, + ProcessWaitResult_StdIn = 6, + ProcessWaitResult_StdOut = 7, + ProcessWaitResult_StdErr = 8, + ProcessWaitResult_WaitFlagNotSupported = 9 +} ProcessWaitResult; +/* End of enum ProcessWaitResult declaration */ +# define ProcessWaitResult_T PRUint32 + + +/* Start of enum FileCopyFlag declaration */ +# define FILECOPYFLAG_IID_STR "791909d7-4c64-2fa4-4303-adb10658d347" +# define FILECOPYFLAG_IID { \ + 0x791909d7, 0x4c64, 0x2fa4, \ + { 0x43, 0x03, 0xad, 0xb1, 0x06, 0x58, 0xd3, 0x47 } \ +} +typedef enum FileCopyFlag +{ + FileCopyFlag_None = 0, + FileCopyFlag_NoReplace = 1, + FileCopyFlag_FollowLinks = 2, + FileCopyFlag_Update = 4 +} FileCopyFlag; +/* End of enum FileCopyFlag declaration */ +# define FileCopyFlag_T PRUint32 + + +/* Start of enum FsObjMoveFlag declaration */ +# define FSOBJMOVEFLAG_IID_STR "2450a05d-80c6-4c96-9a17-94d73293ff86" +# define FSOBJMOVEFLAG_IID { \ + 0x2450a05d, 0x80c6, 0x4c96, \ + { 0x9a, 0x17, 0x94, 0xd7, 0x32, 0x93, 0xff, 0x86 } \ +} +typedef enum FsObjMoveFlag +{ + FsObjMoveFlag_None = 0, + FsObjMoveFlag_Replace = 1, + FsObjMoveFlag_FollowLinks = 2, + FsObjMoveFlag_AllowDirectoryMoves = 4 +} FsObjMoveFlag; +/* End of enum FsObjMoveFlag declaration */ +# define FsObjMoveFlag_T PRUint32 + + +/* Start of enum DirectoryCreateFlag declaration */ +# define DIRECTORYCREATEFLAG_IID_STR "bd721b0e-ced5-4f79-b368-249897c32a36" +# define DIRECTORYCREATEFLAG_IID { \ + 0xbd721b0e, 0xced5, 0x4f79, \ + { 0xb3, 0x68, 0x24, 0x98, 0x97, 0xc3, 0x2a, 0x36 } \ +} +typedef enum DirectoryCreateFlag +{ + DirectoryCreateFlag_None = 0, + DirectoryCreateFlag_Parents = 1 +} DirectoryCreateFlag; +/* End of enum DirectoryCreateFlag declaration */ +# define DirectoryCreateFlag_T PRUint32 + + +/* Start of enum DirectoryCopyFlag declaration */ +# define DIRECTORYCOPYFLAG_IID_STR "b5901856-d064-4fbc-ab06-2909ba106154" +# define DIRECTORYCOPYFLAG_IID { \ + 0xb5901856, 0xd064, 0x4fbc, \ + { 0xab, 0x06, 0x29, 0x09, 0xba, 0x10, 0x61, 0x54 } \ +} +typedef enum DirectoryCopyFlag +{ + DirectoryCopyFlag_None = 0, + DirectoryCopyFlag_CopyIntoExisting = 1 +} DirectoryCopyFlag; +/* End of enum DirectoryCopyFlag declaration */ +# define DirectoryCopyFlag_T PRUint32 + + +/* Start of enum DirectoryRemoveRecFlag declaration */ +# define DIRECTORYREMOVERECFLAG_IID_STR "455aabf0-7692-48f6-9061-f21579b65769" +# define DIRECTORYREMOVERECFLAG_IID { \ + 0x455aabf0, 0x7692, 0x48f6, \ + { 0x90, 0x61, 0xf2, 0x15, 0x79, 0xb6, 0x57, 0x69 } \ +} +typedef enum DirectoryRemoveRecFlag +{ + DirectoryRemoveRecFlag_None = 0, + DirectoryRemoveRecFlag_ContentAndDir = 1, + DirectoryRemoveRecFlag_ContentOnly = 2 +} DirectoryRemoveRecFlag; +/* End of enum DirectoryRemoveRecFlag declaration */ +# define DirectoryRemoveRecFlag_T PRUint32 + + +/* Start of enum FsObjRenameFlag declaration */ +# define FSOBJRENAMEFLAG_IID_STR "59bbf3a1-4e23-d7cf-05d5-ccae32080ed2" +# define FSOBJRENAMEFLAG_IID { \ + 0x59bbf3a1, 0x4e23, 0xd7cf, \ + { 0x05, 0xd5, 0xcc, 0xae, 0x32, 0x08, 0x0e, 0xd2 } \ +} +typedef enum FsObjRenameFlag +{ + FsObjRenameFlag_NoReplace = 0, + FsObjRenameFlag_Replace = 1 +} FsObjRenameFlag; +/* End of enum FsObjRenameFlag declaration */ +# define FsObjRenameFlag_T PRUint32 + + +/* Start of enum ProcessCreateFlag declaration */ +# define PROCESSCREATEFLAG_IID_STR "C544CD2B-F02D-4886-9901-71C523DB8DC5" +# define PROCESSCREATEFLAG_IID { \ + 0xC544CD2B, 0xF02D, 0x4886, \ + { 0x99, 0x01, 0x71, 0xC5, 0x23, 0xDB, 0x8D, 0xC5 } \ +} +typedef enum ProcessCreateFlag +{ + ProcessCreateFlag_None = 0, + ProcessCreateFlag_WaitForProcessStartOnly = 1, + ProcessCreateFlag_IgnoreOrphanedProcesses = 2, + ProcessCreateFlag_Hidden = 4, + ProcessCreateFlag_Profile = 8, + ProcessCreateFlag_WaitForStdOut = 16, + ProcessCreateFlag_WaitForStdErr = 32, + ProcessCreateFlag_ExpandArguments = 64, + ProcessCreateFlag_UnquotedArguments = 128 +} ProcessCreateFlag; +/* End of enum ProcessCreateFlag declaration */ +# define ProcessCreateFlag_T PRUint32 + + +/* Start of enum ProcessPriority declaration */ +# define PROCESSPRIORITY_IID_STR "ee8cac50-e232-49fe-806b-d1214d9c2e49" +# define PROCESSPRIORITY_IID { \ + 0xee8cac50, 0xe232, 0x49fe, \ + { 0x80, 0x6b, 0xd1, 0x21, 0x4d, 0x9c, 0x2e, 0x49 } \ +} +typedef enum ProcessPriority +{ + ProcessPriority_Invalid = 0, + ProcessPriority_Default = 1 +} ProcessPriority; +/* End of enum ProcessPriority declaration */ +# define ProcessPriority_T PRUint32 + + +/* Start of enum SymlinkType declaration */ +# define SYMLINKTYPE_IID_STR "37794668-f8f1-4714-98a5-6f8fa2ed0118" +# define SYMLINKTYPE_IID { \ + 0x37794668, 0xf8f1, 0x4714, \ + { 0x98, 0xa5, 0x6f, 0x8f, 0xa2, 0xed, 0x01, 0x18 } \ +} +typedef enum SymlinkType +{ + SymlinkType_Unknown = 0, + SymlinkType_Directory = 1, + SymlinkType_File = 2 +} SymlinkType; +/* End of enum SymlinkType declaration */ +# define SymlinkType_T PRUint32 + + +/* Start of enum SymlinkReadFlag declaration */ +# define SYMLINKREADFLAG_IID_STR "b7fe2b9d-790e-4b25-8adf-1ca33026931f" +# define SYMLINKREADFLAG_IID { \ + 0xb7fe2b9d, 0x790e, 0x4b25, \ + { 0x8a, 0xdf, 0x1c, 0xa3, 0x30, 0x26, 0x93, 0x1f } \ +} +typedef enum SymlinkReadFlag +{ + SymlinkReadFlag_None = 0, + SymlinkReadFlag_NoSymlinks = 1 +} SymlinkReadFlag; +/* End of enum SymlinkReadFlag declaration */ +# define SymlinkReadFlag_T PRUint32 + + +/* Start of enum ProcessStatus declaration */ +# define PROCESSSTATUS_IID_STR "4d52368f-5b48-4bfe-b486-acf89139b52f" +# define PROCESSSTATUS_IID { \ + 0x4d52368f, 0x5b48, 0x4bfe, \ + { 0xb4, 0x86, 0xac, 0xf8, 0x91, 0x39, 0xb5, 0x2f } \ +} +typedef enum ProcessStatus +{ + ProcessStatus_Undefined = 0, + ProcessStatus_Starting = 10, + ProcessStatus_Started = 100, + ProcessStatus_Paused = 110, + ProcessStatus_Terminating = 480, + ProcessStatus_TerminatedNormally = 500, + ProcessStatus_TerminatedSignal = 510, + ProcessStatus_TerminatedAbnormally = 511, + ProcessStatus_TimedOutKilled = 512, + ProcessStatus_TimedOutAbnormally = 513, + ProcessStatus_Down = 600, + ProcessStatus_Error = 800 +} ProcessStatus; +/* End of enum ProcessStatus declaration */ +# define ProcessStatus_T PRUint32 + + +/* Start of enum ProcessInputStatus declaration */ +# define PROCESSINPUTSTATUS_IID_STR "a4a0ef9c-29cc-4805-9803-c8215ae9da6c" +# define PROCESSINPUTSTATUS_IID { \ + 0xa4a0ef9c, 0x29cc, 0x4805, \ + { 0x98, 0x03, 0xc8, 0x21, 0x5a, 0xe9, 0xda, 0x6c } \ +} +typedef enum ProcessInputStatus +{ + ProcessInputStatus_Undefined = 0, + ProcessInputStatus_Broken = 1, + ProcessInputStatus_Available = 10, + ProcessInputStatus_Written = 50, + ProcessInputStatus_Overflow = 100 +} ProcessInputStatus; +/* End of enum ProcessInputStatus declaration */ +# define ProcessInputStatus_T PRUint32 + + +/* Start of enum PathStyle declaration */ +# define PATHSTYLE_IID_STR "97303a5b-42e8-0a55-d16f-d2a92c295261" +# define PATHSTYLE_IID { \ + 0x97303a5b, 0x42e8, 0x0a55, \ + { 0xd1, 0x6f, 0xd2, 0xa9, 0x2c, 0x29, 0x52, 0x61 } \ +} +typedef enum PathStyle +{ + PathStyle_DOS = 1, + PathStyle_UNIX = 2, + PathStyle_Unknown = 8 +} PathStyle; +/* End of enum PathStyle declaration */ +# define PathStyle_T PRUint32 + + +/* Start of enum FileAccessMode declaration */ +# define FILEACCESSMODE_IID_STR "231a578f-47fb-ea30-3b3e-8489558227f0" +# define FILEACCESSMODE_IID { \ + 0x231a578f, 0x47fb, 0xea30, \ + { 0x3b, 0x3e, 0x84, 0x89, 0x55, 0x82, 0x27, 0xf0 } \ +} +typedef enum FileAccessMode +{ + FileAccessMode_ReadOnly = 1, + FileAccessMode_WriteOnly = 2, + FileAccessMode_ReadWrite = 3, + FileAccessMode_AppendOnly = 4, + FileAccessMode_AppendRead = 5 +} FileAccessMode; +/* End of enum FileAccessMode declaration */ +# define FileAccessMode_T PRUint32 + + +/* Start of enum FileOpenAction declaration */ +# define FILEOPENACTION_IID_STR "12bc97e2-4fc6-a8b4-4f84-0cbf4ab970d2" +# define FILEOPENACTION_IID { \ + 0x12bc97e2, 0x4fc6, 0xa8b4, \ + { 0x4f, 0x84, 0x0c, 0xbf, 0x4a, 0xb9, 0x70, 0xd2 } \ +} +typedef enum FileOpenAction +{ + FileOpenAction_OpenExisting = 1, + FileOpenAction_OpenOrCreate = 2, + FileOpenAction_CreateNew = 3, + FileOpenAction_CreateOrReplace = 4, + FileOpenAction_OpenExistingTruncated = 5, + FileOpenAction_AppendOrCreate = 99 +} FileOpenAction; +/* End of enum FileOpenAction declaration */ +# define FileOpenAction_T PRUint32 + + +/* Start of enum FileSharingMode declaration */ +# define FILESHARINGMODE_IID_STR "f87dfe58-425b-c5ba-7d6d-22adeea25de1" +# define FILESHARINGMODE_IID { \ + 0xf87dfe58, 0x425b, 0xc5ba, \ + { 0x7d, 0x6d, 0x22, 0xad, 0xee, 0xa2, 0x5d, 0xe1 } \ +} +typedef enum FileSharingMode +{ + FileSharingMode_Read = 1, + FileSharingMode_Write = 2, + FileSharingMode_ReadWrite = 3, + FileSharingMode_Delete = 4, + FileSharingMode_ReadDelete = 5, + FileSharingMode_WriteDelete = 6, + FileSharingMode_All = 7 +} FileSharingMode; +/* End of enum FileSharingMode declaration */ +# define FileSharingMode_T PRUint32 + + +/* Start of enum FileOpenExFlag declaration */ +# define FILEOPENEXFLAG_IID_STR "4671abd4-f70c-42aa-8542-6c169cb87a5c" +# define FILEOPENEXFLAG_IID { \ + 0x4671abd4, 0xf70c, 0x42aa, \ + { 0x85, 0x42, 0x6c, 0x16, 0x9c, 0xb8, 0x7a, 0x5c } \ +} +typedef enum FileOpenExFlag +{ + FileOpenExFlag_None = 0 +} FileOpenExFlag; +/* End of enum FileOpenExFlag declaration */ +# define FileOpenExFlag_T PRUint32 + + +/* Start of enum FileStatus declaration */ +# define FILESTATUS_IID_STR "8c86468b-b97b-4080-8914-e29f5b0abd2c" +# define FILESTATUS_IID { \ + 0x8c86468b, 0xb97b, 0x4080, \ + { 0x89, 0x14, 0xe2, 0x9f, 0x5b, 0x0a, 0xbd, 0x2c } \ +} +typedef enum FileStatus +{ + FileStatus_Undefined = 0, + FileStatus_Opening = 10, + FileStatus_Open = 100, + FileStatus_Closing = 150, + FileStatus_Closed = 200, + FileStatus_Down = 600, + FileStatus_Error = 800 +} FileStatus; +/* End of enum FileStatus declaration */ +# define FileStatus_T PRUint32 + + +/* Start of enum FsObjType declaration */ +# define FSOBJTYPE_IID_STR "34a0d1aa-491e-e209-e150-84964d6cee5f" +# define FSOBJTYPE_IID { \ + 0x34a0d1aa, 0x491e, 0xe209, \ + { 0xe1, 0x50, 0x84, 0x96, 0x4d, 0x6c, 0xee, 0x5f } \ +} +typedef enum FsObjType +{ + FsObjType_Unknown = 1, + FsObjType_Fifo = 2, + FsObjType_DevChar = 3, + FsObjType_Directory = 4, + FsObjType_DevBlock = 5, + FsObjType_File = 6, + FsObjType_Symlink = 7, + FsObjType_Socket = 8, + FsObjType_WhiteOut = 9 +} FsObjType; +/* End of enum FsObjType declaration */ +# define FsObjType_T PRUint32 + + +/* Start of enum DnDAction declaration */ +# define DNDACTION_IID_STR "17609e74-778e-4d0e-8827-35f5230f287b" +# define DNDACTION_IID { \ + 0x17609e74, 0x778e, 0x4d0e, \ + { 0x88, 0x27, 0x35, 0xf5, 0x23, 0x0f, 0x28, 0x7b } \ +} +typedef enum DnDAction +{ + DnDAction_Ignore = 0, + DnDAction_Copy = 1, + DnDAction_Move = 2, + DnDAction_Link = 3 +} DnDAction; +/* End of enum DnDAction declaration */ +# define DnDAction_T PRUint32 + + +/* Start of enum DirectoryOpenFlag declaration */ +# define DIRECTORYOPENFLAG_IID_STR "5138837a-8fd2-4194-a1b0-08f7bc3949d0" +# define DIRECTORYOPENFLAG_IID { \ + 0x5138837a, 0x8fd2, 0x4194, \ + { 0xa1, 0xb0, 0x08, 0xf7, 0xbc, 0x39, 0x49, 0xd0 } \ +} +typedef enum DirectoryOpenFlag +{ + DirectoryOpenFlag_None = 0, + DirectoryOpenFlag_NoSymlinks = 1 +} DirectoryOpenFlag; +/* End of enum DirectoryOpenFlag declaration */ +# define DirectoryOpenFlag_T PRUint32 + + +/* Start of enum MediumState declaration */ +# define MEDIUMSTATE_IID_STR "ef41e980-e012-43cd-9dea-479d4ef14d13" +# define MEDIUMSTATE_IID { \ + 0xef41e980, 0xe012, 0x43cd, \ + { 0x9d, 0xea, 0x47, 0x9d, 0x4e, 0xf1, 0x4d, 0x13 } \ +} +typedef enum MediumState +{ + MediumState_NotCreated = 0, + MediumState_Created = 1, + MediumState_LockedRead = 2, + MediumState_LockedWrite = 3, + MediumState_Inaccessible = 4, + MediumState_Creating = 5, + MediumState_Deleting = 6 +} MediumState; +/* End of enum MediumState declaration */ +# define MediumState_T PRUint32 + + +/* Start of enum MediumType declaration */ +# define MEDIUMTYPE_IID_STR "fe663fb5-c244-4e1b-9d81-c628b417dd04" +# define MEDIUMTYPE_IID { \ + 0xfe663fb5, 0xc244, 0x4e1b, \ + { 0x9d, 0x81, 0xc6, 0x28, 0xb4, 0x17, 0xdd, 0x04 } \ +} +typedef enum MediumType +{ + MediumType_Normal = 0, + MediumType_Immutable = 1, + MediumType_Writethrough = 2, + MediumType_Shareable = 3, + MediumType_Readonly = 4, + MediumType_MultiAttach = 5 +} MediumType; +/* End of enum MediumType declaration */ +# define MediumType_T PRUint32 + + +/* Start of enum MediumVariant declaration */ +# define MEDIUMVARIANT_IID_STR "0282e97f-4ef3-4411-a8e0-47c384803cb6" +# define MEDIUMVARIANT_IID { \ + 0x0282e97f, 0x4ef3, 0x4411, \ + { 0xa8, 0xe0, 0x47, 0xc3, 0x84, 0x80, 0x3c, 0xb6 } \ +} +typedef enum MediumVariant +{ + MediumVariant_Standard = 0, + MediumVariant_VmdkSplit2G = 0x01, + MediumVariant_VmdkRawDisk = 0x02, + MediumVariant_VmdkStreamOptimized = 0x04, + MediumVariant_VmdkESX = 0x08, + MediumVariant_VdiZeroExpand = 0x100, + MediumVariant_Fixed = 0x10000, + MediumVariant_Diff = 0x20000, + MediumVariant_Formatted = 0x20000000, + MediumVariant_NoCreateDir = 0x40000000 +} MediumVariant; +/* End of enum MediumVariant declaration */ +# define MediumVariant_T PRUint32 + + +/* Start of enum DataType declaration */ +# define DATATYPE_IID_STR "d90ea51e-a3f1-4a01-beb1-c1723c0d3ba7" +# define DATATYPE_IID { \ + 0xd90ea51e, 0xa3f1, 0x4a01, \ + { 0xbe, 0xb1, 0xc1, 0x72, 0x3c, 0x0d, 0x3b, 0xa7 } \ +} +typedef enum DataType +{ + DataType_Int32 = 0, + DataType_Int8 = 1, + DataType_String = 2 +} DataType; +/* End of enum DataType declaration */ +# define DataType_T PRUint32 + + +/* Start of enum DataFlags declaration */ +# define DATAFLAGS_IID_STR "86884dcf-1d6b-4f1b-b4bf-f5aa44959d60" +# define DATAFLAGS_IID { \ + 0x86884dcf, 0x1d6b, 0x4f1b, \ + { 0xb4, 0xbf, 0xf5, 0xaa, 0x44, 0x95, 0x9d, 0x60 } \ +} +typedef enum DataFlags +{ + DataFlags_None = 0x00, + DataFlags_Mandatory = 0x01, + DataFlags_Expert = 0x02, + DataFlags_Array = 0x04, + DataFlags_FlagMask = 0x07 +} DataFlags; +/* End of enum DataFlags declaration */ +# define DataFlags_T PRUint32 + + +/* Start of enum MediumFormatCapabilities declaration */ +# define MEDIUMFORMATCAPABILITIES_IID_STR "7342ba79-7ce0-4d94-8f86-5ed5a185d9bd" +# define MEDIUMFORMATCAPABILITIES_IID { \ + 0x7342ba79, 0x7ce0, 0x4d94, \ + { 0x8f, 0x86, 0x5e, 0xd5, 0xa1, 0x85, 0xd9, 0xbd } \ +} +typedef enum MediumFormatCapabilities +{ + MediumFormatCapabilities_Uuid = 0x01, + MediumFormatCapabilities_CreateFixed = 0x02, + MediumFormatCapabilities_CreateDynamic = 0x04, + MediumFormatCapabilities_CreateSplit2G = 0x08, + MediumFormatCapabilities_Differencing = 0x10, + MediumFormatCapabilities_Asynchronous = 0x20, + MediumFormatCapabilities_File = 0x40, + MediumFormatCapabilities_Properties = 0x80, + MediumFormatCapabilities_TcpNetworking = 0x100, + MediumFormatCapabilities_VFS = 0x200, + MediumFormatCapabilities_Discard = 0x400, + MediumFormatCapabilities_Preferred = 0x800, + MediumFormatCapabilities_CapabilityMask = 0xFFF +} MediumFormatCapabilities; +/* End of enum MediumFormatCapabilities declaration */ +# define MediumFormatCapabilities_T PRUint32 + + +/* Start of enum PartitionTableType declaration */ +# define PARTITIONTABLETYPE_IID_STR "360066eb-d19e-4fa1-57ef-fed434fbe2a9" +# define PARTITIONTABLETYPE_IID { \ + 0x360066eb, 0xd19e, 0x4fa1, \ + { 0x57, 0xef, 0xfe, 0xd4, 0x34, 0xfb, 0xe2, 0xa9 } \ +} +typedef enum PartitionTableType +{ + PartitionTableType_MBR = 1, + PartitionTableType_GPT = 2 +} PartitionTableType; +/* End of enum PartitionTableType declaration */ +# define PartitionTableType_T PRUint32 + + +/* Start of enum KeyboardLED declaration */ +# define KEYBOARDLED_IID_STR "ef29ea38-409b-49c7-a817-c858d426dfba" +# define KEYBOARDLED_IID { \ + 0xef29ea38, 0x409b, 0x49c7, \ + { 0xa8, 0x17, 0xc8, 0x58, 0xd4, 0x26, 0xdf, 0xba } \ +} +typedef enum KeyboardLED +{ + KeyboardLED_NumLock = 0x01, + KeyboardLED_CapsLock = 0x02, + KeyboardLED_ScrollLock = 0x04 +} KeyboardLED; +/* End of enum KeyboardLED declaration */ +# define KeyboardLED_T PRUint32 + + +/* Start of enum MouseButtonState declaration */ +# define MOUSEBUTTONSTATE_IID_STR "9ee094b8-b28a-4d56-a166-973cb588d7f8" +# define MOUSEBUTTONSTATE_IID { \ + 0x9ee094b8, 0xb28a, 0x4d56, \ + { 0xa1, 0x66, 0x97, 0x3c, 0xb5, 0x88, 0xd7, 0xf8 } \ +} +typedef enum MouseButtonState +{ + MouseButtonState_LeftButton = 0x01, + MouseButtonState_RightButton = 0x02, + MouseButtonState_MiddleButton = 0x04, + MouseButtonState_WheelUp = 0x08, + MouseButtonState_WheelDown = 0x10, + MouseButtonState_XButton1 = 0x20, + MouseButtonState_XButton2 = 0x40, + MouseButtonState_MouseStateMask = 0x7F +} MouseButtonState; +/* End of enum MouseButtonState declaration */ +# define MouseButtonState_T PRUint32 + + +/* Start of enum TouchContactState declaration */ +# define TOUCHCONTACTSTATE_IID_STR "3f942686-2506-421c-927c-90d4b45f4a38" +# define TOUCHCONTACTSTATE_IID { \ + 0x3f942686, 0x2506, 0x421c, \ + { 0x92, 0x7c, 0x90, 0xd4, 0xb4, 0x5f, 0x4a, 0x38 } \ +} +typedef enum TouchContactState +{ + TouchContactState_None = 0x00, + TouchContactState_InContact = 0x01, + TouchContactState_InRange = 0x02, + TouchContactState_ContactStateMask = 0x03 +} TouchContactState; +/* End of enum TouchContactState declaration */ +# define TouchContactState_T PRUint32 + + +/* Start of enum FramebufferCapabilities declaration */ +# define FRAMEBUFFERCAPABILITIES_IID_STR "cc395839-30fa-4ca5-ae65-e6360e3edd7a" +# define FRAMEBUFFERCAPABILITIES_IID { \ + 0xcc395839, 0x30fa, 0x4ca5, \ + { 0xae, 0x65, 0xe6, 0x36, 0x0e, 0x3e, 0xdd, 0x7a } \ +} +typedef enum FramebufferCapabilities +{ + FramebufferCapabilities_UpdateImage = 0x01, + FramebufferCapabilities_VHWA = 0x02, + FramebufferCapabilities_VisibleRegion = 0x04, + FramebufferCapabilities_RenderCursor = 0x08, + FramebufferCapabilities_MoveCursor = 0x10 +} FramebufferCapabilities; +/* End of enum FramebufferCapabilities declaration */ +# define FramebufferCapabilities_T PRUint32 + + +/* Start of enum GuestMonitorStatus declaration */ +# define GUESTMONITORSTATUS_IID_STR "6b8d3f71-39cb-459e-a916-48917ed43e19" +# define GUESTMONITORSTATUS_IID { \ + 0x6b8d3f71, 0x39cb, 0x459e, \ + { 0xa9, 0x16, 0x48, 0x91, 0x7e, 0xd4, 0x3e, 0x19 } \ +} +typedef enum GuestMonitorStatus +{ + GuestMonitorStatus_Disabled = 0, + GuestMonitorStatus_Enabled = 1, + GuestMonitorStatus_Blank = 2 +} GuestMonitorStatus; +/* End of enum GuestMonitorStatus declaration */ +# define GuestMonitorStatus_T PRUint32 + + +/* Start of enum ScreenLayoutMode declaration */ +# define SCREENLAYOUTMODE_IID_STR "8fa1964c-8774-11e9-ae5d-1f419105e68d" +# define SCREENLAYOUTMODE_IID { \ + 0x8fa1964c, 0x8774, 0x11e9, \ + { 0xae, 0x5d, 0x1f, 0x41, 0x91, 0x05, 0xe6, 0x8d } \ +} +typedef enum ScreenLayoutMode +{ + ScreenLayoutMode_Apply = 0, + ScreenLayoutMode_Reset = 1, + ScreenLayoutMode_Attach = 2, + ScreenLayoutMode_Silent = 3 +} ScreenLayoutMode; +/* End of enum ScreenLayoutMode declaration */ +# define ScreenLayoutMode_T PRUint32 + + +/* Start of enum NetworkAttachmentType declaration */ +# define NETWORKATTACHMENTTYPE_IID_STR "524a8f9d-4b86-4b51-877d-1aa27c4ebeac" +# define NETWORKATTACHMENTTYPE_IID { \ + 0x524a8f9d, 0x4b86, 0x4b51, \ + { 0x87, 0x7d, 0x1a, 0xa2, 0x7c, 0x4e, 0xbe, 0xac } \ +} +typedef enum NetworkAttachmentType +{ + NetworkAttachmentType_Null = 0, + NetworkAttachmentType_NAT = 1, + NetworkAttachmentType_Bridged = 2, + NetworkAttachmentType_Internal = 3, + NetworkAttachmentType_HostOnly = 4, + NetworkAttachmentType_Generic = 5, + NetworkAttachmentType_NATNetwork = 6, + NetworkAttachmentType_Cloud = 7 +} NetworkAttachmentType; +/* End of enum NetworkAttachmentType declaration */ +# define NetworkAttachmentType_T PRUint32 + + +/* Start of enum NetworkAdapterType declaration */ +# define NETWORKADAPTERTYPE_IID_STR "3c2281e4-d952-4e87-8c7d-24379cb6a81c" +# define NETWORKADAPTERTYPE_IID { \ + 0x3c2281e4, 0xd952, 0x4e87, \ + { 0x8c, 0x7d, 0x24, 0x37, 0x9c, 0xb6, 0xa8, 0x1c } \ +} +typedef enum NetworkAdapterType +{ + NetworkAdapterType_Null = 0, + NetworkAdapterType_Am79C970A = 1, + NetworkAdapterType_Am79C973 = 2, + NetworkAdapterType_I82540EM = 3, + NetworkAdapterType_I82543GC = 4, + NetworkAdapterType_I82545EM = 5, + NetworkAdapterType_Virtio = 6, + NetworkAdapterType_Am79C960 = 7, + NetworkAdapterType_Virtio_1_0 = 8 +} NetworkAdapterType; +/* End of enum NetworkAdapterType declaration */ +# define NetworkAdapterType_T PRUint32 + + +/* Start of enum NetworkAdapterPromiscModePolicy declaration */ +# define NETWORKADAPTERPROMISCMODEPOLICY_IID_STR "c963768a-376f-4c85-8d84-d8ced4b7269e" +# define NETWORKADAPTERPROMISCMODEPOLICY_IID { \ + 0xc963768a, 0x376f, 0x4c85, \ + { 0x8d, 0x84, 0xd8, 0xce, 0xd4, 0xb7, 0x26, 0x9e } \ +} +typedef enum NetworkAdapterPromiscModePolicy +{ + NetworkAdapterPromiscModePolicy_Deny = 1, + NetworkAdapterPromiscModePolicy_AllowNetwork = 2, + NetworkAdapterPromiscModePolicy_AllowAll = 3 +} NetworkAdapterPromiscModePolicy; +/* End of enum NetworkAdapterPromiscModePolicy declaration */ +# define NetworkAdapterPromiscModePolicy_T PRUint32 + + +/* Start of enum PortMode declaration */ +# define PORTMODE_IID_STR "7485fcfd-d603-470a-87af-26d33beb7de9" +# define PORTMODE_IID { \ + 0x7485fcfd, 0xd603, 0x470a, \ + { 0x87, 0xaf, 0x26, 0xd3, 0x3b, 0xeb, 0x7d, 0xe9 } \ +} +typedef enum PortMode +{ + PortMode_Disconnected = 0, + PortMode_HostPipe = 1, + PortMode_HostDevice = 2, + PortMode_RawFile = 3, + PortMode_TCP = 4 +} PortMode; +/* End of enum PortMode declaration */ +# define PortMode_T PRUint32 + + +/* Start of enum UartType declaration */ +# define UARTTYPE_IID_STR "c8899d39-0b90-4265-9d02-1e38bd4d1b39" +# define UARTTYPE_IID { \ + 0xc8899d39, 0x0b90, 0x4265, \ + { 0x9d, 0x02, 0x1e, 0x38, 0xbd, 0x4d, 0x1b, 0x39 } \ +} +typedef enum UartType +{ + UartType_U16450 = 0, + UartType_U16550A = 1, + UartType_U16750 = 2 +} UartType; +/* End of enum UartType declaration */ +# define UartType_T PRUint32 + + +/* Start of enum VMExecutionEngine declaration */ +# define VMEXECUTIONENGINE_IID_STR "56029577-31f7-44d2-3334-7ecbf95294b6" +# define VMEXECUTIONENGINE_IID { \ + 0x56029577, 0x31f7, 0x44d2, \ + { 0x33, 0x34, 0x7e, 0xcb, 0xf9, 0x52, 0x94, 0xb6 } \ +} +typedef enum VMExecutionEngine +{ + VMExecutionEngine_NotSet = 0, + VMExecutionEngine_RawMode = 1, + VMExecutionEngine_HwVirt = 2, + VMExecutionEngine_NativeApi = 3 +} VMExecutionEngine; +/* End of enum VMExecutionEngine declaration */ +# define VMExecutionEngine_T PRUint32 + + +/* Start of enum USBControllerType declaration */ +# define USBCONTROLLERTYPE_IID_STR "8fdd1c6a-5412-41da-ab07-7baed7d6e18e" +# define USBCONTROLLERTYPE_IID { \ + 0x8fdd1c6a, 0x5412, 0x41da, \ + { 0xab, 0x07, 0x7b, 0xae, 0xd7, 0xd6, 0xe1, 0x8e } \ +} +typedef enum USBControllerType +{ + USBControllerType_Null = 0, + USBControllerType_OHCI = 1, + USBControllerType_EHCI = 2, + USBControllerType_XHCI = 3, + USBControllerType_Last = 4 +} USBControllerType; +/* End of enum USBControllerType declaration */ +# define USBControllerType_T PRUint32 + + +/* Start of enum USBConnectionSpeed declaration */ +# define USBCONNECTIONSPEED_IID_STR "d2915840-ea26-4fb4-b72a-21eaf6b888ff" +# define USBCONNECTIONSPEED_IID { \ + 0xd2915840, 0xea26, 0x4fb4, \ + { 0xb7, 0x2a, 0x21, 0xea, 0xf6, 0xb8, 0x88, 0xff } \ +} +typedef enum USBConnectionSpeed +{ + USBConnectionSpeed_Null = 0, + USBConnectionSpeed_Low = 1, + USBConnectionSpeed_Full = 2, + USBConnectionSpeed_High = 3, + USBConnectionSpeed_Super = 4, + USBConnectionSpeed_SuperPlus = 5 +} USBConnectionSpeed; +/* End of enum USBConnectionSpeed declaration */ +# define USBConnectionSpeed_T PRUint32 + + +/* Start of enum USBDeviceState declaration */ +# define USBDEVICESTATE_IID_STR "b99a2e65-67fb-4882-82fd-f3e5e8193ab4" +# define USBDEVICESTATE_IID { \ + 0xb99a2e65, 0x67fb, 0x4882, \ + { 0x82, 0xfd, 0xf3, 0xe5, 0xe8, 0x19, 0x3a, 0xb4 } \ +} +typedef enum USBDeviceState +{ + USBDeviceState_NotSupported = 0, + USBDeviceState_Unavailable = 1, + USBDeviceState_Busy = 2, + USBDeviceState_Available = 3, + USBDeviceState_Held = 4, + USBDeviceState_Captured = 5 +} USBDeviceState; +/* End of enum USBDeviceState declaration */ +# define USBDeviceState_T PRUint32 + + +/* Start of enum USBDeviceFilterAction declaration */ +# define USBDEVICEFILTERACTION_IID_STR "cbc30a49-2f4e-43b5-9da6-121320475933" +# define USBDEVICEFILTERACTION_IID { \ + 0xcbc30a49, 0x2f4e, 0x43b5, \ + { 0x9d, 0xa6, 0x12, 0x13, 0x20, 0x47, 0x59, 0x33 } \ +} +typedef enum USBDeviceFilterAction +{ + USBDeviceFilterAction_Null = 0, + USBDeviceFilterAction_Ignore = 1, + USBDeviceFilterAction_Hold = 2 +} USBDeviceFilterAction; +/* End of enum USBDeviceFilterAction declaration */ +# define USBDeviceFilterAction_T PRUint32 + + +/* Start of enum AudioDriverType declaration */ +# define AUDIODRIVERTYPE_IID_STR "4bcc3d73-c2fe-40db-b72f-0c2ca9d68496" +# define AUDIODRIVERTYPE_IID { \ + 0x4bcc3d73, 0xc2fe, 0x40db, \ + { 0xb7, 0x2f, 0x0c, 0x2c, 0xa9, 0xd6, 0x84, 0x96 } \ +} +typedef enum AudioDriverType +{ + 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; +/* End of enum AudioDriverType declaration */ +# define AudioDriverType_T PRUint32 + + +/* Start of enum AudioControllerType declaration */ +# define AUDIOCONTROLLERTYPE_IID_STR "7afd395c-42c3-444e-8788-3ce80292f36c" +# define AUDIOCONTROLLERTYPE_IID { \ + 0x7afd395c, 0x42c3, 0x444e, \ + { 0x87, 0x88, 0x3c, 0xe8, 0x02, 0x92, 0xf3, 0x6c } \ +} +typedef enum AudioControllerType +{ + AudioControllerType_AC97 = 0, + AudioControllerType_SB16 = 1, + AudioControllerType_HDA = 2 +} AudioControllerType; +/* End of enum AudioControllerType declaration */ +# define AudioControllerType_T PRUint32 + + +/* Start of enum AudioCodecType declaration */ +# define AUDIOCODECTYPE_IID_STR "7b406301-f520-420c-9805-8ce11c086370" +# define AUDIOCODECTYPE_IID { \ + 0x7b406301, 0xf520, 0x420c, \ + { 0x98, 0x05, 0x8c, 0xe1, 0x1c, 0x08, 0x63, 0x70 } \ +} +typedef enum AudioCodecType +{ + AudioCodecType_Null = 0, + AudioCodecType_SB16 = 1, + AudioCodecType_STAC9700 = 2, + AudioCodecType_AD1980 = 3, + AudioCodecType_STAC9221 = 4 +} AudioCodecType; +/* End of enum AudioCodecType declaration */ +# define AudioCodecType_T PRUint32 + + +/* Start of enum AuthType declaration */ +# define AUTHTYPE_IID_STR "7eef6ef6-98c2-4dc2-ab35-10d2b292028d" +# define AUTHTYPE_IID { \ + 0x7eef6ef6, 0x98c2, 0x4dc2, \ + { 0xab, 0x35, 0x10, 0xd2, 0xb2, 0x92, 0x02, 0x8d } \ +} +typedef enum AuthType +{ + AuthType_Null = 0, + AuthType_External = 1, + AuthType_Guest = 2 +} AuthType; +/* End of enum AuthType declaration */ +# define AuthType_T PRUint32 + + +/* Start of enum Reason declaration */ +# define REASON_IID_STR "e7e8e097-299d-4e98-8bbc-c31c2d47d0cc" +# define REASON_IID { \ + 0xe7e8e097, 0x299d, 0x4e98, \ + { 0x8b, 0xbc, 0xc3, 0x1c, 0x2d, 0x47, 0xd0, 0xcc } \ +} +typedef enum Reason +{ + Reason_Unspecified = 0, + Reason_HostSuspend = 1, + Reason_HostResume = 2, + Reason_HostBatteryLow = 3, + Reason_Snapshot = 4 +} Reason; +/* End of enum Reason declaration */ +# define Reason_T PRUint32 + + +/* Start of enum StorageBus declaration */ +# define STORAGEBUS_IID_STR "f9510869-7d07-46ba-96a6-6728fbf4adee" +# define STORAGEBUS_IID { \ + 0xf9510869, 0x7d07, 0x46ba, \ + { 0x96, 0xa6, 0x67, 0x28, 0xfb, 0xf4, 0xad, 0xee } \ +} +typedef enum StorageBus +{ + StorageBus_Null = 0, + StorageBus_IDE = 1, + StorageBus_SATA = 2, + StorageBus_SCSI = 3, + StorageBus_Floppy = 4, + StorageBus_SAS = 5, + StorageBus_USB = 6, + StorageBus_PCIe = 7, + StorageBus_VirtioSCSI = 8 +} StorageBus; +/* End of enum StorageBus declaration */ +# define StorageBus_T PRUint32 + + +/* Start of enum StorageControllerType declaration */ +# define STORAGECONTROLLERTYPE_IID_STR "a77d457d-66a3-4368-b24c-293d0f562a9f" +# define STORAGECONTROLLERTYPE_IID { \ + 0xa77d457d, 0x66a3, 0x4368, \ + { 0xb2, 0x4c, 0x29, 0x3d, 0x0f, 0x56, 0x2a, 0x9f } \ +} +typedef enum StorageControllerType +{ + 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_USB = 9, + StorageControllerType_NVMe = 10, + StorageControllerType_VirtioSCSI = 11 +} StorageControllerType; +/* End of enum StorageControllerType declaration */ +# define StorageControllerType_T PRUint32 + + +/* Start of enum ChipsetType declaration */ +# define CHIPSETTYPE_IID_STR "8b4096a8-a7c3-4d3b-bbb1-05a0a51ec394" +# define CHIPSETTYPE_IID { \ + 0x8b4096a8, 0xa7c3, 0x4d3b, \ + { 0xbb, 0xb1, 0x05, 0xa0, 0xa5, 0x1e, 0xc3, 0x94 } \ +} +typedef enum ChipsetType +{ + ChipsetType_Null = 0, + ChipsetType_PIIX3 = 1, + ChipsetType_ICH9 = 2 +} ChipsetType; +/* End of enum ChipsetType declaration */ +# define ChipsetType_T PRUint32 + + +/* Start of enum NATAliasMode declaration */ +# define NATALIASMODE_IID_STR "67772168-50d9-11df-9669-7fb714ee4fa1" +# define NATALIASMODE_IID { \ + 0x67772168, 0x50d9, 0x11df, \ + { 0x96, 0x69, 0x7f, 0xb7, 0x14, 0xee, 0x4f, 0xa1 } \ +} +typedef enum NATAliasMode +{ + NATAliasMode_AliasLog = 0x1, + NATAliasMode_AliasProxyOnly = 0x02, + NATAliasMode_AliasUseSamePorts = 0x04 +} NATAliasMode; +/* End of enum NATAliasMode declaration */ +# define NATAliasMode_T PRUint32 + + +/* Start of enum NATProtocol declaration */ +# define NATPROTOCOL_IID_STR "e90164be-eb03-11de-94af-fff9b1c1b19f" +# define NATPROTOCOL_IID { \ + 0xe90164be, 0xeb03, 0x11de, \ + { 0x94, 0xaf, 0xff, 0xf9, 0xb1, 0xc1, 0xb1, 0x9f } \ +} +typedef enum NATProtocol +{ + NATProtocol_UDP = 0, + NATProtocol_TCP = 1 +} NATProtocol; +/* End of enum NATProtocol declaration */ +# define NATProtocol_T PRUint32 + + +/* Start of enum BandwidthGroupType declaration */ +# define BANDWIDTHGROUPTYPE_IID_STR "1d92b67d-dc69-4be9-ad4c-93a01e1e0c8e" +# define BANDWIDTHGROUPTYPE_IID { \ + 0x1d92b67d, 0xdc69, 0x4be9, \ + { 0xad, 0x4c, 0x93, 0xa0, 0x1e, 0x1e, 0x0c, 0x8e } \ +} +typedef enum BandwidthGroupType +{ + BandwidthGroupType_Null = 0, + BandwidthGroupType_Disk = 1, + BandwidthGroupType_Network = 2 +} BandwidthGroupType; +/* End of enum BandwidthGroupType declaration */ +# define BandwidthGroupType_T PRUint32 + + +/* Start of enum VBoxEventType declaration */ +# define VBOXEVENTTYPE_IID_STR "d5d15e38-808d-11e9-aaac-4bc5d973ca37" +# define VBOXEVENTTYPE_IID { \ + 0xd5d15e38, 0x808d, 0x11e9, \ + { 0xaa, 0xac, 0x4b, 0xc5, 0xd9, 0x73, 0xca, 0x37 } \ +} +typedef enum VBoxEventType +{ + 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_OnClipboardModeChanged = 72, + VBoxEventType_OnDnDModeChanged = 73, + VBoxEventType_OnNATNetworkChanged = 74, + VBoxEventType_OnNATNetworkStartStop = 75, + VBoxEventType_OnNATNetworkAlter = 76, + VBoxEventType_OnNATNetworkCreationDeletion = 77, + VBoxEventType_OnNATNetworkSetting = 78, + VBoxEventType_OnNATNetworkPortForward = 79, + VBoxEventType_OnGuestSessionStateChanged = 80, + VBoxEventType_OnGuestSessionRegistered = 81, + VBoxEventType_OnGuestProcessRegistered = 82, + VBoxEventType_OnGuestProcessStateChanged = 83, + VBoxEventType_OnGuestProcessInputNotify = 84, + VBoxEventType_OnGuestProcessOutput = 85, + VBoxEventType_OnGuestFileRegistered = 86, + VBoxEventType_OnGuestFileStateChanged = 87, + VBoxEventType_OnGuestFileOffsetChanged = 88, + VBoxEventType_OnGuestFileRead = 89, + VBoxEventType_OnGuestFileWrite = 90, + VBoxEventType_OnRecordingChanged = 91, + VBoxEventType_OnGuestUserStateChanged = 92, + VBoxEventType_OnGuestMultiTouch = 93, + VBoxEventType_OnHostNameResolutionConfigurationChange = 94, + VBoxEventType_OnSnapshotRestored = 95, + VBoxEventType_OnMediumConfigChanged = 96, + VBoxEventType_OnAudioAdapterChanged = 97, + VBoxEventType_OnProgressPercentageChanged = 98, + VBoxEventType_OnProgressTaskCompleted = 99, + VBoxEventType_OnCursorPositionChanged = 100, + VBoxEventType_OnGuestAdditionsStatusChanged = 101, + VBoxEventType_OnGuestMonitorInfoChanged = 102, + VBoxEventType_OnGuestFileSizeChanged = 103, + VBoxEventType_OnClipboardFileTransferModeChanged = 104, + VBoxEventType_Last = 105 +} VBoxEventType; +/* End of enum VBoxEventType declaration */ +# define VBoxEventType_T PRUint32 + + +/* Start of enum GuestMouseEventMode declaration */ +# define GUESTMOUSEEVENTMODE_IID_STR "4b500146-ebba-4b7c-bc29-69c2d57a5caf" +# define GUESTMOUSEEVENTMODE_IID { \ + 0x4b500146, 0xebba, 0x4b7c, \ + { 0xbc, 0x29, 0x69, 0xc2, 0xd5, 0x7a, 0x5c, 0xaf } \ +} +typedef enum GuestMouseEventMode +{ + GuestMouseEventMode_Relative = 0, + GuestMouseEventMode_Absolute = 1 +} GuestMouseEventMode; +/* End of enum GuestMouseEventMode declaration */ +# define GuestMouseEventMode_T PRUint32 + + +/* Start of enum GuestMonitorChangedEventType declaration */ +# define GUESTMONITORCHANGEDEVENTTYPE_IID_STR "ef172985-7e36-4297-95be-e46396968d66" +# define GUESTMONITORCHANGEDEVENTTYPE_IID { \ + 0xef172985, 0x7e36, 0x4297, \ + { 0x95, 0xbe, 0xe4, 0x63, 0x96, 0x96, 0x8d, 0x66 } \ +} +typedef enum GuestMonitorChangedEventType +{ + GuestMonitorChangedEventType_Enabled = 0, + GuestMonitorChangedEventType_Disabled = 1, + GuestMonitorChangedEventType_NewOrigin = 2 +} GuestMonitorChangedEventType; +/* End of enum GuestMonitorChangedEventType declaration */ +# define GuestMonitorChangedEventType_T PRUint32 + + +/* Start of enum FormValueType declaration */ +# define FORMVALUETYPE_IID_STR "43d794a0-7c98-11e9-a346-a36d5fa858a5" +# define FORMVALUETYPE_IID { \ + 0x43d794a0, 0x7c98, 0x11e9, \ + { 0xa3, 0x46, 0xa3, 0x6d, 0x5f, 0xa8, 0x58, 0xa5 } \ +} +typedef enum FormValueType +{ + FormValueType_Boolean = 0, + FormValueType_String = 1, + FormValueType_Choice = 2, + FormValueType_RangedInteger = 3 +} FormValueType; +/* End of enum FormValueType declaration */ +# define FormValueType_T PRUint32 + + +/* Start of enum CloudMachineState declaration */ +# define CLOUDMACHINESTATE_IID_STR "67b6d054-0154-4f5d-b71b-6ac406e1ff78" +# define CLOUDMACHINESTATE_IID { \ + 0x67b6d054, 0x0154, 0x4f5d, \ + { 0xb7, 0x1b, 0x6a, 0xc4, 0x06, 0xe1, 0xff, 0x78 } \ +} +typedef enum CloudMachineState +{ + CloudMachineState_Invalid = 0, + CloudMachineState_Provisioning = 1, + CloudMachineState_Running = 2, + CloudMachineState_Starting = 3, + CloudMachineState_Stopping = 4, + CloudMachineState_Stopped = 5, + CloudMachineState_CreatingImage = 6, + CloudMachineState_Terminating = 7, + CloudMachineState_Terminated = 8 +} CloudMachineState; +/* End of enum CloudMachineState declaration */ +# define CloudMachineState_T PRUint32 + + +/* Start of enum CloudImageState declaration */ +# define CLOUDIMAGESTATE_IID_STR "6e5d6762-eea2-4f2c-b104-2952d0aa8a0a" +# define CLOUDIMAGESTATE_IID { \ + 0x6e5d6762, 0xeea2, 0x4f2c, \ + { 0xb1, 0x04, 0x29, 0x52, 0xd0, 0xaa, 0x8a, 0x0a } \ +} +typedef enum CloudImageState +{ + CloudImageState_Invalid = 0, + CloudImageState_Provisioning = 1, + CloudImageState_Importing = 2, + CloudImageState_Available = 3, + CloudImageState_Exporting = 4, + CloudImageState_Disabled = 5, + CloudImageState_Deleted = 6 +} CloudImageState; +/* End of enum CloudImageState declaration */ +# define CloudImageState_T PRUint32 + + +/* Start of struct IVirtualBoxErrorInfo declaration */ +# define IVIRTUALBOXERRORINFO_IID_STR "c1bcc6d5-7966-481d-ab0b-d0ed73e28135" +# define IVIRTUALBOXERRORINFO_IID { \ + 0xc1bcc6d5, 0x7966, 0x481d, \ + { 0xab, 0x0b, 0xd0, 0xed, 0x73, 0xe2, 0x81, 0x35 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVirtualBoxErrorInfo); +# ifndef VBOX_WITH_GLUE +struct IVirtualBoxErrorInfo_vtbl +{ + struct nsIException_vtbl nsiexception; + + nsresult (*GetResultCode)(IVirtualBoxErrorInfo *pThis, PRInt32 *resultCode); + + nsresult (*GetResultDetail)(IVirtualBoxErrorInfo *pThis, PRInt32 *resultDetail); + + nsresult (*GetInterfaceID)(IVirtualBoxErrorInfo *pThis, PRUnichar * *interfaceID); + + nsresult (*GetComponent)(IVirtualBoxErrorInfo *pThis, PRUnichar * *component); + + nsresult (*GetText)(IVirtualBoxErrorInfo *pThis, PRUnichar * *text); + + nsresult (*GetNext)(IVirtualBoxErrorInfo *pThis, IVirtualBoxErrorInfo * *next); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVirtualBoxErrorInfoVtbl +{ + nsresult (*QueryInterface)(IVirtualBoxErrorInfo *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVirtualBoxErrorInfo *pThis); + nsrefcnt (*Release)(IVirtualBoxErrorInfo *pThis); + nsresult (*GetMessage)(IVirtualBoxErrorInfo *pThis, PRUnichar * *aMessage); + nsresult (*GetResult)(IVirtualBoxErrorInfo *pThis, nsresult *aResult); + nsresult (*GetName)(IVirtualBoxErrorInfo*pThis, PRUnichar * *aName); + nsresult (*GetFilename)(IVirtualBoxErrorInfo *pThis, PRUnichar * *aFilename); + nsresult (*GetLineNumber)(IVirtualBoxErrorInfo *pThis, PRUint32 *aLineNumber); + nsresult (*GetColumnNumber)(IVirtualBoxErrorInfo *pThis, PRUint32 *aColumnNumber); + nsresult (*GetLocation)(IVirtualBoxErrorInfo *pThis, nsIStackFrame * *aLocation); + nsresult (*GetInner)(IVirtualBoxErrorInfo *pThis, nsIException * *aInner); + nsresult (*GetData)(IVirtualBoxErrorInfo *pThis, nsISupports * *aData); + nsresult (*ToString)(IVirtualBoxErrorInfo *pThis, PRUnichar **_retval); + nsresult (*GetResultCode)(IVirtualBoxErrorInfo *pThis, PRInt32 *resultCode); + + nsresult (*GetResultDetail)(IVirtualBoxErrorInfo *pThis, PRInt32 *resultDetail); + + nsresult (*GetInterfaceID)(IVirtualBoxErrorInfo *pThis, PRUnichar * *interfaceID); + + nsresult (*GetComponent)(IVirtualBoxErrorInfo *pThis, PRUnichar * *component); + + nsresult (*GetText)(IVirtualBoxErrorInfo *pThis, PRUnichar * *text); + + nsresult (*GetNext)(IVirtualBoxErrorInfo *pThis, IVirtualBoxErrorInfo * *next); + +}; +# define IVirtualBoxErrorInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVirtualBoxErrorInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVirtualBoxErrorInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define IVirtualBoxErrorInfo_get_Message(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define IVirtualBoxErrorInfo_GetMessage(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define IVirtualBoxErrorInfo_get_Result(p, aResult) ((p)->lpVtbl->GetResult(p, aResult)) +# define IVirtualBoxErrorInfo_GetResult(p, aResult) ((p)->lpVtbl->GetResult(p, aResult)) +# define IVirtualBoxErrorInfo_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IVirtualBoxErrorInfo_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IVirtualBoxErrorInfo_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IVirtualBoxErrorInfo_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IVirtualBoxErrorInfo_get_LineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define IVirtualBoxErrorInfo_GetLineNumber(p, aLineNumber) ((p)->lpVtbl->GetLineNumber(p, aLineNumber)) +# define IVirtualBoxErrorInfo_get_ColumnNumber(p, aColumnNumber) ((p)->lpVtbl->GetColumnNumber(p, aColumnNumber)) +# define IVirtualBoxErrorInfo_GetColumnNumber(p, aColumnNumber) ((p)->lpVtbl->GetColumnNumber(p, aColumnNumber)) +# define IVirtualBoxErrorInfo_get_Location(p, aLocation) ((p)->lpVtbl->GetLocation(p, aLocation)) +# define IVirtualBoxErrorInfo_GetLocation(p, aLocation) ((p)->lpVtbl->GetLocation(p, aLocation)) +# define IVirtualBoxErrorInfo_get_Inner(p, aInner) ((p)->lpVtbl->GetInner(p, aInner)) +# define IVirtualBoxErrorInfo_GetInner(p, aInner) ((p)->lpVtbl->GetInner(p, aInner)) +# define IVirtualBoxErrorInfo_get_Data(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define IVirtualBoxErrorInfo_GetData(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define IVirtualBoxErrorInfo_ToString(p, retval) ((p)->lpVtbl->ToString(p, retval)) +# define IVirtualBoxErrorInfo_get_ResultCode(p, aResultCode) ((p)->lpVtbl->GetResultCode(p, aResultCode)) +# define IVirtualBoxErrorInfo_GetResultCode(p, aResultCode) ((p)->lpVtbl->GetResultCode(p, aResultCode)) +# define IVirtualBoxErrorInfo_get_ResultDetail(p, aResultDetail) ((p)->lpVtbl->GetResultDetail(p, aResultDetail)) +# define IVirtualBoxErrorInfo_GetResultDetail(p, aResultDetail) ((p)->lpVtbl->GetResultDetail(p, aResultDetail)) +# define IVirtualBoxErrorInfo_get_InterfaceID(p, aInterfaceID) ((p)->lpVtbl->GetInterfaceID(p, aInterfaceID)) +# define IVirtualBoxErrorInfo_GetInterfaceID(p, aInterfaceID) ((p)->lpVtbl->GetInterfaceID(p, aInterfaceID)) +# define IVirtualBoxErrorInfo_get_Component(p, aComponent) ((p)->lpVtbl->GetComponent(p, aComponent)) +# define IVirtualBoxErrorInfo_GetComponent(p, aComponent) ((p)->lpVtbl->GetComponent(p, aComponent)) +# define IVirtualBoxErrorInfo_get_Text(p, aText) ((p)->lpVtbl->GetText(p, aText)) +# define IVirtualBoxErrorInfo_GetText(p, aText) ((p)->lpVtbl->GetText(p, aText)) +# define IVirtualBoxErrorInfo_get_Next(p, aNext) ((p)->lpVtbl->GetNext(p, aNext)) +# define IVirtualBoxErrorInfo_GetNext(p, aNext) ((p)->lpVtbl->GetNext(p, aNext)) +# endif /* VBOX_WITH_GLUE */ + +interface IVirtualBoxErrorInfo +{ +# ifndef VBOX_WITH_GLUE + struct IVirtualBoxErrorInfo_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVirtualBoxErrorInfoVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVirtualBoxErrorInfo declaration */ + + +/* Start of struct INATNetwork declaration */ +# define INATNETWORK_IID_STR "4fdebbf0-be30-49c0-b315-e9749e1bded1" +# define INATNETWORK_IID { \ + 0x4fdebbf0, 0xbe30, 0x49c0, \ + { 0xb3, 0x15, 0xe9, 0x74, 0x9e, 0x1b, 0xde, 0xd1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetwork); +# ifndef VBOX_WITH_GLUE +struct INATNetwork_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetNetworkName)(INATNetwork *pThis, PRUnichar * *networkName); + nsresult (*SetNetworkName)(INATNetwork *pThis, PRUnichar * networkName); + + nsresult (*GetEnabled)(INATNetwork *pThis, PRBool *enabled); + nsresult (*SetEnabled)(INATNetwork *pThis, PRBool enabled); + + nsresult (*GetNetwork)(INATNetwork *pThis, PRUnichar * *network); + nsresult (*SetNetwork)(INATNetwork *pThis, PRUnichar * network); + + nsresult (*GetGateway)(INATNetwork *pThis, PRUnichar * *gateway); + + nsresult (*GetIPv6Enabled)(INATNetwork *pThis, PRBool *IPv6Enabled); + nsresult (*SetIPv6Enabled)(INATNetwork *pThis, PRBool IPv6Enabled); + + nsresult (*GetIPv6Prefix)(INATNetwork *pThis, PRUnichar * *IPv6Prefix); + nsresult (*SetIPv6Prefix)(INATNetwork *pThis, PRUnichar * IPv6Prefix); + + nsresult (*GetAdvertiseDefaultIPv6RouteEnabled)(INATNetwork *pThis, PRBool *advertiseDefaultIPv6RouteEnabled); + nsresult (*SetAdvertiseDefaultIPv6RouteEnabled)(INATNetwork *pThis, PRBool advertiseDefaultIPv6RouteEnabled); + + nsresult (*GetNeedDhcpServer)(INATNetwork *pThis, PRBool *needDhcpServer); + nsresult (*SetNeedDhcpServer)(INATNetwork *pThis, PRBool needDhcpServer); + + nsresult (*GetEventSource)(INATNetwork *pThis, IEventSource * *eventSource); + + nsresult (*GetPortForwardRules4)(INATNetwork *pThis, PRUint32 *portForwardRules4Size, PRUnichar * **portForwardRules4); + + nsresult (*GetLocalMappings)(INATNetwork *pThis, PRUint32 *localMappingsSize, PRUnichar * **localMappings); + + nsresult (*GetLoopbackIp6)(INATNetwork *pThis, PRInt32 *loopbackIp6); + nsresult (*SetLoopbackIp6)(INATNetwork *pThis, PRInt32 loopbackIp6); + + nsresult (*GetPortForwardRules6)(INATNetwork *pThis, PRUint32 *portForwardRules6Size, PRUnichar * **portForwardRules6); + + nsresult (*GetInternalAndReservedAttribute1INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*AddLocalMapping)( + INATNetwork *pThis, + PRUnichar * hostid, + PRInt32 offset + ); + + nsresult (*AddPortForwardRule)( + INATNetwork *pThis, + PRBool isIpv6, + PRUnichar * ruleName, + PRUint32 proto, + PRUnichar * hostIP, + PRUint16 hostPort, + PRUnichar * guestIP, + PRUint16 guestPort + ); + + nsresult (*RemovePortForwardRule)( + INATNetwork *pThis, + PRBool iSipv6, + PRUnichar * ruleName + ); + + nsresult (*Start)(INATNetwork *pThis ); + + nsresult (*Stop)(INATNetwork *pThis ); + + nsresult (*InternalAndReservedMethod1INATNetwork)(INATNetwork *pThis); + + nsresult (*InternalAndReservedMethod2INATNetwork)(INATNetwork *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkVtbl +{ + nsresult (*QueryInterface)(INATNetwork *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetwork *pThis); + nsrefcnt (*Release)(INATNetwork *pThis); + nsresult (*GetNetworkName)(INATNetwork *pThis, PRUnichar * *networkName); + nsresult (*SetNetworkName)(INATNetwork *pThis, PRUnichar * networkName); + + nsresult (*GetEnabled)(INATNetwork *pThis, PRBool *enabled); + nsresult (*SetEnabled)(INATNetwork *pThis, PRBool enabled); + + nsresult (*GetNetwork)(INATNetwork *pThis, PRUnichar * *network); + nsresult (*SetNetwork)(INATNetwork *pThis, PRUnichar * network); + + nsresult (*GetGateway)(INATNetwork *pThis, PRUnichar * *gateway); + + nsresult (*GetIPv6Enabled)(INATNetwork *pThis, PRBool *IPv6Enabled); + nsresult (*SetIPv6Enabled)(INATNetwork *pThis, PRBool IPv6Enabled); + + nsresult (*GetIPv6Prefix)(INATNetwork *pThis, PRUnichar * *IPv6Prefix); + nsresult (*SetIPv6Prefix)(INATNetwork *pThis, PRUnichar * IPv6Prefix); + + nsresult (*GetAdvertiseDefaultIPv6RouteEnabled)(INATNetwork *pThis, PRBool *advertiseDefaultIPv6RouteEnabled); + nsresult (*SetAdvertiseDefaultIPv6RouteEnabled)(INATNetwork *pThis, PRBool advertiseDefaultIPv6RouteEnabled); + + nsresult (*GetNeedDhcpServer)(INATNetwork *pThis, PRBool *needDhcpServer); + nsresult (*SetNeedDhcpServer)(INATNetwork *pThis, PRBool needDhcpServer); + + nsresult (*GetEventSource)(INATNetwork *pThis, IEventSource * *eventSource); + + nsresult (*GetPortForwardRules4)(INATNetwork *pThis, PRUint32 *portForwardRules4Size, PRUnichar * **portForwardRules4); + + nsresult (*GetLocalMappings)(INATNetwork *pThis, PRUint32 *localMappingsSize, PRUnichar * **localMappings); + + nsresult (*GetLoopbackIp6)(INATNetwork *pThis, PRInt32 *loopbackIp6); + nsresult (*SetLoopbackIp6)(INATNetwork *pThis, PRInt32 loopbackIp6); + + nsresult (*GetPortForwardRules6)(INATNetwork *pThis, PRUint32 *portForwardRules6Size, PRUnichar * **portForwardRules6); + + nsresult (*GetInternalAndReservedAttribute1INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8INATNetwork)(INATNetwork *pThis, PRUint32 *reserved); + + nsresult (*AddLocalMapping)( + INATNetwork *pThis, + PRUnichar * hostid, + PRInt32 offset + ); + + nsresult (*AddPortForwardRule)( + INATNetwork *pThis, + PRBool isIpv6, + PRUnichar * ruleName, + PRUint32 proto, + PRUnichar * hostIP, + PRUint16 hostPort, + PRUnichar * guestIP, + PRUint16 guestPort + ); + + nsresult (*RemovePortForwardRule)( + INATNetwork *pThis, + PRBool iSipv6, + PRUnichar * ruleName + ); + + nsresult (*Start)(INATNetwork *pThis ); + + nsresult (*Stop)(INATNetwork *pThis ); + + nsresult (*InternalAndReservedMethod1INATNetwork)(INATNetwork *pThis); + + nsresult (*InternalAndReservedMethod2INATNetwork)(INATNetwork *pThis); + +}; +# define INATNetwork_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetwork_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetwork_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetwork_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetwork_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetwork_put_NetworkName(p, aNetworkName) ((p)->lpVtbl->SetNetworkName(p, aNetworkName)) +# define INATNetwork_SetNetworkName(p, aNetworkName) ((p)->lpVtbl->SetNetworkName(p, aNetworkName)) +# define INATNetwork_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define INATNetwork_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define INATNetwork_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define INATNetwork_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define INATNetwork_get_Network(p, aNetwork) ((p)->lpVtbl->GetNetwork(p, aNetwork)) +# define INATNetwork_GetNetwork(p, aNetwork) ((p)->lpVtbl->GetNetwork(p, aNetwork)) +# define INATNetwork_put_Network(p, aNetwork) ((p)->lpVtbl->SetNetwork(p, aNetwork)) +# define INATNetwork_SetNetwork(p, aNetwork) ((p)->lpVtbl->SetNetwork(p, aNetwork)) +# define INATNetwork_get_Gateway(p, aGateway) ((p)->lpVtbl->GetGateway(p, aGateway)) +# define INATNetwork_GetGateway(p, aGateway) ((p)->lpVtbl->GetGateway(p, aGateway)) +# define INATNetwork_get_IPv6Enabled(p, aIPv6Enabled) ((p)->lpVtbl->GetIPv6Enabled(p, aIPv6Enabled)) +# define INATNetwork_GetIPv6Enabled(p, aIPv6Enabled) ((p)->lpVtbl->GetIPv6Enabled(p, aIPv6Enabled)) +# define INATNetwork_put_IPv6Enabled(p, aIPv6Enabled) ((p)->lpVtbl->SetIPv6Enabled(p, aIPv6Enabled)) +# define INATNetwork_SetIPv6Enabled(p, aIPv6Enabled) ((p)->lpVtbl->SetIPv6Enabled(p, aIPv6Enabled)) +# define INATNetwork_get_IPv6Prefix(p, aIPv6Prefix) ((p)->lpVtbl->GetIPv6Prefix(p, aIPv6Prefix)) +# define INATNetwork_GetIPv6Prefix(p, aIPv6Prefix) ((p)->lpVtbl->GetIPv6Prefix(p, aIPv6Prefix)) +# define INATNetwork_put_IPv6Prefix(p, aIPv6Prefix) ((p)->lpVtbl->SetIPv6Prefix(p, aIPv6Prefix)) +# define INATNetwork_SetIPv6Prefix(p, aIPv6Prefix) ((p)->lpVtbl->SetIPv6Prefix(p, aIPv6Prefix)) +# define INATNetwork_get_AdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled) ((p)->lpVtbl->GetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled)) +# define INATNetwork_GetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled) ((p)->lpVtbl->GetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled)) +# define INATNetwork_put_AdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled) ((p)->lpVtbl->SetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled)) +# define INATNetwork_SetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled) ((p)->lpVtbl->SetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled)) +# define INATNetwork_get_NeedDhcpServer(p, aNeedDhcpServer) ((p)->lpVtbl->GetNeedDhcpServer(p, aNeedDhcpServer)) +# define INATNetwork_GetNeedDhcpServer(p, aNeedDhcpServer) ((p)->lpVtbl->GetNeedDhcpServer(p, aNeedDhcpServer)) +# define INATNetwork_put_NeedDhcpServer(p, aNeedDhcpServer) ((p)->lpVtbl->SetNeedDhcpServer(p, aNeedDhcpServer)) +# define INATNetwork_SetNeedDhcpServer(p, aNeedDhcpServer) ((p)->lpVtbl->SetNeedDhcpServer(p, aNeedDhcpServer)) +# define INATNetwork_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define INATNetwork_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define INATNetwork_get_PortForwardRules4(p, aPortForwardRules4) ((p)->lpVtbl->GetPortForwardRules4(p, aPortForwardRules4)) +# define INATNetwork_GetPortForwardRules4(p, aPortForwardRules4) ((p)->lpVtbl->GetPortForwardRules4(p, aPortForwardRules4)) +# define INATNetwork_get_LocalMappings(p, aLocalMappings) ((p)->lpVtbl->GetLocalMappings(p, aLocalMappings)) +# define INATNetwork_GetLocalMappings(p, aLocalMappings) ((p)->lpVtbl->GetLocalMappings(p, aLocalMappings)) +# define INATNetwork_get_LoopbackIp6(p, aLoopbackIp6) ((p)->lpVtbl->GetLoopbackIp6(p, aLoopbackIp6)) +# define INATNetwork_GetLoopbackIp6(p, aLoopbackIp6) ((p)->lpVtbl->GetLoopbackIp6(p, aLoopbackIp6)) +# define INATNetwork_put_LoopbackIp6(p, aLoopbackIp6) ((p)->lpVtbl->SetLoopbackIp6(p, aLoopbackIp6)) +# define INATNetwork_SetLoopbackIp6(p, aLoopbackIp6) ((p)->lpVtbl->SetLoopbackIp6(p, aLoopbackIp6)) +# define INATNetwork_get_PortForwardRules6(p, aPortForwardRules6) ((p)->lpVtbl->GetPortForwardRules6(p, aPortForwardRules6)) +# define INATNetwork_GetPortForwardRules6(p, aPortForwardRules6) ((p)->lpVtbl->GetPortForwardRules6(p, aPortForwardRules6)) +# define INATNetwork_AddLocalMapping(p, aHostid, aOffset) ((p)->lpVtbl->AddLocalMapping(p, aHostid, aOffset)) +# define INATNetwork_AddPortForwardRule(p, aIsIpv6, aRuleName, aProto, aHostIP, aHostPort, aGuestIP, aGuestPort) ((p)->lpVtbl->AddPortForwardRule(p, aIsIpv6, aRuleName, aProto, aHostIP, aHostPort, aGuestIP, aGuestPort)) +# define INATNetwork_RemovePortForwardRule(p, aISipv6, aRuleName) ((p)->lpVtbl->RemovePortForwardRule(p, aISipv6, aRuleName)) +# define INATNetwork_Start(p) ((p)->lpVtbl->Start(p)) +# define INATNetwork_Stop(p) ((p)->lpVtbl->Stop(p)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetwork +{ +# ifndef VBOX_WITH_GLUE + struct INATNetwork_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetwork declaration */ + + +/* Start of struct ICloudNetwork declaration */ +# define ICLOUDNETWORK_IID_STR "d8e3496e-735f-4fde-8a54-427d49409b5f" +# define ICLOUDNETWORK_IID { \ + 0xd8e3496e, 0x735f, 0x4fde, \ + { 0x8a, 0x54, 0x42, 0x7d, 0x49, 0x40, 0x9b, 0x5f } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICloudNetwork); +# ifndef VBOX_WITH_GLUE +struct ICloudNetwork_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetNetworkName)(ICloudNetwork *pThis, PRUnichar * *networkName); + nsresult (*SetNetworkName)(ICloudNetwork *pThis, PRUnichar * networkName); + + nsresult (*GetEnabled)(ICloudNetwork *pThis, PRBool *enabled); + nsresult (*SetEnabled)(ICloudNetwork *pThis, PRBool enabled); + + nsresult (*GetProvider)(ICloudNetwork *pThis, PRUnichar * *provider); + nsresult (*SetProvider)(ICloudNetwork *pThis, PRUnichar * provider); + + nsresult (*GetProfile)(ICloudNetwork *pThis, PRUnichar * *profile); + nsresult (*SetProfile)(ICloudNetwork *pThis, PRUnichar * profile); + + nsresult (*GetNetworkId)(ICloudNetwork *pThis, PRUnichar * *networkId); + nsresult (*SetNetworkId)(ICloudNetwork *pThis, PRUnichar * networkId); + + nsresult (*GetInternalAndReservedAttribute1ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1ICloudNetwork)(ICloudNetwork *pThis); + + nsresult (*InternalAndReservedMethod2ICloudNetwork)(ICloudNetwork *pThis); + + nsresult (*InternalAndReservedMethod3ICloudNetwork)(ICloudNetwork *pThis); + + nsresult (*InternalAndReservedMethod4ICloudNetwork)(ICloudNetwork *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICloudNetworkVtbl +{ + nsresult (*QueryInterface)(ICloudNetwork *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICloudNetwork *pThis); + nsrefcnt (*Release)(ICloudNetwork *pThis); + nsresult (*GetNetworkName)(ICloudNetwork *pThis, PRUnichar * *networkName); + nsresult (*SetNetworkName)(ICloudNetwork *pThis, PRUnichar * networkName); + + nsresult (*GetEnabled)(ICloudNetwork *pThis, PRBool *enabled); + nsresult (*SetEnabled)(ICloudNetwork *pThis, PRBool enabled); + + nsresult (*GetProvider)(ICloudNetwork *pThis, PRUnichar * *provider); + nsresult (*SetProvider)(ICloudNetwork *pThis, PRUnichar * provider); + + nsresult (*GetProfile)(ICloudNetwork *pThis, PRUnichar * *profile); + nsresult (*SetProfile)(ICloudNetwork *pThis, PRUnichar * profile); + + nsresult (*GetNetworkId)(ICloudNetwork *pThis, PRUnichar * *networkId); + nsresult (*SetNetworkId)(ICloudNetwork *pThis, PRUnichar * networkId); + + nsresult (*GetInternalAndReservedAttribute1ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ICloudNetwork)(ICloudNetwork *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1ICloudNetwork)(ICloudNetwork *pThis); + + nsresult (*InternalAndReservedMethod2ICloudNetwork)(ICloudNetwork *pThis); + + nsresult (*InternalAndReservedMethod3ICloudNetwork)(ICloudNetwork *pThis); + + nsresult (*InternalAndReservedMethod4ICloudNetwork)(ICloudNetwork *pThis); + +}; +# define ICloudNetwork_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICloudNetwork_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICloudNetwork_Release(p) ((p)->lpVtbl->Release(p)) +# define ICloudNetwork_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define ICloudNetwork_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define ICloudNetwork_put_NetworkName(p, aNetworkName) ((p)->lpVtbl->SetNetworkName(p, aNetworkName)) +# define ICloudNetwork_SetNetworkName(p, aNetworkName) ((p)->lpVtbl->SetNetworkName(p, aNetworkName)) +# define ICloudNetwork_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define ICloudNetwork_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define ICloudNetwork_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define ICloudNetwork_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define ICloudNetwork_get_Provider(p, aProvider) ((p)->lpVtbl->GetProvider(p, aProvider)) +# define ICloudNetwork_GetProvider(p, aProvider) ((p)->lpVtbl->GetProvider(p, aProvider)) +# define ICloudNetwork_put_Provider(p, aProvider) ((p)->lpVtbl->SetProvider(p, aProvider)) +# define ICloudNetwork_SetProvider(p, aProvider) ((p)->lpVtbl->SetProvider(p, aProvider)) +# define ICloudNetwork_get_Profile(p, aProfile) ((p)->lpVtbl->GetProfile(p, aProfile)) +# define ICloudNetwork_GetProfile(p, aProfile) ((p)->lpVtbl->GetProfile(p, aProfile)) +# define ICloudNetwork_put_Profile(p, aProfile) ((p)->lpVtbl->SetProfile(p, aProfile)) +# define ICloudNetwork_SetProfile(p, aProfile) ((p)->lpVtbl->SetProfile(p, aProfile)) +# define ICloudNetwork_get_NetworkId(p, aNetworkId) ((p)->lpVtbl->GetNetworkId(p, aNetworkId)) +# define ICloudNetwork_GetNetworkId(p, aNetworkId) ((p)->lpVtbl->GetNetworkId(p, aNetworkId)) +# define ICloudNetwork_put_NetworkId(p, aNetworkId) ((p)->lpVtbl->SetNetworkId(p, aNetworkId)) +# define ICloudNetwork_SetNetworkId(p, aNetworkId) ((p)->lpVtbl->SetNetworkId(p, aNetworkId)) +# endif /* VBOX_WITH_GLUE */ + +interface ICloudNetwork +{ +# ifndef VBOX_WITH_GLUE + struct ICloudNetwork_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICloudNetworkVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICloudNetwork declaration */ + + +/* Start of struct IDHCPServer declaration */ +# define IDHCPSERVER_IID_STR "cadef0a2-a1a9-4ac2-8e80-c049af69dac8" +# define IDHCPSERVER_IID { \ + 0xcadef0a2, 0xa1a9, 0x4ac2, \ + { 0x8e, 0x80, 0xc0, 0x49, 0xaf, 0x69, 0xda, 0xc8 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDHCPServer); +# ifndef VBOX_WITH_GLUE +struct IDHCPServer_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetEventSource)(IDHCPServer *pThis, IEventSource * *eventSource); + + nsresult (*GetEnabled)(IDHCPServer *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IDHCPServer *pThis, PRBool enabled); + + nsresult (*GetIPAddress)(IDHCPServer *pThis, PRUnichar * *IPAddress); + + nsresult (*GetNetworkMask)(IDHCPServer *pThis, PRUnichar * *networkMask); + + nsresult (*GetNetworkName)(IDHCPServer *pThis, PRUnichar * *networkName); + + nsresult (*GetLowerIP)(IDHCPServer *pThis, PRUnichar * *lowerIP); + + nsresult (*GetUpperIP)(IDHCPServer *pThis, PRUnichar * *upperIP); + + nsresult (*GetGlobalConfig)(IDHCPServer *pThis, IDHCPGlobalConfig * *globalConfig); + + nsresult (*GetGroupConfigs)(IDHCPServer *pThis, PRUint32 *groupConfigsSize, IDHCPGroupConfig * **groupConfigs); + + nsresult (*GetIndividualConfigs)(IDHCPServer *pThis, PRUint32 *individualConfigsSize, IDHCPIndividualConfig * **individualConfigs); + + nsresult (*GetInternalAndReservedAttribute1IDHCPServer)(IDHCPServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPServer)(IDHCPServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPServer)(IDHCPServer *pThis, PRUint32 *reserved); + + nsresult (*SetConfiguration)( + IDHCPServer *pThis, + PRUnichar * IPAddress, + PRUnichar * networkMask, + PRUnichar * FromIPAddress, + PRUnichar * ToIPAddress + ); + + nsresult (*Start)( + IDHCPServer *pThis, + PRUnichar * trunkName, + PRUnichar * trunkType + ); + + nsresult (*Stop)(IDHCPServer *pThis ); + + nsresult (*Restart)(IDHCPServer *pThis ); + + nsresult (*FindLeaseByMAC)( + IDHCPServer *pThis, + PRUnichar * mac, + PRInt32 type, + PRUnichar * * address, + PRUnichar * * state, + PRInt64 * issued, + PRInt64 * expire + ); + + nsresult (*GetConfig)( + IDHCPServer *pThis, + PRUint32 scope, + PRUnichar * name, + PRUint32 slot, + PRBool mayAdd, + IDHCPConfig * * config + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDHCPServerVtbl +{ + nsresult (*QueryInterface)(IDHCPServer *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDHCPServer *pThis); + nsrefcnt (*Release)(IDHCPServer *pThis); + nsresult (*GetEventSource)(IDHCPServer *pThis, IEventSource * *eventSource); + + nsresult (*GetEnabled)(IDHCPServer *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IDHCPServer *pThis, PRBool enabled); + + nsresult (*GetIPAddress)(IDHCPServer *pThis, PRUnichar * *IPAddress); + + nsresult (*GetNetworkMask)(IDHCPServer *pThis, PRUnichar * *networkMask); + + nsresult (*GetNetworkName)(IDHCPServer *pThis, PRUnichar * *networkName); + + nsresult (*GetLowerIP)(IDHCPServer *pThis, PRUnichar * *lowerIP); + + nsresult (*GetUpperIP)(IDHCPServer *pThis, PRUnichar * *upperIP); + + nsresult (*GetGlobalConfig)(IDHCPServer *pThis, IDHCPGlobalConfig * *globalConfig); + + nsresult (*GetGroupConfigs)(IDHCPServer *pThis, PRUint32 *groupConfigsSize, IDHCPGroupConfig * **groupConfigs); + + nsresult (*GetIndividualConfigs)(IDHCPServer *pThis, PRUint32 *individualConfigsSize, IDHCPIndividualConfig * **individualConfigs); + + nsresult (*GetInternalAndReservedAttribute1IDHCPServer)(IDHCPServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPServer)(IDHCPServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPServer)(IDHCPServer *pThis, PRUint32 *reserved); + + nsresult (*SetConfiguration)( + IDHCPServer *pThis, + PRUnichar * IPAddress, + PRUnichar * networkMask, + PRUnichar * FromIPAddress, + PRUnichar * ToIPAddress + ); + + nsresult (*Start)( + IDHCPServer *pThis, + PRUnichar * trunkName, + PRUnichar * trunkType + ); + + nsresult (*Stop)(IDHCPServer *pThis ); + + nsresult (*Restart)(IDHCPServer *pThis ); + + nsresult (*FindLeaseByMAC)( + IDHCPServer *pThis, + PRUnichar * mac, + PRInt32 type, + PRUnichar * * address, + PRUnichar * * state, + PRInt64 * issued, + PRInt64 * expire + ); + + nsresult (*GetConfig)( + IDHCPServer *pThis, + PRUint32 scope, + PRUnichar * name, + PRUint32 slot, + PRBool mayAdd, + IDHCPConfig * * config + ); + +}; +# define IDHCPServer_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDHCPServer_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDHCPServer_Release(p) ((p)->lpVtbl->Release(p)) +# define IDHCPServer_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IDHCPServer_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IDHCPServer_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IDHCPServer_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IDHCPServer_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IDHCPServer_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IDHCPServer_get_IPAddress(p, aIPAddress) ((p)->lpVtbl->GetIPAddress(p, aIPAddress)) +# define IDHCPServer_GetIPAddress(p, aIPAddress) ((p)->lpVtbl->GetIPAddress(p, aIPAddress)) +# define IDHCPServer_get_NetworkMask(p, aNetworkMask) ((p)->lpVtbl->GetNetworkMask(p, aNetworkMask)) +# define IDHCPServer_GetNetworkMask(p, aNetworkMask) ((p)->lpVtbl->GetNetworkMask(p, aNetworkMask)) +# define IDHCPServer_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define IDHCPServer_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define IDHCPServer_get_LowerIP(p, aLowerIP) ((p)->lpVtbl->GetLowerIP(p, aLowerIP)) +# define IDHCPServer_GetLowerIP(p, aLowerIP) ((p)->lpVtbl->GetLowerIP(p, aLowerIP)) +# define IDHCPServer_get_UpperIP(p, aUpperIP) ((p)->lpVtbl->GetUpperIP(p, aUpperIP)) +# define IDHCPServer_GetUpperIP(p, aUpperIP) ((p)->lpVtbl->GetUpperIP(p, aUpperIP)) +# define IDHCPServer_get_GlobalConfig(p, aGlobalConfig) ((p)->lpVtbl->GetGlobalConfig(p, aGlobalConfig)) +# define IDHCPServer_GetGlobalConfig(p, aGlobalConfig) ((p)->lpVtbl->GetGlobalConfig(p, aGlobalConfig)) +# define IDHCPServer_get_GroupConfigs(p, aGroupConfigs) ((p)->lpVtbl->GetGroupConfigs(p, aGroupConfigs)) +# define IDHCPServer_GetGroupConfigs(p, aGroupConfigs) ((p)->lpVtbl->GetGroupConfigs(p, aGroupConfigs)) +# define IDHCPServer_get_IndividualConfigs(p, aIndividualConfigs) ((p)->lpVtbl->GetIndividualConfigs(p, aIndividualConfigs)) +# define IDHCPServer_GetIndividualConfigs(p, aIndividualConfigs) ((p)->lpVtbl->GetIndividualConfigs(p, aIndividualConfigs)) +# define IDHCPServer_SetConfiguration(p, aIPAddress, aNetworkMask, aFromIPAddress, aToIPAddress) ((p)->lpVtbl->SetConfiguration(p, aIPAddress, aNetworkMask, aFromIPAddress, aToIPAddress)) +# define IDHCPServer_Start(p, aTrunkName, aTrunkType) ((p)->lpVtbl->Start(p, aTrunkName, aTrunkType)) +# define IDHCPServer_Stop(p) ((p)->lpVtbl->Stop(p)) +# define IDHCPServer_Restart(p) ((p)->lpVtbl->Restart(p)) +# define IDHCPServer_FindLeaseByMAC(p, aMac, aType, aAddress, aState, aIssued, aExpire) ((p)->lpVtbl->FindLeaseByMAC(p, aMac, aType, aAddress, aState, aIssued, aExpire)) +# define IDHCPServer_GetConfig(p, aScope, aName, aSlot, aMayAdd, aConfig) ((p)->lpVtbl->GetConfig(p, aScope, aName, aSlot, aMayAdd, aConfig)) +# endif /* VBOX_WITH_GLUE */ + +interface IDHCPServer +{ +# ifndef VBOX_WITH_GLUE + struct IDHCPServer_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDHCPServerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDHCPServer declaration */ + + +/* Start of struct IDHCPConfig declaration */ +# define IDHCPCONFIG_IID_STR "00f4a8dc-0002-4b81-0077-1dcb004571ba" +# define IDHCPCONFIG_IID { \ + 0x00f4a8dc, 0x0002, 0x4b81, \ + { 0x00, 0x77, 0x1d, 0xcb, 0x00, 0x45, 0x71, 0xba } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDHCPConfig); +# ifndef VBOX_WITH_GLUE +struct IDHCPConfig_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetScope)(IDHCPConfig *pThis, PRUint32 *scope); + + nsresult (*GetMinLeaseTime)(IDHCPConfig *pThis, PRUint32 *minLeaseTime); + nsresult (*SetMinLeaseTime)(IDHCPConfig *pThis, PRUint32 minLeaseTime); + + nsresult (*GetDefaultLeaseTime)(IDHCPConfig *pThis, PRUint32 *defaultLeaseTime); + nsresult (*SetDefaultLeaseTime)(IDHCPConfig *pThis, PRUint32 defaultLeaseTime); + + nsresult (*GetMaxLeaseTime)(IDHCPConfig *pThis, PRUint32 *maxLeaseTime); + nsresult (*SetMaxLeaseTime)(IDHCPConfig *pThis, PRUint32 maxLeaseTime); + + nsresult (*GetForcedOptions)(IDHCPConfig *pThis, PRUint32 *forcedOptionsSize, PRUint32 **forcedOptions); + nsresult (*SetForcedOptions)(IDHCPConfig *pThis, PRUint32 forcedOptionsSize, PRUint32 *forcedOptions); + + nsresult (*GetSuppressedOptions)(IDHCPConfig *pThis, PRUint32 *suppressedOptionsSize, PRUint32 **suppressedOptions); + nsresult (*SetSuppressedOptions)(IDHCPConfig *pThis, PRUint32 suppressedOptionsSize, PRUint32 *suppressedOptions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*SetOption)( + IDHCPConfig *pThis, + PRUint32 option, + PRUint32 encoding, + PRUnichar * value + ); + + nsresult (*RemoveOption)( + IDHCPConfig *pThis, + PRUint32 option + ); + + nsresult (*RemoveAllOptions)(IDHCPConfig *pThis ); + + nsresult (*GetOption)( + IDHCPConfig *pThis, + PRUint32 option, + PRUint32 * encoding, + PRUnichar * * value + ); + + nsresult (*GetAllOptions)( + IDHCPConfig *pThis, + PRUint32 *optionsSize, + PRUint32** options, + PRUint32 *encodingsSize, + PRUint32** encodings, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*Remove)(IDHCPConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPConfig)(IDHCPConfig *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDHCPConfigVtbl +{ + nsresult (*QueryInterface)(IDHCPConfig *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDHCPConfig *pThis); + nsrefcnt (*Release)(IDHCPConfig *pThis); + nsresult (*GetScope)(IDHCPConfig *pThis, PRUint32 *scope); + + nsresult (*GetMinLeaseTime)(IDHCPConfig *pThis, PRUint32 *minLeaseTime); + nsresult (*SetMinLeaseTime)(IDHCPConfig *pThis, PRUint32 minLeaseTime); + + nsresult (*GetDefaultLeaseTime)(IDHCPConfig *pThis, PRUint32 *defaultLeaseTime); + nsresult (*SetDefaultLeaseTime)(IDHCPConfig *pThis, PRUint32 defaultLeaseTime); + + nsresult (*GetMaxLeaseTime)(IDHCPConfig *pThis, PRUint32 *maxLeaseTime); + nsresult (*SetMaxLeaseTime)(IDHCPConfig *pThis, PRUint32 maxLeaseTime); + + nsresult (*GetForcedOptions)(IDHCPConfig *pThis, PRUint32 *forcedOptionsSize, PRUint32 **forcedOptions); + nsresult (*SetForcedOptions)(IDHCPConfig *pThis, PRUint32 forcedOptionsSize, PRUint32 *forcedOptions); + + nsresult (*GetSuppressedOptions)(IDHCPConfig *pThis, PRUint32 *suppressedOptionsSize, PRUint32 **suppressedOptions); + nsresult (*SetSuppressedOptions)(IDHCPConfig *pThis, PRUint32 suppressedOptionsSize, PRUint32 *suppressedOptions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDHCPConfig)(IDHCPConfig *pThis, PRUint32 *reserved); + + nsresult (*SetOption)( + IDHCPConfig *pThis, + PRUint32 option, + PRUint32 encoding, + PRUnichar * value + ); + + nsresult (*RemoveOption)( + IDHCPConfig *pThis, + PRUint32 option + ); + + nsresult (*RemoveAllOptions)(IDHCPConfig *pThis ); + + nsresult (*GetOption)( + IDHCPConfig *pThis, + PRUint32 option, + PRUint32 * encoding, + PRUnichar * * value + ); + + nsresult (*GetAllOptions)( + IDHCPConfig *pThis, + PRUint32 *optionsSize, + PRUint32** options, + PRUint32 *encodingsSize, + PRUint32** encodings, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*Remove)(IDHCPConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPConfig)(IDHCPConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPConfig)(IDHCPConfig *pThis); + +}; +# define IDHCPConfig_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDHCPConfig_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDHCPConfig_Release(p) ((p)->lpVtbl->Release(p)) +# define IDHCPConfig_get_Scope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPConfig_GetScope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPConfig_get_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPConfig_GetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPConfig_put_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPConfig_SetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPConfig_get_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPConfig_GetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPConfig_put_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPConfig_SetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPConfig_get_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPConfig_GetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPConfig_put_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPConfig_SetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPConfig_get_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPConfig_GetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPConfig_put_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPConfig_SetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPConfig_get_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPConfig_GetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPConfig_put_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPConfig_SetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPConfig_SetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->SetOption(p, aOption, aEncoding, aValue)) +# define IDHCPConfig_RemoveOption(p, aOption) ((p)->lpVtbl->RemoveOption(p, aOption)) +# define IDHCPConfig_RemoveAllOptions(p) ((p)->lpVtbl->RemoveAllOptions(p)) +# define IDHCPConfig_GetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->GetOption(p, aOption, aEncoding, aValue)) +# define IDHCPConfig_GetAllOptions(p, aOptions, aEncodings, aValues) ((p)->lpVtbl->GetAllOptions(p, aOptions, aEncodings, aValues)) +# define IDHCPConfig_Remove(p) ((p)->lpVtbl->Remove(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IDHCPConfig +{ +# ifndef VBOX_WITH_GLUE + struct IDHCPConfig_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDHCPConfigVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDHCPConfig declaration */ + + +/* Start of struct IDHCPGlobalConfig declaration */ +# define IDHCPGLOBALCONFIG_IID_STR "46735de7-f4c4-4020-a185-0d2881bcfa8b" +# define IDHCPGLOBALCONFIG_IID { \ + 0x46735de7, 0xf4c4, 0x4020, \ + { 0xa1, 0x85, 0x0d, 0x28, 0x81, 0xbc, 0xfa, 0x8b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDHCPGlobalConfig); +# ifndef VBOX_WITH_GLUE +struct IDHCPGlobalConfig_vtbl +{ + struct IDHCPConfig_vtbl idhcpconfig; + + nsresult (*GetInternalAndReservedAttribute1IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDHCPGlobalConfigVtbl +{ + nsresult (*QueryInterface)(IDHCPGlobalConfig *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDHCPGlobalConfig *pThis); + nsrefcnt (*Release)(IDHCPGlobalConfig *pThis); + nsresult (*GetScope)(IDHCPGlobalConfig *pThis, PRUint32 *scope); + + nsresult (*GetMinLeaseTime)(IDHCPGlobalConfig *pThis, PRUint32 *minLeaseTime); + nsresult (*SetMinLeaseTime)(IDHCPGlobalConfig *pThis, PRUint32 minLeaseTime); + + nsresult (*GetDefaultLeaseTime)(IDHCPGlobalConfig *pThis, PRUint32 *defaultLeaseTime); + nsresult (*SetDefaultLeaseTime)(IDHCPGlobalConfig *pThis, PRUint32 defaultLeaseTime); + + nsresult (*GetMaxLeaseTime)(IDHCPGlobalConfig *pThis, PRUint32 *maxLeaseTime); + nsresult (*SetMaxLeaseTime)(IDHCPGlobalConfig *pThis, PRUint32 maxLeaseTime); + + nsresult (*GetForcedOptions)(IDHCPGlobalConfig *pThis, PRUint32 *forcedOptionsSize, PRUint32 **forcedOptions); + nsresult (*SetForcedOptions)(IDHCPGlobalConfig *pThis, PRUint32 forcedOptionsSize, PRUint32 *forcedOptions); + + nsresult (*GetSuppressedOptions)(IDHCPGlobalConfig *pThis, PRUint32 *suppressedOptionsSize, PRUint32 **suppressedOptions); + nsresult (*SetSuppressedOptions)(IDHCPGlobalConfig *pThis, PRUint32 suppressedOptionsSize, PRUint32 *suppressedOptions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDHCPConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*SetOption)( + IDHCPGlobalConfig *pThis, + PRUint32 option, + PRUint32 encoding, + PRUnichar * value + ); + + nsresult (*RemoveOption)( + IDHCPGlobalConfig *pThis, + PRUint32 option + ); + + nsresult (*RemoveAllOptions)(IDHCPGlobalConfig *pThis ); + + nsresult (*GetOption)( + IDHCPGlobalConfig *pThis, + PRUint32 option, + PRUint32 * encoding, + PRUnichar * * value + ); + + nsresult (*GetAllOptions)( + IDHCPGlobalConfig *pThis, + PRUint32 *optionsSize, + PRUint32** options, + PRUint32 *encodingsSize, + PRUint32** encodings, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*Remove)(IDHCPGlobalConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*GetInternalAndReservedAttribute1IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPGlobalConfig)(IDHCPGlobalConfig *pThis); + +}; +# define IDHCPGlobalConfig_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDHCPGlobalConfig_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDHCPGlobalConfig_Release(p) ((p)->lpVtbl->Release(p)) +# define IDHCPGlobalConfig_get_Scope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPGlobalConfig_GetScope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPGlobalConfig_get_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGlobalConfig_GetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGlobalConfig_put_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGlobalConfig_SetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGlobalConfig_get_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGlobalConfig_GetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGlobalConfig_put_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGlobalConfig_SetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGlobalConfig_get_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGlobalConfig_GetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGlobalConfig_put_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGlobalConfig_SetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGlobalConfig_get_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPGlobalConfig_GetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPGlobalConfig_put_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPGlobalConfig_SetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPGlobalConfig_get_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGlobalConfig_GetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGlobalConfig_put_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGlobalConfig_SetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGlobalConfig_SetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->SetOption(p, aOption, aEncoding, aValue)) +# define IDHCPGlobalConfig_RemoveOption(p, aOption) ((p)->lpVtbl->RemoveOption(p, aOption)) +# define IDHCPGlobalConfig_RemoveAllOptions(p) ((p)->lpVtbl->RemoveAllOptions(p)) +# define IDHCPGlobalConfig_GetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->GetOption(p, aOption, aEncoding, aValue)) +# define IDHCPGlobalConfig_GetAllOptions(p, aOptions, aEncodings, aValues) ((p)->lpVtbl->GetAllOptions(p, aOptions, aEncodings, aValues)) +# define IDHCPGlobalConfig_Remove(p) ((p)->lpVtbl->Remove(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IDHCPGlobalConfig +{ +# ifndef VBOX_WITH_GLUE + struct IDHCPGlobalConfig_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDHCPGlobalConfigVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDHCPGlobalConfig declaration */ + + +/* Start of struct IDHCPGroupCondition declaration */ +# define IDHCPGROUPCONDITION_IID_STR "5ca9e537-5a1d-43f1-6f27-6a0db298a9a8" +# define IDHCPGROUPCONDITION_IID { \ + 0x5ca9e537, 0x5a1d, 0x43f1, \ + { 0x6f, 0x27, 0x6a, 0x0d, 0xb2, 0x98, 0xa9, 0xa8 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDHCPGroupCondition); +# ifndef VBOX_WITH_GLUE +struct IDHCPGroupCondition_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetInclusive)(IDHCPGroupCondition *pThis, PRBool *inclusive); + nsresult (*SetInclusive)(IDHCPGroupCondition *pThis, PRBool inclusive); + + nsresult (*GetType)(IDHCPGroupCondition *pThis, PRUint32 *type); + nsresult (*SetType)(IDHCPGroupCondition *pThis, PRUint32 type); + + nsresult (*GetValue)(IDHCPGroupCondition *pThis, PRUnichar * *value); + nsresult (*SetValue)(IDHCPGroupCondition *pThis, PRUnichar * value); + + nsresult (*GetInternalAndReservedAttribute1IDHCPGroupCondition)(IDHCPGroupCondition *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPGroupCondition)(IDHCPGroupCondition *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPGroupCondition)(IDHCPGroupCondition *pThis, PRUint32 *reserved); + + nsresult (*Remove)(IDHCPGroupCondition *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPGroupCondition)(IDHCPGroupCondition *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPGroupCondition)(IDHCPGroupCondition *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPGroupCondition)(IDHCPGroupCondition *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDHCPGroupConditionVtbl +{ + nsresult (*QueryInterface)(IDHCPGroupCondition *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDHCPGroupCondition *pThis); + nsrefcnt (*Release)(IDHCPGroupCondition *pThis); + nsresult (*GetInclusive)(IDHCPGroupCondition *pThis, PRBool *inclusive); + nsresult (*SetInclusive)(IDHCPGroupCondition *pThis, PRBool inclusive); + + nsresult (*GetType)(IDHCPGroupCondition *pThis, PRUint32 *type); + nsresult (*SetType)(IDHCPGroupCondition *pThis, PRUint32 type); + + nsresult (*GetValue)(IDHCPGroupCondition *pThis, PRUnichar * *value); + nsresult (*SetValue)(IDHCPGroupCondition *pThis, PRUnichar * value); + + nsresult (*GetInternalAndReservedAttribute1IDHCPGroupCondition)(IDHCPGroupCondition *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPGroupCondition)(IDHCPGroupCondition *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPGroupCondition)(IDHCPGroupCondition *pThis, PRUint32 *reserved); + + nsresult (*Remove)(IDHCPGroupCondition *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPGroupCondition)(IDHCPGroupCondition *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPGroupCondition)(IDHCPGroupCondition *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPGroupCondition)(IDHCPGroupCondition *pThis); + +}; +# define IDHCPGroupCondition_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDHCPGroupCondition_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDHCPGroupCondition_Release(p) ((p)->lpVtbl->Release(p)) +# define IDHCPGroupCondition_get_Inclusive(p, aInclusive) ((p)->lpVtbl->GetInclusive(p, aInclusive)) +# define IDHCPGroupCondition_GetInclusive(p, aInclusive) ((p)->lpVtbl->GetInclusive(p, aInclusive)) +# define IDHCPGroupCondition_put_Inclusive(p, aInclusive) ((p)->lpVtbl->SetInclusive(p, aInclusive)) +# define IDHCPGroupCondition_SetInclusive(p, aInclusive) ((p)->lpVtbl->SetInclusive(p, aInclusive)) +# define IDHCPGroupCondition_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IDHCPGroupCondition_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IDHCPGroupCondition_put_Type(p, aType) ((p)->lpVtbl->SetType(p, aType)) +# define IDHCPGroupCondition_SetType(p, aType) ((p)->lpVtbl->SetType(p, aType)) +# define IDHCPGroupCondition_get_Value(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# define IDHCPGroupCondition_GetValue(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# define IDHCPGroupCondition_put_Value(p, aValue) ((p)->lpVtbl->SetValue(p, aValue)) +# define IDHCPGroupCondition_SetValue(p, aValue) ((p)->lpVtbl->SetValue(p, aValue)) +# define IDHCPGroupCondition_Remove(p) ((p)->lpVtbl->Remove(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IDHCPGroupCondition +{ +# ifndef VBOX_WITH_GLUE + struct IDHCPGroupCondition_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDHCPGroupConditionVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDHCPGroupCondition declaration */ + + +/* Start of struct IDHCPGroupConfig declaration */ +# define IDHCPGROUPCONFIG_IID_STR "537707f7-ebf9-4d5c-7aea-877bfc4256ba" +# define IDHCPGROUPCONFIG_IID { \ + 0x537707f7, 0xebf9, 0x4d5c, \ + { 0x7a, 0xea, 0x87, 0x7b, 0xfc, 0x42, 0x56, 0xba } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDHCPGroupConfig); +# ifndef VBOX_WITH_GLUE +struct IDHCPGroupConfig_vtbl +{ + struct IDHCPConfig_vtbl idhcpconfig; + + nsresult (*GetName)(IDHCPGroupConfig *pThis, PRUnichar * *name); + nsresult (*SetName)(IDHCPGroupConfig *pThis, PRUnichar * name); + + nsresult (*GetConditions)(IDHCPGroupConfig *pThis, PRUint32 *conditionsSize, IDHCPGroupCondition * **conditions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*AddCondition)( + IDHCPGroupConfig *pThis, + PRBool inclusive, + PRUint32 type, + PRUnichar * value, + IDHCPGroupCondition * * condition + ); + + nsresult (*RemoveAllConditions)(IDHCPGroupConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDHCPGroupConfigVtbl +{ + nsresult (*QueryInterface)(IDHCPGroupConfig *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDHCPGroupConfig *pThis); + nsrefcnt (*Release)(IDHCPGroupConfig *pThis); + nsresult (*GetScope)(IDHCPGroupConfig *pThis, PRUint32 *scope); + + nsresult (*GetMinLeaseTime)(IDHCPGroupConfig *pThis, PRUint32 *minLeaseTime); + nsresult (*SetMinLeaseTime)(IDHCPGroupConfig *pThis, PRUint32 minLeaseTime); + + nsresult (*GetDefaultLeaseTime)(IDHCPGroupConfig *pThis, PRUint32 *defaultLeaseTime); + nsresult (*SetDefaultLeaseTime)(IDHCPGroupConfig *pThis, PRUint32 defaultLeaseTime); + + nsresult (*GetMaxLeaseTime)(IDHCPGroupConfig *pThis, PRUint32 *maxLeaseTime); + nsresult (*SetMaxLeaseTime)(IDHCPGroupConfig *pThis, PRUint32 maxLeaseTime); + + nsresult (*GetForcedOptions)(IDHCPGroupConfig *pThis, PRUint32 *forcedOptionsSize, PRUint32 **forcedOptions); + nsresult (*SetForcedOptions)(IDHCPGroupConfig *pThis, PRUint32 forcedOptionsSize, PRUint32 *forcedOptions); + + nsresult (*GetSuppressedOptions)(IDHCPGroupConfig *pThis, PRUint32 *suppressedOptionsSize, PRUint32 **suppressedOptions); + nsresult (*SetSuppressedOptions)(IDHCPGroupConfig *pThis, PRUint32 suppressedOptionsSize, PRUint32 *suppressedOptions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDHCPConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*SetOption)( + IDHCPGroupConfig *pThis, + PRUint32 option, + PRUint32 encoding, + PRUnichar * value + ); + + nsresult (*RemoveOption)( + IDHCPGroupConfig *pThis, + PRUint32 option + ); + + nsresult (*RemoveAllOptions)(IDHCPGroupConfig *pThis ); + + nsresult (*GetOption)( + IDHCPGroupConfig *pThis, + PRUint32 option, + PRUint32 * encoding, + PRUnichar * * value + ); + + nsresult (*GetAllOptions)( + IDHCPGroupConfig *pThis, + PRUint32 *optionsSize, + PRUint32** options, + PRUint32 *encodingsSize, + PRUint32** encodings, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*Remove)(IDHCPGroupConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPConfig)(IDHCPGroupConfig *pThis); + + nsresult (*GetName)(IDHCPGroupConfig *pThis, PRUnichar * *name); + nsresult (*SetName)(IDHCPGroupConfig *pThis, PRUnichar * name); + + nsresult (*GetConditions)(IDHCPGroupConfig *pThis, PRUint32 *conditionsSize, IDHCPGroupCondition * **conditions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPGroupConfig)(IDHCPGroupConfig *pThis, PRUint32 *reserved); + + nsresult (*AddCondition)( + IDHCPGroupConfig *pThis, + PRBool inclusive, + PRUint32 type, + PRUnichar * value, + IDHCPGroupCondition * * condition + ); + + nsresult (*RemoveAllConditions)(IDHCPGroupConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPGroupConfig)(IDHCPGroupConfig *pThis); + +}; +# define IDHCPGroupConfig_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDHCPGroupConfig_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDHCPGroupConfig_Release(p) ((p)->lpVtbl->Release(p)) +# define IDHCPGroupConfig_get_Scope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPGroupConfig_GetScope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPGroupConfig_get_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGroupConfig_GetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGroupConfig_put_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGroupConfig_SetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPGroupConfig_get_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGroupConfig_GetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGroupConfig_put_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGroupConfig_SetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPGroupConfig_get_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGroupConfig_GetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGroupConfig_put_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGroupConfig_SetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPGroupConfig_get_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPGroupConfig_GetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPGroupConfig_put_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPGroupConfig_SetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPGroupConfig_get_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGroupConfig_GetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGroupConfig_put_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGroupConfig_SetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPGroupConfig_SetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->SetOption(p, aOption, aEncoding, aValue)) +# define IDHCPGroupConfig_RemoveOption(p, aOption) ((p)->lpVtbl->RemoveOption(p, aOption)) +# define IDHCPGroupConfig_RemoveAllOptions(p) ((p)->lpVtbl->RemoveAllOptions(p)) +# define IDHCPGroupConfig_GetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->GetOption(p, aOption, aEncoding, aValue)) +# define IDHCPGroupConfig_GetAllOptions(p, aOptions, aEncodings, aValues) ((p)->lpVtbl->GetAllOptions(p, aOptions, aEncodings, aValues)) +# define IDHCPGroupConfig_Remove(p) ((p)->lpVtbl->Remove(p)) +# define IDHCPGroupConfig_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IDHCPGroupConfig_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IDHCPGroupConfig_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IDHCPGroupConfig_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IDHCPGroupConfig_get_Conditions(p, aConditions) ((p)->lpVtbl->GetConditions(p, aConditions)) +# define IDHCPGroupConfig_GetConditions(p, aConditions) ((p)->lpVtbl->GetConditions(p, aConditions)) +# define IDHCPGroupConfig_AddCondition(p, aInclusive, aType, aValue, aCondition) ((p)->lpVtbl->AddCondition(p, aInclusive, aType, aValue, aCondition)) +# define IDHCPGroupConfig_RemoveAllConditions(p) ((p)->lpVtbl->RemoveAllConditions(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IDHCPGroupConfig +{ +# ifndef VBOX_WITH_GLUE + struct IDHCPGroupConfig_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDHCPGroupConfigVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDHCPGroupConfig declaration */ + + +/* Start of struct IDHCPIndividualConfig declaration */ +# define IDHCPINDIVIDUALCONFIG_IID_STR "c40c2b86-73a5-46cc-8227-93fe57d006a6" +# define IDHCPINDIVIDUALCONFIG_IID { \ + 0xc40c2b86, 0x73a5, 0x46cc, \ + { 0x82, 0x27, 0x93, 0xfe, 0x57, 0xd0, 0x06, 0xa6 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDHCPIndividualConfig); +# ifndef VBOX_WITH_GLUE +struct IDHCPIndividualConfig_vtbl +{ + struct IDHCPConfig_vtbl idhcpconfig; + + nsresult (*GetMACAddress)(IDHCPIndividualConfig *pThis, PRUnichar * *MACAddress); + + nsresult (*GetMachineId)(IDHCPIndividualConfig *pThis, PRUnichar * *machineId); + + nsresult (*GetSlot)(IDHCPIndividualConfig *pThis, PRUint32 *slot); + + nsresult (*GetFixedAddress)(IDHCPIndividualConfig *pThis, PRUnichar * *fixedAddress); + nsresult (*SetFixedAddress)(IDHCPIndividualConfig *pThis, PRUnichar * fixedAddress); + + nsresult (*GetInternalAndReservedAttribute1IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDHCPIndividualConfigVtbl +{ + nsresult (*QueryInterface)(IDHCPIndividualConfig *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDHCPIndividualConfig *pThis); + nsrefcnt (*Release)(IDHCPIndividualConfig *pThis); + nsresult (*GetScope)(IDHCPIndividualConfig *pThis, PRUint32 *scope); + + nsresult (*GetMinLeaseTime)(IDHCPIndividualConfig *pThis, PRUint32 *minLeaseTime); + nsresult (*SetMinLeaseTime)(IDHCPIndividualConfig *pThis, PRUint32 minLeaseTime); + + nsresult (*GetDefaultLeaseTime)(IDHCPIndividualConfig *pThis, PRUint32 *defaultLeaseTime); + nsresult (*SetDefaultLeaseTime)(IDHCPIndividualConfig *pThis, PRUint32 defaultLeaseTime); + + nsresult (*GetMaxLeaseTime)(IDHCPIndividualConfig *pThis, PRUint32 *maxLeaseTime); + nsresult (*SetMaxLeaseTime)(IDHCPIndividualConfig *pThis, PRUint32 maxLeaseTime); + + nsresult (*GetForcedOptions)(IDHCPIndividualConfig *pThis, PRUint32 *forcedOptionsSize, PRUint32 **forcedOptions); + nsresult (*SetForcedOptions)(IDHCPIndividualConfig *pThis, PRUint32 forcedOptionsSize, PRUint32 *forcedOptions); + + nsresult (*GetSuppressedOptions)(IDHCPIndividualConfig *pThis, PRUint32 *suppressedOptionsSize, PRUint32 **suppressedOptions); + nsresult (*SetSuppressedOptions)(IDHCPIndividualConfig *pThis, PRUint32 suppressedOptionsSize, PRUint32 *suppressedOptions); + + nsresult (*GetInternalAndReservedAttribute1IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDHCPConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*SetOption)( + IDHCPIndividualConfig *pThis, + PRUint32 option, + PRUint32 encoding, + PRUnichar * value + ); + + nsresult (*RemoveOption)( + IDHCPIndividualConfig *pThis, + PRUint32 option + ); + + nsresult (*RemoveAllOptions)(IDHCPIndividualConfig *pThis ); + + nsresult (*GetOption)( + IDHCPIndividualConfig *pThis, + PRUint32 option, + PRUint32 * encoding, + PRUnichar * * value + ); + + nsresult (*GetAllOptions)( + IDHCPIndividualConfig *pThis, + PRUint32 *optionsSize, + PRUint32** options, + PRUint32 *encodingsSize, + PRUint32** encodings, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*Remove)(IDHCPIndividualConfig *pThis ); + + nsresult (*InternalAndReservedMethod1IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*GetMACAddress)(IDHCPIndividualConfig *pThis, PRUnichar * *MACAddress); + + nsresult (*GetMachineId)(IDHCPIndividualConfig *pThis, PRUnichar * *machineId); + + nsresult (*GetSlot)(IDHCPIndividualConfig *pThis, PRUint32 *slot); + + nsresult (*GetFixedAddress)(IDHCPIndividualConfig *pThis, PRUnichar * *fixedAddress); + nsresult (*SetFixedAddress)(IDHCPIndividualConfig *pThis, PRUnichar * fixedAddress); + + nsresult (*GetInternalAndReservedAttribute1IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod2IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod3IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod4IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod5IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod6IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod7IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + + nsresult (*InternalAndReservedMethod8IDHCPIndividualConfig)(IDHCPIndividualConfig *pThis); + +}; +# define IDHCPIndividualConfig_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDHCPIndividualConfig_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDHCPIndividualConfig_Release(p) ((p)->lpVtbl->Release(p)) +# define IDHCPIndividualConfig_get_Scope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPIndividualConfig_GetScope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define IDHCPIndividualConfig_get_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPIndividualConfig_GetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->GetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPIndividualConfig_put_MinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPIndividualConfig_SetMinLeaseTime(p, aMinLeaseTime) ((p)->lpVtbl->SetMinLeaseTime(p, aMinLeaseTime)) +# define IDHCPIndividualConfig_get_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPIndividualConfig_GetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->GetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPIndividualConfig_put_DefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPIndividualConfig_SetDefaultLeaseTime(p, aDefaultLeaseTime) ((p)->lpVtbl->SetDefaultLeaseTime(p, aDefaultLeaseTime)) +# define IDHCPIndividualConfig_get_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPIndividualConfig_GetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->GetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPIndividualConfig_put_MaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPIndividualConfig_SetMaxLeaseTime(p, aMaxLeaseTime) ((p)->lpVtbl->SetMaxLeaseTime(p, aMaxLeaseTime)) +# define IDHCPIndividualConfig_get_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPIndividualConfig_GetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->GetForcedOptions(p, aForcedOptions)) +# define IDHCPIndividualConfig_put_ForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPIndividualConfig_SetForcedOptions(p, aForcedOptions) ((p)->lpVtbl->SetForcedOptions(p, aForcedOptions)) +# define IDHCPIndividualConfig_get_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPIndividualConfig_GetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->GetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPIndividualConfig_put_SuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPIndividualConfig_SetSuppressedOptions(p, aSuppressedOptions) ((p)->lpVtbl->SetSuppressedOptions(p, aSuppressedOptions)) +# define IDHCPIndividualConfig_SetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->SetOption(p, aOption, aEncoding, aValue)) +# define IDHCPIndividualConfig_RemoveOption(p, aOption) ((p)->lpVtbl->RemoveOption(p, aOption)) +# define IDHCPIndividualConfig_RemoveAllOptions(p) ((p)->lpVtbl->RemoveAllOptions(p)) +# define IDHCPIndividualConfig_GetOption(p, aOption, aEncoding, aValue) ((p)->lpVtbl->GetOption(p, aOption, aEncoding, aValue)) +# define IDHCPIndividualConfig_GetAllOptions(p, aOptions, aEncodings, aValues) ((p)->lpVtbl->GetAllOptions(p, aOptions, aEncodings, aValues)) +# define IDHCPIndividualConfig_Remove(p) ((p)->lpVtbl->Remove(p)) +# define IDHCPIndividualConfig_get_MACAddress(p, aMACAddress) ((p)->lpVtbl->GetMACAddress(p, aMACAddress)) +# define IDHCPIndividualConfig_GetMACAddress(p, aMACAddress) ((p)->lpVtbl->GetMACAddress(p, aMACAddress)) +# define IDHCPIndividualConfig_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IDHCPIndividualConfig_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IDHCPIndividualConfig_get_Slot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define IDHCPIndividualConfig_GetSlot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define IDHCPIndividualConfig_get_FixedAddress(p, aFixedAddress) ((p)->lpVtbl->GetFixedAddress(p, aFixedAddress)) +# define IDHCPIndividualConfig_GetFixedAddress(p, aFixedAddress) ((p)->lpVtbl->GetFixedAddress(p, aFixedAddress)) +# define IDHCPIndividualConfig_put_FixedAddress(p, aFixedAddress) ((p)->lpVtbl->SetFixedAddress(p, aFixedAddress)) +# define IDHCPIndividualConfig_SetFixedAddress(p, aFixedAddress) ((p)->lpVtbl->SetFixedAddress(p, aFixedAddress)) +# endif /* VBOX_WITH_GLUE */ + +interface IDHCPIndividualConfig +{ +# ifndef VBOX_WITH_GLUE + struct IDHCPIndividualConfig_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDHCPIndividualConfigVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDHCPIndividualConfig declaration */ + + +/* Start of struct IVirtualBox declaration */ +# define IVIRTUALBOX_IID_STR "d0a0163f-e254-4e5b-a1f2-011cf991c38d" +# define IVIRTUALBOX_IID { \ + 0xd0a0163f, 0xe254, 0x4e5b, \ + { 0xa1, 0xf2, 0x01, 0x1c, 0xf9, 0x91, 0xc3, 0x8d } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVirtualBox); +# ifndef VBOX_WITH_GLUE +struct IVirtualBox_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetVersion)(IVirtualBox *pThis, PRUnichar * *version); + + nsresult (*GetVersionNormalized)(IVirtualBox *pThis, PRUnichar * *versionNormalized); + + nsresult (*GetRevision)(IVirtualBox *pThis, PRUint32 *revision); + + nsresult (*GetPackageType)(IVirtualBox *pThis, PRUnichar * *packageType); + + nsresult (*GetAPIVersion)(IVirtualBox *pThis, PRUnichar * *APIVersion); + + nsresult (*GetAPIRevision)(IVirtualBox *pThis, PRInt64 *APIRevision); + + nsresult (*GetHomeFolder)(IVirtualBox *pThis, PRUnichar * *homeFolder); + + nsresult (*GetSettingsFilePath)(IVirtualBox *pThis, PRUnichar * *settingsFilePath); + + nsresult (*GetHost)(IVirtualBox *pThis, IHost * *host); + + nsresult (*GetSystemProperties)(IVirtualBox *pThis, ISystemProperties * *systemProperties); + + nsresult (*GetMachines)(IVirtualBox *pThis, PRUint32 *machinesSize, IMachine * **machines); + + nsresult (*GetMachineGroups)(IVirtualBox *pThis, PRUint32 *machineGroupsSize, PRUnichar * **machineGroups); + + nsresult (*GetHardDisks)(IVirtualBox *pThis, PRUint32 *hardDisksSize, IMedium * **hardDisks); + + nsresult (*GetDVDImages)(IVirtualBox *pThis, PRUint32 *DVDImagesSize, IMedium * **DVDImages); + + nsresult (*GetFloppyImages)(IVirtualBox *pThis, PRUint32 *floppyImagesSize, IMedium * **floppyImages); + + nsresult (*GetProgressOperations)(IVirtualBox *pThis, PRUint32 *progressOperationsSize, IProgress * **progressOperations); + + nsresult (*GetGuestOSTypes)(IVirtualBox *pThis, PRUint32 *guestOSTypesSize, IGuestOSType * **guestOSTypes); + + nsresult (*GetSharedFolders)(IVirtualBox *pThis, PRUint32 *sharedFoldersSize, ISharedFolder * **sharedFolders); + + nsresult (*GetPerformanceCollector)(IVirtualBox *pThis, IPerformanceCollector * *performanceCollector); + + nsresult (*GetDHCPServers)(IVirtualBox *pThis, PRUint32 *DHCPServersSize, IDHCPServer * **DHCPServers); + + nsresult (*GetNATNetworks)(IVirtualBox *pThis, PRUint32 *NATNetworksSize, INATNetwork * **NATNetworks); + + nsresult (*GetEventSource)(IVirtualBox *pThis, IEventSource * *eventSource); + + nsresult (*GetExtensionPackManager)(IVirtualBox *pThis, IExtPackManager * *extensionPackManager); + + nsresult (*GetInternalNetworks)(IVirtualBox *pThis, PRUint32 *internalNetworksSize, PRUnichar * **internalNetworks); + + nsresult (*GetGenericNetworkDrivers)(IVirtualBox *pThis, PRUint32 *genericNetworkDriversSize, PRUnichar * **genericNetworkDrivers); + + nsresult (*GetCloudNetworks)(IVirtualBox *pThis, PRUint32 *cloudNetworksSize, ICloudNetwork * **cloudNetworks); + + nsresult (*GetCloudProviderManager)(IVirtualBox *pThis, ICloudProviderManager * *cloudProviderManager); + + nsresult (*GetInternalAndReservedAttribute1IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*ComposeMachineFilename)( + IVirtualBox *pThis, + PRUnichar * name, + PRUnichar * group, + PRUnichar * createFlags, + PRUnichar * baseFolder, + PRUnichar * * file + ); + + nsresult (*CreateMachine)( + IVirtualBox *pThis, + PRUnichar * settingsFile, + PRUnichar * name, + PRUint32 groupsSize, + PRUnichar ** groups, + PRUnichar * osTypeId, + PRUnichar * flags, + IMachine * * machine + ); + + nsresult (*OpenMachine)( + IVirtualBox *pThis, + PRUnichar * settingsFile, + IMachine * * machine + ); + + nsresult (*RegisterMachine)( + IVirtualBox *pThis, + IMachine * machine + ); + + nsresult (*FindMachine)( + IVirtualBox *pThis, + PRUnichar * nameOrId, + IMachine * * machine + ); + + nsresult (*GetMachinesByGroups)( + IVirtualBox *pThis, + PRUint32 groupsSize, + PRUnichar ** groups, + PRUint32 *machinesSize, + IMachine *** machines + ); + + nsresult (*GetMachineStates)( + IVirtualBox *pThis, + PRUint32 machinesSize, + IMachine ** machines, + PRUint32 *statesSize, + PRUint32** states + ); + + nsresult (*CreateAppliance)( + IVirtualBox *pThis, + IAppliance * * appliance + ); + + nsresult (*CreateUnattendedInstaller)( + IVirtualBox *pThis, + IUnattended * * unattended + ); + + nsresult (*CreateMedium)( + IVirtualBox *pThis, + PRUnichar * format, + PRUnichar * location, + PRUint32 accessMode, + PRUint32 aDeviceTypeType, + IMedium * * medium + ); + + nsresult (*OpenMedium)( + IVirtualBox *pThis, + PRUnichar * location, + PRUint32 deviceType, + PRUint32 accessMode, + PRBool forceNewUuid, + IMedium * * medium + ); + + nsresult (*GetGuestOSType)( + IVirtualBox *pThis, + PRUnichar * id, + IGuestOSType * * type + ); + + nsresult (*CreateSharedFolder)( + IVirtualBox *pThis, + PRUnichar * name, + PRUnichar * hostPath, + PRBool writable, + PRBool automount, + PRUnichar * autoMountPoint + ); + + nsresult (*RemoveSharedFolder)( + IVirtualBox *pThis, + PRUnichar * name + ); + + nsresult (*GetExtraDataKeys)( + IVirtualBox *pThis, + PRUint32 *keysSize, + PRUnichar *** keys + ); + + nsresult (*GetExtraData)( + IVirtualBox *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*SetExtraData)( + IVirtualBox *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*SetSettingsSecret)( + IVirtualBox *pThis, + PRUnichar * password + ); + + nsresult (*CreateDHCPServer)( + IVirtualBox *pThis, + PRUnichar * name, + IDHCPServer * * server + ); + + nsresult (*FindDHCPServerByNetworkName)( + IVirtualBox *pThis, + PRUnichar * name, + IDHCPServer * * server + ); + + nsresult (*RemoveDHCPServer)( + IVirtualBox *pThis, + IDHCPServer * server + ); + + nsresult (*CreateNATNetwork)( + IVirtualBox *pThis, + PRUnichar * networkName, + INATNetwork * * network + ); + + nsresult (*FindNATNetworkByName)( + IVirtualBox *pThis, + PRUnichar * networkName, + INATNetwork * * network + ); + + nsresult (*RemoveNATNetwork)( + IVirtualBox *pThis, + INATNetwork * network + ); + + nsresult (*CreateCloudNetwork)( + IVirtualBox *pThis, + PRUnichar * networkName, + ICloudNetwork * * network + ); + + nsresult (*FindCloudNetworkByName)( + IVirtualBox *pThis, + PRUnichar * networkName, + ICloudNetwork * * network + ); + + nsresult (*RemoveCloudNetwork)( + IVirtualBox *pThis, + ICloudNetwork * network + ); + + nsresult (*CheckFirmwarePresent)( + IVirtualBox *pThis, + PRUint32 firmwareType, + PRUnichar * version, + PRUnichar * * url, + PRUnichar * * file, + PRBool * result + ); + + nsresult (*InternalAndReservedMethod1IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod5IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod6IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod7IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod8IVirtualBox)(IVirtualBox *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVirtualBoxVtbl +{ + nsresult (*QueryInterface)(IVirtualBox *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVirtualBox *pThis); + nsrefcnt (*Release)(IVirtualBox *pThis); + nsresult (*GetVersion)(IVirtualBox *pThis, PRUnichar * *version); + + nsresult (*GetVersionNormalized)(IVirtualBox *pThis, PRUnichar * *versionNormalized); + + nsresult (*GetRevision)(IVirtualBox *pThis, PRUint32 *revision); + + nsresult (*GetPackageType)(IVirtualBox *pThis, PRUnichar * *packageType); + + nsresult (*GetAPIVersion)(IVirtualBox *pThis, PRUnichar * *APIVersion); + + nsresult (*GetAPIRevision)(IVirtualBox *pThis, PRInt64 *APIRevision); + + nsresult (*GetHomeFolder)(IVirtualBox *pThis, PRUnichar * *homeFolder); + + nsresult (*GetSettingsFilePath)(IVirtualBox *pThis, PRUnichar * *settingsFilePath); + + nsresult (*GetHost)(IVirtualBox *pThis, IHost * *host); + + nsresult (*GetSystemProperties)(IVirtualBox *pThis, ISystemProperties * *systemProperties); + + nsresult (*GetMachines)(IVirtualBox *pThis, PRUint32 *machinesSize, IMachine * **machines); + + nsresult (*GetMachineGroups)(IVirtualBox *pThis, PRUint32 *machineGroupsSize, PRUnichar * **machineGroups); + + nsresult (*GetHardDisks)(IVirtualBox *pThis, PRUint32 *hardDisksSize, IMedium * **hardDisks); + + nsresult (*GetDVDImages)(IVirtualBox *pThis, PRUint32 *DVDImagesSize, IMedium * **DVDImages); + + nsresult (*GetFloppyImages)(IVirtualBox *pThis, PRUint32 *floppyImagesSize, IMedium * **floppyImages); + + nsresult (*GetProgressOperations)(IVirtualBox *pThis, PRUint32 *progressOperationsSize, IProgress * **progressOperations); + + nsresult (*GetGuestOSTypes)(IVirtualBox *pThis, PRUint32 *guestOSTypesSize, IGuestOSType * **guestOSTypes); + + nsresult (*GetSharedFolders)(IVirtualBox *pThis, PRUint32 *sharedFoldersSize, ISharedFolder * **sharedFolders); + + nsresult (*GetPerformanceCollector)(IVirtualBox *pThis, IPerformanceCollector * *performanceCollector); + + nsresult (*GetDHCPServers)(IVirtualBox *pThis, PRUint32 *DHCPServersSize, IDHCPServer * **DHCPServers); + + nsresult (*GetNATNetworks)(IVirtualBox *pThis, PRUint32 *NATNetworksSize, INATNetwork * **NATNetworks); + + nsresult (*GetEventSource)(IVirtualBox *pThis, IEventSource * *eventSource); + + nsresult (*GetExtensionPackManager)(IVirtualBox *pThis, IExtPackManager * *extensionPackManager); + + nsresult (*GetInternalNetworks)(IVirtualBox *pThis, PRUint32 *internalNetworksSize, PRUnichar * **internalNetworks); + + nsresult (*GetGenericNetworkDrivers)(IVirtualBox *pThis, PRUint32 *genericNetworkDriversSize, PRUnichar * **genericNetworkDrivers); + + nsresult (*GetCloudNetworks)(IVirtualBox *pThis, PRUint32 *cloudNetworksSize, ICloudNetwork * **cloudNetworks); + + nsresult (*GetCloudProviderManager)(IVirtualBox *pThis, ICloudProviderManager * *cloudProviderManager); + + nsresult (*GetInternalAndReservedAttribute1IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IVirtualBox)(IVirtualBox *pThis, PRUint32 *reserved); + + nsresult (*ComposeMachineFilename)( + IVirtualBox *pThis, + PRUnichar * name, + PRUnichar * group, + PRUnichar * createFlags, + PRUnichar * baseFolder, + PRUnichar * * file + ); + + nsresult (*CreateMachine)( + IVirtualBox *pThis, + PRUnichar * settingsFile, + PRUnichar * name, + PRUint32 groupsSize, + PRUnichar ** groups, + PRUnichar * osTypeId, + PRUnichar * flags, + IMachine * * machine + ); + + nsresult (*OpenMachine)( + IVirtualBox *pThis, + PRUnichar * settingsFile, + IMachine * * machine + ); + + nsresult (*RegisterMachine)( + IVirtualBox *pThis, + IMachine * machine + ); + + nsresult (*FindMachine)( + IVirtualBox *pThis, + PRUnichar * nameOrId, + IMachine * * machine + ); + + nsresult (*GetMachinesByGroups)( + IVirtualBox *pThis, + PRUint32 groupsSize, + PRUnichar ** groups, + PRUint32 *machinesSize, + IMachine *** machines + ); + + nsresult (*GetMachineStates)( + IVirtualBox *pThis, + PRUint32 machinesSize, + IMachine ** machines, + PRUint32 *statesSize, + PRUint32** states + ); + + nsresult (*CreateAppliance)( + IVirtualBox *pThis, + IAppliance * * appliance + ); + + nsresult (*CreateUnattendedInstaller)( + IVirtualBox *pThis, + IUnattended * * unattended + ); + + nsresult (*CreateMedium)( + IVirtualBox *pThis, + PRUnichar * format, + PRUnichar * location, + PRUint32 accessMode, + PRUint32 aDeviceTypeType, + IMedium * * medium + ); + + nsresult (*OpenMedium)( + IVirtualBox *pThis, + PRUnichar * location, + PRUint32 deviceType, + PRUint32 accessMode, + PRBool forceNewUuid, + IMedium * * medium + ); + + nsresult (*GetGuestOSType)( + IVirtualBox *pThis, + PRUnichar * id, + IGuestOSType * * type + ); + + nsresult (*CreateSharedFolder)( + IVirtualBox *pThis, + PRUnichar * name, + PRUnichar * hostPath, + PRBool writable, + PRBool automount, + PRUnichar * autoMountPoint + ); + + nsresult (*RemoveSharedFolder)( + IVirtualBox *pThis, + PRUnichar * name + ); + + nsresult (*GetExtraDataKeys)( + IVirtualBox *pThis, + PRUint32 *keysSize, + PRUnichar *** keys + ); + + nsresult (*GetExtraData)( + IVirtualBox *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*SetExtraData)( + IVirtualBox *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*SetSettingsSecret)( + IVirtualBox *pThis, + PRUnichar * password + ); + + nsresult (*CreateDHCPServer)( + IVirtualBox *pThis, + PRUnichar * name, + IDHCPServer * * server + ); + + nsresult (*FindDHCPServerByNetworkName)( + IVirtualBox *pThis, + PRUnichar * name, + IDHCPServer * * server + ); + + nsresult (*RemoveDHCPServer)( + IVirtualBox *pThis, + IDHCPServer * server + ); + + nsresult (*CreateNATNetwork)( + IVirtualBox *pThis, + PRUnichar * networkName, + INATNetwork * * network + ); + + nsresult (*FindNATNetworkByName)( + IVirtualBox *pThis, + PRUnichar * networkName, + INATNetwork * * network + ); + + nsresult (*RemoveNATNetwork)( + IVirtualBox *pThis, + INATNetwork * network + ); + + nsresult (*CreateCloudNetwork)( + IVirtualBox *pThis, + PRUnichar * networkName, + ICloudNetwork * * network + ); + + nsresult (*FindCloudNetworkByName)( + IVirtualBox *pThis, + PRUnichar * networkName, + ICloudNetwork * * network + ); + + nsresult (*RemoveCloudNetwork)( + IVirtualBox *pThis, + ICloudNetwork * network + ); + + nsresult (*CheckFirmwarePresent)( + IVirtualBox *pThis, + PRUint32 firmwareType, + PRUnichar * version, + PRUnichar * * url, + PRUnichar * * file, + PRBool * result + ); + + nsresult (*InternalAndReservedMethod1IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod5IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod6IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod7IVirtualBox)(IVirtualBox *pThis); + + nsresult (*InternalAndReservedMethod8IVirtualBox)(IVirtualBox *pThis); + +}; +# define IVirtualBox_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVirtualBox_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVirtualBox_Release(p) ((p)->lpVtbl->Release(p)) +# define IVirtualBox_get_Version(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IVirtualBox_GetVersion(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IVirtualBox_get_VersionNormalized(p, aVersionNormalized) ((p)->lpVtbl->GetVersionNormalized(p, aVersionNormalized)) +# define IVirtualBox_GetVersionNormalized(p, aVersionNormalized) ((p)->lpVtbl->GetVersionNormalized(p, aVersionNormalized)) +# define IVirtualBox_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IVirtualBox_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IVirtualBox_get_PackageType(p, aPackageType) ((p)->lpVtbl->GetPackageType(p, aPackageType)) +# define IVirtualBox_GetPackageType(p, aPackageType) ((p)->lpVtbl->GetPackageType(p, aPackageType)) +# define IVirtualBox_get_APIVersion(p, aAPIVersion) ((p)->lpVtbl->GetAPIVersion(p, aAPIVersion)) +# define IVirtualBox_GetAPIVersion(p, aAPIVersion) ((p)->lpVtbl->GetAPIVersion(p, aAPIVersion)) +# define IVirtualBox_get_APIRevision(p, aAPIRevision) ((p)->lpVtbl->GetAPIRevision(p, aAPIRevision)) +# define IVirtualBox_GetAPIRevision(p, aAPIRevision) ((p)->lpVtbl->GetAPIRevision(p, aAPIRevision)) +# define IVirtualBox_get_HomeFolder(p, aHomeFolder) ((p)->lpVtbl->GetHomeFolder(p, aHomeFolder)) +# define IVirtualBox_GetHomeFolder(p, aHomeFolder) ((p)->lpVtbl->GetHomeFolder(p, aHomeFolder)) +# define IVirtualBox_get_SettingsFilePath(p, aSettingsFilePath) ((p)->lpVtbl->GetSettingsFilePath(p, aSettingsFilePath)) +# define IVirtualBox_GetSettingsFilePath(p, aSettingsFilePath) ((p)->lpVtbl->GetSettingsFilePath(p, aSettingsFilePath)) +# define IVirtualBox_get_Host(p, aHost) ((p)->lpVtbl->GetHost(p, aHost)) +# define IVirtualBox_GetHost(p, aHost) ((p)->lpVtbl->GetHost(p, aHost)) +# define IVirtualBox_get_SystemProperties(p, aSystemProperties) ((p)->lpVtbl->GetSystemProperties(p, aSystemProperties)) +# define IVirtualBox_GetSystemProperties(p, aSystemProperties) ((p)->lpVtbl->GetSystemProperties(p, aSystemProperties)) +# define IVirtualBox_get_Machines(p, aMachines) ((p)->lpVtbl->GetMachines(p, aMachines)) +# define IVirtualBox_GetMachines(p, aMachines) ((p)->lpVtbl->GetMachines(p, aMachines)) +# define IVirtualBox_get_MachineGroups(p, aMachineGroups) ((p)->lpVtbl->GetMachineGroups(p, aMachineGroups)) +# define IVirtualBox_GetMachineGroups(p, aMachineGroups) ((p)->lpVtbl->GetMachineGroups(p, aMachineGroups)) +# define IVirtualBox_get_HardDisks(p, aHardDisks) ((p)->lpVtbl->GetHardDisks(p, aHardDisks)) +# define IVirtualBox_GetHardDisks(p, aHardDisks) ((p)->lpVtbl->GetHardDisks(p, aHardDisks)) +# define IVirtualBox_get_DVDImages(p, aDVDImages) ((p)->lpVtbl->GetDVDImages(p, aDVDImages)) +# define IVirtualBox_GetDVDImages(p, aDVDImages) ((p)->lpVtbl->GetDVDImages(p, aDVDImages)) +# define IVirtualBox_get_FloppyImages(p, aFloppyImages) ((p)->lpVtbl->GetFloppyImages(p, aFloppyImages)) +# define IVirtualBox_GetFloppyImages(p, aFloppyImages) ((p)->lpVtbl->GetFloppyImages(p, aFloppyImages)) +# define IVirtualBox_get_ProgressOperations(p, aProgressOperations) ((p)->lpVtbl->GetProgressOperations(p, aProgressOperations)) +# define IVirtualBox_GetProgressOperations(p, aProgressOperations) ((p)->lpVtbl->GetProgressOperations(p, aProgressOperations)) +# define IVirtualBox_get_GuestOSTypes(p, aGuestOSTypes) ((p)->lpVtbl->GetGuestOSTypes(p, aGuestOSTypes)) +# define IVirtualBox_GetGuestOSTypes(p, aGuestOSTypes) ((p)->lpVtbl->GetGuestOSTypes(p, aGuestOSTypes)) +# define IVirtualBox_get_SharedFolders(p, aSharedFolders) ((p)->lpVtbl->GetSharedFolders(p, aSharedFolders)) +# define IVirtualBox_GetSharedFolders(p, aSharedFolders) ((p)->lpVtbl->GetSharedFolders(p, aSharedFolders)) +# define IVirtualBox_get_PerformanceCollector(p, aPerformanceCollector) ((p)->lpVtbl->GetPerformanceCollector(p, aPerformanceCollector)) +# define IVirtualBox_GetPerformanceCollector(p, aPerformanceCollector) ((p)->lpVtbl->GetPerformanceCollector(p, aPerformanceCollector)) +# define IVirtualBox_get_DHCPServers(p, aDHCPServers) ((p)->lpVtbl->GetDHCPServers(p, aDHCPServers)) +# define IVirtualBox_GetDHCPServers(p, aDHCPServers) ((p)->lpVtbl->GetDHCPServers(p, aDHCPServers)) +# define IVirtualBox_get_NATNetworks(p, aNATNetworks) ((p)->lpVtbl->GetNATNetworks(p, aNATNetworks)) +# define IVirtualBox_GetNATNetworks(p, aNATNetworks) ((p)->lpVtbl->GetNATNetworks(p, aNATNetworks)) +# define IVirtualBox_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IVirtualBox_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IVirtualBox_get_ExtensionPackManager(p, aExtensionPackManager) ((p)->lpVtbl->GetExtensionPackManager(p, aExtensionPackManager)) +# define IVirtualBox_GetExtensionPackManager(p, aExtensionPackManager) ((p)->lpVtbl->GetExtensionPackManager(p, aExtensionPackManager)) +# define IVirtualBox_get_InternalNetworks(p, aInternalNetworks) ((p)->lpVtbl->GetInternalNetworks(p, aInternalNetworks)) +# define IVirtualBox_GetInternalNetworks(p, aInternalNetworks) ((p)->lpVtbl->GetInternalNetworks(p, aInternalNetworks)) +# define IVirtualBox_get_GenericNetworkDrivers(p, aGenericNetworkDrivers) ((p)->lpVtbl->GetGenericNetworkDrivers(p, aGenericNetworkDrivers)) +# define IVirtualBox_GetGenericNetworkDrivers(p, aGenericNetworkDrivers) ((p)->lpVtbl->GetGenericNetworkDrivers(p, aGenericNetworkDrivers)) +# define IVirtualBox_get_CloudNetworks(p, aCloudNetworks) ((p)->lpVtbl->GetCloudNetworks(p, aCloudNetworks)) +# define IVirtualBox_GetCloudNetworks(p, aCloudNetworks) ((p)->lpVtbl->GetCloudNetworks(p, aCloudNetworks)) +# define IVirtualBox_get_CloudProviderManager(p, aCloudProviderManager) ((p)->lpVtbl->GetCloudProviderManager(p, aCloudProviderManager)) +# define IVirtualBox_GetCloudProviderManager(p, aCloudProviderManager) ((p)->lpVtbl->GetCloudProviderManager(p, aCloudProviderManager)) +# define IVirtualBox_ComposeMachineFilename(p, aName, aGroup, aCreateFlags, aBaseFolder, aFile) ((p)->lpVtbl->ComposeMachineFilename(p, aName, aGroup, aCreateFlags, aBaseFolder, aFile)) +# define IVirtualBox_CreateMachine(p, aSettingsFile, aName, aGroups, aOsTypeId, aFlags, aMachine) ((p)->lpVtbl->CreateMachine(p, aSettingsFile, aName, aGroups, aOsTypeId, aFlags, aMachine)) +# define IVirtualBox_OpenMachine(p, aSettingsFile, aMachine) ((p)->lpVtbl->OpenMachine(p, aSettingsFile, aMachine)) +# define IVirtualBox_RegisterMachine(p, aMachine) ((p)->lpVtbl->RegisterMachine(p, aMachine)) +# define IVirtualBox_FindMachine(p, aNameOrId, aMachine) ((p)->lpVtbl->FindMachine(p, aNameOrId, aMachine)) +# define IVirtualBox_GetMachinesByGroups(p, aGroups, aMachines) ((p)->lpVtbl->GetMachinesByGroups(p, aGroups, aMachines)) +# define IVirtualBox_GetMachineStates(p, aMachines, aStates) ((p)->lpVtbl->GetMachineStates(p, aMachines, aStates)) +# define IVirtualBox_CreateAppliance(p, aAppliance) ((p)->lpVtbl->CreateAppliance(p, aAppliance)) +# define IVirtualBox_CreateUnattendedInstaller(p, aUnattended) ((p)->lpVtbl->CreateUnattendedInstaller(p, aUnattended)) +# define IVirtualBox_CreateMedium(p, aFormat, aLocation, aAccessMode, aADeviceTypeType, aMedium) ((p)->lpVtbl->CreateMedium(p, aFormat, aLocation, aAccessMode, aADeviceTypeType, aMedium)) +# define IVirtualBox_OpenMedium(p, aLocation, aDeviceType, aAccessMode, aForceNewUuid, aMedium) ((p)->lpVtbl->OpenMedium(p, aLocation, aDeviceType, aAccessMode, aForceNewUuid, aMedium)) +# define IVirtualBox_GetGuestOSType(p, aId, aType) ((p)->lpVtbl->GetGuestOSType(p, aId, aType)) +# define IVirtualBox_CreateSharedFolder(p, aName, aHostPath, aWritable, aAutomount, aAutoMountPoint) ((p)->lpVtbl->CreateSharedFolder(p, aName, aHostPath, aWritable, aAutomount, aAutoMountPoint)) +# define IVirtualBox_RemoveSharedFolder(p, aName) ((p)->lpVtbl->RemoveSharedFolder(p, aName)) +# define IVirtualBox_GetExtraDataKeys(p, aKeys) ((p)->lpVtbl->GetExtraDataKeys(p, aKeys)) +# define IVirtualBox_GetExtraData(p, aKey, aValue) ((p)->lpVtbl->GetExtraData(p, aKey, aValue)) +# define IVirtualBox_SetExtraData(p, aKey, aValue) ((p)->lpVtbl->SetExtraData(p, aKey, aValue)) +# define IVirtualBox_SetSettingsSecret(p, aPassword) ((p)->lpVtbl->SetSettingsSecret(p, aPassword)) +# define IVirtualBox_CreateDHCPServer(p, aName, aServer) ((p)->lpVtbl->CreateDHCPServer(p, aName, aServer)) +# define IVirtualBox_FindDHCPServerByNetworkName(p, aName, aServer) ((p)->lpVtbl->FindDHCPServerByNetworkName(p, aName, aServer)) +# define IVirtualBox_RemoveDHCPServer(p, aServer) ((p)->lpVtbl->RemoveDHCPServer(p, aServer)) +# define IVirtualBox_CreateNATNetwork(p, aNetworkName, aNetwork) ((p)->lpVtbl->CreateNATNetwork(p, aNetworkName, aNetwork)) +# define IVirtualBox_FindNATNetworkByName(p, aNetworkName, aNetwork) ((p)->lpVtbl->FindNATNetworkByName(p, aNetworkName, aNetwork)) +# define IVirtualBox_RemoveNATNetwork(p, aNetwork) ((p)->lpVtbl->RemoveNATNetwork(p, aNetwork)) +# define IVirtualBox_CreateCloudNetwork(p, aNetworkName, aNetwork) ((p)->lpVtbl->CreateCloudNetwork(p, aNetworkName, aNetwork)) +# define IVirtualBox_FindCloudNetworkByName(p, aNetworkName, aNetwork) ((p)->lpVtbl->FindCloudNetworkByName(p, aNetworkName, aNetwork)) +# define IVirtualBox_RemoveCloudNetwork(p, aNetwork) ((p)->lpVtbl->RemoveCloudNetwork(p, aNetwork)) +# define IVirtualBox_CheckFirmwarePresent(p, aFirmwareType, aVersion, aUrl, aFile, aResult) ((p)->lpVtbl->CheckFirmwarePresent(p, aFirmwareType, aVersion, aUrl, aFile, aResult)) +# endif /* VBOX_WITH_GLUE */ + +interface IVirtualBox +{ +# ifndef VBOX_WITH_GLUE + struct IVirtualBox_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVirtualBoxVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVirtualBox declaration */ + + +/* Start of struct IVFSExplorer declaration */ +# define IVFSEXPLORER_IID_STR "fb220201-2fd3-47e2-a5dc-2c2431d833cc" +# define IVFSEXPLORER_IID { \ + 0xfb220201, 0x2fd3, 0x47e2, \ + { 0xa5, 0xdc, 0x2c, 0x24, 0x31, 0xd8, 0x33, 0xcc } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVFSExplorer); +# ifndef VBOX_WITH_GLUE +struct IVFSExplorer_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetPath)(IVFSExplorer *pThis, PRUnichar * *path); + + nsresult (*GetType)(IVFSExplorer *pThis, PRUint32 *type); + + nsresult (*Update)( + IVFSExplorer *pThis, + IProgress * * progress + ); + + nsresult (*Cd)( + IVFSExplorer *pThis, + PRUnichar * dir, + IProgress * * progress + ); + + nsresult (*CdUp)( + IVFSExplorer *pThis, + IProgress * * progress + ); + + nsresult (*EntryList)( + IVFSExplorer *pThis, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *sizesSize, + PRInt64** sizes, + PRUint32 *modesSize, + PRUint32** modes + ); + + nsresult (*Exists)( + IVFSExplorer *pThis, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 *existsSize, + PRUnichar *** exists + ); + + nsresult (*Remove)( + IVFSExplorer *pThis, + PRUint32 namesSize, + PRUnichar ** names, + IProgress * * progress + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVFSExplorerVtbl +{ + nsresult (*QueryInterface)(IVFSExplorer *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVFSExplorer *pThis); + nsrefcnt (*Release)(IVFSExplorer *pThis); + nsresult (*GetPath)(IVFSExplorer *pThis, PRUnichar * *path); + + nsresult (*GetType)(IVFSExplorer *pThis, PRUint32 *type); + + nsresult (*Update)( + IVFSExplorer *pThis, + IProgress * * progress + ); + + nsresult (*Cd)( + IVFSExplorer *pThis, + PRUnichar * dir, + IProgress * * progress + ); + + nsresult (*CdUp)( + IVFSExplorer *pThis, + IProgress * * progress + ); + + nsresult (*EntryList)( + IVFSExplorer *pThis, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *sizesSize, + PRInt64** sizes, + PRUint32 *modesSize, + PRUint32** modes + ); + + nsresult (*Exists)( + IVFSExplorer *pThis, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 *existsSize, + PRUnichar *** exists + ); + + nsresult (*Remove)( + IVFSExplorer *pThis, + PRUint32 namesSize, + PRUnichar ** names, + IProgress * * progress + ); + +}; +# define IVFSExplorer_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVFSExplorer_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVFSExplorer_Release(p) ((p)->lpVtbl->Release(p)) +# define IVFSExplorer_get_Path(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IVFSExplorer_GetPath(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IVFSExplorer_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVFSExplorer_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVFSExplorer_Update(p, aProgress) ((p)->lpVtbl->Update(p, aProgress)) +# define IVFSExplorer_Cd(p, aDir, aProgress) ((p)->lpVtbl->Cd(p, aDir, aProgress)) +# define IVFSExplorer_CdUp(p, aProgress) ((p)->lpVtbl->CdUp(p, aProgress)) +# define IVFSExplorer_EntryList(p, aNames, aTypes, aSizes, aModes) ((p)->lpVtbl->EntryList(p, aNames, aTypes, aSizes, aModes)) +# define IVFSExplorer_Exists(p, aNames, aExists) ((p)->lpVtbl->Exists(p, aNames, aExists)) +# define IVFSExplorer_Remove(p, aNames, aProgress) ((p)->lpVtbl->Remove(p, aNames, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface IVFSExplorer +{ +# ifndef VBOX_WITH_GLUE + struct IVFSExplorer_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVFSExplorerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVFSExplorer declaration */ + + +/* Start of struct ICertificate declaration */ +# define ICERTIFICATE_IID_STR "392f1de4-80e1-4a8a-93a1-67c5f92a838a" +# define ICERTIFICATE_IID { \ + 0x392f1de4, 0x80e1, 0x4a8a, \ + { 0x93, 0xa1, 0x67, 0xc5, 0xf9, 0x2a, 0x83, 0x8a } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICertificate); +# ifndef VBOX_WITH_GLUE +struct ICertificate_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetVersionNumber)(ICertificate *pThis, PRUint32 *versionNumber); + + nsresult (*GetSerialNumber)(ICertificate *pThis, PRUnichar * *serialNumber); + + nsresult (*GetSignatureAlgorithmOID)(ICertificate *pThis, PRUnichar * *signatureAlgorithmOID); + + nsresult (*GetSignatureAlgorithmName)(ICertificate *pThis, PRUnichar * *signatureAlgorithmName); + + nsresult (*GetIssuerName)(ICertificate *pThis, PRUint32 *issuerNameSize, PRUnichar * **issuerName); + + nsresult (*GetSubjectName)(ICertificate *pThis, PRUint32 *subjectNameSize, PRUnichar * **subjectName); + + nsresult (*GetFriendlyName)(ICertificate *pThis, PRUnichar * *friendlyName); + + nsresult (*GetValidityPeriodNotBefore)(ICertificate *pThis, PRUnichar * *validityPeriodNotBefore); + + nsresult (*GetValidityPeriodNotAfter)(ICertificate *pThis, PRUnichar * *validityPeriodNotAfter); + + nsresult (*GetPublicKeyAlgorithmOID)(ICertificate *pThis, PRUnichar * *publicKeyAlgorithmOID); + + nsresult (*GetPublicKeyAlgorithm)(ICertificate *pThis, PRUnichar * *publicKeyAlgorithm); + + nsresult (*GetSubjectPublicKey)(ICertificate *pThis, PRUint32 *subjectPublicKeySize, PRUint8 **subjectPublicKey); + + nsresult (*GetIssuerUniqueIdentifier)(ICertificate *pThis, PRUnichar * *issuerUniqueIdentifier); + + nsresult (*GetSubjectUniqueIdentifier)(ICertificate *pThis, PRUnichar * *subjectUniqueIdentifier); + + nsresult (*GetCertificateAuthority)(ICertificate *pThis, PRBool *certificateAuthority); + + nsresult (*GetKeyUsage)(ICertificate *pThis, PRUint32 *keyUsage); + + nsresult (*GetExtendedKeyUsage)(ICertificate *pThis, PRUint32 *extendedKeyUsageSize, PRUnichar * **extendedKeyUsage); + + nsresult (*GetRawCertData)(ICertificate *pThis, PRUint32 *rawCertDataSize, PRUint8 **rawCertData); + + nsresult (*GetSelfSigned)(ICertificate *pThis, PRBool *selfSigned); + + nsresult (*GetTrusted)(ICertificate *pThis, PRBool *trusted); + + nsresult (*GetExpired)(ICertificate *pThis, PRBool *expired); + + nsresult (*GetInternalAndReservedAttribute1ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*IsCurrentlyExpired)( + ICertificate *pThis, + PRBool * result + ); + + nsresult (*QueryInfo)( + ICertificate *pThis, + PRInt32 what, + PRUnichar * * result + ); + + nsresult (*InternalAndReservedMethod1ICertificate)(ICertificate *pThis); + + nsresult (*InternalAndReservedMethod2ICertificate)(ICertificate *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICertificateVtbl +{ + nsresult (*QueryInterface)(ICertificate *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICertificate *pThis); + nsrefcnt (*Release)(ICertificate *pThis); + nsresult (*GetVersionNumber)(ICertificate *pThis, PRUint32 *versionNumber); + + nsresult (*GetSerialNumber)(ICertificate *pThis, PRUnichar * *serialNumber); + + nsresult (*GetSignatureAlgorithmOID)(ICertificate *pThis, PRUnichar * *signatureAlgorithmOID); + + nsresult (*GetSignatureAlgorithmName)(ICertificate *pThis, PRUnichar * *signatureAlgorithmName); + + nsresult (*GetIssuerName)(ICertificate *pThis, PRUint32 *issuerNameSize, PRUnichar * **issuerName); + + nsresult (*GetSubjectName)(ICertificate *pThis, PRUint32 *subjectNameSize, PRUnichar * **subjectName); + + nsresult (*GetFriendlyName)(ICertificate *pThis, PRUnichar * *friendlyName); + + nsresult (*GetValidityPeriodNotBefore)(ICertificate *pThis, PRUnichar * *validityPeriodNotBefore); + + nsresult (*GetValidityPeriodNotAfter)(ICertificate *pThis, PRUnichar * *validityPeriodNotAfter); + + nsresult (*GetPublicKeyAlgorithmOID)(ICertificate *pThis, PRUnichar * *publicKeyAlgorithmOID); + + nsresult (*GetPublicKeyAlgorithm)(ICertificate *pThis, PRUnichar * *publicKeyAlgorithm); + + nsresult (*GetSubjectPublicKey)(ICertificate *pThis, PRUint32 *subjectPublicKeySize, PRUint8 **subjectPublicKey); + + nsresult (*GetIssuerUniqueIdentifier)(ICertificate *pThis, PRUnichar * *issuerUniqueIdentifier); + + nsresult (*GetSubjectUniqueIdentifier)(ICertificate *pThis, PRUnichar * *subjectUniqueIdentifier); + + nsresult (*GetCertificateAuthority)(ICertificate *pThis, PRBool *certificateAuthority); + + nsresult (*GetKeyUsage)(ICertificate *pThis, PRUint32 *keyUsage); + + nsresult (*GetExtendedKeyUsage)(ICertificate *pThis, PRUint32 *extendedKeyUsageSize, PRUnichar * **extendedKeyUsage); + + nsresult (*GetRawCertData)(ICertificate *pThis, PRUint32 *rawCertDataSize, PRUint8 **rawCertData); + + nsresult (*GetSelfSigned)(ICertificate *pThis, PRBool *selfSigned); + + nsresult (*GetTrusted)(ICertificate *pThis, PRBool *trusted); + + nsresult (*GetExpired)(ICertificate *pThis, PRBool *expired); + + nsresult (*GetInternalAndReservedAttribute1ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ICertificate)(ICertificate *pThis, PRUint32 *reserved); + + nsresult (*IsCurrentlyExpired)( + ICertificate *pThis, + PRBool * result + ); + + nsresult (*QueryInfo)( + ICertificate *pThis, + PRInt32 what, + PRUnichar * * result + ); + + nsresult (*InternalAndReservedMethod1ICertificate)(ICertificate *pThis); + + nsresult (*InternalAndReservedMethod2ICertificate)(ICertificate *pThis); + +}; +# define ICertificate_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICertificate_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICertificate_Release(p) ((p)->lpVtbl->Release(p)) +# define ICertificate_get_VersionNumber(p, aVersionNumber) ((p)->lpVtbl->GetVersionNumber(p, aVersionNumber)) +# define ICertificate_GetVersionNumber(p, aVersionNumber) ((p)->lpVtbl->GetVersionNumber(p, aVersionNumber)) +# define ICertificate_get_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define ICertificate_GetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define ICertificate_get_SignatureAlgorithmOID(p, aSignatureAlgorithmOID) ((p)->lpVtbl->GetSignatureAlgorithmOID(p, aSignatureAlgorithmOID)) +# define ICertificate_GetSignatureAlgorithmOID(p, aSignatureAlgorithmOID) ((p)->lpVtbl->GetSignatureAlgorithmOID(p, aSignatureAlgorithmOID)) +# define ICertificate_get_SignatureAlgorithmName(p, aSignatureAlgorithmName) ((p)->lpVtbl->GetSignatureAlgorithmName(p, aSignatureAlgorithmName)) +# define ICertificate_GetSignatureAlgorithmName(p, aSignatureAlgorithmName) ((p)->lpVtbl->GetSignatureAlgorithmName(p, aSignatureAlgorithmName)) +# define ICertificate_get_IssuerName(p, aIssuerName) ((p)->lpVtbl->GetIssuerName(p, aIssuerName)) +# define ICertificate_GetIssuerName(p, aIssuerName) ((p)->lpVtbl->GetIssuerName(p, aIssuerName)) +# define ICertificate_get_SubjectName(p, aSubjectName) ((p)->lpVtbl->GetSubjectName(p, aSubjectName)) +# define ICertificate_GetSubjectName(p, aSubjectName) ((p)->lpVtbl->GetSubjectName(p, aSubjectName)) +# define ICertificate_get_FriendlyName(p, aFriendlyName) ((p)->lpVtbl->GetFriendlyName(p, aFriendlyName)) +# define ICertificate_GetFriendlyName(p, aFriendlyName) ((p)->lpVtbl->GetFriendlyName(p, aFriendlyName)) +# define ICertificate_get_ValidityPeriodNotBefore(p, aValidityPeriodNotBefore) ((p)->lpVtbl->GetValidityPeriodNotBefore(p, aValidityPeriodNotBefore)) +# define ICertificate_GetValidityPeriodNotBefore(p, aValidityPeriodNotBefore) ((p)->lpVtbl->GetValidityPeriodNotBefore(p, aValidityPeriodNotBefore)) +# define ICertificate_get_ValidityPeriodNotAfter(p, aValidityPeriodNotAfter) ((p)->lpVtbl->GetValidityPeriodNotAfter(p, aValidityPeriodNotAfter)) +# define ICertificate_GetValidityPeriodNotAfter(p, aValidityPeriodNotAfter) ((p)->lpVtbl->GetValidityPeriodNotAfter(p, aValidityPeriodNotAfter)) +# define ICertificate_get_PublicKeyAlgorithmOID(p, aPublicKeyAlgorithmOID) ((p)->lpVtbl->GetPublicKeyAlgorithmOID(p, aPublicKeyAlgorithmOID)) +# define ICertificate_GetPublicKeyAlgorithmOID(p, aPublicKeyAlgorithmOID) ((p)->lpVtbl->GetPublicKeyAlgorithmOID(p, aPublicKeyAlgorithmOID)) +# define ICertificate_get_PublicKeyAlgorithm(p, aPublicKeyAlgorithm) ((p)->lpVtbl->GetPublicKeyAlgorithm(p, aPublicKeyAlgorithm)) +# define ICertificate_GetPublicKeyAlgorithm(p, aPublicKeyAlgorithm) ((p)->lpVtbl->GetPublicKeyAlgorithm(p, aPublicKeyAlgorithm)) +# define ICertificate_get_SubjectPublicKey(p, aSubjectPublicKey) ((p)->lpVtbl->GetSubjectPublicKey(p, aSubjectPublicKey)) +# define ICertificate_GetSubjectPublicKey(p, aSubjectPublicKey) ((p)->lpVtbl->GetSubjectPublicKey(p, aSubjectPublicKey)) +# define ICertificate_get_IssuerUniqueIdentifier(p, aIssuerUniqueIdentifier) ((p)->lpVtbl->GetIssuerUniqueIdentifier(p, aIssuerUniqueIdentifier)) +# define ICertificate_GetIssuerUniqueIdentifier(p, aIssuerUniqueIdentifier) ((p)->lpVtbl->GetIssuerUniqueIdentifier(p, aIssuerUniqueIdentifier)) +# define ICertificate_get_SubjectUniqueIdentifier(p, aSubjectUniqueIdentifier) ((p)->lpVtbl->GetSubjectUniqueIdentifier(p, aSubjectUniqueIdentifier)) +# define ICertificate_GetSubjectUniqueIdentifier(p, aSubjectUniqueIdentifier) ((p)->lpVtbl->GetSubjectUniqueIdentifier(p, aSubjectUniqueIdentifier)) +# define ICertificate_get_CertificateAuthority(p, aCertificateAuthority) ((p)->lpVtbl->GetCertificateAuthority(p, aCertificateAuthority)) +# define ICertificate_GetCertificateAuthority(p, aCertificateAuthority) ((p)->lpVtbl->GetCertificateAuthority(p, aCertificateAuthority)) +# define ICertificate_get_KeyUsage(p, aKeyUsage) ((p)->lpVtbl->GetKeyUsage(p, aKeyUsage)) +# define ICertificate_GetKeyUsage(p, aKeyUsage) ((p)->lpVtbl->GetKeyUsage(p, aKeyUsage)) +# define ICertificate_get_ExtendedKeyUsage(p, aExtendedKeyUsage) ((p)->lpVtbl->GetExtendedKeyUsage(p, aExtendedKeyUsage)) +# define ICertificate_GetExtendedKeyUsage(p, aExtendedKeyUsage) ((p)->lpVtbl->GetExtendedKeyUsage(p, aExtendedKeyUsage)) +# define ICertificate_get_RawCertData(p, aRawCertData) ((p)->lpVtbl->GetRawCertData(p, aRawCertData)) +# define ICertificate_GetRawCertData(p, aRawCertData) ((p)->lpVtbl->GetRawCertData(p, aRawCertData)) +# define ICertificate_get_SelfSigned(p, aSelfSigned) ((p)->lpVtbl->GetSelfSigned(p, aSelfSigned)) +# define ICertificate_GetSelfSigned(p, aSelfSigned) ((p)->lpVtbl->GetSelfSigned(p, aSelfSigned)) +# define ICertificate_get_Trusted(p, aTrusted) ((p)->lpVtbl->GetTrusted(p, aTrusted)) +# define ICertificate_GetTrusted(p, aTrusted) ((p)->lpVtbl->GetTrusted(p, aTrusted)) +# define ICertificate_get_Expired(p, aExpired) ((p)->lpVtbl->GetExpired(p, aExpired)) +# define ICertificate_GetExpired(p, aExpired) ((p)->lpVtbl->GetExpired(p, aExpired)) +# define ICertificate_IsCurrentlyExpired(p, aResult) ((p)->lpVtbl->IsCurrentlyExpired(p, aResult)) +# define ICertificate_QueryInfo(p, aWhat, aResult) ((p)->lpVtbl->QueryInfo(p, aWhat, aResult)) +# endif /* VBOX_WITH_GLUE */ + +interface ICertificate +{ +# ifndef VBOX_WITH_GLUE + struct ICertificate_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICertificateVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICertificate declaration */ + + +/* Start of struct IAppliance declaration */ +# define IAPPLIANCE_IID_STR "86a98347-7619-41aa-aece-b21ac5c1a7e6" +# define IAPPLIANCE_IID { \ + 0x86a98347, 0x7619, 0x41aa, \ + { 0xae, 0xce, 0xb2, 0x1a, 0xc5, 0xc1, 0xa7, 0xe6 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IAppliance); +# ifndef VBOX_WITH_GLUE +struct IAppliance_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetPath)(IAppliance *pThis, PRUnichar * *path); + + nsresult (*GetDisks)(IAppliance *pThis, PRUint32 *disksSize, PRUnichar * **disks); + + nsresult (*GetVirtualSystemDescriptions)(IAppliance *pThis, PRUint32 *virtualSystemDescriptionsSize, IVirtualSystemDescription * **virtualSystemDescriptions); + + nsresult (*GetMachines)(IAppliance *pThis, PRUint32 *machinesSize, PRUnichar * **machines); + + nsresult (*GetCertificate)(IAppliance *pThis, ICertificate * *certificate); + + nsresult (*GetInternalAndReservedAttribute1IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*Read)( + IAppliance *pThis, + PRUnichar * file, + IProgress * * progress + ); + + nsresult (*Interpret)(IAppliance *pThis ); + + nsresult (*ImportMachines)( + IAppliance *pThis, + PRUint32 optionsSize, + PRUint32* options, + IProgress * * progress + ); + + nsresult (*CreateVFSExplorer)( + IAppliance *pThis, + PRUnichar * URI, + IVFSExplorer * * explorer + ); + + nsresult (*Write)( + IAppliance *pThis, + PRUnichar * format, + PRUint32 optionsSize, + PRUint32* options, + PRUnichar * path, + IProgress * * progress + ); + + nsresult (*GetWarnings)( + IAppliance *pThis, + PRUint32 *warningsSize, + PRUnichar *** warnings + ); + + nsresult (*GetPasswordIds)( + IAppliance *pThis, + PRUint32 *identifiersSize, + PRUnichar *** identifiers + ); + + nsresult (*GetMediumIdsForPasswordId)( + IAppliance *pThis, + PRUnichar * passwordId, + PRUint32 *identifiersSize, + PRUnichar *** identifiers + ); + + nsresult (*AddPasswords)( + IAppliance *pThis, + PRUint32 identifiersSize, + PRUnichar ** identifiers, + PRUint32 passwordsSize, + PRUnichar ** passwords + ); + + nsresult (*CreateVirtualSystemDescriptions)( + IAppliance *pThis, + PRUint32 requested, + PRUint32 * created + ); + + nsresult (*InternalAndReservedMethod1IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod2IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod3IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod4IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod5IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod6IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod7IAppliance)(IAppliance *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IApplianceVtbl +{ + nsresult (*QueryInterface)(IAppliance *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IAppliance *pThis); + nsrefcnt (*Release)(IAppliance *pThis); + nsresult (*GetPath)(IAppliance *pThis, PRUnichar * *path); + + nsresult (*GetDisks)(IAppliance *pThis, PRUint32 *disksSize, PRUnichar * **disks); + + nsresult (*GetVirtualSystemDescriptions)(IAppliance *pThis, PRUint32 *virtualSystemDescriptionsSize, IVirtualSystemDescription * **virtualSystemDescriptions); + + nsresult (*GetMachines)(IAppliance *pThis, PRUint32 *machinesSize, PRUnichar * **machines); + + nsresult (*GetCertificate)(IAppliance *pThis, ICertificate * *certificate); + + nsresult (*GetInternalAndReservedAttribute1IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IAppliance)(IAppliance *pThis, PRUint32 *reserved); + + nsresult (*Read)( + IAppliance *pThis, + PRUnichar * file, + IProgress * * progress + ); + + nsresult (*Interpret)(IAppliance *pThis ); + + nsresult (*ImportMachines)( + IAppliance *pThis, + PRUint32 optionsSize, + PRUint32* options, + IProgress * * progress + ); + + nsresult (*CreateVFSExplorer)( + IAppliance *pThis, + PRUnichar * URI, + IVFSExplorer * * explorer + ); + + nsresult (*Write)( + IAppliance *pThis, + PRUnichar * format, + PRUint32 optionsSize, + PRUint32* options, + PRUnichar * path, + IProgress * * progress + ); + + nsresult (*GetWarnings)( + IAppliance *pThis, + PRUint32 *warningsSize, + PRUnichar *** warnings + ); + + nsresult (*GetPasswordIds)( + IAppliance *pThis, + PRUint32 *identifiersSize, + PRUnichar *** identifiers + ); + + nsresult (*GetMediumIdsForPasswordId)( + IAppliance *pThis, + PRUnichar * passwordId, + PRUint32 *identifiersSize, + PRUnichar *** identifiers + ); + + nsresult (*AddPasswords)( + IAppliance *pThis, + PRUint32 identifiersSize, + PRUnichar ** identifiers, + PRUint32 passwordsSize, + PRUnichar ** passwords + ); + + nsresult (*CreateVirtualSystemDescriptions)( + IAppliance *pThis, + PRUint32 requested, + PRUint32 * created + ); + + nsresult (*InternalAndReservedMethod1IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod2IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod3IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod4IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod5IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod6IAppliance)(IAppliance *pThis); + + nsresult (*InternalAndReservedMethod7IAppliance)(IAppliance *pThis); + +}; +# define IAppliance_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IAppliance_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IAppliance_Release(p) ((p)->lpVtbl->Release(p)) +# define IAppliance_get_Path(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IAppliance_GetPath(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IAppliance_get_Disks(p, aDisks) ((p)->lpVtbl->GetDisks(p, aDisks)) +# define IAppliance_GetDisks(p, aDisks) ((p)->lpVtbl->GetDisks(p, aDisks)) +# define IAppliance_get_VirtualSystemDescriptions(p, aVirtualSystemDescriptions) ((p)->lpVtbl->GetVirtualSystemDescriptions(p, aVirtualSystemDescriptions)) +# define IAppliance_GetVirtualSystemDescriptions(p, aVirtualSystemDescriptions) ((p)->lpVtbl->GetVirtualSystemDescriptions(p, aVirtualSystemDescriptions)) +# define IAppliance_get_Machines(p, aMachines) ((p)->lpVtbl->GetMachines(p, aMachines)) +# define IAppliance_GetMachines(p, aMachines) ((p)->lpVtbl->GetMachines(p, aMachines)) +# define IAppliance_get_Certificate(p, aCertificate) ((p)->lpVtbl->GetCertificate(p, aCertificate)) +# define IAppliance_GetCertificate(p, aCertificate) ((p)->lpVtbl->GetCertificate(p, aCertificate)) +# define IAppliance_Read(p, aFile, aProgress) ((p)->lpVtbl->Read(p, aFile, aProgress)) +# define IAppliance_Interpret(p) ((p)->lpVtbl->Interpret(p)) +# define IAppliance_ImportMachines(p, aOptions, aProgress) ((p)->lpVtbl->ImportMachines(p, aOptions, aProgress)) +# define IAppliance_CreateVFSExplorer(p, aURI, aExplorer) ((p)->lpVtbl->CreateVFSExplorer(p, aURI, aExplorer)) +# define IAppliance_Write(p, aFormat, aOptions, aPath, aProgress) ((p)->lpVtbl->Write(p, aFormat, aOptions, aPath, aProgress)) +# define IAppliance_GetWarnings(p, aWarnings) ((p)->lpVtbl->GetWarnings(p, aWarnings)) +# define IAppliance_GetPasswordIds(p, aIdentifiers) ((p)->lpVtbl->GetPasswordIds(p, aIdentifiers)) +# define IAppliance_GetMediumIdsForPasswordId(p, aPasswordId, aIdentifiers) ((p)->lpVtbl->GetMediumIdsForPasswordId(p, aPasswordId, aIdentifiers)) +# define IAppliance_AddPasswords(p, aIdentifiers, aPasswords) ((p)->lpVtbl->AddPasswords(p, aIdentifiers, aPasswords)) +# define IAppliance_CreateVirtualSystemDescriptions(p, aRequested, aCreated) ((p)->lpVtbl->CreateVirtualSystemDescriptions(p, aRequested, aCreated)) +# endif /* VBOX_WITH_GLUE */ + +interface IAppliance +{ +# ifndef VBOX_WITH_GLUE + struct IAppliance_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IApplianceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IAppliance declaration */ + + +/* Start of struct IVirtualSystemDescription declaration */ +# define IVIRTUALSYSTEMDESCRIPTION_IID_STR "01510f40-c196-4d26-b8db-4c8c389f1f82" +# define IVIRTUALSYSTEMDESCRIPTION_IID { \ + 0x01510f40, 0xc196, 0x4d26, \ + { 0xb8, 0xdb, 0x4c, 0x8c, 0x38, 0x9f, 0x1f, 0x82 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVirtualSystemDescription); +# ifndef VBOX_WITH_GLUE +struct IVirtualSystemDescription_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetCount)(IVirtualSystemDescription *pThis, PRUint32 *count); + + nsresult (*GetInternalAndReservedAttribute1IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetDescription)( + IVirtualSystemDescription *pThis, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *refsSize, + PRUnichar *** refs, + PRUint32 *OVFValuesSize, + PRUnichar *** OVFValues, + PRUint32 *VBoxValuesSize, + PRUnichar *** VBoxValues, + PRUint32 *extraConfigValuesSize, + PRUnichar *** extraConfigValues + ); + + nsresult (*GetDescriptionByType)( + IVirtualSystemDescription *pThis, + PRUint32 type, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *refsSize, + PRUnichar *** refs, + PRUint32 *OVFValuesSize, + PRUnichar *** OVFValues, + PRUint32 *VBoxValuesSize, + PRUnichar *** VBoxValues, + PRUint32 *extraConfigValuesSize, + PRUnichar *** extraConfigValues + ); + + nsresult (*RemoveDescriptionByType)( + IVirtualSystemDescription *pThis, + PRUint32 type + ); + + nsresult (*GetValuesByType)( + IVirtualSystemDescription *pThis, + PRUint32 type, + PRUint32 which, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*SetFinalValues)( + IVirtualSystemDescription *pThis, + PRUint32 enabledSize, + PRBool* enabled, + PRUint32 VBoxValuesSize, + PRUnichar ** VBoxValues, + PRUint32 extraConfigValuesSize, + PRUnichar ** extraConfigValues + ); + + nsresult (*AddDescription)( + IVirtualSystemDescription *pThis, + PRUint32 type, + PRUnichar * VBoxValue, + PRUnichar * extraConfigValue + ); + + nsresult (*InternalAndReservedMethod1IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVirtualSystemDescriptionVtbl +{ + nsresult (*QueryInterface)(IVirtualSystemDescription *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVirtualSystemDescription *pThis); + nsrefcnt (*Release)(IVirtualSystemDescription *pThis); + nsresult (*GetCount)(IVirtualSystemDescription *pThis, PRUint32 *count); + + nsresult (*GetInternalAndReservedAttribute1IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualSystemDescription)(IVirtualSystemDescription *pThis, PRUint32 *reserved); + + nsresult (*GetDescription)( + IVirtualSystemDescription *pThis, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *refsSize, + PRUnichar *** refs, + PRUint32 *OVFValuesSize, + PRUnichar *** OVFValues, + PRUint32 *VBoxValuesSize, + PRUnichar *** VBoxValues, + PRUint32 *extraConfigValuesSize, + PRUnichar *** extraConfigValues + ); + + nsresult (*GetDescriptionByType)( + IVirtualSystemDescription *pThis, + PRUint32 type, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *refsSize, + PRUnichar *** refs, + PRUint32 *OVFValuesSize, + PRUnichar *** OVFValues, + PRUint32 *VBoxValuesSize, + PRUnichar *** VBoxValues, + PRUint32 *extraConfigValuesSize, + PRUnichar *** extraConfigValues + ); + + nsresult (*RemoveDescriptionByType)( + IVirtualSystemDescription *pThis, + PRUint32 type + ); + + nsresult (*GetValuesByType)( + IVirtualSystemDescription *pThis, + PRUint32 type, + PRUint32 which, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*SetFinalValues)( + IVirtualSystemDescription *pThis, + PRUint32 enabledSize, + PRBool* enabled, + PRUint32 VBoxValuesSize, + PRUnichar ** VBoxValues, + PRUint32 extraConfigValuesSize, + PRUnichar ** extraConfigValues + ); + + nsresult (*AddDescription)( + IVirtualSystemDescription *pThis, + PRUint32 type, + PRUnichar * VBoxValue, + PRUnichar * extraConfigValue + ); + + nsresult (*InternalAndReservedMethod1IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualSystemDescription)(IVirtualSystemDescription *pThis); + +}; +# define IVirtualSystemDescription_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVirtualSystemDescription_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVirtualSystemDescription_Release(p) ((p)->lpVtbl->Release(p)) +# define IVirtualSystemDescription_get_Count(p, aCount) ((p)->lpVtbl->GetCount(p, aCount)) +# define IVirtualSystemDescription_GetCount(p, aCount) ((p)->lpVtbl->GetCount(p, aCount)) +# define IVirtualSystemDescription_GetDescription(p, aTypes, aRefs, aOVFValues, aVBoxValues, aExtraConfigValues) ((p)->lpVtbl->GetDescription(p, aTypes, aRefs, aOVFValues, aVBoxValues, aExtraConfigValues)) +# define IVirtualSystemDescription_GetDescriptionByType(p, aType, aTypes, aRefs, aOVFValues, aVBoxValues, aExtraConfigValues) ((p)->lpVtbl->GetDescriptionByType(p, aType, aTypes, aRefs, aOVFValues, aVBoxValues, aExtraConfigValues)) +# define IVirtualSystemDescription_RemoveDescriptionByType(p, aType) ((p)->lpVtbl->RemoveDescriptionByType(p, aType)) +# define IVirtualSystemDescription_GetValuesByType(p, aType, aWhich, aValues) ((p)->lpVtbl->GetValuesByType(p, aType, aWhich, aValues)) +# define IVirtualSystemDescription_SetFinalValues(p, aEnabled, aVBoxValues, aExtraConfigValues) ((p)->lpVtbl->SetFinalValues(p, aEnabled, aVBoxValues, aExtraConfigValues)) +# define IVirtualSystemDescription_AddDescription(p, aType, aVBoxValue, aExtraConfigValue) ((p)->lpVtbl->AddDescription(p, aType, aVBoxValue, aExtraConfigValue)) +# endif /* VBOX_WITH_GLUE */ + +interface IVirtualSystemDescription +{ +# ifndef VBOX_WITH_GLUE + struct IVirtualSystemDescription_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVirtualSystemDescriptionVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVirtualSystemDescription declaration */ + + +/* Start of struct IUnattended declaration */ +# define IUNATTENDED_IID_STR "6f89464f-7193-426c-a41f-522e8f537fa0" +# define IUNATTENDED_IID { \ + 0x6f89464f, 0x7193, 0x426c, \ + { 0xa4, 0x1f, 0x52, 0x2e, 0x8f, 0x53, 0x7f, 0xa0 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUnattended); +# ifndef VBOX_WITH_GLUE +struct IUnattended_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetIsoPath)(IUnattended *pThis, PRUnichar * *isoPath); + nsresult (*SetIsoPath)(IUnattended *pThis, PRUnichar * isoPath); + + nsresult (*GetMachine)(IUnattended *pThis, IMachine * *machine); + nsresult (*SetMachine)(IUnattended *pThis, IMachine * machine); + + nsresult (*GetUser)(IUnattended *pThis, PRUnichar * *user); + nsresult (*SetUser)(IUnattended *pThis, PRUnichar * user); + + nsresult (*GetPassword)(IUnattended *pThis, PRUnichar * *password); + nsresult (*SetPassword)(IUnattended *pThis, PRUnichar * password); + + nsresult (*GetFullUserName)(IUnattended *pThis, PRUnichar * *fullUserName); + nsresult (*SetFullUserName)(IUnattended *pThis, PRUnichar * fullUserName); + + nsresult (*GetProductKey)(IUnattended *pThis, PRUnichar * *productKey); + nsresult (*SetProductKey)(IUnattended *pThis, PRUnichar * productKey); + + nsresult (*GetAdditionsIsoPath)(IUnattended *pThis, PRUnichar * *additionsIsoPath); + nsresult (*SetAdditionsIsoPath)(IUnattended *pThis, PRUnichar * additionsIsoPath); + + nsresult (*GetInstallGuestAdditions)(IUnattended *pThis, PRBool *installGuestAdditions); + nsresult (*SetInstallGuestAdditions)(IUnattended *pThis, PRBool installGuestAdditions); + + nsresult (*GetValidationKitIsoPath)(IUnattended *pThis, PRUnichar * *validationKitIsoPath); + nsresult (*SetValidationKitIsoPath)(IUnattended *pThis, PRUnichar * validationKitIsoPath); + + nsresult (*GetInstallTestExecService)(IUnattended *pThis, PRBool *installTestExecService); + nsresult (*SetInstallTestExecService)(IUnattended *pThis, PRBool installTestExecService); + + nsresult (*GetTimeZone)(IUnattended *pThis, PRUnichar * *timeZone); + nsresult (*SetTimeZone)(IUnattended *pThis, PRUnichar * timeZone); + + nsresult (*GetLocale)(IUnattended *pThis, PRUnichar * *locale); + nsresult (*SetLocale)(IUnattended *pThis, PRUnichar * locale); + + nsresult (*GetLanguage)(IUnattended *pThis, PRUnichar * *language); + nsresult (*SetLanguage)(IUnattended *pThis, PRUnichar * language); + + nsresult (*GetCountry)(IUnattended *pThis, PRUnichar * *country); + nsresult (*SetCountry)(IUnattended *pThis, PRUnichar * country); + + nsresult (*GetProxy)(IUnattended *pThis, PRUnichar * *proxy); + nsresult (*SetProxy)(IUnattended *pThis, PRUnichar * proxy); + + nsresult (*GetPackageSelectionAdjustments)(IUnattended *pThis, PRUnichar * *packageSelectionAdjustments); + nsresult (*SetPackageSelectionAdjustments)(IUnattended *pThis, PRUnichar * packageSelectionAdjustments); + + nsresult (*GetHostname)(IUnattended *pThis, PRUnichar * *hostname); + nsresult (*SetHostname)(IUnattended *pThis, PRUnichar * hostname); + + nsresult (*GetAuxiliaryBasePath)(IUnattended *pThis, PRUnichar * *auxiliaryBasePath); + nsresult (*SetAuxiliaryBasePath)(IUnattended *pThis, PRUnichar * auxiliaryBasePath); + + nsresult (*GetImageIndex)(IUnattended *pThis, PRUint32 *imageIndex); + nsresult (*SetImageIndex)(IUnattended *pThis, PRUint32 imageIndex); + + nsresult (*GetScriptTemplatePath)(IUnattended *pThis, PRUnichar * *scriptTemplatePath); + nsresult (*SetScriptTemplatePath)(IUnattended *pThis, PRUnichar * scriptTemplatePath); + + nsresult (*GetPostInstallScriptTemplatePath)(IUnattended *pThis, PRUnichar * *postInstallScriptTemplatePath); + nsresult (*SetPostInstallScriptTemplatePath)(IUnattended *pThis, PRUnichar * postInstallScriptTemplatePath); + + nsresult (*GetPostInstallCommand)(IUnattended *pThis, PRUnichar * *postInstallCommand); + nsresult (*SetPostInstallCommand)(IUnattended *pThis, PRUnichar * postInstallCommand); + + nsresult (*GetExtraInstallKernelParameters)(IUnattended *pThis, PRUnichar * *extraInstallKernelParameters); + nsresult (*SetExtraInstallKernelParameters)(IUnattended *pThis, PRUnichar * extraInstallKernelParameters); + + nsresult (*GetDetectedOSTypeId)(IUnattended *pThis, PRUnichar * *detectedOSTypeId); + + nsresult (*GetDetectedOSVersion)(IUnattended *pThis, PRUnichar * *detectedOSVersion); + + nsresult (*GetDetectedOSFlavor)(IUnattended *pThis, PRUnichar * *detectedOSFlavor); + + nsresult (*GetDetectedOSLanguages)(IUnattended *pThis, PRUnichar * *detectedOSLanguages); + + nsresult (*GetDetectedOSHints)(IUnattended *pThis, PRUnichar * *detectedOSHints); + + nsresult (*GetInternalAndReservedAttribute1IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*DetectIsoOS)(IUnattended *pThis ); + + nsresult (*Prepare)(IUnattended *pThis ); + + nsresult (*ConstructMedia)(IUnattended *pThis ); + + nsresult (*ReconfigureVM)(IUnattended *pThis ); + + nsresult (*Done)(IUnattended *pThis ); + + nsresult (*InternalAndReservedMethod1IUnattended)(IUnattended *pThis); + + nsresult (*InternalAndReservedMethod2IUnattended)(IUnattended *pThis); + + nsresult (*InternalAndReservedMethod3IUnattended)(IUnattended *pThis); + + nsresult (*InternalAndReservedMethod4IUnattended)(IUnattended *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUnattendedVtbl +{ + nsresult (*QueryInterface)(IUnattended *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUnattended *pThis); + nsrefcnt (*Release)(IUnattended *pThis); + nsresult (*GetIsoPath)(IUnattended *pThis, PRUnichar * *isoPath); + nsresult (*SetIsoPath)(IUnattended *pThis, PRUnichar * isoPath); + + nsresult (*GetMachine)(IUnattended *pThis, IMachine * *machine); + nsresult (*SetMachine)(IUnattended *pThis, IMachine * machine); + + nsresult (*GetUser)(IUnattended *pThis, PRUnichar * *user); + nsresult (*SetUser)(IUnattended *pThis, PRUnichar * user); + + nsresult (*GetPassword)(IUnattended *pThis, PRUnichar * *password); + nsresult (*SetPassword)(IUnattended *pThis, PRUnichar * password); + + nsresult (*GetFullUserName)(IUnattended *pThis, PRUnichar * *fullUserName); + nsresult (*SetFullUserName)(IUnattended *pThis, PRUnichar * fullUserName); + + nsresult (*GetProductKey)(IUnattended *pThis, PRUnichar * *productKey); + nsresult (*SetProductKey)(IUnattended *pThis, PRUnichar * productKey); + + nsresult (*GetAdditionsIsoPath)(IUnattended *pThis, PRUnichar * *additionsIsoPath); + nsresult (*SetAdditionsIsoPath)(IUnattended *pThis, PRUnichar * additionsIsoPath); + + nsresult (*GetInstallGuestAdditions)(IUnattended *pThis, PRBool *installGuestAdditions); + nsresult (*SetInstallGuestAdditions)(IUnattended *pThis, PRBool installGuestAdditions); + + nsresult (*GetValidationKitIsoPath)(IUnattended *pThis, PRUnichar * *validationKitIsoPath); + nsresult (*SetValidationKitIsoPath)(IUnattended *pThis, PRUnichar * validationKitIsoPath); + + nsresult (*GetInstallTestExecService)(IUnattended *pThis, PRBool *installTestExecService); + nsresult (*SetInstallTestExecService)(IUnattended *pThis, PRBool installTestExecService); + + nsresult (*GetTimeZone)(IUnattended *pThis, PRUnichar * *timeZone); + nsresult (*SetTimeZone)(IUnattended *pThis, PRUnichar * timeZone); + + nsresult (*GetLocale)(IUnattended *pThis, PRUnichar * *locale); + nsresult (*SetLocale)(IUnattended *pThis, PRUnichar * locale); + + nsresult (*GetLanguage)(IUnattended *pThis, PRUnichar * *language); + nsresult (*SetLanguage)(IUnattended *pThis, PRUnichar * language); + + nsresult (*GetCountry)(IUnattended *pThis, PRUnichar * *country); + nsresult (*SetCountry)(IUnattended *pThis, PRUnichar * country); + + nsresult (*GetProxy)(IUnattended *pThis, PRUnichar * *proxy); + nsresult (*SetProxy)(IUnattended *pThis, PRUnichar * proxy); + + nsresult (*GetPackageSelectionAdjustments)(IUnattended *pThis, PRUnichar * *packageSelectionAdjustments); + nsresult (*SetPackageSelectionAdjustments)(IUnattended *pThis, PRUnichar * packageSelectionAdjustments); + + nsresult (*GetHostname)(IUnattended *pThis, PRUnichar * *hostname); + nsresult (*SetHostname)(IUnattended *pThis, PRUnichar * hostname); + + nsresult (*GetAuxiliaryBasePath)(IUnattended *pThis, PRUnichar * *auxiliaryBasePath); + nsresult (*SetAuxiliaryBasePath)(IUnattended *pThis, PRUnichar * auxiliaryBasePath); + + nsresult (*GetImageIndex)(IUnattended *pThis, PRUint32 *imageIndex); + nsresult (*SetImageIndex)(IUnattended *pThis, PRUint32 imageIndex); + + nsresult (*GetScriptTemplatePath)(IUnattended *pThis, PRUnichar * *scriptTemplatePath); + nsresult (*SetScriptTemplatePath)(IUnattended *pThis, PRUnichar * scriptTemplatePath); + + nsresult (*GetPostInstallScriptTemplatePath)(IUnattended *pThis, PRUnichar * *postInstallScriptTemplatePath); + nsresult (*SetPostInstallScriptTemplatePath)(IUnattended *pThis, PRUnichar * postInstallScriptTemplatePath); + + nsresult (*GetPostInstallCommand)(IUnattended *pThis, PRUnichar * *postInstallCommand); + nsresult (*SetPostInstallCommand)(IUnattended *pThis, PRUnichar * postInstallCommand); + + nsresult (*GetExtraInstallKernelParameters)(IUnattended *pThis, PRUnichar * *extraInstallKernelParameters); + nsresult (*SetExtraInstallKernelParameters)(IUnattended *pThis, PRUnichar * extraInstallKernelParameters); + + nsresult (*GetDetectedOSTypeId)(IUnattended *pThis, PRUnichar * *detectedOSTypeId); + + nsresult (*GetDetectedOSVersion)(IUnattended *pThis, PRUnichar * *detectedOSVersion); + + nsresult (*GetDetectedOSFlavor)(IUnattended *pThis, PRUnichar * *detectedOSFlavor); + + nsresult (*GetDetectedOSLanguages)(IUnattended *pThis, PRUnichar * *detectedOSLanguages); + + nsresult (*GetDetectedOSHints)(IUnattended *pThis, PRUnichar * *detectedOSHints); + + nsresult (*GetInternalAndReservedAttribute1IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IUnattended)(IUnattended *pThis, PRUint32 *reserved); + + nsresult (*DetectIsoOS)(IUnattended *pThis ); + + nsresult (*Prepare)(IUnattended *pThis ); + + nsresult (*ConstructMedia)(IUnattended *pThis ); + + nsresult (*ReconfigureVM)(IUnattended *pThis ); + + nsresult (*Done)(IUnattended *pThis ); + + nsresult (*InternalAndReservedMethod1IUnattended)(IUnattended *pThis); + + nsresult (*InternalAndReservedMethod2IUnattended)(IUnattended *pThis); + + nsresult (*InternalAndReservedMethod3IUnattended)(IUnattended *pThis); + + nsresult (*InternalAndReservedMethod4IUnattended)(IUnattended *pThis); + +}; +# define IUnattended_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUnattended_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUnattended_Release(p) ((p)->lpVtbl->Release(p)) +# define IUnattended_get_IsoPath(p, aIsoPath) ((p)->lpVtbl->GetIsoPath(p, aIsoPath)) +# define IUnattended_GetIsoPath(p, aIsoPath) ((p)->lpVtbl->GetIsoPath(p, aIsoPath)) +# define IUnattended_put_IsoPath(p, aIsoPath) ((p)->lpVtbl->SetIsoPath(p, aIsoPath)) +# define IUnattended_SetIsoPath(p, aIsoPath) ((p)->lpVtbl->SetIsoPath(p, aIsoPath)) +# define IUnattended_get_Machine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define IUnattended_GetMachine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define IUnattended_put_Machine(p, aMachine) ((p)->lpVtbl->SetMachine(p, aMachine)) +# define IUnattended_SetMachine(p, aMachine) ((p)->lpVtbl->SetMachine(p, aMachine)) +# define IUnattended_get_User(p, aUser) ((p)->lpVtbl->GetUser(p, aUser)) +# define IUnattended_GetUser(p, aUser) ((p)->lpVtbl->GetUser(p, aUser)) +# define IUnattended_put_User(p, aUser) ((p)->lpVtbl->SetUser(p, aUser)) +# define IUnattended_SetUser(p, aUser) ((p)->lpVtbl->SetUser(p, aUser)) +# define IUnattended_get_Password(p, aPassword) ((p)->lpVtbl->GetPassword(p, aPassword)) +# define IUnattended_GetPassword(p, aPassword) ((p)->lpVtbl->GetPassword(p, aPassword)) +# define IUnattended_put_Password(p, aPassword) ((p)->lpVtbl->SetPassword(p, aPassword)) +# define IUnattended_SetPassword(p, aPassword) ((p)->lpVtbl->SetPassword(p, aPassword)) +# define IUnattended_get_FullUserName(p, aFullUserName) ((p)->lpVtbl->GetFullUserName(p, aFullUserName)) +# define IUnattended_GetFullUserName(p, aFullUserName) ((p)->lpVtbl->GetFullUserName(p, aFullUserName)) +# define IUnattended_put_FullUserName(p, aFullUserName) ((p)->lpVtbl->SetFullUserName(p, aFullUserName)) +# define IUnattended_SetFullUserName(p, aFullUserName) ((p)->lpVtbl->SetFullUserName(p, aFullUserName)) +# define IUnattended_get_ProductKey(p, aProductKey) ((p)->lpVtbl->GetProductKey(p, aProductKey)) +# define IUnattended_GetProductKey(p, aProductKey) ((p)->lpVtbl->GetProductKey(p, aProductKey)) +# define IUnattended_put_ProductKey(p, aProductKey) ((p)->lpVtbl->SetProductKey(p, aProductKey)) +# define IUnattended_SetProductKey(p, aProductKey) ((p)->lpVtbl->SetProductKey(p, aProductKey)) +# define IUnattended_get_AdditionsIsoPath(p, aAdditionsIsoPath) ((p)->lpVtbl->GetAdditionsIsoPath(p, aAdditionsIsoPath)) +# define IUnattended_GetAdditionsIsoPath(p, aAdditionsIsoPath) ((p)->lpVtbl->GetAdditionsIsoPath(p, aAdditionsIsoPath)) +# define IUnattended_put_AdditionsIsoPath(p, aAdditionsIsoPath) ((p)->lpVtbl->SetAdditionsIsoPath(p, aAdditionsIsoPath)) +# define IUnattended_SetAdditionsIsoPath(p, aAdditionsIsoPath) ((p)->lpVtbl->SetAdditionsIsoPath(p, aAdditionsIsoPath)) +# define IUnattended_get_InstallGuestAdditions(p, aInstallGuestAdditions) ((p)->lpVtbl->GetInstallGuestAdditions(p, aInstallGuestAdditions)) +# define IUnattended_GetInstallGuestAdditions(p, aInstallGuestAdditions) ((p)->lpVtbl->GetInstallGuestAdditions(p, aInstallGuestAdditions)) +# define IUnattended_put_InstallGuestAdditions(p, aInstallGuestAdditions) ((p)->lpVtbl->SetInstallGuestAdditions(p, aInstallGuestAdditions)) +# define IUnattended_SetInstallGuestAdditions(p, aInstallGuestAdditions) ((p)->lpVtbl->SetInstallGuestAdditions(p, aInstallGuestAdditions)) +# define IUnattended_get_ValidationKitIsoPath(p, aValidationKitIsoPath) ((p)->lpVtbl->GetValidationKitIsoPath(p, aValidationKitIsoPath)) +# define IUnattended_GetValidationKitIsoPath(p, aValidationKitIsoPath) ((p)->lpVtbl->GetValidationKitIsoPath(p, aValidationKitIsoPath)) +# define IUnattended_put_ValidationKitIsoPath(p, aValidationKitIsoPath) ((p)->lpVtbl->SetValidationKitIsoPath(p, aValidationKitIsoPath)) +# define IUnattended_SetValidationKitIsoPath(p, aValidationKitIsoPath) ((p)->lpVtbl->SetValidationKitIsoPath(p, aValidationKitIsoPath)) +# define IUnattended_get_InstallTestExecService(p, aInstallTestExecService) ((p)->lpVtbl->GetInstallTestExecService(p, aInstallTestExecService)) +# define IUnattended_GetInstallTestExecService(p, aInstallTestExecService) ((p)->lpVtbl->GetInstallTestExecService(p, aInstallTestExecService)) +# define IUnattended_put_InstallTestExecService(p, aInstallTestExecService) ((p)->lpVtbl->SetInstallTestExecService(p, aInstallTestExecService)) +# define IUnattended_SetInstallTestExecService(p, aInstallTestExecService) ((p)->lpVtbl->SetInstallTestExecService(p, aInstallTestExecService)) +# define IUnattended_get_TimeZone(p, aTimeZone) ((p)->lpVtbl->GetTimeZone(p, aTimeZone)) +# define IUnattended_GetTimeZone(p, aTimeZone) ((p)->lpVtbl->GetTimeZone(p, aTimeZone)) +# define IUnattended_put_TimeZone(p, aTimeZone) ((p)->lpVtbl->SetTimeZone(p, aTimeZone)) +# define IUnattended_SetTimeZone(p, aTimeZone) ((p)->lpVtbl->SetTimeZone(p, aTimeZone)) +# define IUnattended_get_Locale(p, aLocale) ((p)->lpVtbl->GetLocale(p, aLocale)) +# define IUnattended_GetLocale(p, aLocale) ((p)->lpVtbl->GetLocale(p, aLocale)) +# define IUnattended_put_Locale(p, aLocale) ((p)->lpVtbl->SetLocale(p, aLocale)) +# define IUnattended_SetLocale(p, aLocale) ((p)->lpVtbl->SetLocale(p, aLocale)) +# define IUnattended_get_Language(p, aLanguage) ((p)->lpVtbl->GetLanguage(p, aLanguage)) +# define IUnattended_GetLanguage(p, aLanguage) ((p)->lpVtbl->GetLanguage(p, aLanguage)) +# define IUnattended_put_Language(p, aLanguage) ((p)->lpVtbl->SetLanguage(p, aLanguage)) +# define IUnattended_SetLanguage(p, aLanguage) ((p)->lpVtbl->SetLanguage(p, aLanguage)) +# define IUnattended_get_Country(p, aCountry) ((p)->lpVtbl->GetCountry(p, aCountry)) +# define IUnattended_GetCountry(p, aCountry) ((p)->lpVtbl->GetCountry(p, aCountry)) +# define IUnattended_put_Country(p, aCountry) ((p)->lpVtbl->SetCountry(p, aCountry)) +# define IUnattended_SetCountry(p, aCountry) ((p)->lpVtbl->SetCountry(p, aCountry)) +# define IUnattended_get_Proxy(p, aProxy) ((p)->lpVtbl->GetProxy(p, aProxy)) +# define IUnattended_GetProxy(p, aProxy) ((p)->lpVtbl->GetProxy(p, aProxy)) +# define IUnattended_put_Proxy(p, aProxy) ((p)->lpVtbl->SetProxy(p, aProxy)) +# define IUnattended_SetProxy(p, aProxy) ((p)->lpVtbl->SetProxy(p, aProxy)) +# define IUnattended_get_PackageSelectionAdjustments(p, aPackageSelectionAdjustments) ((p)->lpVtbl->GetPackageSelectionAdjustments(p, aPackageSelectionAdjustments)) +# define IUnattended_GetPackageSelectionAdjustments(p, aPackageSelectionAdjustments) ((p)->lpVtbl->GetPackageSelectionAdjustments(p, aPackageSelectionAdjustments)) +# define IUnattended_put_PackageSelectionAdjustments(p, aPackageSelectionAdjustments) ((p)->lpVtbl->SetPackageSelectionAdjustments(p, aPackageSelectionAdjustments)) +# define IUnattended_SetPackageSelectionAdjustments(p, aPackageSelectionAdjustments) ((p)->lpVtbl->SetPackageSelectionAdjustments(p, aPackageSelectionAdjustments)) +# define IUnattended_get_Hostname(p, aHostname) ((p)->lpVtbl->GetHostname(p, aHostname)) +# define IUnattended_GetHostname(p, aHostname) ((p)->lpVtbl->GetHostname(p, aHostname)) +# define IUnattended_put_Hostname(p, aHostname) ((p)->lpVtbl->SetHostname(p, aHostname)) +# define IUnattended_SetHostname(p, aHostname) ((p)->lpVtbl->SetHostname(p, aHostname)) +# define IUnattended_get_AuxiliaryBasePath(p, aAuxiliaryBasePath) ((p)->lpVtbl->GetAuxiliaryBasePath(p, aAuxiliaryBasePath)) +# define IUnattended_GetAuxiliaryBasePath(p, aAuxiliaryBasePath) ((p)->lpVtbl->GetAuxiliaryBasePath(p, aAuxiliaryBasePath)) +# define IUnattended_put_AuxiliaryBasePath(p, aAuxiliaryBasePath) ((p)->lpVtbl->SetAuxiliaryBasePath(p, aAuxiliaryBasePath)) +# define IUnattended_SetAuxiliaryBasePath(p, aAuxiliaryBasePath) ((p)->lpVtbl->SetAuxiliaryBasePath(p, aAuxiliaryBasePath)) +# define IUnattended_get_ImageIndex(p, aImageIndex) ((p)->lpVtbl->GetImageIndex(p, aImageIndex)) +# define IUnattended_GetImageIndex(p, aImageIndex) ((p)->lpVtbl->GetImageIndex(p, aImageIndex)) +# define IUnattended_put_ImageIndex(p, aImageIndex) ((p)->lpVtbl->SetImageIndex(p, aImageIndex)) +# define IUnattended_SetImageIndex(p, aImageIndex) ((p)->lpVtbl->SetImageIndex(p, aImageIndex)) +# define IUnattended_get_ScriptTemplatePath(p, aScriptTemplatePath) ((p)->lpVtbl->GetScriptTemplatePath(p, aScriptTemplatePath)) +# define IUnattended_GetScriptTemplatePath(p, aScriptTemplatePath) ((p)->lpVtbl->GetScriptTemplatePath(p, aScriptTemplatePath)) +# define IUnattended_put_ScriptTemplatePath(p, aScriptTemplatePath) ((p)->lpVtbl->SetScriptTemplatePath(p, aScriptTemplatePath)) +# define IUnattended_SetScriptTemplatePath(p, aScriptTemplatePath) ((p)->lpVtbl->SetScriptTemplatePath(p, aScriptTemplatePath)) +# define IUnattended_get_PostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath) ((p)->lpVtbl->GetPostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath)) +# define IUnattended_GetPostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath) ((p)->lpVtbl->GetPostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath)) +# define IUnattended_put_PostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath) ((p)->lpVtbl->SetPostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath)) +# define IUnattended_SetPostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath) ((p)->lpVtbl->SetPostInstallScriptTemplatePath(p, aPostInstallScriptTemplatePath)) +# define IUnattended_get_PostInstallCommand(p, aPostInstallCommand) ((p)->lpVtbl->GetPostInstallCommand(p, aPostInstallCommand)) +# define IUnattended_GetPostInstallCommand(p, aPostInstallCommand) ((p)->lpVtbl->GetPostInstallCommand(p, aPostInstallCommand)) +# define IUnattended_put_PostInstallCommand(p, aPostInstallCommand) ((p)->lpVtbl->SetPostInstallCommand(p, aPostInstallCommand)) +# define IUnattended_SetPostInstallCommand(p, aPostInstallCommand) ((p)->lpVtbl->SetPostInstallCommand(p, aPostInstallCommand)) +# define IUnattended_get_ExtraInstallKernelParameters(p, aExtraInstallKernelParameters) ((p)->lpVtbl->GetExtraInstallKernelParameters(p, aExtraInstallKernelParameters)) +# define IUnattended_GetExtraInstallKernelParameters(p, aExtraInstallKernelParameters) ((p)->lpVtbl->GetExtraInstallKernelParameters(p, aExtraInstallKernelParameters)) +# define IUnattended_put_ExtraInstallKernelParameters(p, aExtraInstallKernelParameters) ((p)->lpVtbl->SetExtraInstallKernelParameters(p, aExtraInstallKernelParameters)) +# define IUnattended_SetExtraInstallKernelParameters(p, aExtraInstallKernelParameters) ((p)->lpVtbl->SetExtraInstallKernelParameters(p, aExtraInstallKernelParameters)) +# define IUnattended_get_DetectedOSTypeId(p, aDetectedOSTypeId) ((p)->lpVtbl->GetDetectedOSTypeId(p, aDetectedOSTypeId)) +# define IUnattended_GetDetectedOSTypeId(p, aDetectedOSTypeId) ((p)->lpVtbl->GetDetectedOSTypeId(p, aDetectedOSTypeId)) +# define IUnattended_get_DetectedOSVersion(p, aDetectedOSVersion) ((p)->lpVtbl->GetDetectedOSVersion(p, aDetectedOSVersion)) +# define IUnattended_GetDetectedOSVersion(p, aDetectedOSVersion) ((p)->lpVtbl->GetDetectedOSVersion(p, aDetectedOSVersion)) +# define IUnattended_get_DetectedOSFlavor(p, aDetectedOSFlavor) ((p)->lpVtbl->GetDetectedOSFlavor(p, aDetectedOSFlavor)) +# define IUnattended_GetDetectedOSFlavor(p, aDetectedOSFlavor) ((p)->lpVtbl->GetDetectedOSFlavor(p, aDetectedOSFlavor)) +# define IUnattended_get_DetectedOSLanguages(p, aDetectedOSLanguages) ((p)->lpVtbl->GetDetectedOSLanguages(p, aDetectedOSLanguages)) +# define IUnattended_GetDetectedOSLanguages(p, aDetectedOSLanguages) ((p)->lpVtbl->GetDetectedOSLanguages(p, aDetectedOSLanguages)) +# define IUnattended_get_DetectedOSHints(p, aDetectedOSHints) ((p)->lpVtbl->GetDetectedOSHints(p, aDetectedOSHints)) +# define IUnattended_GetDetectedOSHints(p, aDetectedOSHints) ((p)->lpVtbl->GetDetectedOSHints(p, aDetectedOSHints)) +# define IUnattended_DetectIsoOS(p) ((p)->lpVtbl->DetectIsoOS(p)) +# define IUnattended_Prepare(p) ((p)->lpVtbl->Prepare(p)) +# define IUnattended_ConstructMedia(p) ((p)->lpVtbl->ConstructMedia(p)) +# define IUnattended_ReconfigureVM(p) ((p)->lpVtbl->ReconfigureVM(p)) +# define IUnattended_Done(p) ((p)->lpVtbl->Done(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IUnattended +{ +# ifndef VBOX_WITH_GLUE + struct IUnattended_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUnattendedVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUnattended declaration */ + + +/* Start of struct IGraphicsAdapter declaration */ +# define IGRAPHICSADAPTER_IID_STR "f692806f-febe-4049-b476-1292a8e45b09" +# define IGRAPHICSADAPTER_IID { \ + 0xf692806f, 0xfebe, 0x4049, \ + { 0xb4, 0x76, 0x12, 0x92, 0xa8, 0xe4, 0x5b, 0x09 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGraphicsAdapter); +# ifndef VBOX_WITH_GLUE +struct IGraphicsAdapter_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetGraphicsControllerType)(IGraphicsAdapter *pThis, PRUint32 *graphicsControllerType); + nsresult (*SetGraphicsControllerType)(IGraphicsAdapter *pThis, PRUint32 graphicsControllerType); + + nsresult (*GetVRAMSize)(IGraphicsAdapter *pThis, PRUint32 *VRAMSize); + nsresult (*SetVRAMSize)(IGraphicsAdapter *pThis, PRUint32 VRAMSize); + + nsresult (*GetAccelerate3DEnabled)(IGraphicsAdapter *pThis, PRBool *accelerate3DEnabled); + nsresult (*SetAccelerate3DEnabled)(IGraphicsAdapter *pThis, PRBool accelerate3DEnabled); + + nsresult (*GetAccelerate2DVideoEnabled)(IGraphicsAdapter *pThis, PRBool *accelerate2DVideoEnabled); + nsresult (*SetAccelerate2DVideoEnabled)(IGraphicsAdapter *pThis, PRBool accelerate2DVideoEnabled); + + nsresult (*GetMonitorCount)(IGraphicsAdapter *pThis, PRUint32 *monitorCount); + nsresult (*SetMonitorCount)(IGraphicsAdapter *pThis, PRUint32 monitorCount); + + nsresult (*GetInternalAndReservedAttribute1IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IGraphicsAdapter)(IGraphicsAdapter *pThis); + + nsresult (*InternalAndReservedMethod2IGraphicsAdapter)(IGraphicsAdapter *pThis); + + nsresult (*InternalAndReservedMethod3IGraphicsAdapter)(IGraphicsAdapter *pThis); + + nsresult (*InternalAndReservedMethod4IGraphicsAdapter)(IGraphicsAdapter *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGraphicsAdapterVtbl +{ + nsresult (*QueryInterface)(IGraphicsAdapter *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGraphicsAdapter *pThis); + nsrefcnt (*Release)(IGraphicsAdapter *pThis); + nsresult (*GetGraphicsControllerType)(IGraphicsAdapter *pThis, PRUint32 *graphicsControllerType); + nsresult (*SetGraphicsControllerType)(IGraphicsAdapter *pThis, PRUint32 graphicsControllerType); + + nsresult (*GetVRAMSize)(IGraphicsAdapter *pThis, PRUint32 *VRAMSize); + nsresult (*SetVRAMSize)(IGraphicsAdapter *pThis, PRUint32 VRAMSize); + + nsresult (*GetAccelerate3DEnabled)(IGraphicsAdapter *pThis, PRBool *accelerate3DEnabled); + nsresult (*SetAccelerate3DEnabled)(IGraphicsAdapter *pThis, PRBool accelerate3DEnabled); + + nsresult (*GetAccelerate2DVideoEnabled)(IGraphicsAdapter *pThis, PRBool *accelerate2DVideoEnabled); + nsresult (*SetAccelerate2DVideoEnabled)(IGraphicsAdapter *pThis, PRBool accelerate2DVideoEnabled); + + nsresult (*GetMonitorCount)(IGraphicsAdapter *pThis, PRUint32 *monitorCount); + nsresult (*SetMonitorCount)(IGraphicsAdapter *pThis, PRUint32 monitorCount); + + nsresult (*GetInternalAndReservedAttribute1IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGraphicsAdapter)(IGraphicsAdapter *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IGraphicsAdapter)(IGraphicsAdapter *pThis); + + nsresult (*InternalAndReservedMethod2IGraphicsAdapter)(IGraphicsAdapter *pThis); + + nsresult (*InternalAndReservedMethod3IGraphicsAdapter)(IGraphicsAdapter *pThis); + + nsresult (*InternalAndReservedMethod4IGraphicsAdapter)(IGraphicsAdapter *pThis); + +}; +# define IGraphicsAdapter_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGraphicsAdapter_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGraphicsAdapter_Release(p) ((p)->lpVtbl->Release(p)) +# define IGraphicsAdapter_get_GraphicsControllerType(p, aGraphicsControllerType) ((p)->lpVtbl->GetGraphicsControllerType(p, aGraphicsControllerType)) +# define IGraphicsAdapter_GetGraphicsControllerType(p, aGraphicsControllerType) ((p)->lpVtbl->GetGraphicsControllerType(p, aGraphicsControllerType)) +# define IGraphicsAdapter_put_GraphicsControllerType(p, aGraphicsControllerType) ((p)->lpVtbl->SetGraphicsControllerType(p, aGraphicsControllerType)) +# define IGraphicsAdapter_SetGraphicsControllerType(p, aGraphicsControllerType) ((p)->lpVtbl->SetGraphicsControllerType(p, aGraphicsControllerType)) +# define IGraphicsAdapter_get_VRAMSize(p, aVRAMSize) ((p)->lpVtbl->GetVRAMSize(p, aVRAMSize)) +# define IGraphicsAdapter_GetVRAMSize(p, aVRAMSize) ((p)->lpVtbl->GetVRAMSize(p, aVRAMSize)) +# define IGraphicsAdapter_put_VRAMSize(p, aVRAMSize) ((p)->lpVtbl->SetVRAMSize(p, aVRAMSize)) +# define IGraphicsAdapter_SetVRAMSize(p, aVRAMSize) ((p)->lpVtbl->SetVRAMSize(p, aVRAMSize)) +# define IGraphicsAdapter_get_Accelerate3DEnabled(p, aAccelerate3DEnabled) ((p)->lpVtbl->GetAccelerate3DEnabled(p, aAccelerate3DEnabled)) +# define IGraphicsAdapter_GetAccelerate3DEnabled(p, aAccelerate3DEnabled) ((p)->lpVtbl->GetAccelerate3DEnabled(p, aAccelerate3DEnabled)) +# define IGraphicsAdapter_put_Accelerate3DEnabled(p, aAccelerate3DEnabled) ((p)->lpVtbl->SetAccelerate3DEnabled(p, aAccelerate3DEnabled)) +# define IGraphicsAdapter_SetAccelerate3DEnabled(p, aAccelerate3DEnabled) ((p)->lpVtbl->SetAccelerate3DEnabled(p, aAccelerate3DEnabled)) +# define IGraphicsAdapter_get_Accelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled) ((p)->lpVtbl->GetAccelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled)) +# define IGraphicsAdapter_GetAccelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled) ((p)->lpVtbl->GetAccelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled)) +# define IGraphicsAdapter_put_Accelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled) ((p)->lpVtbl->SetAccelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled)) +# define IGraphicsAdapter_SetAccelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled) ((p)->lpVtbl->SetAccelerate2DVideoEnabled(p, aAccelerate2DVideoEnabled)) +# define IGraphicsAdapter_get_MonitorCount(p, aMonitorCount) ((p)->lpVtbl->GetMonitorCount(p, aMonitorCount)) +# define IGraphicsAdapter_GetMonitorCount(p, aMonitorCount) ((p)->lpVtbl->GetMonitorCount(p, aMonitorCount)) +# define IGraphicsAdapter_put_MonitorCount(p, aMonitorCount) ((p)->lpVtbl->SetMonitorCount(p, aMonitorCount)) +# define IGraphicsAdapter_SetMonitorCount(p, aMonitorCount) ((p)->lpVtbl->SetMonitorCount(p, aMonitorCount)) +# endif /* VBOX_WITH_GLUE */ + +interface IGraphicsAdapter +{ +# ifndef VBOX_WITH_GLUE + struct IGraphicsAdapter_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGraphicsAdapterVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGraphicsAdapter declaration */ + + +/* Start of struct IBIOSSettings declaration */ +# define IBIOSSETTINGS_IID_STR "73af4152-7e67-4144-bf34-41c38e8b4cc7" +# define IBIOSSETTINGS_IID { \ + 0x73af4152, 0x7e67, 0x4144, \ + { 0xbf, 0x34, 0x41, 0xc3, 0x8e, 0x8b, 0x4c, 0xc7 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IBIOSSettings); +# ifndef VBOX_WITH_GLUE +struct IBIOSSettings_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetLogoFadeIn)(IBIOSSettings *pThis, PRBool *logoFadeIn); + nsresult (*SetLogoFadeIn)(IBIOSSettings *pThis, PRBool logoFadeIn); + + nsresult (*GetLogoFadeOut)(IBIOSSettings *pThis, PRBool *logoFadeOut); + nsresult (*SetLogoFadeOut)(IBIOSSettings *pThis, PRBool logoFadeOut); + + nsresult (*GetLogoDisplayTime)(IBIOSSettings *pThis, PRUint32 *logoDisplayTime); + nsresult (*SetLogoDisplayTime)(IBIOSSettings *pThis, PRUint32 logoDisplayTime); + + nsresult (*GetLogoImagePath)(IBIOSSettings *pThis, PRUnichar * *logoImagePath); + nsresult (*SetLogoImagePath)(IBIOSSettings *pThis, PRUnichar * logoImagePath); + + nsresult (*GetBootMenuMode)(IBIOSSettings *pThis, PRUint32 *bootMenuMode); + nsresult (*SetBootMenuMode)(IBIOSSettings *pThis, PRUint32 bootMenuMode); + + nsresult (*GetACPIEnabled)(IBIOSSettings *pThis, PRBool *ACPIEnabled); + nsresult (*SetACPIEnabled)(IBIOSSettings *pThis, PRBool ACPIEnabled); + + nsresult (*GetIOAPICEnabled)(IBIOSSettings *pThis, PRBool *IOAPICEnabled); + nsresult (*SetIOAPICEnabled)(IBIOSSettings *pThis, PRBool IOAPICEnabled); + + nsresult (*GetAPICMode)(IBIOSSettings *pThis, PRUint32 *APICMode); + nsresult (*SetAPICMode)(IBIOSSettings *pThis, PRUint32 APICMode); + + nsresult (*GetTimeOffset)(IBIOSSettings *pThis, PRInt64 *timeOffset); + nsresult (*SetTimeOffset)(IBIOSSettings *pThis, PRInt64 timeOffset); + + nsresult (*GetPXEDebugEnabled)(IBIOSSettings *pThis, PRBool *PXEDebugEnabled); + nsresult (*SetPXEDebugEnabled)(IBIOSSettings *pThis, PRBool PXEDebugEnabled); + + nsresult (*GetNonVolatileStorageFile)(IBIOSSettings *pThis, PRUnichar * *nonVolatileStorageFile); + + nsresult (*GetSMBIOSUuidLittleEndian)(IBIOSSettings *pThis, PRBool *SMBIOSUuidLittleEndian); + nsresult (*SetSMBIOSUuidLittleEndian)(IBIOSSettings *pThis, PRBool SMBIOSUuidLittleEndian); + + nsresult (*GetInternalAndReservedAttribute1IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IBIOSSettings)(IBIOSSettings *pThis); + + nsresult (*InternalAndReservedMethod2IBIOSSettings)(IBIOSSettings *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IBIOSSettingsVtbl +{ + nsresult (*QueryInterface)(IBIOSSettings *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IBIOSSettings *pThis); + nsrefcnt (*Release)(IBIOSSettings *pThis); + nsresult (*GetLogoFadeIn)(IBIOSSettings *pThis, PRBool *logoFadeIn); + nsresult (*SetLogoFadeIn)(IBIOSSettings *pThis, PRBool logoFadeIn); + + nsresult (*GetLogoFadeOut)(IBIOSSettings *pThis, PRBool *logoFadeOut); + nsresult (*SetLogoFadeOut)(IBIOSSettings *pThis, PRBool logoFadeOut); + + nsresult (*GetLogoDisplayTime)(IBIOSSettings *pThis, PRUint32 *logoDisplayTime); + nsresult (*SetLogoDisplayTime)(IBIOSSettings *pThis, PRUint32 logoDisplayTime); + + nsresult (*GetLogoImagePath)(IBIOSSettings *pThis, PRUnichar * *logoImagePath); + nsresult (*SetLogoImagePath)(IBIOSSettings *pThis, PRUnichar * logoImagePath); + + nsresult (*GetBootMenuMode)(IBIOSSettings *pThis, PRUint32 *bootMenuMode); + nsresult (*SetBootMenuMode)(IBIOSSettings *pThis, PRUint32 bootMenuMode); + + nsresult (*GetACPIEnabled)(IBIOSSettings *pThis, PRBool *ACPIEnabled); + nsresult (*SetACPIEnabled)(IBIOSSettings *pThis, PRBool ACPIEnabled); + + nsresult (*GetIOAPICEnabled)(IBIOSSettings *pThis, PRBool *IOAPICEnabled); + nsresult (*SetIOAPICEnabled)(IBIOSSettings *pThis, PRBool IOAPICEnabled); + + nsresult (*GetAPICMode)(IBIOSSettings *pThis, PRUint32 *APICMode); + nsresult (*SetAPICMode)(IBIOSSettings *pThis, PRUint32 APICMode); + + nsresult (*GetTimeOffset)(IBIOSSettings *pThis, PRInt64 *timeOffset); + nsresult (*SetTimeOffset)(IBIOSSettings *pThis, PRInt64 timeOffset); + + nsresult (*GetPXEDebugEnabled)(IBIOSSettings *pThis, PRBool *PXEDebugEnabled); + nsresult (*SetPXEDebugEnabled)(IBIOSSettings *pThis, PRBool PXEDebugEnabled); + + nsresult (*GetNonVolatileStorageFile)(IBIOSSettings *pThis, PRUnichar * *nonVolatileStorageFile); + + nsresult (*GetSMBIOSUuidLittleEndian)(IBIOSSettings *pThis, PRBool *SMBIOSUuidLittleEndian); + nsresult (*SetSMBIOSUuidLittleEndian)(IBIOSSettings *pThis, PRBool SMBIOSUuidLittleEndian); + + nsresult (*GetInternalAndReservedAttribute1IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IBIOSSettings)(IBIOSSettings *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IBIOSSettings)(IBIOSSettings *pThis); + + nsresult (*InternalAndReservedMethod2IBIOSSettings)(IBIOSSettings *pThis); + +}; +# define IBIOSSettings_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IBIOSSettings_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IBIOSSettings_Release(p) ((p)->lpVtbl->Release(p)) +# define IBIOSSettings_get_LogoFadeIn(p, aLogoFadeIn) ((p)->lpVtbl->GetLogoFadeIn(p, aLogoFadeIn)) +# define IBIOSSettings_GetLogoFadeIn(p, aLogoFadeIn) ((p)->lpVtbl->GetLogoFadeIn(p, aLogoFadeIn)) +# define IBIOSSettings_put_LogoFadeIn(p, aLogoFadeIn) ((p)->lpVtbl->SetLogoFadeIn(p, aLogoFadeIn)) +# define IBIOSSettings_SetLogoFadeIn(p, aLogoFadeIn) ((p)->lpVtbl->SetLogoFadeIn(p, aLogoFadeIn)) +# define IBIOSSettings_get_LogoFadeOut(p, aLogoFadeOut) ((p)->lpVtbl->GetLogoFadeOut(p, aLogoFadeOut)) +# define IBIOSSettings_GetLogoFadeOut(p, aLogoFadeOut) ((p)->lpVtbl->GetLogoFadeOut(p, aLogoFadeOut)) +# define IBIOSSettings_put_LogoFadeOut(p, aLogoFadeOut) ((p)->lpVtbl->SetLogoFadeOut(p, aLogoFadeOut)) +# define IBIOSSettings_SetLogoFadeOut(p, aLogoFadeOut) ((p)->lpVtbl->SetLogoFadeOut(p, aLogoFadeOut)) +# define IBIOSSettings_get_LogoDisplayTime(p, aLogoDisplayTime) ((p)->lpVtbl->GetLogoDisplayTime(p, aLogoDisplayTime)) +# define IBIOSSettings_GetLogoDisplayTime(p, aLogoDisplayTime) ((p)->lpVtbl->GetLogoDisplayTime(p, aLogoDisplayTime)) +# define IBIOSSettings_put_LogoDisplayTime(p, aLogoDisplayTime) ((p)->lpVtbl->SetLogoDisplayTime(p, aLogoDisplayTime)) +# define IBIOSSettings_SetLogoDisplayTime(p, aLogoDisplayTime) ((p)->lpVtbl->SetLogoDisplayTime(p, aLogoDisplayTime)) +# define IBIOSSettings_get_LogoImagePath(p, aLogoImagePath) ((p)->lpVtbl->GetLogoImagePath(p, aLogoImagePath)) +# define IBIOSSettings_GetLogoImagePath(p, aLogoImagePath) ((p)->lpVtbl->GetLogoImagePath(p, aLogoImagePath)) +# define IBIOSSettings_put_LogoImagePath(p, aLogoImagePath) ((p)->lpVtbl->SetLogoImagePath(p, aLogoImagePath)) +# define IBIOSSettings_SetLogoImagePath(p, aLogoImagePath) ((p)->lpVtbl->SetLogoImagePath(p, aLogoImagePath)) +# define IBIOSSettings_get_BootMenuMode(p, aBootMenuMode) ((p)->lpVtbl->GetBootMenuMode(p, aBootMenuMode)) +# define IBIOSSettings_GetBootMenuMode(p, aBootMenuMode) ((p)->lpVtbl->GetBootMenuMode(p, aBootMenuMode)) +# define IBIOSSettings_put_BootMenuMode(p, aBootMenuMode) ((p)->lpVtbl->SetBootMenuMode(p, aBootMenuMode)) +# define IBIOSSettings_SetBootMenuMode(p, aBootMenuMode) ((p)->lpVtbl->SetBootMenuMode(p, aBootMenuMode)) +# define IBIOSSettings_get_ACPIEnabled(p, aACPIEnabled) ((p)->lpVtbl->GetACPIEnabled(p, aACPIEnabled)) +# define IBIOSSettings_GetACPIEnabled(p, aACPIEnabled) ((p)->lpVtbl->GetACPIEnabled(p, aACPIEnabled)) +# define IBIOSSettings_put_ACPIEnabled(p, aACPIEnabled) ((p)->lpVtbl->SetACPIEnabled(p, aACPIEnabled)) +# define IBIOSSettings_SetACPIEnabled(p, aACPIEnabled) ((p)->lpVtbl->SetACPIEnabled(p, aACPIEnabled)) +# define IBIOSSettings_get_IOAPICEnabled(p, aIOAPICEnabled) ((p)->lpVtbl->GetIOAPICEnabled(p, aIOAPICEnabled)) +# define IBIOSSettings_GetIOAPICEnabled(p, aIOAPICEnabled) ((p)->lpVtbl->GetIOAPICEnabled(p, aIOAPICEnabled)) +# define IBIOSSettings_put_IOAPICEnabled(p, aIOAPICEnabled) ((p)->lpVtbl->SetIOAPICEnabled(p, aIOAPICEnabled)) +# define IBIOSSettings_SetIOAPICEnabled(p, aIOAPICEnabled) ((p)->lpVtbl->SetIOAPICEnabled(p, aIOAPICEnabled)) +# define IBIOSSettings_get_APICMode(p, aAPICMode) ((p)->lpVtbl->GetAPICMode(p, aAPICMode)) +# define IBIOSSettings_GetAPICMode(p, aAPICMode) ((p)->lpVtbl->GetAPICMode(p, aAPICMode)) +# define IBIOSSettings_put_APICMode(p, aAPICMode) ((p)->lpVtbl->SetAPICMode(p, aAPICMode)) +# define IBIOSSettings_SetAPICMode(p, aAPICMode) ((p)->lpVtbl->SetAPICMode(p, aAPICMode)) +# define IBIOSSettings_get_TimeOffset(p, aTimeOffset) ((p)->lpVtbl->GetTimeOffset(p, aTimeOffset)) +# define IBIOSSettings_GetTimeOffset(p, aTimeOffset) ((p)->lpVtbl->GetTimeOffset(p, aTimeOffset)) +# define IBIOSSettings_put_TimeOffset(p, aTimeOffset) ((p)->lpVtbl->SetTimeOffset(p, aTimeOffset)) +# define IBIOSSettings_SetTimeOffset(p, aTimeOffset) ((p)->lpVtbl->SetTimeOffset(p, aTimeOffset)) +# define IBIOSSettings_get_PXEDebugEnabled(p, aPXEDebugEnabled) ((p)->lpVtbl->GetPXEDebugEnabled(p, aPXEDebugEnabled)) +# define IBIOSSettings_GetPXEDebugEnabled(p, aPXEDebugEnabled) ((p)->lpVtbl->GetPXEDebugEnabled(p, aPXEDebugEnabled)) +# define IBIOSSettings_put_PXEDebugEnabled(p, aPXEDebugEnabled) ((p)->lpVtbl->SetPXEDebugEnabled(p, aPXEDebugEnabled)) +# define IBIOSSettings_SetPXEDebugEnabled(p, aPXEDebugEnabled) ((p)->lpVtbl->SetPXEDebugEnabled(p, aPXEDebugEnabled)) +# define IBIOSSettings_get_NonVolatileStorageFile(p, aNonVolatileStorageFile) ((p)->lpVtbl->GetNonVolatileStorageFile(p, aNonVolatileStorageFile)) +# define IBIOSSettings_GetNonVolatileStorageFile(p, aNonVolatileStorageFile) ((p)->lpVtbl->GetNonVolatileStorageFile(p, aNonVolatileStorageFile)) +# define IBIOSSettings_get_SMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian) ((p)->lpVtbl->GetSMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian)) +# define IBIOSSettings_GetSMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian) ((p)->lpVtbl->GetSMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian)) +# define IBIOSSettings_put_SMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian) ((p)->lpVtbl->SetSMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian)) +# define IBIOSSettings_SetSMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian) ((p)->lpVtbl->SetSMBIOSUuidLittleEndian(p, aSMBIOSUuidLittleEndian)) +# endif /* VBOX_WITH_GLUE */ + +interface IBIOSSettings +{ +# ifndef VBOX_WITH_GLUE + struct IBIOSSettings_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IBIOSSettingsVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IBIOSSettings declaration */ + + +/* Start of struct IRecordingScreenSettings declaration */ +# define IRECORDINGSCREENSETTINGS_IID_STR "678fbd9a-93af-42a7-7f13-79ad6ef1a18d" +# define IRECORDINGSCREENSETTINGS_IID { \ + 0x678fbd9a, 0x93af, 0x42a7, \ + { 0x7f, 0x13, 0x79, 0xad, 0x6e, 0xf1, 0xa1, 0x8d } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IRecordingScreenSettings); +# ifndef VBOX_WITH_GLUE +struct IRecordingScreenSettings_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetId)(IRecordingScreenSettings *pThis, PRUint32 *id); + + nsresult (*GetEnabled)(IRecordingScreenSettings *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IRecordingScreenSettings *pThis, PRBool enabled); + + nsresult (*GetFeatures)(IRecordingScreenSettings *pThis, PRUint32 *features); + nsresult (*SetFeatures)(IRecordingScreenSettings *pThis, PRUint32 features); + + nsresult (*GetDestination)(IRecordingScreenSettings *pThis, PRUint32 *destination); + nsresult (*SetDestination)(IRecordingScreenSettings *pThis, PRUint32 destination); + + nsresult (*GetFilename)(IRecordingScreenSettings *pThis, PRUnichar * *filename); + nsresult (*SetFilename)(IRecordingScreenSettings *pThis, PRUnichar * filename); + + nsresult (*GetMaxTime)(IRecordingScreenSettings *pThis, PRUint32 *maxTime); + nsresult (*SetMaxTime)(IRecordingScreenSettings *pThis, PRUint32 maxTime); + + nsresult (*GetMaxFileSize)(IRecordingScreenSettings *pThis, PRUint32 *maxFileSize); + nsresult (*SetMaxFileSize)(IRecordingScreenSettings *pThis, PRUint32 maxFileSize); + + nsresult (*GetOptions)(IRecordingScreenSettings *pThis, PRUnichar * *options); + nsresult (*SetOptions)(IRecordingScreenSettings *pThis, PRUnichar * options); + + nsresult (*GetAudioCodec)(IRecordingScreenSettings *pThis, PRUint32 *audioCodec); + nsresult (*SetAudioCodec)(IRecordingScreenSettings *pThis, PRUint32 audioCodec); + + nsresult (*GetAudioHz)(IRecordingScreenSettings *pThis, PRUint32 *audioHz); + nsresult (*SetAudioHz)(IRecordingScreenSettings *pThis, PRUint32 audioHz); + + nsresult (*GetAudioBits)(IRecordingScreenSettings *pThis, PRUint32 *audioBits); + nsresult (*SetAudioBits)(IRecordingScreenSettings *pThis, PRUint32 audioBits); + + nsresult (*GetAudioChannels)(IRecordingScreenSettings *pThis, PRUint32 *audioChannels); + nsresult (*SetAudioChannels)(IRecordingScreenSettings *pThis, PRUint32 audioChannels); + + nsresult (*GetVideoCodec)(IRecordingScreenSettings *pThis, PRUint32 *videoCodec); + nsresult (*SetVideoCodec)(IRecordingScreenSettings *pThis, PRUint32 videoCodec); + + nsresult (*GetVideoWidth)(IRecordingScreenSettings *pThis, PRUint32 *videoWidth); + nsresult (*SetVideoWidth)(IRecordingScreenSettings *pThis, PRUint32 videoWidth); + + nsresult (*GetVideoHeight)(IRecordingScreenSettings *pThis, PRUint32 *videoHeight); + nsresult (*SetVideoHeight)(IRecordingScreenSettings *pThis, PRUint32 videoHeight); + + nsresult (*GetVideoRate)(IRecordingScreenSettings *pThis, PRUint32 *videoRate); + nsresult (*SetVideoRate)(IRecordingScreenSettings *pThis, PRUint32 videoRate); + + nsresult (*GetVideoRateControlMode)(IRecordingScreenSettings *pThis, PRUint32 *videoRateControlMode); + nsresult (*SetVideoRateControlMode)(IRecordingScreenSettings *pThis, PRUint32 videoRateControlMode); + + nsresult (*GetVideoFPS)(IRecordingScreenSettings *pThis, PRUint32 *videoFPS); + nsresult (*SetVideoFPS)(IRecordingScreenSettings *pThis, PRUint32 videoFPS); + + nsresult (*GetVideoScalingMethod)(IRecordingScreenSettings *pThis, PRUint32 *videoScalingMethod); + nsresult (*SetVideoScalingMethod)(IRecordingScreenSettings *pThis, PRUint32 videoScalingMethod); + + nsresult (*IsFeatureEnabled)( + IRecordingScreenSettings *pThis, + PRUint32 feature, + PRBool * enabled + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IRecordingScreenSettingsVtbl +{ + nsresult (*QueryInterface)(IRecordingScreenSettings *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IRecordingScreenSettings *pThis); + nsrefcnt (*Release)(IRecordingScreenSettings *pThis); + nsresult (*GetId)(IRecordingScreenSettings *pThis, PRUint32 *id); + + nsresult (*GetEnabled)(IRecordingScreenSettings *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IRecordingScreenSettings *pThis, PRBool enabled); + + nsresult (*GetFeatures)(IRecordingScreenSettings *pThis, PRUint32 *features); + nsresult (*SetFeatures)(IRecordingScreenSettings *pThis, PRUint32 features); + + nsresult (*GetDestination)(IRecordingScreenSettings *pThis, PRUint32 *destination); + nsresult (*SetDestination)(IRecordingScreenSettings *pThis, PRUint32 destination); + + nsresult (*GetFilename)(IRecordingScreenSettings *pThis, PRUnichar * *filename); + nsresult (*SetFilename)(IRecordingScreenSettings *pThis, PRUnichar * filename); + + nsresult (*GetMaxTime)(IRecordingScreenSettings *pThis, PRUint32 *maxTime); + nsresult (*SetMaxTime)(IRecordingScreenSettings *pThis, PRUint32 maxTime); + + nsresult (*GetMaxFileSize)(IRecordingScreenSettings *pThis, PRUint32 *maxFileSize); + nsresult (*SetMaxFileSize)(IRecordingScreenSettings *pThis, PRUint32 maxFileSize); + + nsresult (*GetOptions)(IRecordingScreenSettings *pThis, PRUnichar * *options); + nsresult (*SetOptions)(IRecordingScreenSettings *pThis, PRUnichar * options); + + nsresult (*GetAudioCodec)(IRecordingScreenSettings *pThis, PRUint32 *audioCodec); + nsresult (*SetAudioCodec)(IRecordingScreenSettings *pThis, PRUint32 audioCodec); + + nsresult (*GetAudioHz)(IRecordingScreenSettings *pThis, PRUint32 *audioHz); + nsresult (*SetAudioHz)(IRecordingScreenSettings *pThis, PRUint32 audioHz); + + nsresult (*GetAudioBits)(IRecordingScreenSettings *pThis, PRUint32 *audioBits); + nsresult (*SetAudioBits)(IRecordingScreenSettings *pThis, PRUint32 audioBits); + + nsresult (*GetAudioChannels)(IRecordingScreenSettings *pThis, PRUint32 *audioChannels); + nsresult (*SetAudioChannels)(IRecordingScreenSettings *pThis, PRUint32 audioChannels); + + nsresult (*GetVideoCodec)(IRecordingScreenSettings *pThis, PRUint32 *videoCodec); + nsresult (*SetVideoCodec)(IRecordingScreenSettings *pThis, PRUint32 videoCodec); + + nsresult (*GetVideoWidth)(IRecordingScreenSettings *pThis, PRUint32 *videoWidth); + nsresult (*SetVideoWidth)(IRecordingScreenSettings *pThis, PRUint32 videoWidth); + + nsresult (*GetVideoHeight)(IRecordingScreenSettings *pThis, PRUint32 *videoHeight); + nsresult (*SetVideoHeight)(IRecordingScreenSettings *pThis, PRUint32 videoHeight); + + nsresult (*GetVideoRate)(IRecordingScreenSettings *pThis, PRUint32 *videoRate); + nsresult (*SetVideoRate)(IRecordingScreenSettings *pThis, PRUint32 videoRate); + + nsresult (*GetVideoRateControlMode)(IRecordingScreenSettings *pThis, PRUint32 *videoRateControlMode); + nsresult (*SetVideoRateControlMode)(IRecordingScreenSettings *pThis, PRUint32 videoRateControlMode); + + nsresult (*GetVideoFPS)(IRecordingScreenSettings *pThis, PRUint32 *videoFPS); + nsresult (*SetVideoFPS)(IRecordingScreenSettings *pThis, PRUint32 videoFPS); + + nsresult (*GetVideoScalingMethod)(IRecordingScreenSettings *pThis, PRUint32 *videoScalingMethod); + nsresult (*SetVideoScalingMethod)(IRecordingScreenSettings *pThis, PRUint32 videoScalingMethod); + + nsresult (*IsFeatureEnabled)( + IRecordingScreenSettings *pThis, + PRUint32 feature, + PRBool * enabled + ); + +}; +# define IRecordingScreenSettings_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IRecordingScreenSettings_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IRecordingScreenSettings_Release(p) ((p)->lpVtbl->Release(p)) +# define IRecordingScreenSettings_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IRecordingScreenSettings_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IRecordingScreenSettings_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IRecordingScreenSettings_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IRecordingScreenSettings_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IRecordingScreenSettings_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IRecordingScreenSettings_get_Features(p, aFeatures) ((p)->lpVtbl->GetFeatures(p, aFeatures)) +# define IRecordingScreenSettings_GetFeatures(p, aFeatures) ((p)->lpVtbl->GetFeatures(p, aFeatures)) +# define IRecordingScreenSettings_put_Features(p, aFeatures) ((p)->lpVtbl->SetFeatures(p, aFeatures)) +# define IRecordingScreenSettings_SetFeatures(p, aFeatures) ((p)->lpVtbl->SetFeatures(p, aFeatures)) +# define IRecordingScreenSettings_get_Destination(p, aDestination) ((p)->lpVtbl->GetDestination(p, aDestination)) +# define IRecordingScreenSettings_GetDestination(p, aDestination) ((p)->lpVtbl->GetDestination(p, aDestination)) +# define IRecordingScreenSettings_put_Destination(p, aDestination) ((p)->lpVtbl->SetDestination(p, aDestination)) +# define IRecordingScreenSettings_SetDestination(p, aDestination) ((p)->lpVtbl->SetDestination(p, aDestination)) +# define IRecordingScreenSettings_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IRecordingScreenSettings_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IRecordingScreenSettings_put_Filename(p, aFilename) ((p)->lpVtbl->SetFilename(p, aFilename)) +# define IRecordingScreenSettings_SetFilename(p, aFilename) ((p)->lpVtbl->SetFilename(p, aFilename)) +# define IRecordingScreenSettings_get_MaxTime(p, aMaxTime) ((p)->lpVtbl->GetMaxTime(p, aMaxTime)) +# define IRecordingScreenSettings_GetMaxTime(p, aMaxTime) ((p)->lpVtbl->GetMaxTime(p, aMaxTime)) +# define IRecordingScreenSettings_put_MaxTime(p, aMaxTime) ((p)->lpVtbl->SetMaxTime(p, aMaxTime)) +# define IRecordingScreenSettings_SetMaxTime(p, aMaxTime) ((p)->lpVtbl->SetMaxTime(p, aMaxTime)) +# define IRecordingScreenSettings_get_MaxFileSize(p, aMaxFileSize) ((p)->lpVtbl->GetMaxFileSize(p, aMaxFileSize)) +# define IRecordingScreenSettings_GetMaxFileSize(p, aMaxFileSize) ((p)->lpVtbl->GetMaxFileSize(p, aMaxFileSize)) +# define IRecordingScreenSettings_put_MaxFileSize(p, aMaxFileSize) ((p)->lpVtbl->SetMaxFileSize(p, aMaxFileSize)) +# define IRecordingScreenSettings_SetMaxFileSize(p, aMaxFileSize) ((p)->lpVtbl->SetMaxFileSize(p, aMaxFileSize)) +# define IRecordingScreenSettings_get_Options(p, aOptions) ((p)->lpVtbl->GetOptions(p, aOptions)) +# define IRecordingScreenSettings_GetOptions(p, aOptions) ((p)->lpVtbl->GetOptions(p, aOptions)) +# define IRecordingScreenSettings_put_Options(p, aOptions) ((p)->lpVtbl->SetOptions(p, aOptions)) +# define IRecordingScreenSettings_SetOptions(p, aOptions) ((p)->lpVtbl->SetOptions(p, aOptions)) +# define IRecordingScreenSettings_get_AudioCodec(p, aAudioCodec) ((p)->lpVtbl->GetAudioCodec(p, aAudioCodec)) +# define IRecordingScreenSettings_GetAudioCodec(p, aAudioCodec) ((p)->lpVtbl->GetAudioCodec(p, aAudioCodec)) +# define IRecordingScreenSettings_put_AudioCodec(p, aAudioCodec) ((p)->lpVtbl->SetAudioCodec(p, aAudioCodec)) +# define IRecordingScreenSettings_SetAudioCodec(p, aAudioCodec) ((p)->lpVtbl->SetAudioCodec(p, aAudioCodec)) +# define IRecordingScreenSettings_get_AudioHz(p, aAudioHz) ((p)->lpVtbl->GetAudioHz(p, aAudioHz)) +# define IRecordingScreenSettings_GetAudioHz(p, aAudioHz) ((p)->lpVtbl->GetAudioHz(p, aAudioHz)) +# define IRecordingScreenSettings_put_AudioHz(p, aAudioHz) ((p)->lpVtbl->SetAudioHz(p, aAudioHz)) +# define IRecordingScreenSettings_SetAudioHz(p, aAudioHz) ((p)->lpVtbl->SetAudioHz(p, aAudioHz)) +# define IRecordingScreenSettings_get_AudioBits(p, aAudioBits) ((p)->lpVtbl->GetAudioBits(p, aAudioBits)) +# define IRecordingScreenSettings_GetAudioBits(p, aAudioBits) ((p)->lpVtbl->GetAudioBits(p, aAudioBits)) +# define IRecordingScreenSettings_put_AudioBits(p, aAudioBits) ((p)->lpVtbl->SetAudioBits(p, aAudioBits)) +# define IRecordingScreenSettings_SetAudioBits(p, aAudioBits) ((p)->lpVtbl->SetAudioBits(p, aAudioBits)) +# define IRecordingScreenSettings_get_AudioChannels(p, aAudioChannels) ((p)->lpVtbl->GetAudioChannels(p, aAudioChannels)) +# define IRecordingScreenSettings_GetAudioChannels(p, aAudioChannels) ((p)->lpVtbl->GetAudioChannels(p, aAudioChannels)) +# define IRecordingScreenSettings_put_AudioChannels(p, aAudioChannels) ((p)->lpVtbl->SetAudioChannels(p, aAudioChannels)) +# define IRecordingScreenSettings_SetAudioChannels(p, aAudioChannels) ((p)->lpVtbl->SetAudioChannels(p, aAudioChannels)) +# define IRecordingScreenSettings_get_VideoCodec(p, aVideoCodec) ((p)->lpVtbl->GetVideoCodec(p, aVideoCodec)) +# define IRecordingScreenSettings_GetVideoCodec(p, aVideoCodec) ((p)->lpVtbl->GetVideoCodec(p, aVideoCodec)) +# define IRecordingScreenSettings_put_VideoCodec(p, aVideoCodec) ((p)->lpVtbl->SetVideoCodec(p, aVideoCodec)) +# define IRecordingScreenSettings_SetVideoCodec(p, aVideoCodec) ((p)->lpVtbl->SetVideoCodec(p, aVideoCodec)) +# define IRecordingScreenSettings_get_VideoWidth(p, aVideoWidth) ((p)->lpVtbl->GetVideoWidth(p, aVideoWidth)) +# define IRecordingScreenSettings_GetVideoWidth(p, aVideoWidth) ((p)->lpVtbl->GetVideoWidth(p, aVideoWidth)) +# define IRecordingScreenSettings_put_VideoWidth(p, aVideoWidth) ((p)->lpVtbl->SetVideoWidth(p, aVideoWidth)) +# define IRecordingScreenSettings_SetVideoWidth(p, aVideoWidth) ((p)->lpVtbl->SetVideoWidth(p, aVideoWidth)) +# define IRecordingScreenSettings_get_VideoHeight(p, aVideoHeight) ((p)->lpVtbl->GetVideoHeight(p, aVideoHeight)) +# define IRecordingScreenSettings_GetVideoHeight(p, aVideoHeight) ((p)->lpVtbl->GetVideoHeight(p, aVideoHeight)) +# define IRecordingScreenSettings_put_VideoHeight(p, aVideoHeight) ((p)->lpVtbl->SetVideoHeight(p, aVideoHeight)) +# define IRecordingScreenSettings_SetVideoHeight(p, aVideoHeight) ((p)->lpVtbl->SetVideoHeight(p, aVideoHeight)) +# define IRecordingScreenSettings_get_VideoRate(p, aVideoRate) ((p)->lpVtbl->GetVideoRate(p, aVideoRate)) +# define IRecordingScreenSettings_GetVideoRate(p, aVideoRate) ((p)->lpVtbl->GetVideoRate(p, aVideoRate)) +# define IRecordingScreenSettings_put_VideoRate(p, aVideoRate) ((p)->lpVtbl->SetVideoRate(p, aVideoRate)) +# define IRecordingScreenSettings_SetVideoRate(p, aVideoRate) ((p)->lpVtbl->SetVideoRate(p, aVideoRate)) +# define IRecordingScreenSettings_get_VideoRateControlMode(p, aVideoRateControlMode) ((p)->lpVtbl->GetVideoRateControlMode(p, aVideoRateControlMode)) +# define IRecordingScreenSettings_GetVideoRateControlMode(p, aVideoRateControlMode) ((p)->lpVtbl->GetVideoRateControlMode(p, aVideoRateControlMode)) +# define IRecordingScreenSettings_put_VideoRateControlMode(p, aVideoRateControlMode) ((p)->lpVtbl->SetVideoRateControlMode(p, aVideoRateControlMode)) +# define IRecordingScreenSettings_SetVideoRateControlMode(p, aVideoRateControlMode) ((p)->lpVtbl->SetVideoRateControlMode(p, aVideoRateControlMode)) +# define IRecordingScreenSettings_get_VideoFPS(p, aVideoFPS) ((p)->lpVtbl->GetVideoFPS(p, aVideoFPS)) +# define IRecordingScreenSettings_GetVideoFPS(p, aVideoFPS) ((p)->lpVtbl->GetVideoFPS(p, aVideoFPS)) +# define IRecordingScreenSettings_put_VideoFPS(p, aVideoFPS) ((p)->lpVtbl->SetVideoFPS(p, aVideoFPS)) +# define IRecordingScreenSettings_SetVideoFPS(p, aVideoFPS) ((p)->lpVtbl->SetVideoFPS(p, aVideoFPS)) +# define IRecordingScreenSettings_get_VideoScalingMethod(p, aVideoScalingMethod) ((p)->lpVtbl->GetVideoScalingMethod(p, aVideoScalingMethod)) +# define IRecordingScreenSettings_GetVideoScalingMethod(p, aVideoScalingMethod) ((p)->lpVtbl->GetVideoScalingMethod(p, aVideoScalingMethod)) +# define IRecordingScreenSettings_put_VideoScalingMethod(p, aVideoScalingMethod) ((p)->lpVtbl->SetVideoScalingMethod(p, aVideoScalingMethod)) +# define IRecordingScreenSettings_SetVideoScalingMethod(p, aVideoScalingMethod) ((p)->lpVtbl->SetVideoScalingMethod(p, aVideoScalingMethod)) +# define IRecordingScreenSettings_IsFeatureEnabled(p, aFeature, aEnabled) ((p)->lpVtbl->IsFeatureEnabled(p, aFeature, aEnabled)) +# endif /* VBOX_WITH_GLUE */ + +interface IRecordingScreenSettings +{ +# ifndef VBOX_WITH_GLUE + struct IRecordingScreenSettings_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IRecordingScreenSettingsVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IRecordingScreenSettings declaration */ + + +/* Start of struct IRecordingSettings declaration */ +# define IRECORDINGSETTINGS_IID_STR "D88F2A5A-47C7-4A3F-AAE1-1B516817DB41" +# define IRECORDINGSETTINGS_IID { \ + 0xD88F2A5A, 0x47C7, 0x4A3F, \ + { 0xAA, 0xE1, 0x1B, 0x51, 0x68, 0x17, 0xDB, 0x41 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IRecordingSettings); +# ifndef VBOX_WITH_GLUE +struct IRecordingSettings_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetEnabled)(IRecordingSettings *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IRecordingSettings *pThis, PRBool enabled); + + nsresult (*GetScreens)(IRecordingSettings *pThis, PRUint32 *screensSize, IRecordingScreenSettings * **screens); + + nsresult (*GetScreenSettings)( + IRecordingSettings *pThis, + PRUint32 screenId, + IRecordingScreenSettings * * recordScreenSettings + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IRecordingSettingsVtbl +{ + nsresult (*QueryInterface)(IRecordingSettings *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IRecordingSettings *pThis); + nsrefcnt (*Release)(IRecordingSettings *pThis); + nsresult (*GetEnabled)(IRecordingSettings *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IRecordingSettings *pThis, PRBool enabled); + + nsresult (*GetScreens)(IRecordingSettings *pThis, PRUint32 *screensSize, IRecordingScreenSettings * **screens); + + nsresult (*GetScreenSettings)( + IRecordingSettings *pThis, + PRUint32 screenId, + IRecordingScreenSettings * * recordScreenSettings + ); + +}; +# define IRecordingSettings_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IRecordingSettings_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IRecordingSettings_Release(p) ((p)->lpVtbl->Release(p)) +# define IRecordingSettings_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IRecordingSettings_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IRecordingSettings_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IRecordingSettings_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IRecordingSettings_get_Screens(p, aScreens) ((p)->lpVtbl->GetScreens(p, aScreens)) +# define IRecordingSettings_GetScreens(p, aScreens) ((p)->lpVtbl->GetScreens(p, aScreens)) +# define IRecordingSettings_GetScreenSettings(p, aScreenId, aRecordScreenSettings) ((p)->lpVtbl->GetScreenSettings(p, aScreenId, aRecordScreenSettings)) +# endif /* VBOX_WITH_GLUE */ + +interface IRecordingSettings +{ +# ifndef VBOX_WITH_GLUE + struct IRecordingSettings_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IRecordingSettingsVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IRecordingSettings declaration */ + + +/* Start of struct IPCIAddress declaration */ +# define IPCIADDRESS_IID_STR "c984d15f-e191-400b-840e-970f3dad7296" +# define IPCIADDRESS_IID { \ + 0xc984d15f, 0xe191, 0x400b, \ + { 0x84, 0x0e, 0x97, 0x0f, 0x3d, 0xad, 0x72, 0x96 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IPCIAddress); +# ifndef VBOX_WITH_GLUE +struct IPCIAddress_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetBus)(IPCIAddress *pThis, PRInt16 *bus); + nsresult (*SetBus)(IPCIAddress *pThis, PRInt16 bus); + + nsresult (*GetDevice)(IPCIAddress *pThis, PRInt16 *device); + nsresult (*SetDevice)(IPCIAddress *pThis, PRInt16 device); + + nsresult (*GetDevFunction)(IPCIAddress *pThis, PRInt16 *devFunction); + nsresult (*SetDevFunction)(IPCIAddress *pThis, PRInt16 devFunction); + + nsresult (*AsLong)( + IPCIAddress *pThis, + PRInt32 * result + ); + + nsresult (*FromLong)( + IPCIAddress *pThis, + PRInt32 number + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IPCIAddressVtbl +{ + nsresult (*QueryInterface)(IPCIAddress *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IPCIAddress *pThis); + nsrefcnt (*Release)(IPCIAddress *pThis); + nsresult (*GetBus)(IPCIAddress *pThis, PRInt16 *bus); + nsresult (*SetBus)(IPCIAddress *pThis, PRInt16 bus); + + nsresult (*GetDevice)(IPCIAddress *pThis, PRInt16 *device); + nsresult (*SetDevice)(IPCIAddress *pThis, PRInt16 device); + + nsresult (*GetDevFunction)(IPCIAddress *pThis, PRInt16 *devFunction); + nsresult (*SetDevFunction)(IPCIAddress *pThis, PRInt16 devFunction); + + nsresult (*AsLong)( + IPCIAddress *pThis, + PRInt32 * result + ); + + nsresult (*FromLong)( + IPCIAddress *pThis, + PRInt32 number + ); + +}; +# define IPCIAddress_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IPCIAddress_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IPCIAddress_Release(p) ((p)->lpVtbl->Release(p)) +# define IPCIAddress_get_Bus(p, aBus) ((p)->lpVtbl->GetBus(p, aBus)) +# define IPCIAddress_GetBus(p, aBus) ((p)->lpVtbl->GetBus(p, aBus)) +# define IPCIAddress_put_Bus(p, aBus) ((p)->lpVtbl->SetBus(p, aBus)) +# define IPCIAddress_SetBus(p, aBus) ((p)->lpVtbl->SetBus(p, aBus)) +# define IPCIAddress_get_Device(p, aDevice) ((p)->lpVtbl->GetDevice(p, aDevice)) +# define IPCIAddress_GetDevice(p, aDevice) ((p)->lpVtbl->GetDevice(p, aDevice)) +# define IPCIAddress_put_Device(p, aDevice) ((p)->lpVtbl->SetDevice(p, aDevice)) +# define IPCIAddress_SetDevice(p, aDevice) ((p)->lpVtbl->SetDevice(p, aDevice)) +# define IPCIAddress_get_DevFunction(p, aDevFunction) ((p)->lpVtbl->GetDevFunction(p, aDevFunction)) +# define IPCIAddress_GetDevFunction(p, aDevFunction) ((p)->lpVtbl->GetDevFunction(p, aDevFunction)) +# define IPCIAddress_put_DevFunction(p, aDevFunction) ((p)->lpVtbl->SetDevFunction(p, aDevFunction)) +# define IPCIAddress_SetDevFunction(p, aDevFunction) ((p)->lpVtbl->SetDevFunction(p, aDevFunction)) +# define IPCIAddress_AsLong(p, aResult) ((p)->lpVtbl->AsLong(p, aResult)) +# define IPCIAddress_FromLong(p, aNumber) ((p)->lpVtbl->FromLong(p, aNumber)) +# endif /* VBOX_WITH_GLUE */ + +interface IPCIAddress +{ +# ifndef VBOX_WITH_GLUE + struct IPCIAddress_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IPCIAddressVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IPCIAddress declaration */ + + +/* Start of struct IPCIDeviceAttachment declaration */ +# define IPCIDEVICEATTACHMENT_IID_STR "91f33d6f-e621-4f70-a77e-15f0e3c714d5" +# define IPCIDEVICEATTACHMENT_IID { \ + 0x91f33d6f, 0xe621, 0x4f70, \ + { 0xa7, 0x7e, 0x15, 0xf0, 0xe3, 0xc7, 0x14, 0xd5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IPCIDeviceAttachment); +# ifndef VBOX_WITH_GLUE +struct IPCIDeviceAttachment_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IPCIDeviceAttachment *pThis, PRUnichar * *name); + + nsresult (*GetIsPhysicalDevice)(IPCIDeviceAttachment *pThis, PRBool *isPhysicalDevice); + + nsresult (*GetHostAddress)(IPCIDeviceAttachment *pThis, PRInt32 *hostAddress); + + nsresult (*GetGuestAddress)(IPCIDeviceAttachment *pThis, PRInt32 *guestAddress); + +}; +# else /* VBOX_WITH_GLUE */ +struct IPCIDeviceAttachmentVtbl +{ + nsresult (*QueryInterface)(IPCIDeviceAttachment *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IPCIDeviceAttachment *pThis); + nsrefcnt (*Release)(IPCIDeviceAttachment *pThis); + nsresult (*GetName)(IPCIDeviceAttachment *pThis, PRUnichar * *name); + + nsresult (*GetIsPhysicalDevice)(IPCIDeviceAttachment *pThis, PRBool *isPhysicalDevice); + + nsresult (*GetHostAddress)(IPCIDeviceAttachment *pThis, PRInt32 *hostAddress); + + nsresult (*GetGuestAddress)(IPCIDeviceAttachment *pThis, PRInt32 *guestAddress); + +}; +# define IPCIDeviceAttachment_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IPCIDeviceAttachment_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IPCIDeviceAttachment_Release(p) ((p)->lpVtbl->Release(p)) +# define IPCIDeviceAttachment_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IPCIDeviceAttachment_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IPCIDeviceAttachment_get_IsPhysicalDevice(p, aIsPhysicalDevice) ((p)->lpVtbl->GetIsPhysicalDevice(p, aIsPhysicalDevice)) +# define IPCIDeviceAttachment_GetIsPhysicalDevice(p, aIsPhysicalDevice) ((p)->lpVtbl->GetIsPhysicalDevice(p, aIsPhysicalDevice)) +# define IPCIDeviceAttachment_get_HostAddress(p, aHostAddress) ((p)->lpVtbl->GetHostAddress(p, aHostAddress)) +# define IPCIDeviceAttachment_GetHostAddress(p, aHostAddress) ((p)->lpVtbl->GetHostAddress(p, aHostAddress)) +# define IPCIDeviceAttachment_get_GuestAddress(p, aGuestAddress) ((p)->lpVtbl->GetGuestAddress(p, aGuestAddress)) +# define IPCIDeviceAttachment_GetGuestAddress(p, aGuestAddress) ((p)->lpVtbl->GetGuestAddress(p, aGuestAddress)) +# endif /* VBOX_WITH_GLUE */ + +interface IPCIDeviceAttachment +{ +# ifndef VBOX_WITH_GLUE + struct IPCIDeviceAttachment_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IPCIDeviceAttachmentVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IPCIDeviceAttachment declaration */ + + +/* Start of struct IMachine declaration */ +# define IMACHINE_IID_STR "85632c68-b5bb-4316-a900-5eb28d3413df" +# define IMACHINE_IID { \ + 0x85632c68, 0xb5bb, 0x4316, \ + { 0xa9, 0x00, 0x5e, 0xb2, 0x8d, 0x34, 0x13, 0xdf } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMachine); +# ifndef VBOX_WITH_GLUE +struct IMachine_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetParent)(IMachine *pThis, IVirtualBox * *parent); + + nsresult (*GetIcon)(IMachine *pThis, PRUint32 *iconSize, PRUint8 **icon); + nsresult (*SetIcon)(IMachine *pThis, PRUint32 iconSize, PRUint8 *icon); + + nsresult (*GetAccessible)(IMachine *pThis, PRBool *accessible); + + nsresult (*GetAccessError)(IMachine *pThis, IVirtualBoxErrorInfo * *accessError); + + nsresult (*GetName)(IMachine *pThis, PRUnichar * *name); + nsresult (*SetName)(IMachine *pThis, PRUnichar * name); + + nsresult (*GetDescription)(IMachine *pThis, PRUnichar * *description); + nsresult (*SetDescription)(IMachine *pThis, PRUnichar * description); + + nsresult (*GetId)(IMachine *pThis, PRUnichar * *id); + + nsresult (*GetGroups)(IMachine *pThis, PRUint32 *groupsSize, PRUnichar * **groups); + nsresult (*SetGroups)(IMachine *pThis, PRUint32 groupsSize, PRUnichar * *groups); + + nsresult (*GetOSTypeId)(IMachine *pThis, PRUnichar * *OSTypeId); + nsresult (*SetOSTypeId)(IMachine *pThis, PRUnichar * OSTypeId); + + nsresult (*GetHardwareVersion)(IMachine *pThis, PRUnichar * *hardwareVersion); + nsresult (*SetHardwareVersion)(IMachine *pThis, PRUnichar * hardwareVersion); + + nsresult (*GetHardwareUUID)(IMachine *pThis, PRUnichar * *hardwareUUID); + nsresult (*SetHardwareUUID)(IMachine *pThis, PRUnichar * hardwareUUID); + + nsresult (*GetCPUCount)(IMachine *pThis, PRUint32 *CPUCount); + nsresult (*SetCPUCount)(IMachine *pThis, PRUint32 CPUCount); + + nsresult (*GetCPUHotPlugEnabled)(IMachine *pThis, PRBool *CPUHotPlugEnabled); + nsresult (*SetCPUHotPlugEnabled)(IMachine *pThis, PRBool CPUHotPlugEnabled); + + nsresult (*GetCPUExecutionCap)(IMachine *pThis, PRUint32 *CPUExecutionCap); + nsresult (*SetCPUExecutionCap)(IMachine *pThis, PRUint32 CPUExecutionCap); + + nsresult (*GetCPUIDPortabilityLevel)(IMachine *pThis, PRUint32 *CPUIDPortabilityLevel); + nsresult (*SetCPUIDPortabilityLevel)(IMachine *pThis, PRUint32 CPUIDPortabilityLevel); + + nsresult (*GetMemorySize)(IMachine *pThis, PRUint32 *memorySize); + nsresult (*SetMemorySize)(IMachine *pThis, PRUint32 memorySize); + + nsresult (*GetMemoryBalloonSize)(IMachine *pThis, PRUint32 *memoryBalloonSize); + nsresult (*SetMemoryBalloonSize)(IMachine *pThis, PRUint32 memoryBalloonSize); + + nsresult (*GetPageFusionEnabled)(IMachine *pThis, PRBool *pageFusionEnabled); + nsresult (*SetPageFusionEnabled)(IMachine *pThis, PRBool pageFusionEnabled); + + nsresult (*GetGraphicsAdapter)(IMachine *pThis, IGraphicsAdapter * *graphicsAdapter); + + nsresult (*GetBIOSSettings)(IMachine *pThis, IBIOSSettings * *BIOSSettings); + + nsresult (*GetRecordingSettings)(IMachine *pThis, IRecordingSettings * *recordingSettings); + + nsresult (*GetFirmwareType)(IMachine *pThis, PRUint32 *firmwareType); + nsresult (*SetFirmwareType)(IMachine *pThis, PRUint32 firmwareType); + + nsresult (*GetPointingHIDType)(IMachine *pThis, PRUint32 *pointingHIDType); + nsresult (*SetPointingHIDType)(IMachine *pThis, PRUint32 pointingHIDType); + + nsresult (*GetKeyboardHIDType)(IMachine *pThis, PRUint32 *keyboardHIDType); + nsresult (*SetKeyboardHIDType)(IMachine *pThis, PRUint32 keyboardHIDType); + + nsresult (*GetHPETEnabled)(IMachine *pThis, PRBool *HPETEnabled); + nsresult (*SetHPETEnabled)(IMachine *pThis, PRBool HPETEnabled); + + nsresult (*GetChipsetType)(IMachine *pThis, PRUint32 *chipsetType); + nsresult (*SetChipsetType)(IMachine *pThis, PRUint32 chipsetType); + + nsresult (*GetSnapshotFolder)(IMachine *pThis, PRUnichar * *snapshotFolder); + nsresult (*SetSnapshotFolder)(IMachine *pThis, PRUnichar * snapshotFolder); + + nsresult (*GetVRDEServer)(IMachine *pThis, IVRDEServer * *VRDEServer); + + nsresult (*GetEmulatedUSBCardReaderEnabled)(IMachine *pThis, PRBool *emulatedUSBCardReaderEnabled); + nsresult (*SetEmulatedUSBCardReaderEnabled)(IMachine *pThis, PRBool emulatedUSBCardReaderEnabled); + + nsresult (*GetMediumAttachments)(IMachine *pThis, PRUint32 *mediumAttachmentsSize, IMediumAttachment * **mediumAttachments); + + nsresult (*GetUSBControllers)(IMachine *pThis, PRUint32 *USBControllersSize, IUSBController * **USBControllers); + + nsresult (*GetUSBDeviceFilters)(IMachine *pThis, IUSBDeviceFilters * *USBDeviceFilters); + + nsresult (*GetAudioAdapter)(IMachine *pThis, IAudioAdapter * *audioAdapter); + + nsresult (*GetStorageControllers)(IMachine *pThis, PRUint32 *storageControllersSize, IStorageController * **storageControllers); + + nsresult (*GetSettingsFilePath)(IMachine *pThis, PRUnichar * *settingsFilePath); + + nsresult (*GetSettingsAuxFilePath)(IMachine *pThis, PRUnichar * *settingsAuxFilePath); + + nsresult (*GetSettingsModified)(IMachine *pThis, PRBool *settingsModified); + + nsresult (*GetSessionState)(IMachine *pThis, PRUint32 *sessionState); + + nsresult (*GetSessionName)(IMachine *pThis, PRUnichar * *sessionName); + + nsresult (*GetSessionPID)(IMachine *pThis, PRUint32 *sessionPID); + + nsresult (*GetState)(IMachine *pThis, PRUint32 *state); + + nsresult (*GetLastStateChange)(IMachine *pThis, PRInt64 *lastStateChange); + + nsresult (*GetStateFilePath)(IMachine *pThis, PRUnichar * *stateFilePath); + + nsresult (*GetLogFolder)(IMachine *pThis, PRUnichar * *logFolder); + + nsresult (*GetCurrentSnapshot)(IMachine *pThis, ISnapshot * *currentSnapshot); + + nsresult (*GetSnapshotCount)(IMachine *pThis, PRUint32 *snapshotCount); + + nsresult (*GetCurrentStateModified)(IMachine *pThis, PRBool *currentStateModified); + + nsresult (*GetSharedFolders)(IMachine *pThis, PRUint32 *sharedFoldersSize, ISharedFolder * **sharedFolders); + + nsresult (*GetClipboardMode)(IMachine *pThis, PRUint32 *clipboardMode); + nsresult (*SetClipboardMode)(IMachine *pThis, PRUint32 clipboardMode); + + nsresult (*GetClipboardFileTransfersEnabled)(IMachine *pThis, PRBool *clipboardFileTransfersEnabled); + nsresult (*SetClipboardFileTransfersEnabled)(IMachine *pThis, PRBool clipboardFileTransfersEnabled); + + nsresult (*GetDnDMode)(IMachine *pThis, PRUint32 *dnDMode); + nsresult (*SetDnDMode)(IMachine *pThis, PRUint32 dnDMode); + + nsresult (*GetTeleporterEnabled)(IMachine *pThis, PRBool *teleporterEnabled); + nsresult (*SetTeleporterEnabled)(IMachine *pThis, PRBool teleporterEnabled); + + nsresult (*GetTeleporterPort)(IMachine *pThis, PRUint32 *teleporterPort); + nsresult (*SetTeleporterPort)(IMachine *pThis, PRUint32 teleporterPort); + + nsresult (*GetTeleporterAddress)(IMachine *pThis, PRUnichar * *teleporterAddress); + nsresult (*SetTeleporterAddress)(IMachine *pThis, PRUnichar * teleporterAddress); + + nsresult (*GetTeleporterPassword)(IMachine *pThis, PRUnichar * *teleporterPassword); + nsresult (*SetTeleporterPassword)(IMachine *pThis, PRUnichar * teleporterPassword); + + nsresult (*GetParavirtProvider)(IMachine *pThis, PRUint32 *paravirtProvider); + nsresult (*SetParavirtProvider)(IMachine *pThis, PRUint32 paravirtProvider); + + nsresult (*GetRTCUseUTC)(IMachine *pThis, PRBool *RTCUseUTC); + nsresult (*SetRTCUseUTC)(IMachine *pThis, PRBool RTCUseUTC); + + nsresult (*GetIOCacheEnabled)(IMachine *pThis, PRBool *IOCacheEnabled); + nsresult (*SetIOCacheEnabled)(IMachine *pThis, PRBool IOCacheEnabled); + + nsresult (*GetIOCacheSize)(IMachine *pThis, PRUint32 *IOCacheSize); + nsresult (*SetIOCacheSize)(IMachine *pThis, PRUint32 IOCacheSize); + + nsresult (*GetPCIDeviceAssignments)(IMachine *pThis, PRUint32 *PCIDeviceAssignmentsSize, IPCIDeviceAttachment * **PCIDeviceAssignments); + + nsresult (*GetBandwidthControl)(IMachine *pThis, IBandwidthControl * *bandwidthControl); + + nsresult (*GetTracingEnabled)(IMachine *pThis, PRBool *tracingEnabled); + nsresult (*SetTracingEnabled)(IMachine *pThis, PRBool tracingEnabled); + + nsresult (*GetTracingConfig)(IMachine *pThis, PRUnichar * *tracingConfig); + nsresult (*SetTracingConfig)(IMachine *pThis, PRUnichar * tracingConfig); + + nsresult (*GetAllowTracingToAccessVM)(IMachine *pThis, PRBool *allowTracingToAccessVM); + nsresult (*SetAllowTracingToAccessVM)(IMachine *pThis, PRBool allowTracingToAccessVM); + + nsresult (*GetAutostartEnabled)(IMachine *pThis, PRBool *autostartEnabled); + nsresult (*SetAutostartEnabled)(IMachine *pThis, PRBool autostartEnabled); + + nsresult (*GetAutostartDelay)(IMachine *pThis, PRUint32 *autostartDelay); + nsresult (*SetAutostartDelay)(IMachine *pThis, PRUint32 autostartDelay); + + nsresult (*GetAutostopType)(IMachine *pThis, PRUint32 *autostopType); + nsresult (*SetAutostopType)(IMachine *pThis, PRUint32 autostopType); + + nsresult (*GetDefaultFrontend)(IMachine *pThis, PRUnichar * *defaultFrontend); + nsresult (*SetDefaultFrontend)(IMachine *pThis, PRUnichar * defaultFrontend); + + nsresult (*GetUSBProxyAvailable)(IMachine *pThis, PRBool *USBProxyAvailable); + + nsresult (*GetVMProcessPriority)(IMachine *pThis, PRUint32 *VMProcessPriority); + nsresult (*SetVMProcessPriority)(IMachine *pThis, PRUint32 VMProcessPriority); + + nsresult (*GetParavirtDebug)(IMachine *pThis, PRUnichar * *paravirtDebug); + nsresult (*SetParavirtDebug)(IMachine *pThis, PRUnichar * paravirtDebug); + + nsresult (*GetCPUProfile)(IMachine *pThis, PRUnichar * *CPUProfile); + nsresult (*SetCPUProfile)(IMachine *pThis, PRUnichar * CPUProfile); + + nsresult (*GetInternalAndReservedAttribute1IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*LockMachine)( + IMachine *pThis, + ISession * session, + PRUint32 lockType + ); + + nsresult (*LaunchVMProcess)( + IMachine *pThis, + ISession * session, + PRUnichar * name, + PRUint32 environmentChangesSize, + PRUnichar ** environmentChanges, + IProgress * * progress + ); + + nsresult (*SetBootOrder)( + IMachine *pThis, + PRUint32 position, + PRUint32 device + ); + + nsresult (*GetBootOrder)( + IMachine *pThis, + PRUint32 position, + PRUint32 * device + ); + + nsresult (*AttachDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRUint32 type, + IMedium * medium + ); + + nsresult (*AttachDeviceWithoutMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRUint32 type + ); + + nsresult (*DetachDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device + ); + + nsresult (*PassthroughDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool passthrough + ); + + nsresult (*TemporaryEjectDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool temporaryEject + ); + + nsresult (*NonRotationalDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool nonRotational + ); + + nsresult (*SetAutoDiscardForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool discard + ); + + nsresult (*SetHotPluggableForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool hotPluggable + ); + + nsresult (*SetBandwidthGroupForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IBandwidthGroup * bandwidthGroup + ); + + nsresult (*SetNoBandwidthGroupForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device + ); + + nsresult (*UnmountMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool force + ); + + nsresult (*MountMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IMedium * medium, + PRBool force + ); + + nsresult (*GetMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IMedium * * medium + ); + + nsresult (*GetMediumAttachmentsOfController)( + IMachine *pThis, + PRUnichar * name, + PRUint32 *mediumAttachmentsSize, + IMediumAttachment *** mediumAttachments + ); + + nsresult (*GetMediumAttachment)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IMediumAttachment * * attachment + ); + + nsresult (*AttachHostPCIDevice)( + IMachine *pThis, + PRInt32 hostAddress, + PRInt32 desiredGuestAddress, + PRBool tryToUnbind + ); + + nsresult (*DetachHostPCIDevice)( + IMachine *pThis, + PRInt32 hostAddress + ); + + nsresult (*GetNetworkAdapter)( + IMachine *pThis, + PRUint32 slot, + INetworkAdapter * * adapter + ); + + nsresult (*AddStorageController)( + IMachine *pThis, + PRUnichar * name, + PRUint32 connectionType, + IStorageController * * controller + ); + + nsresult (*GetStorageControllerByName)( + IMachine *pThis, + PRUnichar * name, + IStorageController * * storageController + ); + + nsresult (*GetStorageControllerByInstance)( + IMachine *pThis, + PRUint32 connectionType, + PRUint32 instance, + IStorageController * * storageController + ); + + nsresult (*RemoveStorageController)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*SetStorageControllerBootable)( + IMachine *pThis, + PRUnichar * name, + PRBool bootable + ); + + nsresult (*AddUSBController)( + IMachine *pThis, + PRUnichar * name, + PRUint32 type, + IUSBController * * controller + ); + + nsresult (*RemoveUSBController)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*GetUSBControllerByName)( + IMachine *pThis, + PRUnichar * name, + IUSBController * * controller + ); + + nsresult (*GetUSBControllerCountByType)( + IMachine *pThis, + PRUint32 type, + PRUint32 * controllers + ); + + nsresult (*GetSerialPort)( + IMachine *pThis, + PRUint32 slot, + ISerialPort * * port + ); + + nsresult (*GetParallelPort)( + IMachine *pThis, + PRUint32 slot, + IParallelPort * * port + ); + + nsresult (*GetExtraDataKeys)( + IMachine *pThis, + PRUint32 *keysSize, + PRUnichar *** keys + ); + + nsresult (*GetExtraData)( + IMachine *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*SetExtraData)( + IMachine *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetCPUProperty)( + IMachine *pThis, + PRUint32 property, + PRBool * value + ); + + nsresult (*SetCPUProperty)( + IMachine *pThis, + PRUint32 property, + PRBool value + ); + + nsresult (*GetCPUIDLeafByOrdinal)( + IMachine *pThis, + PRUint32 ordinal, + PRUint32 * idx, + PRUint32 * idxSub, + PRUint32 * valEax, + PRUint32 * valEbx, + PRUint32 * valEcx, + PRUint32 * valEdx + ); + + nsresult (*GetCPUIDLeaf)( + IMachine *pThis, + PRUint32 idx, + PRUint32 idxSub, + PRUint32 * valEax, + PRUint32 * valEbx, + PRUint32 * valEcx, + PRUint32 * valEdx + ); + + nsresult (*SetCPUIDLeaf)( + IMachine *pThis, + PRUint32 idx, + PRUint32 idxSub, + PRUint32 valEax, + PRUint32 valEbx, + PRUint32 valEcx, + PRUint32 valEdx + ); + + nsresult (*RemoveCPUIDLeaf)( + IMachine *pThis, + PRUint32 idx, + PRUint32 idxSub + ); + + nsresult (*RemoveAllCPUIDLeaves)(IMachine *pThis ); + + nsresult (*GetHWVirtExProperty)( + IMachine *pThis, + PRUint32 property, + PRBool * value + ); + + nsresult (*SetHWVirtExProperty)( + IMachine *pThis, + PRUint32 property, + PRBool value + ); + + nsresult (*SetSettingsFilePath)( + IMachine *pThis, + PRUnichar * settingsFilePath, + IProgress * * progress + ); + + nsresult (*SaveSettings)(IMachine *pThis ); + + nsresult (*DiscardSettings)(IMachine *pThis ); + + nsresult (*Unregister)( + IMachine *pThis, + PRUint32 cleanupMode, + PRUint32 *mediaSize, + IMedium *** media + ); + + nsresult (*DeleteConfig)( + IMachine *pThis, + PRUint32 mediaSize, + IMedium ** media, + IProgress * * progress + ); + + nsresult (*ExportTo)( + IMachine *pThis, + IAppliance * appliance, + PRUnichar * location, + IVirtualSystemDescription * * description + ); + + nsresult (*FindSnapshot)( + IMachine *pThis, + PRUnichar * nameOrId, + ISnapshot * * snapshot + ); + + nsresult (*CreateSharedFolder)( + IMachine *pThis, + PRUnichar * name, + PRUnichar * hostPath, + PRBool writable, + PRBool automount, + PRUnichar * autoMountPoint + ); + + nsresult (*RemoveSharedFolder)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*CanShowConsoleWindow)( + IMachine *pThis, + PRBool * canShow + ); + + nsresult (*ShowConsoleWindow)( + IMachine *pThis, + PRInt64 * winId + ); + + nsresult (*GetGuestProperty)( + IMachine *pThis, + PRUnichar * name, + PRUnichar * * value, + PRInt64 * timestamp, + PRUnichar * * flags + ); + + nsresult (*GetGuestPropertyValue)( + IMachine *pThis, + PRUnichar * property, + PRUnichar * * value + ); + + nsresult (*GetGuestPropertyTimestamp)( + IMachine *pThis, + PRUnichar * property, + PRInt64 * value + ); + + nsresult (*SetGuestProperty)( + IMachine *pThis, + PRUnichar * property, + PRUnichar * value, + PRUnichar * flags + ); + + nsresult (*SetGuestPropertyValue)( + IMachine *pThis, + PRUnichar * property, + PRUnichar * value + ); + + nsresult (*DeleteGuestProperty)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*EnumerateGuestProperties)( + IMachine *pThis, + PRUnichar * patterns, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *valuesSize, + PRUnichar *** values, + PRUint32 *timestampsSize, + PRInt64** timestamps, + PRUint32 *flagsSize, + PRUnichar *** flags + ); + + nsresult (*QuerySavedGuestScreenInfo)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 * originX, + PRUint32 * originY, + PRUint32 * width, + PRUint32 * height, + PRBool * enabled + ); + + nsresult (*ReadSavedThumbnailToArray)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 bitmapFormat, + PRUint32 * width, + PRUint32 * height, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*QuerySavedScreenshotInfo)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 * width, + PRUint32 * height, + PRUint32 *bitmapFormatsSize, + PRUint32** bitmapFormats + ); + + nsresult (*ReadSavedScreenshotToArray)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 bitmapFormat, + PRUint32 * width, + PRUint32 * height, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*HotPlugCPU)( + IMachine *pThis, + PRUint32 cpu + ); + + nsresult (*HotUnplugCPU)( + IMachine *pThis, + PRUint32 cpu + ); + + nsresult (*GetCPUStatus)( + IMachine *pThis, + PRUint32 cpu, + PRBool * attached + ); + + nsresult (*GetEffectiveParavirtProvider)( + IMachine *pThis, + PRUint32 * paravirtProvider + ); + + nsresult (*QueryLogFilename)( + IMachine *pThis, + PRUint32 idx, + PRUnichar * * filename + ); + + nsresult (*ReadLog)( + IMachine *pThis, + PRUint32 idx, + PRInt64 offset, + PRInt64 size, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*CloneTo)( + IMachine *pThis, + IMachine * target, + PRUint32 mode, + PRUint32 optionsSize, + PRUint32* options, + IProgress * * progress + ); + + nsresult (*MoveTo)( + IMachine *pThis, + PRUnichar * folder, + PRUnichar * type, + IProgress * * progress + ); + + nsresult (*SaveState)( + IMachine *pThis, + IProgress * * progress + ); + + nsresult (*AdoptSavedState)( + IMachine *pThis, + PRUnichar * savedStateFile + ); + + nsresult (*DiscardSavedState)( + IMachine *pThis, + PRBool fRemoveFile + ); + + nsresult (*TakeSnapshot)( + IMachine *pThis, + PRUnichar * name, + PRUnichar * description, + PRBool pause, + PRUnichar * * id, + IProgress * * progress + ); + + nsresult (*DeleteSnapshot)( + IMachine *pThis, + PRUnichar * id, + IProgress * * progress + ); + + nsresult (*DeleteSnapshotAndAllChildren)( + IMachine *pThis, + PRUnichar * id, + IProgress * * progress + ); + + nsresult (*DeleteSnapshotRange)( + IMachine *pThis, + PRUnichar * startId, + PRUnichar * endId, + IProgress * * progress + ); + + nsresult (*RestoreSnapshot)( + IMachine *pThis, + ISnapshot * snapshot, + IProgress * * progress + ); + + nsresult (*ApplyDefaults)( + IMachine *pThis, + PRUnichar * flags + ); + + nsresult (*InternalAndReservedMethod1IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod2IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod3IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod4IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod5IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod6IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod7IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod8IMachine)(IMachine *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMachineVtbl +{ + nsresult (*QueryInterface)(IMachine *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMachine *pThis); + nsrefcnt (*Release)(IMachine *pThis); + nsresult (*GetParent)(IMachine *pThis, IVirtualBox * *parent); + + nsresult (*GetIcon)(IMachine *pThis, PRUint32 *iconSize, PRUint8 **icon); + nsresult (*SetIcon)(IMachine *pThis, PRUint32 iconSize, PRUint8 *icon); + + nsresult (*GetAccessible)(IMachine *pThis, PRBool *accessible); + + nsresult (*GetAccessError)(IMachine *pThis, IVirtualBoxErrorInfo * *accessError); + + nsresult (*GetName)(IMachine *pThis, PRUnichar * *name); + nsresult (*SetName)(IMachine *pThis, PRUnichar * name); + + nsresult (*GetDescription)(IMachine *pThis, PRUnichar * *description); + nsresult (*SetDescription)(IMachine *pThis, PRUnichar * description); + + nsresult (*GetId)(IMachine *pThis, PRUnichar * *id); + + nsresult (*GetGroups)(IMachine *pThis, PRUint32 *groupsSize, PRUnichar * **groups); + nsresult (*SetGroups)(IMachine *pThis, PRUint32 groupsSize, PRUnichar * *groups); + + nsresult (*GetOSTypeId)(IMachine *pThis, PRUnichar * *OSTypeId); + nsresult (*SetOSTypeId)(IMachine *pThis, PRUnichar * OSTypeId); + + nsresult (*GetHardwareVersion)(IMachine *pThis, PRUnichar * *hardwareVersion); + nsresult (*SetHardwareVersion)(IMachine *pThis, PRUnichar * hardwareVersion); + + nsresult (*GetHardwareUUID)(IMachine *pThis, PRUnichar * *hardwareUUID); + nsresult (*SetHardwareUUID)(IMachine *pThis, PRUnichar * hardwareUUID); + + nsresult (*GetCPUCount)(IMachine *pThis, PRUint32 *CPUCount); + nsresult (*SetCPUCount)(IMachine *pThis, PRUint32 CPUCount); + + nsresult (*GetCPUHotPlugEnabled)(IMachine *pThis, PRBool *CPUHotPlugEnabled); + nsresult (*SetCPUHotPlugEnabled)(IMachine *pThis, PRBool CPUHotPlugEnabled); + + nsresult (*GetCPUExecutionCap)(IMachine *pThis, PRUint32 *CPUExecutionCap); + nsresult (*SetCPUExecutionCap)(IMachine *pThis, PRUint32 CPUExecutionCap); + + nsresult (*GetCPUIDPortabilityLevel)(IMachine *pThis, PRUint32 *CPUIDPortabilityLevel); + nsresult (*SetCPUIDPortabilityLevel)(IMachine *pThis, PRUint32 CPUIDPortabilityLevel); + + nsresult (*GetMemorySize)(IMachine *pThis, PRUint32 *memorySize); + nsresult (*SetMemorySize)(IMachine *pThis, PRUint32 memorySize); + + nsresult (*GetMemoryBalloonSize)(IMachine *pThis, PRUint32 *memoryBalloonSize); + nsresult (*SetMemoryBalloonSize)(IMachine *pThis, PRUint32 memoryBalloonSize); + + nsresult (*GetPageFusionEnabled)(IMachine *pThis, PRBool *pageFusionEnabled); + nsresult (*SetPageFusionEnabled)(IMachine *pThis, PRBool pageFusionEnabled); + + nsresult (*GetGraphicsAdapter)(IMachine *pThis, IGraphicsAdapter * *graphicsAdapter); + + nsresult (*GetBIOSSettings)(IMachine *pThis, IBIOSSettings * *BIOSSettings); + + nsresult (*GetRecordingSettings)(IMachine *pThis, IRecordingSettings * *recordingSettings); + + nsresult (*GetFirmwareType)(IMachine *pThis, PRUint32 *firmwareType); + nsresult (*SetFirmwareType)(IMachine *pThis, PRUint32 firmwareType); + + nsresult (*GetPointingHIDType)(IMachine *pThis, PRUint32 *pointingHIDType); + nsresult (*SetPointingHIDType)(IMachine *pThis, PRUint32 pointingHIDType); + + nsresult (*GetKeyboardHIDType)(IMachine *pThis, PRUint32 *keyboardHIDType); + nsresult (*SetKeyboardHIDType)(IMachine *pThis, PRUint32 keyboardHIDType); + + nsresult (*GetHPETEnabled)(IMachine *pThis, PRBool *HPETEnabled); + nsresult (*SetHPETEnabled)(IMachine *pThis, PRBool HPETEnabled); + + nsresult (*GetChipsetType)(IMachine *pThis, PRUint32 *chipsetType); + nsresult (*SetChipsetType)(IMachine *pThis, PRUint32 chipsetType); + + nsresult (*GetSnapshotFolder)(IMachine *pThis, PRUnichar * *snapshotFolder); + nsresult (*SetSnapshotFolder)(IMachine *pThis, PRUnichar * snapshotFolder); + + nsresult (*GetVRDEServer)(IMachine *pThis, IVRDEServer * *VRDEServer); + + nsresult (*GetEmulatedUSBCardReaderEnabled)(IMachine *pThis, PRBool *emulatedUSBCardReaderEnabled); + nsresult (*SetEmulatedUSBCardReaderEnabled)(IMachine *pThis, PRBool emulatedUSBCardReaderEnabled); + + nsresult (*GetMediumAttachments)(IMachine *pThis, PRUint32 *mediumAttachmentsSize, IMediumAttachment * **mediumAttachments); + + nsresult (*GetUSBControllers)(IMachine *pThis, PRUint32 *USBControllersSize, IUSBController * **USBControllers); + + nsresult (*GetUSBDeviceFilters)(IMachine *pThis, IUSBDeviceFilters * *USBDeviceFilters); + + nsresult (*GetAudioAdapter)(IMachine *pThis, IAudioAdapter * *audioAdapter); + + nsresult (*GetStorageControllers)(IMachine *pThis, PRUint32 *storageControllersSize, IStorageController * **storageControllers); + + nsresult (*GetSettingsFilePath)(IMachine *pThis, PRUnichar * *settingsFilePath); + + nsresult (*GetSettingsAuxFilePath)(IMachine *pThis, PRUnichar * *settingsAuxFilePath); + + nsresult (*GetSettingsModified)(IMachine *pThis, PRBool *settingsModified); + + nsresult (*GetSessionState)(IMachine *pThis, PRUint32 *sessionState); + + nsresult (*GetSessionName)(IMachine *pThis, PRUnichar * *sessionName); + + nsresult (*GetSessionPID)(IMachine *pThis, PRUint32 *sessionPID); + + nsresult (*GetState)(IMachine *pThis, PRUint32 *state); + + nsresult (*GetLastStateChange)(IMachine *pThis, PRInt64 *lastStateChange); + + nsresult (*GetStateFilePath)(IMachine *pThis, PRUnichar * *stateFilePath); + + nsresult (*GetLogFolder)(IMachine *pThis, PRUnichar * *logFolder); + + nsresult (*GetCurrentSnapshot)(IMachine *pThis, ISnapshot * *currentSnapshot); + + nsresult (*GetSnapshotCount)(IMachine *pThis, PRUint32 *snapshotCount); + + nsresult (*GetCurrentStateModified)(IMachine *pThis, PRBool *currentStateModified); + + nsresult (*GetSharedFolders)(IMachine *pThis, PRUint32 *sharedFoldersSize, ISharedFolder * **sharedFolders); + + nsresult (*GetClipboardMode)(IMachine *pThis, PRUint32 *clipboardMode); + nsresult (*SetClipboardMode)(IMachine *pThis, PRUint32 clipboardMode); + + nsresult (*GetClipboardFileTransfersEnabled)(IMachine *pThis, PRBool *clipboardFileTransfersEnabled); + nsresult (*SetClipboardFileTransfersEnabled)(IMachine *pThis, PRBool clipboardFileTransfersEnabled); + + nsresult (*GetDnDMode)(IMachine *pThis, PRUint32 *dnDMode); + nsresult (*SetDnDMode)(IMachine *pThis, PRUint32 dnDMode); + + nsresult (*GetTeleporterEnabled)(IMachine *pThis, PRBool *teleporterEnabled); + nsresult (*SetTeleporterEnabled)(IMachine *pThis, PRBool teleporterEnabled); + + nsresult (*GetTeleporterPort)(IMachine *pThis, PRUint32 *teleporterPort); + nsresult (*SetTeleporterPort)(IMachine *pThis, PRUint32 teleporterPort); + + nsresult (*GetTeleporterAddress)(IMachine *pThis, PRUnichar * *teleporterAddress); + nsresult (*SetTeleporterAddress)(IMachine *pThis, PRUnichar * teleporterAddress); + + nsresult (*GetTeleporterPassword)(IMachine *pThis, PRUnichar * *teleporterPassword); + nsresult (*SetTeleporterPassword)(IMachine *pThis, PRUnichar * teleporterPassword); + + nsresult (*GetParavirtProvider)(IMachine *pThis, PRUint32 *paravirtProvider); + nsresult (*SetParavirtProvider)(IMachine *pThis, PRUint32 paravirtProvider); + + nsresult (*GetRTCUseUTC)(IMachine *pThis, PRBool *RTCUseUTC); + nsresult (*SetRTCUseUTC)(IMachine *pThis, PRBool RTCUseUTC); + + nsresult (*GetIOCacheEnabled)(IMachine *pThis, PRBool *IOCacheEnabled); + nsresult (*SetIOCacheEnabled)(IMachine *pThis, PRBool IOCacheEnabled); + + nsresult (*GetIOCacheSize)(IMachine *pThis, PRUint32 *IOCacheSize); + nsresult (*SetIOCacheSize)(IMachine *pThis, PRUint32 IOCacheSize); + + nsresult (*GetPCIDeviceAssignments)(IMachine *pThis, PRUint32 *PCIDeviceAssignmentsSize, IPCIDeviceAttachment * **PCIDeviceAssignments); + + nsresult (*GetBandwidthControl)(IMachine *pThis, IBandwidthControl * *bandwidthControl); + + nsresult (*GetTracingEnabled)(IMachine *pThis, PRBool *tracingEnabled); + nsresult (*SetTracingEnabled)(IMachine *pThis, PRBool tracingEnabled); + + nsresult (*GetTracingConfig)(IMachine *pThis, PRUnichar * *tracingConfig); + nsresult (*SetTracingConfig)(IMachine *pThis, PRUnichar * tracingConfig); + + nsresult (*GetAllowTracingToAccessVM)(IMachine *pThis, PRBool *allowTracingToAccessVM); + nsresult (*SetAllowTracingToAccessVM)(IMachine *pThis, PRBool allowTracingToAccessVM); + + nsresult (*GetAutostartEnabled)(IMachine *pThis, PRBool *autostartEnabled); + nsresult (*SetAutostartEnabled)(IMachine *pThis, PRBool autostartEnabled); + + nsresult (*GetAutostartDelay)(IMachine *pThis, PRUint32 *autostartDelay); + nsresult (*SetAutostartDelay)(IMachine *pThis, PRUint32 autostartDelay); + + nsresult (*GetAutostopType)(IMachine *pThis, PRUint32 *autostopType); + nsresult (*SetAutostopType)(IMachine *pThis, PRUint32 autostopType); + + nsresult (*GetDefaultFrontend)(IMachine *pThis, PRUnichar * *defaultFrontend); + nsresult (*SetDefaultFrontend)(IMachine *pThis, PRUnichar * defaultFrontend); + + nsresult (*GetUSBProxyAvailable)(IMachine *pThis, PRBool *USBProxyAvailable); + + nsresult (*GetVMProcessPriority)(IMachine *pThis, PRUint32 *VMProcessPriority); + nsresult (*SetVMProcessPriority)(IMachine *pThis, PRUint32 VMProcessPriority); + + nsresult (*GetParavirtDebug)(IMachine *pThis, PRUnichar * *paravirtDebug); + nsresult (*SetParavirtDebug)(IMachine *pThis, PRUnichar * paravirtDebug); + + nsresult (*GetCPUProfile)(IMachine *pThis, PRUnichar * *CPUProfile); + nsresult (*SetCPUProfile)(IMachine *pThis, PRUnichar * CPUProfile); + + nsresult (*GetInternalAndReservedAttribute1IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IMachine)(IMachine *pThis, PRUint32 *reserved); + + nsresult (*LockMachine)( + IMachine *pThis, + ISession * session, + PRUint32 lockType + ); + + nsresult (*LaunchVMProcess)( + IMachine *pThis, + ISession * session, + PRUnichar * name, + PRUint32 environmentChangesSize, + PRUnichar ** environmentChanges, + IProgress * * progress + ); + + nsresult (*SetBootOrder)( + IMachine *pThis, + PRUint32 position, + PRUint32 device + ); + + nsresult (*GetBootOrder)( + IMachine *pThis, + PRUint32 position, + PRUint32 * device + ); + + nsresult (*AttachDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRUint32 type, + IMedium * medium + ); + + nsresult (*AttachDeviceWithoutMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRUint32 type + ); + + nsresult (*DetachDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device + ); + + nsresult (*PassthroughDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool passthrough + ); + + nsresult (*TemporaryEjectDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool temporaryEject + ); + + nsresult (*NonRotationalDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool nonRotational + ); + + nsresult (*SetAutoDiscardForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool discard + ); + + nsresult (*SetHotPluggableForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool hotPluggable + ); + + nsresult (*SetBandwidthGroupForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IBandwidthGroup * bandwidthGroup + ); + + nsresult (*SetNoBandwidthGroupForDevice)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device + ); + + nsresult (*UnmountMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + PRBool force + ); + + nsresult (*MountMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IMedium * medium, + PRBool force + ); + + nsresult (*GetMedium)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IMedium * * medium + ); + + nsresult (*GetMediumAttachmentsOfController)( + IMachine *pThis, + PRUnichar * name, + PRUint32 *mediumAttachmentsSize, + IMediumAttachment *** mediumAttachments + ); + + nsresult (*GetMediumAttachment)( + IMachine *pThis, + PRUnichar * name, + PRInt32 controllerPort, + PRInt32 device, + IMediumAttachment * * attachment + ); + + nsresult (*AttachHostPCIDevice)( + IMachine *pThis, + PRInt32 hostAddress, + PRInt32 desiredGuestAddress, + PRBool tryToUnbind + ); + + nsresult (*DetachHostPCIDevice)( + IMachine *pThis, + PRInt32 hostAddress + ); + + nsresult (*GetNetworkAdapter)( + IMachine *pThis, + PRUint32 slot, + INetworkAdapter * * adapter + ); + + nsresult (*AddStorageController)( + IMachine *pThis, + PRUnichar * name, + PRUint32 connectionType, + IStorageController * * controller + ); + + nsresult (*GetStorageControllerByName)( + IMachine *pThis, + PRUnichar * name, + IStorageController * * storageController + ); + + nsresult (*GetStorageControllerByInstance)( + IMachine *pThis, + PRUint32 connectionType, + PRUint32 instance, + IStorageController * * storageController + ); + + nsresult (*RemoveStorageController)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*SetStorageControllerBootable)( + IMachine *pThis, + PRUnichar * name, + PRBool bootable + ); + + nsresult (*AddUSBController)( + IMachine *pThis, + PRUnichar * name, + PRUint32 type, + IUSBController * * controller + ); + + nsresult (*RemoveUSBController)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*GetUSBControllerByName)( + IMachine *pThis, + PRUnichar * name, + IUSBController * * controller + ); + + nsresult (*GetUSBControllerCountByType)( + IMachine *pThis, + PRUint32 type, + PRUint32 * controllers + ); + + nsresult (*GetSerialPort)( + IMachine *pThis, + PRUint32 slot, + ISerialPort * * port + ); + + nsresult (*GetParallelPort)( + IMachine *pThis, + PRUint32 slot, + IParallelPort * * port + ); + + nsresult (*GetExtraDataKeys)( + IMachine *pThis, + PRUint32 *keysSize, + PRUnichar *** keys + ); + + nsresult (*GetExtraData)( + IMachine *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*SetExtraData)( + IMachine *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetCPUProperty)( + IMachine *pThis, + PRUint32 property, + PRBool * value + ); + + nsresult (*SetCPUProperty)( + IMachine *pThis, + PRUint32 property, + PRBool value + ); + + nsresult (*GetCPUIDLeafByOrdinal)( + IMachine *pThis, + PRUint32 ordinal, + PRUint32 * idx, + PRUint32 * idxSub, + PRUint32 * valEax, + PRUint32 * valEbx, + PRUint32 * valEcx, + PRUint32 * valEdx + ); + + nsresult (*GetCPUIDLeaf)( + IMachine *pThis, + PRUint32 idx, + PRUint32 idxSub, + PRUint32 * valEax, + PRUint32 * valEbx, + PRUint32 * valEcx, + PRUint32 * valEdx + ); + + nsresult (*SetCPUIDLeaf)( + IMachine *pThis, + PRUint32 idx, + PRUint32 idxSub, + PRUint32 valEax, + PRUint32 valEbx, + PRUint32 valEcx, + PRUint32 valEdx + ); + + nsresult (*RemoveCPUIDLeaf)( + IMachine *pThis, + PRUint32 idx, + PRUint32 idxSub + ); + + nsresult (*RemoveAllCPUIDLeaves)(IMachine *pThis ); + + nsresult (*GetHWVirtExProperty)( + IMachine *pThis, + PRUint32 property, + PRBool * value + ); + + nsresult (*SetHWVirtExProperty)( + IMachine *pThis, + PRUint32 property, + PRBool value + ); + + nsresult (*SetSettingsFilePath)( + IMachine *pThis, + PRUnichar * settingsFilePath, + IProgress * * progress + ); + + nsresult (*SaveSettings)(IMachine *pThis ); + + nsresult (*DiscardSettings)(IMachine *pThis ); + + nsresult (*Unregister)( + IMachine *pThis, + PRUint32 cleanupMode, + PRUint32 *mediaSize, + IMedium *** media + ); + + nsresult (*DeleteConfig)( + IMachine *pThis, + PRUint32 mediaSize, + IMedium ** media, + IProgress * * progress + ); + + nsresult (*ExportTo)( + IMachine *pThis, + IAppliance * appliance, + PRUnichar * location, + IVirtualSystemDescription * * description + ); + + nsresult (*FindSnapshot)( + IMachine *pThis, + PRUnichar * nameOrId, + ISnapshot * * snapshot + ); + + nsresult (*CreateSharedFolder)( + IMachine *pThis, + PRUnichar * name, + PRUnichar * hostPath, + PRBool writable, + PRBool automount, + PRUnichar * autoMountPoint + ); + + nsresult (*RemoveSharedFolder)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*CanShowConsoleWindow)( + IMachine *pThis, + PRBool * canShow + ); + + nsresult (*ShowConsoleWindow)( + IMachine *pThis, + PRInt64 * winId + ); + + nsresult (*GetGuestProperty)( + IMachine *pThis, + PRUnichar * name, + PRUnichar * * value, + PRInt64 * timestamp, + PRUnichar * * flags + ); + + nsresult (*GetGuestPropertyValue)( + IMachine *pThis, + PRUnichar * property, + PRUnichar * * value + ); + + nsresult (*GetGuestPropertyTimestamp)( + IMachine *pThis, + PRUnichar * property, + PRInt64 * value + ); + + nsresult (*SetGuestProperty)( + IMachine *pThis, + PRUnichar * property, + PRUnichar * value, + PRUnichar * flags + ); + + nsresult (*SetGuestPropertyValue)( + IMachine *pThis, + PRUnichar * property, + PRUnichar * value + ); + + nsresult (*DeleteGuestProperty)( + IMachine *pThis, + PRUnichar * name + ); + + nsresult (*EnumerateGuestProperties)( + IMachine *pThis, + PRUnichar * patterns, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *valuesSize, + PRUnichar *** values, + PRUint32 *timestampsSize, + PRInt64** timestamps, + PRUint32 *flagsSize, + PRUnichar *** flags + ); + + nsresult (*QuerySavedGuestScreenInfo)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 * originX, + PRUint32 * originY, + PRUint32 * width, + PRUint32 * height, + PRBool * enabled + ); + + nsresult (*ReadSavedThumbnailToArray)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 bitmapFormat, + PRUint32 * width, + PRUint32 * height, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*QuerySavedScreenshotInfo)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 * width, + PRUint32 * height, + PRUint32 *bitmapFormatsSize, + PRUint32** bitmapFormats + ); + + nsresult (*ReadSavedScreenshotToArray)( + IMachine *pThis, + PRUint32 screenId, + PRUint32 bitmapFormat, + PRUint32 * width, + PRUint32 * height, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*HotPlugCPU)( + IMachine *pThis, + PRUint32 cpu + ); + + nsresult (*HotUnplugCPU)( + IMachine *pThis, + PRUint32 cpu + ); + + nsresult (*GetCPUStatus)( + IMachine *pThis, + PRUint32 cpu, + PRBool * attached + ); + + nsresult (*GetEffectiveParavirtProvider)( + IMachine *pThis, + PRUint32 * paravirtProvider + ); + + nsresult (*QueryLogFilename)( + IMachine *pThis, + PRUint32 idx, + PRUnichar * * filename + ); + + nsresult (*ReadLog)( + IMachine *pThis, + PRUint32 idx, + PRInt64 offset, + PRInt64 size, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*CloneTo)( + IMachine *pThis, + IMachine * target, + PRUint32 mode, + PRUint32 optionsSize, + PRUint32* options, + IProgress * * progress + ); + + nsresult (*MoveTo)( + IMachine *pThis, + PRUnichar * folder, + PRUnichar * type, + IProgress * * progress + ); + + nsresult (*SaveState)( + IMachine *pThis, + IProgress * * progress + ); + + nsresult (*AdoptSavedState)( + IMachine *pThis, + PRUnichar * savedStateFile + ); + + nsresult (*DiscardSavedState)( + IMachine *pThis, + PRBool fRemoveFile + ); + + nsresult (*TakeSnapshot)( + IMachine *pThis, + PRUnichar * name, + PRUnichar * description, + PRBool pause, + PRUnichar * * id, + IProgress * * progress + ); + + nsresult (*DeleteSnapshot)( + IMachine *pThis, + PRUnichar * id, + IProgress * * progress + ); + + nsresult (*DeleteSnapshotAndAllChildren)( + IMachine *pThis, + PRUnichar * id, + IProgress * * progress + ); + + nsresult (*DeleteSnapshotRange)( + IMachine *pThis, + PRUnichar * startId, + PRUnichar * endId, + IProgress * * progress + ); + + nsresult (*RestoreSnapshot)( + IMachine *pThis, + ISnapshot * snapshot, + IProgress * * progress + ); + + nsresult (*ApplyDefaults)( + IMachine *pThis, + PRUnichar * flags + ); + + nsresult (*InternalAndReservedMethod1IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod2IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod3IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod4IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod5IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod6IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod7IMachine)(IMachine *pThis); + + nsresult (*InternalAndReservedMethod8IMachine)(IMachine *pThis); + +}; +# define IMachine_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMachine_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMachine_Release(p) ((p)->lpVtbl->Release(p)) +# define IMachine_get_Parent(p, aParent) ((p)->lpVtbl->GetParent(p, aParent)) +# define IMachine_GetParent(p, aParent) ((p)->lpVtbl->GetParent(p, aParent)) +# define IMachine_get_Icon(p, aIcon) ((p)->lpVtbl->GetIcon(p, aIcon)) +# define IMachine_GetIcon(p, aIcon) ((p)->lpVtbl->GetIcon(p, aIcon)) +# define IMachine_put_Icon(p, aIcon) ((p)->lpVtbl->SetIcon(p, aIcon)) +# define IMachine_SetIcon(p, aIcon) ((p)->lpVtbl->SetIcon(p, aIcon)) +# define IMachine_get_Accessible(p, aAccessible) ((p)->lpVtbl->GetAccessible(p, aAccessible)) +# define IMachine_GetAccessible(p, aAccessible) ((p)->lpVtbl->GetAccessible(p, aAccessible)) +# define IMachine_get_AccessError(p, aAccessError) ((p)->lpVtbl->GetAccessError(p, aAccessError)) +# define IMachine_GetAccessError(p, aAccessError) ((p)->lpVtbl->GetAccessError(p, aAccessError)) +# define IMachine_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IMachine_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IMachine_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IMachine_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IMachine_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IMachine_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IMachine_put_Description(p, aDescription) ((p)->lpVtbl->SetDescription(p, aDescription)) +# define IMachine_SetDescription(p, aDescription) ((p)->lpVtbl->SetDescription(p, aDescription)) +# define IMachine_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IMachine_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IMachine_get_Groups(p, aGroups) ((p)->lpVtbl->GetGroups(p, aGroups)) +# define IMachine_GetGroups(p, aGroups) ((p)->lpVtbl->GetGroups(p, aGroups)) +# define IMachine_put_Groups(p, aGroups) ((p)->lpVtbl->SetGroups(p, aGroups)) +# define IMachine_SetGroups(p, aGroups) ((p)->lpVtbl->SetGroups(p, aGroups)) +# define IMachine_get_OSTypeId(p, aOSTypeId) ((p)->lpVtbl->GetOSTypeId(p, aOSTypeId)) +# define IMachine_GetOSTypeId(p, aOSTypeId) ((p)->lpVtbl->GetOSTypeId(p, aOSTypeId)) +# define IMachine_put_OSTypeId(p, aOSTypeId) ((p)->lpVtbl->SetOSTypeId(p, aOSTypeId)) +# define IMachine_SetOSTypeId(p, aOSTypeId) ((p)->lpVtbl->SetOSTypeId(p, aOSTypeId)) +# define IMachine_get_HardwareVersion(p, aHardwareVersion) ((p)->lpVtbl->GetHardwareVersion(p, aHardwareVersion)) +# define IMachine_GetHardwareVersion(p, aHardwareVersion) ((p)->lpVtbl->GetHardwareVersion(p, aHardwareVersion)) +# define IMachine_put_HardwareVersion(p, aHardwareVersion) ((p)->lpVtbl->SetHardwareVersion(p, aHardwareVersion)) +# define IMachine_SetHardwareVersion(p, aHardwareVersion) ((p)->lpVtbl->SetHardwareVersion(p, aHardwareVersion)) +# define IMachine_get_HardwareUUID(p, aHardwareUUID) ((p)->lpVtbl->GetHardwareUUID(p, aHardwareUUID)) +# define IMachine_GetHardwareUUID(p, aHardwareUUID) ((p)->lpVtbl->GetHardwareUUID(p, aHardwareUUID)) +# define IMachine_put_HardwareUUID(p, aHardwareUUID) ((p)->lpVtbl->SetHardwareUUID(p, aHardwareUUID)) +# define IMachine_SetHardwareUUID(p, aHardwareUUID) ((p)->lpVtbl->SetHardwareUUID(p, aHardwareUUID)) +# define IMachine_get_CPUCount(p, aCPUCount) ((p)->lpVtbl->GetCPUCount(p, aCPUCount)) +# define IMachine_GetCPUCount(p, aCPUCount) ((p)->lpVtbl->GetCPUCount(p, aCPUCount)) +# define IMachine_put_CPUCount(p, aCPUCount) ((p)->lpVtbl->SetCPUCount(p, aCPUCount)) +# define IMachine_SetCPUCount(p, aCPUCount) ((p)->lpVtbl->SetCPUCount(p, aCPUCount)) +# define IMachine_get_CPUHotPlugEnabled(p, aCPUHotPlugEnabled) ((p)->lpVtbl->GetCPUHotPlugEnabled(p, aCPUHotPlugEnabled)) +# define IMachine_GetCPUHotPlugEnabled(p, aCPUHotPlugEnabled) ((p)->lpVtbl->GetCPUHotPlugEnabled(p, aCPUHotPlugEnabled)) +# define IMachine_put_CPUHotPlugEnabled(p, aCPUHotPlugEnabled) ((p)->lpVtbl->SetCPUHotPlugEnabled(p, aCPUHotPlugEnabled)) +# define IMachine_SetCPUHotPlugEnabled(p, aCPUHotPlugEnabled) ((p)->lpVtbl->SetCPUHotPlugEnabled(p, aCPUHotPlugEnabled)) +# define IMachine_get_CPUExecutionCap(p, aCPUExecutionCap) ((p)->lpVtbl->GetCPUExecutionCap(p, aCPUExecutionCap)) +# define IMachine_GetCPUExecutionCap(p, aCPUExecutionCap) ((p)->lpVtbl->GetCPUExecutionCap(p, aCPUExecutionCap)) +# define IMachine_put_CPUExecutionCap(p, aCPUExecutionCap) ((p)->lpVtbl->SetCPUExecutionCap(p, aCPUExecutionCap)) +# define IMachine_SetCPUExecutionCap(p, aCPUExecutionCap) ((p)->lpVtbl->SetCPUExecutionCap(p, aCPUExecutionCap)) +# define IMachine_get_CPUIDPortabilityLevel(p, aCPUIDPortabilityLevel) ((p)->lpVtbl->GetCPUIDPortabilityLevel(p, aCPUIDPortabilityLevel)) +# define IMachine_GetCPUIDPortabilityLevel(p, aCPUIDPortabilityLevel) ((p)->lpVtbl->GetCPUIDPortabilityLevel(p, aCPUIDPortabilityLevel)) +# define IMachine_put_CPUIDPortabilityLevel(p, aCPUIDPortabilityLevel) ((p)->lpVtbl->SetCPUIDPortabilityLevel(p, aCPUIDPortabilityLevel)) +# define IMachine_SetCPUIDPortabilityLevel(p, aCPUIDPortabilityLevel) ((p)->lpVtbl->SetCPUIDPortabilityLevel(p, aCPUIDPortabilityLevel)) +# define IMachine_get_MemorySize(p, aMemorySize) ((p)->lpVtbl->GetMemorySize(p, aMemorySize)) +# define IMachine_GetMemorySize(p, aMemorySize) ((p)->lpVtbl->GetMemorySize(p, aMemorySize)) +# define IMachine_put_MemorySize(p, aMemorySize) ((p)->lpVtbl->SetMemorySize(p, aMemorySize)) +# define IMachine_SetMemorySize(p, aMemorySize) ((p)->lpVtbl->SetMemorySize(p, aMemorySize)) +# define IMachine_get_MemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->GetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IMachine_GetMemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->GetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IMachine_put_MemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->SetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IMachine_SetMemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->SetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IMachine_get_PageFusionEnabled(p, aPageFusionEnabled) ((p)->lpVtbl->GetPageFusionEnabled(p, aPageFusionEnabled)) +# define IMachine_GetPageFusionEnabled(p, aPageFusionEnabled) ((p)->lpVtbl->GetPageFusionEnabled(p, aPageFusionEnabled)) +# define IMachine_put_PageFusionEnabled(p, aPageFusionEnabled) ((p)->lpVtbl->SetPageFusionEnabled(p, aPageFusionEnabled)) +# define IMachine_SetPageFusionEnabled(p, aPageFusionEnabled) ((p)->lpVtbl->SetPageFusionEnabled(p, aPageFusionEnabled)) +# define IMachine_get_GraphicsAdapter(p, aGraphicsAdapter) ((p)->lpVtbl->GetGraphicsAdapter(p, aGraphicsAdapter)) +# define IMachine_GetGraphicsAdapter(p, aGraphicsAdapter) ((p)->lpVtbl->GetGraphicsAdapter(p, aGraphicsAdapter)) +# define IMachine_get_BIOSSettings(p, aBIOSSettings) ((p)->lpVtbl->GetBIOSSettings(p, aBIOSSettings)) +# define IMachine_GetBIOSSettings(p, aBIOSSettings) ((p)->lpVtbl->GetBIOSSettings(p, aBIOSSettings)) +# define IMachine_get_RecordingSettings(p, aRecordingSettings) ((p)->lpVtbl->GetRecordingSettings(p, aRecordingSettings)) +# define IMachine_GetRecordingSettings(p, aRecordingSettings) ((p)->lpVtbl->GetRecordingSettings(p, aRecordingSettings)) +# define IMachine_get_FirmwareType(p, aFirmwareType) ((p)->lpVtbl->GetFirmwareType(p, aFirmwareType)) +# define IMachine_GetFirmwareType(p, aFirmwareType) ((p)->lpVtbl->GetFirmwareType(p, aFirmwareType)) +# define IMachine_put_FirmwareType(p, aFirmwareType) ((p)->lpVtbl->SetFirmwareType(p, aFirmwareType)) +# define IMachine_SetFirmwareType(p, aFirmwareType) ((p)->lpVtbl->SetFirmwareType(p, aFirmwareType)) +# define IMachine_get_PointingHIDType(p, aPointingHIDType) ((p)->lpVtbl->GetPointingHIDType(p, aPointingHIDType)) +# define IMachine_GetPointingHIDType(p, aPointingHIDType) ((p)->lpVtbl->GetPointingHIDType(p, aPointingHIDType)) +# define IMachine_put_PointingHIDType(p, aPointingHIDType) ((p)->lpVtbl->SetPointingHIDType(p, aPointingHIDType)) +# define IMachine_SetPointingHIDType(p, aPointingHIDType) ((p)->lpVtbl->SetPointingHIDType(p, aPointingHIDType)) +# define IMachine_get_KeyboardHIDType(p, aKeyboardHIDType) ((p)->lpVtbl->GetKeyboardHIDType(p, aKeyboardHIDType)) +# define IMachine_GetKeyboardHIDType(p, aKeyboardHIDType) ((p)->lpVtbl->GetKeyboardHIDType(p, aKeyboardHIDType)) +# define IMachine_put_KeyboardHIDType(p, aKeyboardHIDType) ((p)->lpVtbl->SetKeyboardHIDType(p, aKeyboardHIDType)) +# define IMachine_SetKeyboardHIDType(p, aKeyboardHIDType) ((p)->lpVtbl->SetKeyboardHIDType(p, aKeyboardHIDType)) +# define IMachine_get_HPETEnabled(p, aHPETEnabled) ((p)->lpVtbl->GetHPETEnabled(p, aHPETEnabled)) +# define IMachine_GetHPETEnabled(p, aHPETEnabled) ((p)->lpVtbl->GetHPETEnabled(p, aHPETEnabled)) +# define IMachine_put_HPETEnabled(p, aHPETEnabled) ((p)->lpVtbl->SetHPETEnabled(p, aHPETEnabled)) +# define IMachine_SetHPETEnabled(p, aHPETEnabled) ((p)->lpVtbl->SetHPETEnabled(p, aHPETEnabled)) +# define IMachine_get_ChipsetType(p, aChipsetType) ((p)->lpVtbl->GetChipsetType(p, aChipsetType)) +# define IMachine_GetChipsetType(p, aChipsetType) ((p)->lpVtbl->GetChipsetType(p, aChipsetType)) +# define IMachine_put_ChipsetType(p, aChipsetType) ((p)->lpVtbl->SetChipsetType(p, aChipsetType)) +# define IMachine_SetChipsetType(p, aChipsetType) ((p)->lpVtbl->SetChipsetType(p, aChipsetType)) +# define IMachine_get_SnapshotFolder(p, aSnapshotFolder) ((p)->lpVtbl->GetSnapshotFolder(p, aSnapshotFolder)) +# define IMachine_GetSnapshotFolder(p, aSnapshotFolder) ((p)->lpVtbl->GetSnapshotFolder(p, aSnapshotFolder)) +# define IMachine_put_SnapshotFolder(p, aSnapshotFolder) ((p)->lpVtbl->SetSnapshotFolder(p, aSnapshotFolder)) +# define IMachine_SetSnapshotFolder(p, aSnapshotFolder) ((p)->lpVtbl->SetSnapshotFolder(p, aSnapshotFolder)) +# define IMachine_get_VRDEServer(p, aVRDEServer) ((p)->lpVtbl->GetVRDEServer(p, aVRDEServer)) +# define IMachine_GetVRDEServer(p, aVRDEServer) ((p)->lpVtbl->GetVRDEServer(p, aVRDEServer)) +# define IMachine_get_EmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled) ((p)->lpVtbl->GetEmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled)) +# define IMachine_GetEmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled) ((p)->lpVtbl->GetEmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled)) +# define IMachine_put_EmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled) ((p)->lpVtbl->SetEmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled)) +# define IMachine_SetEmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled) ((p)->lpVtbl->SetEmulatedUSBCardReaderEnabled(p, aEmulatedUSBCardReaderEnabled)) +# define IMachine_get_MediumAttachments(p, aMediumAttachments) ((p)->lpVtbl->GetMediumAttachments(p, aMediumAttachments)) +# define IMachine_GetMediumAttachments(p, aMediumAttachments) ((p)->lpVtbl->GetMediumAttachments(p, aMediumAttachments)) +# define IMachine_get_USBControllers(p, aUSBControllers) ((p)->lpVtbl->GetUSBControllers(p, aUSBControllers)) +# define IMachine_GetUSBControllers(p, aUSBControllers) ((p)->lpVtbl->GetUSBControllers(p, aUSBControllers)) +# define IMachine_get_USBDeviceFilters(p, aUSBDeviceFilters) ((p)->lpVtbl->GetUSBDeviceFilters(p, aUSBDeviceFilters)) +# define IMachine_GetUSBDeviceFilters(p, aUSBDeviceFilters) ((p)->lpVtbl->GetUSBDeviceFilters(p, aUSBDeviceFilters)) +# define IMachine_get_AudioAdapter(p, aAudioAdapter) ((p)->lpVtbl->GetAudioAdapter(p, aAudioAdapter)) +# define IMachine_GetAudioAdapter(p, aAudioAdapter) ((p)->lpVtbl->GetAudioAdapter(p, aAudioAdapter)) +# define IMachine_get_StorageControllers(p, aStorageControllers) ((p)->lpVtbl->GetStorageControllers(p, aStorageControllers)) +# define IMachine_GetStorageControllers(p, aStorageControllers) ((p)->lpVtbl->GetStorageControllers(p, aStorageControllers)) +# define IMachine_get_SettingsFilePath(p, aSettingsFilePath) ((p)->lpVtbl->GetSettingsFilePath(p, aSettingsFilePath)) +# define IMachine_GetSettingsFilePath(p, aSettingsFilePath) ((p)->lpVtbl->GetSettingsFilePath(p, aSettingsFilePath)) +# define IMachine_get_SettingsAuxFilePath(p, aSettingsAuxFilePath) ((p)->lpVtbl->GetSettingsAuxFilePath(p, aSettingsAuxFilePath)) +# define IMachine_GetSettingsAuxFilePath(p, aSettingsAuxFilePath) ((p)->lpVtbl->GetSettingsAuxFilePath(p, aSettingsAuxFilePath)) +# define IMachine_get_SettingsModified(p, aSettingsModified) ((p)->lpVtbl->GetSettingsModified(p, aSettingsModified)) +# define IMachine_GetSettingsModified(p, aSettingsModified) ((p)->lpVtbl->GetSettingsModified(p, aSettingsModified)) +# define IMachine_get_SessionState(p, aSessionState) ((p)->lpVtbl->GetSessionState(p, aSessionState)) +# define IMachine_GetSessionState(p, aSessionState) ((p)->lpVtbl->GetSessionState(p, aSessionState)) +# define IMachine_get_SessionName(p, aSessionName) ((p)->lpVtbl->GetSessionName(p, aSessionName)) +# define IMachine_GetSessionName(p, aSessionName) ((p)->lpVtbl->GetSessionName(p, aSessionName)) +# define IMachine_get_SessionPID(p, aSessionPID) ((p)->lpVtbl->GetSessionPID(p, aSessionPID)) +# define IMachine_GetSessionPID(p, aSessionPID) ((p)->lpVtbl->GetSessionPID(p, aSessionPID)) +# define IMachine_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IMachine_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IMachine_get_LastStateChange(p, aLastStateChange) ((p)->lpVtbl->GetLastStateChange(p, aLastStateChange)) +# define IMachine_GetLastStateChange(p, aLastStateChange) ((p)->lpVtbl->GetLastStateChange(p, aLastStateChange)) +# define IMachine_get_StateFilePath(p, aStateFilePath) ((p)->lpVtbl->GetStateFilePath(p, aStateFilePath)) +# define IMachine_GetStateFilePath(p, aStateFilePath) ((p)->lpVtbl->GetStateFilePath(p, aStateFilePath)) +# define IMachine_get_LogFolder(p, aLogFolder) ((p)->lpVtbl->GetLogFolder(p, aLogFolder)) +# define IMachine_GetLogFolder(p, aLogFolder) ((p)->lpVtbl->GetLogFolder(p, aLogFolder)) +# define IMachine_get_CurrentSnapshot(p, aCurrentSnapshot) ((p)->lpVtbl->GetCurrentSnapshot(p, aCurrentSnapshot)) +# define IMachine_GetCurrentSnapshot(p, aCurrentSnapshot) ((p)->lpVtbl->GetCurrentSnapshot(p, aCurrentSnapshot)) +# define IMachine_get_SnapshotCount(p, aSnapshotCount) ((p)->lpVtbl->GetSnapshotCount(p, aSnapshotCount)) +# define IMachine_GetSnapshotCount(p, aSnapshotCount) ((p)->lpVtbl->GetSnapshotCount(p, aSnapshotCount)) +# define IMachine_get_CurrentStateModified(p, aCurrentStateModified) ((p)->lpVtbl->GetCurrentStateModified(p, aCurrentStateModified)) +# define IMachine_GetCurrentStateModified(p, aCurrentStateModified) ((p)->lpVtbl->GetCurrentStateModified(p, aCurrentStateModified)) +# define IMachine_get_SharedFolders(p, aSharedFolders) ((p)->lpVtbl->GetSharedFolders(p, aSharedFolders)) +# define IMachine_GetSharedFolders(p, aSharedFolders) ((p)->lpVtbl->GetSharedFolders(p, aSharedFolders)) +# define IMachine_get_ClipboardMode(p, aClipboardMode) ((p)->lpVtbl->GetClipboardMode(p, aClipboardMode)) +# define IMachine_GetClipboardMode(p, aClipboardMode) ((p)->lpVtbl->GetClipboardMode(p, aClipboardMode)) +# define IMachine_put_ClipboardMode(p, aClipboardMode) ((p)->lpVtbl->SetClipboardMode(p, aClipboardMode)) +# define IMachine_SetClipboardMode(p, aClipboardMode) ((p)->lpVtbl->SetClipboardMode(p, aClipboardMode)) +# define IMachine_get_ClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled) ((p)->lpVtbl->GetClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled)) +# define IMachine_GetClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled) ((p)->lpVtbl->GetClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled)) +# define IMachine_put_ClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled) ((p)->lpVtbl->SetClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled)) +# define IMachine_SetClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled) ((p)->lpVtbl->SetClipboardFileTransfersEnabled(p, aClipboardFileTransfersEnabled)) +# define IMachine_get_DnDMode(p, aDnDMode) ((p)->lpVtbl->GetDnDMode(p, aDnDMode)) +# define IMachine_GetDnDMode(p, aDnDMode) ((p)->lpVtbl->GetDnDMode(p, aDnDMode)) +# define IMachine_put_DnDMode(p, aDnDMode) ((p)->lpVtbl->SetDnDMode(p, aDnDMode)) +# define IMachine_SetDnDMode(p, aDnDMode) ((p)->lpVtbl->SetDnDMode(p, aDnDMode)) +# define IMachine_get_TeleporterEnabled(p, aTeleporterEnabled) ((p)->lpVtbl->GetTeleporterEnabled(p, aTeleporterEnabled)) +# define IMachine_GetTeleporterEnabled(p, aTeleporterEnabled) ((p)->lpVtbl->GetTeleporterEnabled(p, aTeleporterEnabled)) +# define IMachine_put_TeleporterEnabled(p, aTeleporterEnabled) ((p)->lpVtbl->SetTeleporterEnabled(p, aTeleporterEnabled)) +# define IMachine_SetTeleporterEnabled(p, aTeleporterEnabled) ((p)->lpVtbl->SetTeleporterEnabled(p, aTeleporterEnabled)) +# define IMachine_get_TeleporterPort(p, aTeleporterPort) ((p)->lpVtbl->GetTeleporterPort(p, aTeleporterPort)) +# define IMachine_GetTeleporterPort(p, aTeleporterPort) ((p)->lpVtbl->GetTeleporterPort(p, aTeleporterPort)) +# define IMachine_put_TeleporterPort(p, aTeleporterPort) ((p)->lpVtbl->SetTeleporterPort(p, aTeleporterPort)) +# define IMachine_SetTeleporterPort(p, aTeleporterPort) ((p)->lpVtbl->SetTeleporterPort(p, aTeleporterPort)) +# define IMachine_get_TeleporterAddress(p, aTeleporterAddress) ((p)->lpVtbl->GetTeleporterAddress(p, aTeleporterAddress)) +# define IMachine_GetTeleporterAddress(p, aTeleporterAddress) ((p)->lpVtbl->GetTeleporterAddress(p, aTeleporterAddress)) +# define IMachine_put_TeleporterAddress(p, aTeleporterAddress) ((p)->lpVtbl->SetTeleporterAddress(p, aTeleporterAddress)) +# define IMachine_SetTeleporterAddress(p, aTeleporterAddress) ((p)->lpVtbl->SetTeleporterAddress(p, aTeleporterAddress)) +# define IMachine_get_TeleporterPassword(p, aTeleporterPassword) ((p)->lpVtbl->GetTeleporterPassword(p, aTeleporterPassword)) +# define IMachine_GetTeleporterPassword(p, aTeleporterPassword) ((p)->lpVtbl->GetTeleporterPassword(p, aTeleporterPassword)) +# define IMachine_put_TeleporterPassword(p, aTeleporterPassword) ((p)->lpVtbl->SetTeleporterPassword(p, aTeleporterPassword)) +# define IMachine_SetTeleporterPassword(p, aTeleporterPassword) ((p)->lpVtbl->SetTeleporterPassword(p, aTeleporterPassword)) +# define IMachine_get_ParavirtProvider(p, aParavirtProvider) ((p)->lpVtbl->GetParavirtProvider(p, aParavirtProvider)) +# define IMachine_GetParavirtProvider(p, aParavirtProvider) ((p)->lpVtbl->GetParavirtProvider(p, aParavirtProvider)) +# define IMachine_put_ParavirtProvider(p, aParavirtProvider) ((p)->lpVtbl->SetParavirtProvider(p, aParavirtProvider)) +# define IMachine_SetParavirtProvider(p, aParavirtProvider) ((p)->lpVtbl->SetParavirtProvider(p, aParavirtProvider)) +# define IMachine_get_RTCUseUTC(p, aRTCUseUTC) ((p)->lpVtbl->GetRTCUseUTC(p, aRTCUseUTC)) +# define IMachine_GetRTCUseUTC(p, aRTCUseUTC) ((p)->lpVtbl->GetRTCUseUTC(p, aRTCUseUTC)) +# define IMachine_put_RTCUseUTC(p, aRTCUseUTC) ((p)->lpVtbl->SetRTCUseUTC(p, aRTCUseUTC)) +# define IMachine_SetRTCUseUTC(p, aRTCUseUTC) ((p)->lpVtbl->SetRTCUseUTC(p, aRTCUseUTC)) +# define IMachine_get_IOCacheEnabled(p, aIOCacheEnabled) ((p)->lpVtbl->GetIOCacheEnabled(p, aIOCacheEnabled)) +# define IMachine_GetIOCacheEnabled(p, aIOCacheEnabled) ((p)->lpVtbl->GetIOCacheEnabled(p, aIOCacheEnabled)) +# define IMachine_put_IOCacheEnabled(p, aIOCacheEnabled) ((p)->lpVtbl->SetIOCacheEnabled(p, aIOCacheEnabled)) +# define IMachine_SetIOCacheEnabled(p, aIOCacheEnabled) ((p)->lpVtbl->SetIOCacheEnabled(p, aIOCacheEnabled)) +# define IMachine_get_IOCacheSize(p, aIOCacheSize) ((p)->lpVtbl->GetIOCacheSize(p, aIOCacheSize)) +# define IMachine_GetIOCacheSize(p, aIOCacheSize) ((p)->lpVtbl->GetIOCacheSize(p, aIOCacheSize)) +# define IMachine_put_IOCacheSize(p, aIOCacheSize) ((p)->lpVtbl->SetIOCacheSize(p, aIOCacheSize)) +# define IMachine_SetIOCacheSize(p, aIOCacheSize) ((p)->lpVtbl->SetIOCacheSize(p, aIOCacheSize)) +# define IMachine_get_PCIDeviceAssignments(p, aPCIDeviceAssignments) ((p)->lpVtbl->GetPCIDeviceAssignments(p, aPCIDeviceAssignments)) +# define IMachine_GetPCIDeviceAssignments(p, aPCIDeviceAssignments) ((p)->lpVtbl->GetPCIDeviceAssignments(p, aPCIDeviceAssignments)) +# define IMachine_get_BandwidthControl(p, aBandwidthControl) ((p)->lpVtbl->GetBandwidthControl(p, aBandwidthControl)) +# define IMachine_GetBandwidthControl(p, aBandwidthControl) ((p)->lpVtbl->GetBandwidthControl(p, aBandwidthControl)) +# define IMachine_get_TracingEnabled(p, aTracingEnabled) ((p)->lpVtbl->GetTracingEnabled(p, aTracingEnabled)) +# define IMachine_GetTracingEnabled(p, aTracingEnabled) ((p)->lpVtbl->GetTracingEnabled(p, aTracingEnabled)) +# define IMachine_put_TracingEnabled(p, aTracingEnabled) ((p)->lpVtbl->SetTracingEnabled(p, aTracingEnabled)) +# define IMachine_SetTracingEnabled(p, aTracingEnabled) ((p)->lpVtbl->SetTracingEnabled(p, aTracingEnabled)) +# define IMachine_get_TracingConfig(p, aTracingConfig) ((p)->lpVtbl->GetTracingConfig(p, aTracingConfig)) +# define IMachine_GetTracingConfig(p, aTracingConfig) ((p)->lpVtbl->GetTracingConfig(p, aTracingConfig)) +# define IMachine_put_TracingConfig(p, aTracingConfig) ((p)->lpVtbl->SetTracingConfig(p, aTracingConfig)) +# define IMachine_SetTracingConfig(p, aTracingConfig) ((p)->lpVtbl->SetTracingConfig(p, aTracingConfig)) +# define IMachine_get_AllowTracingToAccessVM(p, aAllowTracingToAccessVM) ((p)->lpVtbl->GetAllowTracingToAccessVM(p, aAllowTracingToAccessVM)) +# define IMachine_GetAllowTracingToAccessVM(p, aAllowTracingToAccessVM) ((p)->lpVtbl->GetAllowTracingToAccessVM(p, aAllowTracingToAccessVM)) +# define IMachine_put_AllowTracingToAccessVM(p, aAllowTracingToAccessVM) ((p)->lpVtbl->SetAllowTracingToAccessVM(p, aAllowTracingToAccessVM)) +# define IMachine_SetAllowTracingToAccessVM(p, aAllowTracingToAccessVM) ((p)->lpVtbl->SetAllowTracingToAccessVM(p, aAllowTracingToAccessVM)) +# define IMachine_get_AutostartEnabled(p, aAutostartEnabled) ((p)->lpVtbl->GetAutostartEnabled(p, aAutostartEnabled)) +# define IMachine_GetAutostartEnabled(p, aAutostartEnabled) ((p)->lpVtbl->GetAutostartEnabled(p, aAutostartEnabled)) +# define IMachine_put_AutostartEnabled(p, aAutostartEnabled) ((p)->lpVtbl->SetAutostartEnabled(p, aAutostartEnabled)) +# define IMachine_SetAutostartEnabled(p, aAutostartEnabled) ((p)->lpVtbl->SetAutostartEnabled(p, aAutostartEnabled)) +# define IMachine_get_AutostartDelay(p, aAutostartDelay) ((p)->lpVtbl->GetAutostartDelay(p, aAutostartDelay)) +# define IMachine_GetAutostartDelay(p, aAutostartDelay) ((p)->lpVtbl->GetAutostartDelay(p, aAutostartDelay)) +# define IMachine_put_AutostartDelay(p, aAutostartDelay) ((p)->lpVtbl->SetAutostartDelay(p, aAutostartDelay)) +# define IMachine_SetAutostartDelay(p, aAutostartDelay) ((p)->lpVtbl->SetAutostartDelay(p, aAutostartDelay)) +# define IMachine_get_AutostopType(p, aAutostopType) ((p)->lpVtbl->GetAutostopType(p, aAutostopType)) +# define IMachine_GetAutostopType(p, aAutostopType) ((p)->lpVtbl->GetAutostopType(p, aAutostopType)) +# define IMachine_put_AutostopType(p, aAutostopType) ((p)->lpVtbl->SetAutostopType(p, aAutostopType)) +# define IMachine_SetAutostopType(p, aAutostopType) ((p)->lpVtbl->SetAutostopType(p, aAutostopType)) +# define IMachine_get_DefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->GetDefaultFrontend(p, aDefaultFrontend)) +# define IMachine_GetDefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->GetDefaultFrontend(p, aDefaultFrontend)) +# define IMachine_put_DefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->SetDefaultFrontend(p, aDefaultFrontend)) +# define IMachine_SetDefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->SetDefaultFrontend(p, aDefaultFrontend)) +# define IMachine_get_USBProxyAvailable(p, aUSBProxyAvailable) ((p)->lpVtbl->GetUSBProxyAvailable(p, aUSBProxyAvailable)) +# define IMachine_GetUSBProxyAvailable(p, aUSBProxyAvailable) ((p)->lpVtbl->GetUSBProxyAvailable(p, aUSBProxyAvailable)) +# define IMachine_get_VMProcessPriority(p, aVMProcessPriority) ((p)->lpVtbl->GetVMProcessPriority(p, aVMProcessPriority)) +# define IMachine_GetVMProcessPriority(p, aVMProcessPriority) ((p)->lpVtbl->GetVMProcessPriority(p, aVMProcessPriority)) +# define IMachine_put_VMProcessPriority(p, aVMProcessPriority) ((p)->lpVtbl->SetVMProcessPriority(p, aVMProcessPriority)) +# define IMachine_SetVMProcessPriority(p, aVMProcessPriority) ((p)->lpVtbl->SetVMProcessPriority(p, aVMProcessPriority)) +# define IMachine_get_ParavirtDebug(p, aParavirtDebug) ((p)->lpVtbl->GetParavirtDebug(p, aParavirtDebug)) +# define IMachine_GetParavirtDebug(p, aParavirtDebug) ((p)->lpVtbl->GetParavirtDebug(p, aParavirtDebug)) +# define IMachine_put_ParavirtDebug(p, aParavirtDebug) ((p)->lpVtbl->SetParavirtDebug(p, aParavirtDebug)) +# define IMachine_SetParavirtDebug(p, aParavirtDebug) ((p)->lpVtbl->SetParavirtDebug(p, aParavirtDebug)) +# define IMachine_get_CPUProfile(p, aCPUProfile) ((p)->lpVtbl->GetCPUProfile(p, aCPUProfile)) +# define IMachine_GetCPUProfile(p, aCPUProfile) ((p)->lpVtbl->GetCPUProfile(p, aCPUProfile)) +# define IMachine_put_CPUProfile(p, aCPUProfile) ((p)->lpVtbl->SetCPUProfile(p, aCPUProfile)) +# define IMachine_SetCPUProfile(p, aCPUProfile) ((p)->lpVtbl->SetCPUProfile(p, aCPUProfile)) +# define IMachine_LockMachine(p, aSession, aLockType) ((p)->lpVtbl->LockMachine(p, aSession, aLockType)) +# define IMachine_LaunchVMProcess(p, aSession, aName, aEnvironmentChanges, aProgress) ((p)->lpVtbl->LaunchVMProcess(p, aSession, aName, aEnvironmentChanges, aProgress)) +# define IMachine_SetBootOrder(p, aPosition, aDevice) ((p)->lpVtbl->SetBootOrder(p, aPosition, aDevice)) +# define IMachine_GetBootOrder(p, aPosition, aDevice) ((p)->lpVtbl->GetBootOrder(p, aPosition, aDevice)) +# define IMachine_AttachDevice(p, aName, aControllerPort, aDevice, aType, aMedium) ((p)->lpVtbl->AttachDevice(p, aName, aControllerPort, aDevice, aType, aMedium)) +# define IMachine_AttachDeviceWithoutMedium(p, aName, aControllerPort, aDevice, aType) ((p)->lpVtbl->AttachDeviceWithoutMedium(p, aName, aControllerPort, aDevice, aType)) +# define IMachine_DetachDevice(p, aName, aControllerPort, aDevice) ((p)->lpVtbl->DetachDevice(p, aName, aControllerPort, aDevice)) +# define IMachine_PassthroughDevice(p, aName, aControllerPort, aDevice, aPassthrough) ((p)->lpVtbl->PassthroughDevice(p, aName, aControllerPort, aDevice, aPassthrough)) +# define IMachine_TemporaryEjectDevice(p, aName, aControllerPort, aDevice, aTemporaryEject) ((p)->lpVtbl->TemporaryEjectDevice(p, aName, aControllerPort, aDevice, aTemporaryEject)) +# define IMachine_NonRotationalDevice(p, aName, aControllerPort, aDevice, aNonRotational) ((p)->lpVtbl->NonRotationalDevice(p, aName, aControllerPort, aDevice, aNonRotational)) +# define IMachine_SetAutoDiscardForDevice(p, aName, aControllerPort, aDevice, aDiscard) ((p)->lpVtbl->SetAutoDiscardForDevice(p, aName, aControllerPort, aDevice, aDiscard)) +# define IMachine_SetHotPluggableForDevice(p, aName, aControllerPort, aDevice, aHotPluggable) ((p)->lpVtbl->SetHotPluggableForDevice(p, aName, aControllerPort, aDevice, aHotPluggable)) +# define IMachine_SetBandwidthGroupForDevice(p, aName, aControllerPort, aDevice, aBandwidthGroup) ((p)->lpVtbl->SetBandwidthGroupForDevice(p, aName, aControllerPort, aDevice, aBandwidthGroup)) +# define IMachine_SetNoBandwidthGroupForDevice(p, aName, aControllerPort, aDevice) ((p)->lpVtbl->SetNoBandwidthGroupForDevice(p, aName, aControllerPort, aDevice)) +# define IMachine_UnmountMedium(p, aName, aControllerPort, aDevice, aForce) ((p)->lpVtbl->UnmountMedium(p, aName, aControllerPort, aDevice, aForce)) +# define IMachine_MountMedium(p, aName, aControllerPort, aDevice, aMedium, aForce) ((p)->lpVtbl->MountMedium(p, aName, aControllerPort, aDevice, aMedium, aForce)) +# define IMachine_GetMedium(p, aName, aControllerPort, aDevice, aMedium) ((p)->lpVtbl->GetMedium(p, aName, aControllerPort, aDevice, aMedium)) +# define IMachine_GetMediumAttachmentsOfController(p, aName, aMediumAttachments) ((p)->lpVtbl->GetMediumAttachmentsOfController(p, aName, aMediumAttachments)) +# define IMachine_GetMediumAttachment(p, aName, aControllerPort, aDevice, aAttachment) ((p)->lpVtbl->GetMediumAttachment(p, aName, aControllerPort, aDevice, aAttachment)) +# define IMachine_AttachHostPCIDevice(p, aHostAddress, aDesiredGuestAddress, aTryToUnbind) ((p)->lpVtbl->AttachHostPCIDevice(p, aHostAddress, aDesiredGuestAddress, aTryToUnbind)) +# define IMachine_DetachHostPCIDevice(p, aHostAddress) ((p)->lpVtbl->DetachHostPCIDevice(p, aHostAddress)) +# define IMachine_GetNetworkAdapter(p, aSlot, aAdapter) ((p)->lpVtbl->GetNetworkAdapter(p, aSlot, aAdapter)) +# define IMachine_AddStorageController(p, aName, aConnectionType, aController) ((p)->lpVtbl->AddStorageController(p, aName, aConnectionType, aController)) +# define IMachine_GetStorageControllerByName(p, aName, aStorageController) ((p)->lpVtbl->GetStorageControllerByName(p, aName, aStorageController)) +# define IMachine_GetStorageControllerByInstance(p, aConnectionType, aInstance, aStorageController) ((p)->lpVtbl->GetStorageControllerByInstance(p, aConnectionType, aInstance, aStorageController)) +# define IMachine_RemoveStorageController(p, aName) ((p)->lpVtbl->RemoveStorageController(p, aName)) +# define IMachine_SetStorageControllerBootable(p, aName, aBootable) ((p)->lpVtbl->SetStorageControllerBootable(p, aName, aBootable)) +# define IMachine_AddUSBController(p, aName, aType, aController) ((p)->lpVtbl->AddUSBController(p, aName, aType, aController)) +# define IMachine_RemoveUSBController(p, aName) ((p)->lpVtbl->RemoveUSBController(p, aName)) +# define IMachine_GetUSBControllerByName(p, aName, aController) ((p)->lpVtbl->GetUSBControllerByName(p, aName, aController)) +# define IMachine_GetUSBControllerCountByType(p, aType, aControllers) ((p)->lpVtbl->GetUSBControllerCountByType(p, aType, aControllers)) +# define IMachine_GetSerialPort(p, aSlot, aPort) ((p)->lpVtbl->GetSerialPort(p, aSlot, aPort)) +# define IMachine_GetParallelPort(p, aSlot, aPort) ((p)->lpVtbl->GetParallelPort(p, aSlot, aPort)) +# define IMachine_GetExtraDataKeys(p, aKeys) ((p)->lpVtbl->GetExtraDataKeys(p, aKeys)) +# define IMachine_GetExtraData(p, aKey, aValue) ((p)->lpVtbl->GetExtraData(p, aKey, aValue)) +# define IMachine_SetExtraData(p, aKey, aValue) ((p)->lpVtbl->SetExtraData(p, aKey, aValue)) +# define IMachine_GetCPUProperty(p, aProperty, aValue) ((p)->lpVtbl->GetCPUProperty(p, aProperty, aValue)) +# define IMachine_SetCPUProperty(p, aProperty, aValue) ((p)->lpVtbl->SetCPUProperty(p, aProperty, aValue)) +# define IMachine_GetCPUIDLeafByOrdinal(p, aOrdinal, aIdx, aIdxSub, aValEax, aValEbx, aValEcx, aValEdx) ((p)->lpVtbl->GetCPUIDLeafByOrdinal(p, aOrdinal, aIdx, aIdxSub, aValEax, aValEbx, aValEcx, aValEdx)) +# define IMachine_GetCPUIDLeaf(p, aIdx, aIdxSub, aValEax, aValEbx, aValEcx, aValEdx) ((p)->lpVtbl->GetCPUIDLeaf(p, aIdx, aIdxSub, aValEax, aValEbx, aValEcx, aValEdx)) +# define IMachine_SetCPUIDLeaf(p, aIdx, aIdxSub, aValEax, aValEbx, aValEcx, aValEdx) ((p)->lpVtbl->SetCPUIDLeaf(p, aIdx, aIdxSub, aValEax, aValEbx, aValEcx, aValEdx)) +# define IMachine_RemoveCPUIDLeaf(p, aIdx, aIdxSub) ((p)->lpVtbl->RemoveCPUIDLeaf(p, aIdx, aIdxSub)) +# define IMachine_RemoveAllCPUIDLeaves(p) ((p)->lpVtbl->RemoveAllCPUIDLeaves(p)) +# define IMachine_GetHWVirtExProperty(p, aProperty, aValue) ((p)->lpVtbl->GetHWVirtExProperty(p, aProperty, aValue)) +# define IMachine_SetHWVirtExProperty(p, aProperty, aValue) ((p)->lpVtbl->SetHWVirtExProperty(p, aProperty, aValue)) +# define IMachine_SetSettingsFilePath(p, aSettingsFilePath, aProgress) ((p)->lpVtbl->SetSettingsFilePath(p, aSettingsFilePath, aProgress)) +# define IMachine_SaveSettings(p) ((p)->lpVtbl->SaveSettings(p)) +# define IMachine_DiscardSettings(p) ((p)->lpVtbl->DiscardSettings(p)) +# define IMachine_Unregister(p, aCleanupMode, aMedia) ((p)->lpVtbl->Unregister(p, aCleanupMode, aMedia)) +# define IMachine_DeleteConfig(p, aMedia, aProgress) ((p)->lpVtbl->DeleteConfig(p, aMedia, aProgress)) +# define IMachine_ExportTo(p, aAppliance, aLocation, aDescription) ((p)->lpVtbl->ExportTo(p, aAppliance, aLocation, aDescription)) +# define IMachine_FindSnapshot(p, aNameOrId, aSnapshot) ((p)->lpVtbl->FindSnapshot(p, aNameOrId, aSnapshot)) +# define IMachine_CreateSharedFolder(p, aName, aHostPath, aWritable, aAutomount, aAutoMountPoint) ((p)->lpVtbl->CreateSharedFolder(p, aName, aHostPath, aWritable, aAutomount, aAutoMountPoint)) +# define IMachine_RemoveSharedFolder(p, aName) ((p)->lpVtbl->RemoveSharedFolder(p, aName)) +# define IMachine_CanShowConsoleWindow(p, aCanShow) ((p)->lpVtbl->CanShowConsoleWindow(p, aCanShow)) +# define IMachine_ShowConsoleWindow(p, aWinId) ((p)->lpVtbl->ShowConsoleWindow(p, aWinId)) +# define IMachine_GetGuestProperty(p, aName, aValue, aTimestamp, aFlags) ((p)->lpVtbl->GetGuestProperty(p, aName, aValue, aTimestamp, aFlags)) +# define IMachine_GetGuestPropertyValue(p, aProperty, aValue) ((p)->lpVtbl->GetGuestPropertyValue(p, aProperty, aValue)) +# define IMachine_GetGuestPropertyTimestamp(p, aProperty, aValue) ((p)->lpVtbl->GetGuestPropertyTimestamp(p, aProperty, aValue)) +# define IMachine_SetGuestProperty(p, aProperty, aValue, aFlags) ((p)->lpVtbl->SetGuestProperty(p, aProperty, aValue, aFlags)) +# define IMachine_SetGuestPropertyValue(p, aProperty, aValue) ((p)->lpVtbl->SetGuestPropertyValue(p, aProperty, aValue)) +# define IMachine_DeleteGuestProperty(p, aName) ((p)->lpVtbl->DeleteGuestProperty(p, aName)) +# define IMachine_EnumerateGuestProperties(p, aPatterns, aNames, aValues, aTimestamps, aFlags) ((p)->lpVtbl->EnumerateGuestProperties(p, aPatterns, aNames, aValues, aTimestamps, aFlags)) +# define IMachine_QuerySavedGuestScreenInfo(p, aScreenId, aOriginX, aOriginY, aWidth, aHeight, aEnabled) ((p)->lpVtbl->QuerySavedGuestScreenInfo(p, aScreenId, aOriginX, aOriginY, aWidth, aHeight, aEnabled)) +# define IMachine_ReadSavedThumbnailToArray(p, aScreenId, aBitmapFormat, aWidth, aHeight, aData) ((p)->lpVtbl->ReadSavedThumbnailToArray(p, aScreenId, aBitmapFormat, aWidth, aHeight, aData)) +# define IMachine_QuerySavedScreenshotInfo(p, aScreenId, aWidth, aHeight, aBitmapFormats) ((p)->lpVtbl->QuerySavedScreenshotInfo(p, aScreenId, aWidth, aHeight, aBitmapFormats)) +# define IMachine_ReadSavedScreenshotToArray(p, aScreenId, aBitmapFormat, aWidth, aHeight, aData) ((p)->lpVtbl->ReadSavedScreenshotToArray(p, aScreenId, aBitmapFormat, aWidth, aHeight, aData)) +# define IMachine_HotPlugCPU(p, aCpu) ((p)->lpVtbl->HotPlugCPU(p, aCpu)) +# define IMachine_HotUnplugCPU(p, aCpu) ((p)->lpVtbl->HotUnplugCPU(p, aCpu)) +# define IMachine_GetCPUStatus(p, aCpu, aAttached) ((p)->lpVtbl->GetCPUStatus(p, aCpu, aAttached)) +# define IMachine_GetEffectiveParavirtProvider(p, aParavirtProvider) ((p)->lpVtbl->GetEffectiveParavirtProvider(p, aParavirtProvider)) +# define IMachine_QueryLogFilename(p, aIdx, aFilename) ((p)->lpVtbl->QueryLogFilename(p, aIdx, aFilename)) +# define IMachine_ReadLog(p, aIdx, aOffset, aSize, aData) ((p)->lpVtbl->ReadLog(p, aIdx, aOffset, aSize, aData)) +# define IMachine_CloneTo(p, aTarget, aMode, aOptions, aProgress) ((p)->lpVtbl->CloneTo(p, aTarget, aMode, aOptions, aProgress)) +# define IMachine_MoveTo(p, aFolder, aType, aProgress) ((p)->lpVtbl->MoveTo(p, aFolder, aType, aProgress)) +# define IMachine_SaveState(p, aProgress) ((p)->lpVtbl->SaveState(p, aProgress)) +# define IMachine_AdoptSavedState(p, aSavedStateFile) ((p)->lpVtbl->AdoptSavedState(p, aSavedStateFile)) +# define IMachine_DiscardSavedState(p, aFRemoveFile) ((p)->lpVtbl->DiscardSavedState(p, aFRemoveFile)) +# define IMachine_TakeSnapshot(p, aName, aDescription, aPause, aId, aProgress) ((p)->lpVtbl->TakeSnapshot(p, aName, aDescription, aPause, aId, aProgress)) +# define IMachine_DeleteSnapshot(p, aId, aProgress) ((p)->lpVtbl->DeleteSnapshot(p, aId, aProgress)) +# define IMachine_DeleteSnapshotAndAllChildren(p, aId, aProgress) ((p)->lpVtbl->DeleteSnapshotAndAllChildren(p, aId, aProgress)) +# define IMachine_DeleteSnapshotRange(p, aStartId, aEndId, aProgress) ((p)->lpVtbl->DeleteSnapshotRange(p, aStartId, aEndId, aProgress)) +# define IMachine_RestoreSnapshot(p, aSnapshot, aProgress) ((p)->lpVtbl->RestoreSnapshot(p, aSnapshot, aProgress)) +# define IMachine_ApplyDefaults(p, aFlags) ((p)->lpVtbl->ApplyDefaults(p, aFlags)) +# endif /* VBOX_WITH_GLUE */ + +interface IMachine +{ +# ifndef VBOX_WITH_GLUE + struct IMachine_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMachineVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMachine declaration */ + + +/* Start of struct IEmulatedUSB declaration */ +# define IEMULATEDUSB_IID_STR "6e253ee8-477a-2497-6759-88b8292a5af0" +# define IEMULATEDUSB_IID { \ + 0x6e253ee8, 0x477a, 0x2497, \ + { 0x67, 0x59, 0x88, 0xb8, 0x29, 0x2a, 0x5a, 0xf0 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IEmulatedUSB); +# ifndef VBOX_WITH_GLUE +struct IEmulatedUSB_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetWebcams)(IEmulatedUSB *pThis, PRUint32 *webcamsSize, PRUnichar * **webcams); + + nsresult (*GetInternalAndReservedAttribute1IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*WebcamAttach)( + IEmulatedUSB *pThis, + PRUnichar * path, + PRUnichar * settings + ); + + nsresult (*WebcamDetach)( + IEmulatedUSB *pThis, + PRUnichar * path + ); + + nsresult (*InternalAndReservedMethod1IEmulatedUSB)(IEmulatedUSB *pThis); + + nsresult (*InternalAndReservedMethod2IEmulatedUSB)(IEmulatedUSB *pThis); + + nsresult (*InternalAndReservedMethod3IEmulatedUSB)(IEmulatedUSB *pThis); + + nsresult (*InternalAndReservedMethod4IEmulatedUSB)(IEmulatedUSB *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IEmulatedUSBVtbl +{ + nsresult (*QueryInterface)(IEmulatedUSB *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IEmulatedUSB *pThis); + nsrefcnt (*Release)(IEmulatedUSB *pThis); + nsresult (*GetWebcams)(IEmulatedUSB *pThis, PRUint32 *webcamsSize, PRUnichar * **webcams); + + nsresult (*GetInternalAndReservedAttribute1IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IEmulatedUSB)(IEmulatedUSB *pThis, PRUint32 *reserved); + + nsresult (*WebcamAttach)( + IEmulatedUSB *pThis, + PRUnichar * path, + PRUnichar * settings + ); + + nsresult (*WebcamDetach)( + IEmulatedUSB *pThis, + PRUnichar * path + ); + + nsresult (*InternalAndReservedMethod1IEmulatedUSB)(IEmulatedUSB *pThis); + + nsresult (*InternalAndReservedMethod2IEmulatedUSB)(IEmulatedUSB *pThis); + + nsresult (*InternalAndReservedMethod3IEmulatedUSB)(IEmulatedUSB *pThis); + + nsresult (*InternalAndReservedMethod4IEmulatedUSB)(IEmulatedUSB *pThis); + +}; +# define IEmulatedUSB_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IEmulatedUSB_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IEmulatedUSB_Release(p) ((p)->lpVtbl->Release(p)) +# define IEmulatedUSB_get_Webcams(p, aWebcams) ((p)->lpVtbl->GetWebcams(p, aWebcams)) +# define IEmulatedUSB_GetWebcams(p, aWebcams) ((p)->lpVtbl->GetWebcams(p, aWebcams)) +# define IEmulatedUSB_WebcamAttach(p, aPath, aSettings) ((p)->lpVtbl->WebcamAttach(p, aPath, aSettings)) +# define IEmulatedUSB_WebcamDetach(p, aPath) ((p)->lpVtbl->WebcamDetach(p, aPath)) +# endif /* VBOX_WITH_GLUE */ + +interface IEmulatedUSB +{ +# ifndef VBOX_WITH_GLUE + struct IEmulatedUSB_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IEmulatedUSBVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IEmulatedUSB declaration */ + + +/* Start of struct IVRDEServerInfo declaration */ +# define IVRDESERVERINFO_IID_STR "c39ef4d6-7532-45e8-96da-eb5986ae76e4" +# define IVRDESERVERINFO_IID { \ + 0xc39ef4d6, 0x7532, 0x45e8, \ + { 0x96, 0xda, 0xeb, 0x59, 0x86, 0xae, 0x76, 0xe4 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVRDEServerInfo); +# ifndef VBOX_WITH_GLUE +struct IVRDEServerInfo_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetActive)(IVRDEServerInfo *pThis, PRBool *active); + + nsresult (*GetPort)(IVRDEServerInfo *pThis, PRInt32 *port); + + nsresult (*GetNumberOfClients)(IVRDEServerInfo *pThis, PRUint32 *numberOfClients); + + nsresult (*GetBeginTime)(IVRDEServerInfo *pThis, PRInt64 *beginTime); + + nsresult (*GetEndTime)(IVRDEServerInfo *pThis, PRInt64 *endTime); + + nsresult (*GetBytesSent)(IVRDEServerInfo *pThis, PRInt64 *bytesSent); + + nsresult (*GetBytesSentTotal)(IVRDEServerInfo *pThis, PRInt64 *bytesSentTotal); + + nsresult (*GetBytesReceived)(IVRDEServerInfo *pThis, PRInt64 *bytesReceived); + + nsresult (*GetBytesReceivedTotal)(IVRDEServerInfo *pThis, PRInt64 *bytesReceivedTotal); + + nsresult (*GetUser)(IVRDEServerInfo *pThis, PRUnichar * *user); + + nsresult (*GetDomain)(IVRDEServerInfo *pThis, PRUnichar * *domain); + + nsresult (*GetClientName)(IVRDEServerInfo *pThis, PRUnichar * *clientName); + + nsresult (*GetClientIP)(IVRDEServerInfo *pThis, PRUnichar * *clientIP); + + nsresult (*GetClientVersion)(IVRDEServerInfo *pThis, PRUint32 *clientVersion); + + nsresult (*GetEncryptionStyle)(IVRDEServerInfo *pThis, PRUint32 *encryptionStyle); + + nsresult (*GetInternalAndReservedAttribute1IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVRDEServerInfoVtbl +{ + nsresult (*QueryInterface)(IVRDEServerInfo *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVRDEServerInfo *pThis); + nsrefcnt (*Release)(IVRDEServerInfo *pThis); + nsresult (*GetActive)(IVRDEServerInfo *pThis, PRBool *active); + + nsresult (*GetPort)(IVRDEServerInfo *pThis, PRInt32 *port); + + nsresult (*GetNumberOfClients)(IVRDEServerInfo *pThis, PRUint32 *numberOfClients); + + nsresult (*GetBeginTime)(IVRDEServerInfo *pThis, PRInt64 *beginTime); + + nsresult (*GetEndTime)(IVRDEServerInfo *pThis, PRInt64 *endTime); + + nsresult (*GetBytesSent)(IVRDEServerInfo *pThis, PRInt64 *bytesSent); + + nsresult (*GetBytesSentTotal)(IVRDEServerInfo *pThis, PRInt64 *bytesSentTotal); + + nsresult (*GetBytesReceived)(IVRDEServerInfo *pThis, PRInt64 *bytesReceived); + + nsresult (*GetBytesReceivedTotal)(IVRDEServerInfo *pThis, PRInt64 *bytesReceivedTotal); + + nsresult (*GetUser)(IVRDEServerInfo *pThis, PRUnichar * *user); + + nsresult (*GetDomain)(IVRDEServerInfo *pThis, PRUnichar * *domain); + + nsresult (*GetClientName)(IVRDEServerInfo *pThis, PRUnichar * *clientName); + + nsresult (*GetClientIP)(IVRDEServerInfo *pThis, PRUnichar * *clientIP); + + nsresult (*GetClientVersion)(IVRDEServerInfo *pThis, PRUint32 *clientVersion); + + nsresult (*GetEncryptionStyle)(IVRDEServerInfo *pThis, PRUint32 *encryptionStyle); + + nsresult (*GetInternalAndReservedAttribute1IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IVRDEServerInfo)(IVRDEServerInfo *pThis, PRUint32 *reserved); + +}; +# define IVRDEServerInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVRDEServerInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVRDEServerInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define IVRDEServerInfo_get_Active(p, aActive) ((p)->lpVtbl->GetActive(p, aActive)) +# define IVRDEServerInfo_GetActive(p, aActive) ((p)->lpVtbl->GetActive(p, aActive)) +# define IVRDEServerInfo_get_Port(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IVRDEServerInfo_GetPort(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IVRDEServerInfo_get_NumberOfClients(p, aNumberOfClients) ((p)->lpVtbl->GetNumberOfClients(p, aNumberOfClients)) +# define IVRDEServerInfo_GetNumberOfClients(p, aNumberOfClients) ((p)->lpVtbl->GetNumberOfClients(p, aNumberOfClients)) +# define IVRDEServerInfo_get_BeginTime(p, aBeginTime) ((p)->lpVtbl->GetBeginTime(p, aBeginTime)) +# define IVRDEServerInfo_GetBeginTime(p, aBeginTime) ((p)->lpVtbl->GetBeginTime(p, aBeginTime)) +# define IVRDEServerInfo_get_EndTime(p, aEndTime) ((p)->lpVtbl->GetEndTime(p, aEndTime)) +# define IVRDEServerInfo_GetEndTime(p, aEndTime) ((p)->lpVtbl->GetEndTime(p, aEndTime)) +# define IVRDEServerInfo_get_BytesSent(p, aBytesSent) ((p)->lpVtbl->GetBytesSent(p, aBytesSent)) +# define IVRDEServerInfo_GetBytesSent(p, aBytesSent) ((p)->lpVtbl->GetBytesSent(p, aBytesSent)) +# define IVRDEServerInfo_get_BytesSentTotal(p, aBytesSentTotal) ((p)->lpVtbl->GetBytesSentTotal(p, aBytesSentTotal)) +# define IVRDEServerInfo_GetBytesSentTotal(p, aBytesSentTotal) ((p)->lpVtbl->GetBytesSentTotal(p, aBytesSentTotal)) +# define IVRDEServerInfo_get_BytesReceived(p, aBytesReceived) ((p)->lpVtbl->GetBytesReceived(p, aBytesReceived)) +# define IVRDEServerInfo_GetBytesReceived(p, aBytesReceived) ((p)->lpVtbl->GetBytesReceived(p, aBytesReceived)) +# define IVRDEServerInfo_get_BytesReceivedTotal(p, aBytesReceivedTotal) ((p)->lpVtbl->GetBytesReceivedTotal(p, aBytesReceivedTotal)) +# define IVRDEServerInfo_GetBytesReceivedTotal(p, aBytesReceivedTotal) ((p)->lpVtbl->GetBytesReceivedTotal(p, aBytesReceivedTotal)) +# define IVRDEServerInfo_get_User(p, aUser) ((p)->lpVtbl->GetUser(p, aUser)) +# define IVRDEServerInfo_GetUser(p, aUser) ((p)->lpVtbl->GetUser(p, aUser)) +# define IVRDEServerInfo_get_Domain(p, aDomain) ((p)->lpVtbl->GetDomain(p, aDomain)) +# define IVRDEServerInfo_GetDomain(p, aDomain) ((p)->lpVtbl->GetDomain(p, aDomain)) +# define IVRDEServerInfo_get_ClientName(p, aClientName) ((p)->lpVtbl->GetClientName(p, aClientName)) +# define IVRDEServerInfo_GetClientName(p, aClientName) ((p)->lpVtbl->GetClientName(p, aClientName)) +# define IVRDEServerInfo_get_ClientIP(p, aClientIP) ((p)->lpVtbl->GetClientIP(p, aClientIP)) +# define IVRDEServerInfo_GetClientIP(p, aClientIP) ((p)->lpVtbl->GetClientIP(p, aClientIP)) +# define IVRDEServerInfo_get_ClientVersion(p, aClientVersion) ((p)->lpVtbl->GetClientVersion(p, aClientVersion)) +# define IVRDEServerInfo_GetClientVersion(p, aClientVersion) ((p)->lpVtbl->GetClientVersion(p, aClientVersion)) +# define IVRDEServerInfo_get_EncryptionStyle(p, aEncryptionStyle) ((p)->lpVtbl->GetEncryptionStyle(p, aEncryptionStyle)) +# define IVRDEServerInfo_GetEncryptionStyle(p, aEncryptionStyle) ((p)->lpVtbl->GetEncryptionStyle(p, aEncryptionStyle)) +# endif /* VBOX_WITH_GLUE */ + +interface IVRDEServerInfo +{ +# ifndef VBOX_WITH_GLUE + struct IVRDEServerInfo_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVRDEServerInfoVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVRDEServerInfo declaration */ + + +/* Start of struct IConsole declaration */ +# define ICONSOLE_IID_STR "872da645-4a9b-1727-bee2-5585105b9eed" +# define ICONSOLE_IID { \ + 0x872da645, 0x4a9b, 0x1727, \ + { 0xbe, 0xe2, 0x55, 0x85, 0x10, 0x5b, 0x9e, 0xed } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IConsole); +# ifndef VBOX_WITH_GLUE +struct IConsole_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMachine)(IConsole *pThis, IMachine * *machine); + + nsresult (*GetState)(IConsole *pThis, PRUint32 *state); + + nsresult (*GetGuest)(IConsole *pThis, IGuest * *guest); + + nsresult (*GetKeyboard)(IConsole *pThis, IKeyboard * *keyboard); + + nsresult (*GetMouse)(IConsole *pThis, IMouse * *mouse); + + nsresult (*GetDisplay)(IConsole *pThis, IDisplay * *display); + + nsresult (*GetDebugger)(IConsole *pThis, IMachineDebugger * *debugger); + + nsresult (*GetUSBDevices)(IConsole *pThis, PRUint32 *USBDevicesSize, IUSBDevice * **USBDevices); + + nsresult (*GetRemoteUSBDevices)(IConsole *pThis, PRUint32 *remoteUSBDevicesSize, IHostUSBDevice * **remoteUSBDevices); + + nsresult (*GetSharedFolders)(IConsole *pThis, PRUint32 *sharedFoldersSize, ISharedFolder * **sharedFolders); + + nsresult (*GetVRDEServerInfo)(IConsole *pThis, IVRDEServerInfo * *VRDEServerInfo); + + nsresult (*GetEventSource)(IConsole *pThis, IEventSource * *eventSource); + + nsresult (*GetAttachedPCIDevices)(IConsole *pThis, PRUint32 *attachedPCIDevicesSize, IPCIDeviceAttachment * **attachedPCIDevices); + + nsresult (*GetUseHostClipboard)(IConsole *pThis, PRBool *useHostClipboard); + nsresult (*SetUseHostClipboard)(IConsole *pThis, PRBool useHostClipboard); + + nsresult (*GetEmulatedUSB)(IConsole *pThis, IEmulatedUSB * *emulatedUSB); + + nsresult (*GetInternalAndReservedAttribute1IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*PowerUp)( + IConsole *pThis, + IProgress * * progress + ); + + nsresult (*PowerUpPaused)( + IConsole *pThis, + IProgress * * progress + ); + + nsresult (*PowerDown)( + IConsole *pThis, + IProgress * * progress + ); + + nsresult (*Reset)(IConsole *pThis ); + + nsresult (*Pause)(IConsole *pThis ); + + nsresult (*Resume)(IConsole *pThis ); + + nsresult (*PowerButton)(IConsole *pThis ); + + nsresult (*SleepButton)(IConsole *pThis ); + + nsresult (*GetPowerButtonHandled)( + IConsole *pThis, + PRBool * handled + ); + + nsresult (*GetGuestEnteredACPIMode)( + IConsole *pThis, + PRBool * entered + ); + + nsresult (*GetDeviceActivity)( + IConsole *pThis, + PRUint32 typeSize, + PRUint32* type, + PRUint32 *activitySize, + PRUint32** activity + ); + + nsresult (*AttachUSBDevice)( + IConsole *pThis, + PRUnichar * id, + PRUnichar * captureFilename + ); + + nsresult (*DetachUSBDevice)( + IConsole *pThis, + PRUnichar * id, + IUSBDevice * * device + ); + + nsresult (*FindUSBDeviceByAddress)( + IConsole *pThis, + PRUnichar * name, + IUSBDevice * * device + ); + + nsresult (*FindUSBDeviceById)( + IConsole *pThis, + PRUnichar * id, + IUSBDevice * * device + ); + + nsresult (*CreateSharedFolder)( + IConsole *pThis, + PRUnichar * name, + PRUnichar * hostPath, + PRBool writable, + PRBool automount, + PRUnichar * autoMountPoint + ); + + nsresult (*RemoveSharedFolder)( + IConsole *pThis, + PRUnichar * name + ); + + nsresult (*Teleport)( + IConsole *pThis, + PRUnichar * hostname, + PRUint32 tcpport, + PRUnichar * password, + PRUint32 maxDowntime, + IProgress * * progress + ); + + nsresult (*AddDiskEncryptionPassword)( + IConsole *pThis, + PRUnichar * id, + PRUnichar * password, + PRBool clearOnSuspend + ); + + nsresult (*AddDiskEncryptionPasswords)( + IConsole *pThis, + PRUint32 idsSize, + PRUnichar ** ids, + PRUint32 passwordsSize, + PRUnichar ** passwords, + PRBool clearOnSuspend + ); + + nsresult (*RemoveDiskEncryptionPassword)( + IConsole *pThis, + PRUnichar * id + ); + + nsresult (*ClearAllDiskEncryptionPasswords)(IConsole *pThis ); + + nsresult (*InternalAndReservedMethod1IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod2IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod3IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod4IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod5IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod6IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod7IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod8IConsole)(IConsole *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IConsoleVtbl +{ + nsresult (*QueryInterface)(IConsole *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IConsole *pThis); + nsrefcnt (*Release)(IConsole *pThis); + nsresult (*GetMachine)(IConsole *pThis, IMachine * *machine); + + nsresult (*GetState)(IConsole *pThis, PRUint32 *state); + + nsresult (*GetGuest)(IConsole *pThis, IGuest * *guest); + + nsresult (*GetKeyboard)(IConsole *pThis, IKeyboard * *keyboard); + + nsresult (*GetMouse)(IConsole *pThis, IMouse * *mouse); + + nsresult (*GetDisplay)(IConsole *pThis, IDisplay * *display); + + nsresult (*GetDebugger)(IConsole *pThis, IMachineDebugger * *debugger); + + nsresult (*GetUSBDevices)(IConsole *pThis, PRUint32 *USBDevicesSize, IUSBDevice * **USBDevices); + + nsresult (*GetRemoteUSBDevices)(IConsole *pThis, PRUint32 *remoteUSBDevicesSize, IHostUSBDevice * **remoteUSBDevices); + + nsresult (*GetSharedFolders)(IConsole *pThis, PRUint32 *sharedFoldersSize, ISharedFolder * **sharedFolders); + + nsresult (*GetVRDEServerInfo)(IConsole *pThis, IVRDEServerInfo * *VRDEServerInfo); + + nsresult (*GetEventSource)(IConsole *pThis, IEventSource * *eventSource); + + nsresult (*GetAttachedPCIDevices)(IConsole *pThis, PRUint32 *attachedPCIDevicesSize, IPCIDeviceAttachment * **attachedPCIDevices); + + nsresult (*GetUseHostClipboard)(IConsole *pThis, PRBool *useHostClipboard); + nsresult (*SetUseHostClipboard)(IConsole *pThis, PRBool useHostClipboard); + + nsresult (*GetEmulatedUSB)(IConsole *pThis, IEmulatedUSB * *emulatedUSB); + + nsresult (*GetInternalAndReservedAttribute1IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IConsole)(IConsole *pThis, PRUint32 *reserved); + + nsresult (*PowerUp)( + IConsole *pThis, + IProgress * * progress + ); + + nsresult (*PowerUpPaused)( + IConsole *pThis, + IProgress * * progress + ); + + nsresult (*PowerDown)( + IConsole *pThis, + IProgress * * progress + ); + + nsresult (*Reset)(IConsole *pThis ); + + nsresult (*Pause)(IConsole *pThis ); + + nsresult (*Resume)(IConsole *pThis ); + + nsresult (*PowerButton)(IConsole *pThis ); + + nsresult (*SleepButton)(IConsole *pThis ); + + nsresult (*GetPowerButtonHandled)( + IConsole *pThis, + PRBool * handled + ); + + nsresult (*GetGuestEnteredACPIMode)( + IConsole *pThis, + PRBool * entered + ); + + nsresult (*GetDeviceActivity)( + IConsole *pThis, + PRUint32 typeSize, + PRUint32* type, + PRUint32 *activitySize, + PRUint32** activity + ); + + nsresult (*AttachUSBDevice)( + IConsole *pThis, + PRUnichar * id, + PRUnichar * captureFilename + ); + + nsresult (*DetachUSBDevice)( + IConsole *pThis, + PRUnichar * id, + IUSBDevice * * device + ); + + nsresult (*FindUSBDeviceByAddress)( + IConsole *pThis, + PRUnichar * name, + IUSBDevice * * device + ); + + nsresult (*FindUSBDeviceById)( + IConsole *pThis, + PRUnichar * id, + IUSBDevice * * device + ); + + nsresult (*CreateSharedFolder)( + IConsole *pThis, + PRUnichar * name, + PRUnichar * hostPath, + PRBool writable, + PRBool automount, + PRUnichar * autoMountPoint + ); + + nsresult (*RemoveSharedFolder)( + IConsole *pThis, + PRUnichar * name + ); + + nsresult (*Teleport)( + IConsole *pThis, + PRUnichar * hostname, + PRUint32 tcpport, + PRUnichar * password, + PRUint32 maxDowntime, + IProgress * * progress + ); + + nsresult (*AddDiskEncryptionPassword)( + IConsole *pThis, + PRUnichar * id, + PRUnichar * password, + PRBool clearOnSuspend + ); + + nsresult (*AddDiskEncryptionPasswords)( + IConsole *pThis, + PRUint32 idsSize, + PRUnichar ** ids, + PRUint32 passwordsSize, + PRUnichar ** passwords, + PRBool clearOnSuspend + ); + + nsresult (*RemoveDiskEncryptionPassword)( + IConsole *pThis, + PRUnichar * id + ); + + nsresult (*ClearAllDiskEncryptionPasswords)(IConsole *pThis ); + + nsresult (*InternalAndReservedMethod1IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod2IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod3IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod4IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod5IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod6IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod7IConsole)(IConsole *pThis); + + nsresult (*InternalAndReservedMethod8IConsole)(IConsole *pThis); + +}; +# define IConsole_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IConsole_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IConsole_Release(p) ((p)->lpVtbl->Release(p)) +# define IConsole_get_Machine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define IConsole_GetMachine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define IConsole_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IConsole_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IConsole_get_Guest(p, aGuest) ((p)->lpVtbl->GetGuest(p, aGuest)) +# define IConsole_GetGuest(p, aGuest) ((p)->lpVtbl->GetGuest(p, aGuest)) +# define IConsole_get_Keyboard(p, aKeyboard) ((p)->lpVtbl->GetKeyboard(p, aKeyboard)) +# define IConsole_GetKeyboard(p, aKeyboard) ((p)->lpVtbl->GetKeyboard(p, aKeyboard)) +# define IConsole_get_Mouse(p, aMouse) ((p)->lpVtbl->GetMouse(p, aMouse)) +# define IConsole_GetMouse(p, aMouse) ((p)->lpVtbl->GetMouse(p, aMouse)) +# define IConsole_get_Display(p, aDisplay) ((p)->lpVtbl->GetDisplay(p, aDisplay)) +# define IConsole_GetDisplay(p, aDisplay) ((p)->lpVtbl->GetDisplay(p, aDisplay)) +# define IConsole_get_Debugger(p, aDebugger) ((p)->lpVtbl->GetDebugger(p, aDebugger)) +# define IConsole_GetDebugger(p, aDebugger) ((p)->lpVtbl->GetDebugger(p, aDebugger)) +# define IConsole_get_USBDevices(p, aUSBDevices) ((p)->lpVtbl->GetUSBDevices(p, aUSBDevices)) +# define IConsole_GetUSBDevices(p, aUSBDevices) ((p)->lpVtbl->GetUSBDevices(p, aUSBDevices)) +# define IConsole_get_RemoteUSBDevices(p, aRemoteUSBDevices) ((p)->lpVtbl->GetRemoteUSBDevices(p, aRemoteUSBDevices)) +# define IConsole_GetRemoteUSBDevices(p, aRemoteUSBDevices) ((p)->lpVtbl->GetRemoteUSBDevices(p, aRemoteUSBDevices)) +# define IConsole_get_SharedFolders(p, aSharedFolders) ((p)->lpVtbl->GetSharedFolders(p, aSharedFolders)) +# define IConsole_GetSharedFolders(p, aSharedFolders) ((p)->lpVtbl->GetSharedFolders(p, aSharedFolders)) +# define IConsole_get_VRDEServerInfo(p, aVRDEServerInfo) ((p)->lpVtbl->GetVRDEServerInfo(p, aVRDEServerInfo)) +# define IConsole_GetVRDEServerInfo(p, aVRDEServerInfo) ((p)->lpVtbl->GetVRDEServerInfo(p, aVRDEServerInfo)) +# define IConsole_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IConsole_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IConsole_get_AttachedPCIDevices(p, aAttachedPCIDevices) ((p)->lpVtbl->GetAttachedPCIDevices(p, aAttachedPCIDevices)) +# define IConsole_GetAttachedPCIDevices(p, aAttachedPCIDevices) ((p)->lpVtbl->GetAttachedPCIDevices(p, aAttachedPCIDevices)) +# define IConsole_get_UseHostClipboard(p, aUseHostClipboard) ((p)->lpVtbl->GetUseHostClipboard(p, aUseHostClipboard)) +# define IConsole_GetUseHostClipboard(p, aUseHostClipboard) ((p)->lpVtbl->GetUseHostClipboard(p, aUseHostClipboard)) +# define IConsole_put_UseHostClipboard(p, aUseHostClipboard) ((p)->lpVtbl->SetUseHostClipboard(p, aUseHostClipboard)) +# define IConsole_SetUseHostClipboard(p, aUseHostClipboard) ((p)->lpVtbl->SetUseHostClipboard(p, aUseHostClipboard)) +# define IConsole_get_EmulatedUSB(p, aEmulatedUSB) ((p)->lpVtbl->GetEmulatedUSB(p, aEmulatedUSB)) +# define IConsole_GetEmulatedUSB(p, aEmulatedUSB) ((p)->lpVtbl->GetEmulatedUSB(p, aEmulatedUSB)) +# define IConsole_PowerUp(p, aProgress) ((p)->lpVtbl->PowerUp(p, aProgress)) +# define IConsole_PowerUpPaused(p, aProgress) ((p)->lpVtbl->PowerUpPaused(p, aProgress)) +# define IConsole_PowerDown(p, aProgress) ((p)->lpVtbl->PowerDown(p, aProgress)) +# define IConsole_Reset(p) ((p)->lpVtbl->Reset(p)) +# define IConsole_Pause(p) ((p)->lpVtbl->Pause(p)) +# define IConsole_Resume(p) ((p)->lpVtbl->Resume(p)) +# define IConsole_PowerButton(p) ((p)->lpVtbl->PowerButton(p)) +# define IConsole_SleepButton(p) ((p)->lpVtbl->SleepButton(p)) +# define IConsole_GetPowerButtonHandled(p, aHandled) ((p)->lpVtbl->GetPowerButtonHandled(p, aHandled)) +# define IConsole_GetGuestEnteredACPIMode(p, aEntered) ((p)->lpVtbl->GetGuestEnteredACPIMode(p, aEntered)) +# define IConsole_GetDeviceActivity(p, aType, aActivity) ((p)->lpVtbl->GetDeviceActivity(p, aType, aActivity)) +# define IConsole_AttachUSBDevice(p, aId, aCaptureFilename) ((p)->lpVtbl->AttachUSBDevice(p, aId, aCaptureFilename)) +# define IConsole_DetachUSBDevice(p, aId, aDevice) ((p)->lpVtbl->DetachUSBDevice(p, aId, aDevice)) +# define IConsole_FindUSBDeviceByAddress(p, aName, aDevice) ((p)->lpVtbl->FindUSBDeviceByAddress(p, aName, aDevice)) +# define IConsole_FindUSBDeviceById(p, aId, aDevice) ((p)->lpVtbl->FindUSBDeviceById(p, aId, aDevice)) +# define IConsole_CreateSharedFolder(p, aName, aHostPath, aWritable, aAutomount, aAutoMountPoint) ((p)->lpVtbl->CreateSharedFolder(p, aName, aHostPath, aWritable, aAutomount, aAutoMountPoint)) +# define IConsole_RemoveSharedFolder(p, aName) ((p)->lpVtbl->RemoveSharedFolder(p, aName)) +# define IConsole_Teleport(p, aHostname, aTcpport, aPassword, aMaxDowntime, aProgress) ((p)->lpVtbl->Teleport(p, aHostname, aTcpport, aPassword, aMaxDowntime, aProgress)) +# define IConsole_AddDiskEncryptionPassword(p, aId, aPassword, aClearOnSuspend) ((p)->lpVtbl->AddDiskEncryptionPassword(p, aId, aPassword, aClearOnSuspend)) +# define IConsole_AddDiskEncryptionPasswords(p, aIds, aPasswords, aClearOnSuspend) ((p)->lpVtbl->AddDiskEncryptionPasswords(p, aIds, aPasswords, aClearOnSuspend)) +# define IConsole_RemoveDiskEncryptionPassword(p, aId) ((p)->lpVtbl->RemoveDiskEncryptionPassword(p, aId)) +# define IConsole_ClearAllDiskEncryptionPasswords(p) ((p)->lpVtbl->ClearAllDiskEncryptionPasswords(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IConsole +{ +# ifndef VBOX_WITH_GLUE + struct IConsole_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IConsoleVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IConsole declaration */ + + +/* Start of struct IHostNetworkInterface declaration */ +# define IHOSTNETWORKINTERFACE_IID_STR "455f8c45-44a0-a470-ba20-27890b96dba9" +# define IHOSTNETWORKINTERFACE_IID { \ + 0x455f8c45, 0x44a0, 0xa470, \ + { 0xba, 0x20, 0x27, 0x89, 0x0b, 0x96, 0xdb, 0xa9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostNetworkInterface); +# ifndef VBOX_WITH_GLUE +struct IHostNetworkInterface_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IHostNetworkInterface *pThis, PRUnichar * *name); + + nsresult (*GetShortName)(IHostNetworkInterface *pThis, PRUnichar * *shortName); + + nsresult (*GetId)(IHostNetworkInterface *pThis, PRUnichar * *id); + + nsresult (*GetNetworkName)(IHostNetworkInterface *pThis, PRUnichar * *networkName); + + nsresult (*GetDHCPEnabled)(IHostNetworkInterface *pThis, PRBool *DHCPEnabled); + + nsresult (*GetIPAddress)(IHostNetworkInterface *pThis, PRUnichar * *IPAddress); + + nsresult (*GetNetworkMask)(IHostNetworkInterface *pThis, PRUnichar * *networkMask); + + nsresult (*GetIPV6Supported)(IHostNetworkInterface *pThis, PRBool *IPV6Supported); + + nsresult (*GetIPV6Address)(IHostNetworkInterface *pThis, PRUnichar * *IPV6Address); + + nsresult (*GetIPV6NetworkMaskPrefixLength)(IHostNetworkInterface *pThis, PRUint32 *IPV6NetworkMaskPrefixLength); + + nsresult (*GetHardwareAddress)(IHostNetworkInterface *pThis, PRUnichar * *hardwareAddress); + + nsresult (*GetMediumType)(IHostNetworkInterface *pThis, PRUint32 *mediumType); + + nsresult (*GetStatus)(IHostNetworkInterface *pThis, PRUint32 *status); + + nsresult (*GetInterfaceType)(IHostNetworkInterface *pThis, PRUint32 *interfaceType); + + nsresult (*GetWireless)(IHostNetworkInterface *pThis, PRBool *wireless); + + nsresult (*GetInternalAndReservedAttribute1IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*EnableStaticIPConfig)( + IHostNetworkInterface *pThis, + PRUnichar * IPAddress, + PRUnichar * networkMask + ); + + nsresult (*EnableStaticIPConfigV6)( + IHostNetworkInterface *pThis, + PRUnichar * IPV6Address, + PRUint32 IPV6NetworkMaskPrefixLength + ); + + nsresult (*EnableDynamicIPConfig)(IHostNetworkInterface *pThis ); + + nsresult (*DHCPRediscover)(IHostNetworkInterface *pThis ); + + nsresult (*InternalAndReservedMethod1IHostNetworkInterface)(IHostNetworkInterface *pThis); + + nsresult (*InternalAndReservedMethod2IHostNetworkInterface)(IHostNetworkInterface *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostNetworkInterfaceVtbl +{ + nsresult (*QueryInterface)(IHostNetworkInterface *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostNetworkInterface *pThis); + nsrefcnt (*Release)(IHostNetworkInterface *pThis); + nsresult (*GetName)(IHostNetworkInterface *pThis, PRUnichar * *name); + + nsresult (*GetShortName)(IHostNetworkInterface *pThis, PRUnichar * *shortName); + + nsresult (*GetId)(IHostNetworkInterface *pThis, PRUnichar * *id); + + nsresult (*GetNetworkName)(IHostNetworkInterface *pThis, PRUnichar * *networkName); + + nsresult (*GetDHCPEnabled)(IHostNetworkInterface *pThis, PRBool *DHCPEnabled); + + nsresult (*GetIPAddress)(IHostNetworkInterface *pThis, PRUnichar * *IPAddress); + + nsresult (*GetNetworkMask)(IHostNetworkInterface *pThis, PRUnichar * *networkMask); + + nsresult (*GetIPV6Supported)(IHostNetworkInterface *pThis, PRBool *IPV6Supported); + + nsresult (*GetIPV6Address)(IHostNetworkInterface *pThis, PRUnichar * *IPV6Address); + + nsresult (*GetIPV6NetworkMaskPrefixLength)(IHostNetworkInterface *pThis, PRUint32 *IPV6NetworkMaskPrefixLength); + + nsresult (*GetHardwareAddress)(IHostNetworkInterface *pThis, PRUnichar * *hardwareAddress); + + nsresult (*GetMediumType)(IHostNetworkInterface *pThis, PRUint32 *mediumType); + + nsresult (*GetStatus)(IHostNetworkInterface *pThis, PRUint32 *status); + + nsresult (*GetInterfaceType)(IHostNetworkInterface *pThis, PRUint32 *interfaceType); + + nsresult (*GetWireless)(IHostNetworkInterface *pThis, PRBool *wireless); + + nsresult (*GetInternalAndReservedAttribute1IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostNetworkInterface)(IHostNetworkInterface *pThis, PRUint32 *reserved); + + nsresult (*EnableStaticIPConfig)( + IHostNetworkInterface *pThis, + PRUnichar * IPAddress, + PRUnichar * networkMask + ); + + nsresult (*EnableStaticIPConfigV6)( + IHostNetworkInterface *pThis, + PRUnichar * IPV6Address, + PRUint32 IPV6NetworkMaskPrefixLength + ); + + nsresult (*EnableDynamicIPConfig)(IHostNetworkInterface *pThis ); + + nsresult (*DHCPRediscover)(IHostNetworkInterface *pThis ); + + nsresult (*InternalAndReservedMethod1IHostNetworkInterface)(IHostNetworkInterface *pThis); + + nsresult (*InternalAndReservedMethod2IHostNetworkInterface)(IHostNetworkInterface *pThis); + +}; +# define IHostNetworkInterface_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostNetworkInterface_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostNetworkInterface_Release(p) ((p)->lpVtbl->Release(p)) +# define IHostNetworkInterface_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IHostNetworkInterface_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IHostNetworkInterface_get_ShortName(p, aShortName) ((p)->lpVtbl->GetShortName(p, aShortName)) +# define IHostNetworkInterface_GetShortName(p, aShortName) ((p)->lpVtbl->GetShortName(p, aShortName)) +# define IHostNetworkInterface_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IHostNetworkInterface_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IHostNetworkInterface_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define IHostNetworkInterface_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define IHostNetworkInterface_get_DHCPEnabled(p, aDHCPEnabled) ((p)->lpVtbl->GetDHCPEnabled(p, aDHCPEnabled)) +# define IHostNetworkInterface_GetDHCPEnabled(p, aDHCPEnabled) ((p)->lpVtbl->GetDHCPEnabled(p, aDHCPEnabled)) +# define IHostNetworkInterface_get_IPAddress(p, aIPAddress) ((p)->lpVtbl->GetIPAddress(p, aIPAddress)) +# define IHostNetworkInterface_GetIPAddress(p, aIPAddress) ((p)->lpVtbl->GetIPAddress(p, aIPAddress)) +# define IHostNetworkInterface_get_NetworkMask(p, aNetworkMask) ((p)->lpVtbl->GetNetworkMask(p, aNetworkMask)) +# define IHostNetworkInterface_GetNetworkMask(p, aNetworkMask) ((p)->lpVtbl->GetNetworkMask(p, aNetworkMask)) +# define IHostNetworkInterface_get_IPV6Supported(p, aIPV6Supported) ((p)->lpVtbl->GetIPV6Supported(p, aIPV6Supported)) +# define IHostNetworkInterface_GetIPV6Supported(p, aIPV6Supported) ((p)->lpVtbl->GetIPV6Supported(p, aIPV6Supported)) +# define IHostNetworkInterface_get_IPV6Address(p, aIPV6Address) ((p)->lpVtbl->GetIPV6Address(p, aIPV6Address)) +# define IHostNetworkInterface_GetIPV6Address(p, aIPV6Address) ((p)->lpVtbl->GetIPV6Address(p, aIPV6Address)) +# define IHostNetworkInterface_get_IPV6NetworkMaskPrefixLength(p, aIPV6NetworkMaskPrefixLength) ((p)->lpVtbl->GetIPV6NetworkMaskPrefixLength(p, aIPV6NetworkMaskPrefixLength)) +# define IHostNetworkInterface_GetIPV6NetworkMaskPrefixLength(p, aIPV6NetworkMaskPrefixLength) ((p)->lpVtbl->GetIPV6NetworkMaskPrefixLength(p, aIPV6NetworkMaskPrefixLength)) +# define IHostNetworkInterface_get_HardwareAddress(p, aHardwareAddress) ((p)->lpVtbl->GetHardwareAddress(p, aHardwareAddress)) +# define IHostNetworkInterface_GetHardwareAddress(p, aHardwareAddress) ((p)->lpVtbl->GetHardwareAddress(p, aHardwareAddress)) +# define IHostNetworkInterface_get_MediumType(p, aMediumType) ((p)->lpVtbl->GetMediumType(p, aMediumType)) +# define IHostNetworkInterface_GetMediumType(p, aMediumType) ((p)->lpVtbl->GetMediumType(p, aMediumType)) +# define IHostNetworkInterface_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IHostNetworkInterface_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IHostNetworkInterface_get_InterfaceType(p, aInterfaceType) ((p)->lpVtbl->GetInterfaceType(p, aInterfaceType)) +# define IHostNetworkInterface_GetInterfaceType(p, aInterfaceType) ((p)->lpVtbl->GetInterfaceType(p, aInterfaceType)) +# define IHostNetworkInterface_get_Wireless(p, aWireless) ((p)->lpVtbl->GetWireless(p, aWireless)) +# define IHostNetworkInterface_GetWireless(p, aWireless) ((p)->lpVtbl->GetWireless(p, aWireless)) +# define IHostNetworkInterface_EnableStaticIPConfig(p, aIPAddress, aNetworkMask) ((p)->lpVtbl->EnableStaticIPConfig(p, aIPAddress, aNetworkMask)) +# define IHostNetworkInterface_EnableStaticIPConfigV6(p, aIPV6Address, aIPV6NetworkMaskPrefixLength) ((p)->lpVtbl->EnableStaticIPConfigV6(p, aIPV6Address, aIPV6NetworkMaskPrefixLength)) +# define IHostNetworkInterface_EnableDynamicIPConfig(p) ((p)->lpVtbl->EnableDynamicIPConfig(p)) +# define IHostNetworkInterface_DHCPRediscover(p) ((p)->lpVtbl->DHCPRediscover(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostNetworkInterface +{ +# ifndef VBOX_WITH_GLUE + struct IHostNetworkInterface_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostNetworkInterfaceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostNetworkInterface declaration */ + + +/* Start of struct IHostVideoInputDevice declaration */ +# define IHOSTVIDEOINPUTDEVICE_IID_STR "e8c25d4d-ac97-4c16-b3e2-81bd8a57cc27" +# define IHOSTVIDEOINPUTDEVICE_IID { \ + 0xe8c25d4d, 0xac97, 0x4c16, \ + { 0xb3, 0xe2, 0x81, 0xbd, 0x8a, 0x57, 0xcc, 0x27 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostVideoInputDevice); +# ifndef VBOX_WITH_GLUE +struct IHostVideoInputDevice_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IHostVideoInputDevice *pThis, PRUnichar * *name); + + nsresult (*GetPath)(IHostVideoInputDevice *pThis, PRUnichar * *path); + + nsresult (*GetAlias)(IHostVideoInputDevice *pThis, PRUnichar * *alias); + + nsresult (*GetInternalAndReservedAttribute1IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostVideoInputDeviceVtbl +{ + nsresult (*QueryInterface)(IHostVideoInputDevice *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostVideoInputDevice *pThis); + nsrefcnt (*Release)(IHostVideoInputDevice *pThis); + nsresult (*GetName)(IHostVideoInputDevice *pThis, PRUnichar * *name); + + nsresult (*GetPath)(IHostVideoInputDevice *pThis, PRUnichar * *path); + + nsresult (*GetAlias)(IHostVideoInputDevice *pThis, PRUnichar * *alias); + + nsresult (*GetInternalAndReservedAttribute1IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostVideoInputDevice)(IHostVideoInputDevice *pThis, PRUint32 *reserved); + +}; +# define IHostVideoInputDevice_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostVideoInputDevice_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostVideoInputDevice_Release(p) ((p)->lpVtbl->Release(p)) +# define IHostVideoInputDevice_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IHostVideoInputDevice_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IHostVideoInputDevice_get_Path(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IHostVideoInputDevice_GetPath(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IHostVideoInputDevice_get_Alias(p, aAlias) ((p)->lpVtbl->GetAlias(p, aAlias)) +# define IHostVideoInputDevice_GetAlias(p, aAlias) ((p)->lpVtbl->GetAlias(p, aAlias)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostVideoInputDevice +{ +# ifndef VBOX_WITH_GLUE + struct IHostVideoInputDevice_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostVideoInputDeviceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostVideoInputDevice declaration */ + + +/* Start of struct IHostUpdate declaration */ +# define IHOSTUPDATE_IID_STR "6fa2671b-0547-448e-bc7c-94e9e173bf57" +# define IHOSTUPDATE_IID { \ + 0x6fa2671b, 0x0547, 0x448e, \ + { 0xbc, 0x7c, 0x94, 0xe9, 0xe1, 0x73, 0xbf, 0x57 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostUpdate); +# ifndef VBOX_WITH_GLUE +struct IHostUpdate_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetInternalAndReservedAttribute1IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute17IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute18IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute19IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute20IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute21IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute22IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute23IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute24IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod2IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod3IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod4IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod5IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod6IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod7IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod8IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod9IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod10IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod11IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod12IHostUpdate)(IHostUpdate *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostUpdateVtbl +{ + nsresult (*QueryInterface)(IHostUpdate *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostUpdate *pThis); + nsrefcnt (*Release)(IHostUpdate *pThis); + nsresult (*GetInternalAndReservedAttribute1IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute17IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute18IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute19IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute20IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute21IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute22IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute23IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute24IHostUpdate)(IHostUpdate *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod2IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod3IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod4IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod5IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod6IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod7IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod8IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod9IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod10IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod11IHostUpdate)(IHostUpdate *pThis); + + nsresult (*InternalAndReservedMethod12IHostUpdate)(IHostUpdate *pThis); + +}; +# define IHostUpdate_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostUpdate_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostUpdate_Release(p) ((p)->lpVtbl->Release(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostUpdate +{ +# ifndef VBOX_WITH_GLUE + struct IHostUpdate_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostUpdateVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostUpdate declaration */ + + +/* Start of struct IHost declaration */ +# define IHOST_IID_STR "16ced992-5fdc-4aba-aff5-6a39bbd7c38b" +# define IHOST_IID { \ + 0x16ced992, 0x5fdc, 0x4aba, \ + { 0xaf, 0xf5, 0x6a, 0x39, 0xbb, 0xd7, 0xc3, 0x8b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHost); +# ifndef VBOX_WITH_GLUE +struct IHost_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetDVDDrives)(IHost *pThis, PRUint32 *DVDDrivesSize, IMedium * **DVDDrives); + + nsresult (*GetFloppyDrives)(IHost *pThis, PRUint32 *floppyDrivesSize, IMedium * **floppyDrives); + + nsresult (*GetUSBDevices)(IHost *pThis, PRUint32 *USBDevicesSize, IHostUSBDevice * **USBDevices); + + nsresult (*GetUSBDeviceFilters)(IHost *pThis, PRUint32 *USBDeviceFiltersSize, IHostUSBDeviceFilter * **USBDeviceFilters); + + nsresult (*GetNetworkInterfaces)(IHost *pThis, PRUint32 *networkInterfacesSize, IHostNetworkInterface * **networkInterfaces); + + nsresult (*GetNameServers)(IHost *pThis, PRUint32 *nameServersSize, PRUnichar * **nameServers); + + nsresult (*GetDomainName)(IHost *pThis, PRUnichar * *domainName); + + nsresult (*GetSearchStrings)(IHost *pThis, PRUint32 *searchStringsSize, PRUnichar * **searchStrings); + + nsresult (*GetProcessorCount)(IHost *pThis, PRUint32 *processorCount); + + nsresult (*GetProcessorOnlineCount)(IHost *pThis, PRUint32 *processorOnlineCount); + + nsresult (*GetProcessorCoreCount)(IHost *pThis, PRUint32 *processorCoreCount); + + nsresult (*GetProcessorOnlineCoreCount)(IHost *pThis, PRUint32 *processorOnlineCoreCount); + + nsresult (*GetMemorySize)(IHost *pThis, PRUint32 *memorySize); + + nsresult (*GetMemoryAvailable)(IHost *pThis, PRUint32 *memoryAvailable); + + nsresult (*GetOperatingSystem)(IHost *pThis, PRUnichar * *operatingSystem); + + nsresult (*GetOSVersion)(IHost *pThis, PRUnichar * *OSVersion); + + nsresult (*GetUTCTime)(IHost *pThis, PRInt64 *UTCTime); + + nsresult (*GetAcceleration3DAvailable)(IHost *pThis, PRBool *acceleration3DAvailable); + + nsresult (*GetVideoInputDevices)(IHost *pThis, PRUint32 *videoInputDevicesSize, IHostVideoInputDevice * **videoInputDevices); + + nsresult (*GetUpdate)(IHost *pThis, IHostUpdate * *update); + + nsresult (*GetInternalAndReservedAttribute1IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetProcessorSpeed)( + IHost *pThis, + PRUint32 cpuId, + PRUint32 * speed + ); + + nsresult (*GetProcessorFeature)( + IHost *pThis, + PRUint32 feature, + PRBool * supported + ); + + nsresult (*GetProcessorDescription)( + IHost *pThis, + PRUint32 cpuId, + PRUnichar * * description + ); + + nsresult (*GetProcessorCPUIDLeaf)( + IHost *pThis, + PRUint32 cpuId, + PRUint32 leaf, + PRUint32 subLeaf, + PRUint32 * valEax, + PRUint32 * valEbx, + PRUint32 * valEcx, + PRUint32 * valEdx + ); + + nsresult (*CreateHostOnlyNetworkInterface)( + IHost *pThis, + IHostNetworkInterface * * hostInterface, + IProgress * * progress + ); + + nsresult (*RemoveHostOnlyNetworkInterface)( + IHost *pThis, + PRUnichar * id, + IProgress * * progress + ); + + nsresult (*CreateUSBDeviceFilter)( + IHost *pThis, + PRUnichar * name, + IHostUSBDeviceFilter * * filter + ); + + nsresult (*InsertUSBDeviceFilter)( + IHost *pThis, + PRUint32 position, + IHostUSBDeviceFilter * filter + ); + + nsresult (*RemoveUSBDeviceFilter)( + IHost *pThis, + PRUint32 position + ); + + nsresult (*FindHostDVDDrive)( + IHost *pThis, + PRUnichar * name, + IMedium * * drive + ); + + nsresult (*FindHostFloppyDrive)( + IHost *pThis, + PRUnichar * name, + IMedium * * drive + ); + + nsresult (*FindHostNetworkInterfaceByName)( + IHost *pThis, + PRUnichar * name, + IHostNetworkInterface * * networkInterface + ); + + nsresult (*FindHostNetworkInterfaceById)( + IHost *pThis, + PRUnichar * id, + IHostNetworkInterface * * networkInterface + ); + + nsresult (*FindHostNetworkInterfacesOfType)( + IHost *pThis, + PRUint32 type, + PRUint32 *networkInterfacesSize, + IHostNetworkInterface *** networkInterfaces + ); + + nsresult (*FindUSBDeviceById)( + IHost *pThis, + PRUnichar * id, + IHostUSBDevice * * device + ); + + nsresult (*FindUSBDeviceByAddress)( + IHost *pThis, + PRUnichar * name, + IHostUSBDevice * * device + ); + + nsresult (*GenerateMACAddress)( + IHost *pThis, + PRUnichar * * address + ); + + nsresult (*AddUSBDeviceSource)( + IHost *pThis, + PRUnichar * backend, + PRUnichar * id, + PRUnichar * address, + PRUint32 propertyNamesSize, + PRUnichar ** propertyNames, + PRUint32 propertyValuesSize, + PRUnichar ** propertyValues + ); + + nsresult (*RemoveUSBDeviceSource)( + IHost *pThis, + PRUnichar * id + ); + + nsresult (*InternalAndReservedMethod1IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod2IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod3IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod4IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod5IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod6IHost)(IHost *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostVtbl +{ + nsresult (*QueryInterface)(IHost *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHost *pThis); + nsrefcnt (*Release)(IHost *pThis); + nsresult (*GetDVDDrives)(IHost *pThis, PRUint32 *DVDDrivesSize, IMedium * **DVDDrives); + + nsresult (*GetFloppyDrives)(IHost *pThis, PRUint32 *floppyDrivesSize, IMedium * **floppyDrives); + + nsresult (*GetUSBDevices)(IHost *pThis, PRUint32 *USBDevicesSize, IHostUSBDevice * **USBDevices); + + nsresult (*GetUSBDeviceFilters)(IHost *pThis, PRUint32 *USBDeviceFiltersSize, IHostUSBDeviceFilter * **USBDeviceFilters); + + nsresult (*GetNetworkInterfaces)(IHost *pThis, PRUint32 *networkInterfacesSize, IHostNetworkInterface * **networkInterfaces); + + nsresult (*GetNameServers)(IHost *pThis, PRUint32 *nameServersSize, PRUnichar * **nameServers); + + nsresult (*GetDomainName)(IHost *pThis, PRUnichar * *domainName); + + nsresult (*GetSearchStrings)(IHost *pThis, PRUint32 *searchStringsSize, PRUnichar * **searchStrings); + + nsresult (*GetProcessorCount)(IHost *pThis, PRUint32 *processorCount); + + nsresult (*GetProcessorOnlineCount)(IHost *pThis, PRUint32 *processorOnlineCount); + + nsresult (*GetProcessorCoreCount)(IHost *pThis, PRUint32 *processorCoreCount); + + nsresult (*GetProcessorOnlineCoreCount)(IHost *pThis, PRUint32 *processorOnlineCoreCount); + + nsresult (*GetMemorySize)(IHost *pThis, PRUint32 *memorySize); + + nsresult (*GetMemoryAvailable)(IHost *pThis, PRUint32 *memoryAvailable); + + nsresult (*GetOperatingSystem)(IHost *pThis, PRUnichar * *operatingSystem); + + nsresult (*GetOSVersion)(IHost *pThis, PRUnichar * *OSVersion); + + nsresult (*GetUTCTime)(IHost *pThis, PRInt64 *UTCTime); + + nsresult (*GetAcceleration3DAvailable)(IHost *pThis, PRBool *acceleration3DAvailable); + + nsresult (*GetVideoInputDevices)(IHost *pThis, PRUint32 *videoInputDevicesSize, IHostVideoInputDevice * **videoInputDevices); + + nsresult (*GetUpdate)(IHost *pThis, IHostUpdate * *update); + + nsresult (*GetInternalAndReservedAttribute1IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IHost)(IHost *pThis, PRUint32 *reserved); + + nsresult (*GetProcessorSpeed)( + IHost *pThis, + PRUint32 cpuId, + PRUint32 * speed + ); + + nsresult (*GetProcessorFeature)( + IHost *pThis, + PRUint32 feature, + PRBool * supported + ); + + nsresult (*GetProcessorDescription)( + IHost *pThis, + PRUint32 cpuId, + PRUnichar * * description + ); + + nsresult (*GetProcessorCPUIDLeaf)( + IHost *pThis, + PRUint32 cpuId, + PRUint32 leaf, + PRUint32 subLeaf, + PRUint32 * valEax, + PRUint32 * valEbx, + PRUint32 * valEcx, + PRUint32 * valEdx + ); + + nsresult (*CreateHostOnlyNetworkInterface)( + IHost *pThis, + IHostNetworkInterface * * hostInterface, + IProgress * * progress + ); + + nsresult (*RemoveHostOnlyNetworkInterface)( + IHost *pThis, + PRUnichar * id, + IProgress * * progress + ); + + nsresult (*CreateUSBDeviceFilter)( + IHost *pThis, + PRUnichar * name, + IHostUSBDeviceFilter * * filter + ); + + nsresult (*InsertUSBDeviceFilter)( + IHost *pThis, + PRUint32 position, + IHostUSBDeviceFilter * filter + ); + + nsresult (*RemoveUSBDeviceFilter)( + IHost *pThis, + PRUint32 position + ); + + nsresult (*FindHostDVDDrive)( + IHost *pThis, + PRUnichar * name, + IMedium * * drive + ); + + nsresult (*FindHostFloppyDrive)( + IHost *pThis, + PRUnichar * name, + IMedium * * drive + ); + + nsresult (*FindHostNetworkInterfaceByName)( + IHost *pThis, + PRUnichar * name, + IHostNetworkInterface * * networkInterface + ); + + nsresult (*FindHostNetworkInterfaceById)( + IHost *pThis, + PRUnichar * id, + IHostNetworkInterface * * networkInterface + ); + + nsresult (*FindHostNetworkInterfacesOfType)( + IHost *pThis, + PRUint32 type, + PRUint32 *networkInterfacesSize, + IHostNetworkInterface *** networkInterfaces + ); + + nsresult (*FindUSBDeviceById)( + IHost *pThis, + PRUnichar * id, + IHostUSBDevice * * device + ); + + nsresult (*FindUSBDeviceByAddress)( + IHost *pThis, + PRUnichar * name, + IHostUSBDevice * * device + ); + + nsresult (*GenerateMACAddress)( + IHost *pThis, + PRUnichar * * address + ); + + nsresult (*AddUSBDeviceSource)( + IHost *pThis, + PRUnichar * backend, + PRUnichar * id, + PRUnichar * address, + PRUint32 propertyNamesSize, + PRUnichar ** propertyNames, + PRUint32 propertyValuesSize, + PRUnichar ** propertyValues + ); + + nsresult (*RemoveUSBDeviceSource)( + IHost *pThis, + PRUnichar * id + ); + + nsresult (*InternalAndReservedMethod1IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod2IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod3IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod4IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod5IHost)(IHost *pThis); + + nsresult (*InternalAndReservedMethod6IHost)(IHost *pThis); + +}; +# define IHost_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHost_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHost_Release(p) ((p)->lpVtbl->Release(p)) +# define IHost_get_DVDDrives(p, aDVDDrives) ((p)->lpVtbl->GetDVDDrives(p, aDVDDrives)) +# define IHost_GetDVDDrives(p, aDVDDrives) ((p)->lpVtbl->GetDVDDrives(p, aDVDDrives)) +# define IHost_get_FloppyDrives(p, aFloppyDrives) ((p)->lpVtbl->GetFloppyDrives(p, aFloppyDrives)) +# define IHost_GetFloppyDrives(p, aFloppyDrives) ((p)->lpVtbl->GetFloppyDrives(p, aFloppyDrives)) +# define IHost_get_USBDevices(p, aUSBDevices) ((p)->lpVtbl->GetUSBDevices(p, aUSBDevices)) +# define IHost_GetUSBDevices(p, aUSBDevices) ((p)->lpVtbl->GetUSBDevices(p, aUSBDevices)) +# define IHost_get_USBDeviceFilters(p, aUSBDeviceFilters) ((p)->lpVtbl->GetUSBDeviceFilters(p, aUSBDeviceFilters)) +# define IHost_GetUSBDeviceFilters(p, aUSBDeviceFilters) ((p)->lpVtbl->GetUSBDeviceFilters(p, aUSBDeviceFilters)) +# define IHost_get_NetworkInterfaces(p, aNetworkInterfaces) ((p)->lpVtbl->GetNetworkInterfaces(p, aNetworkInterfaces)) +# define IHost_GetNetworkInterfaces(p, aNetworkInterfaces) ((p)->lpVtbl->GetNetworkInterfaces(p, aNetworkInterfaces)) +# define IHost_get_NameServers(p, aNameServers) ((p)->lpVtbl->GetNameServers(p, aNameServers)) +# define IHost_GetNameServers(p, aNameServers) ((p)->lpVtbl->GetNameServers(p, aNameServers)) +# define IHost_get_DomainName(p, aDomainName) ((p)->lpVtbl->GetDomainName(p, aDomainName)) +# define IHost_GetDomainName(p, aDomainName) ((p)->lpVtbl->GetDomainName(p, aDomainName)) +# define IHost_get_SearchStrings(p, aSearchStrings) ((p)->lpVtbl->GetSearchStrings(p, aSearchStrings)) +# define IHost_GetSearchStrings(p, aSearchStrings) ((p)->lpVtbl->GetSearchStrings(p, aSearchStrings)) +# define IHost_get_ProcessorCount(p, aProcessorCount) ((p)->lpVtbl->GetProcessorCount(p, aProcessorCount)) +# define IHost_GetProcessorCount(p, aProcessorCount) ((p)->lpVtbl->GetProcessorCount(p, aProcessorCount)) +# define IHost_get_ProcessorOnlineCount(p, aProcessorOnlineCount) ((p)->lpVtbl->GetProcessorOnlineCount(p, aProcessorOnlineCount)) +# define IHost_GetProcessorOnlineCount(p, aProcessorOnlineCount) ((p)->lpVtbl->GetProcessorOnlineCount(p, aProcessorOnlineCount)) +# define IHost_get_ProcessorCoreCount(p, aProcessorCoreCount) ((p)->lpVtbl->GetProcessorCoreCount(p, aProcessorCoreCount)) +# define IHost_GetProcessorCoreCount(p, aProcessorCoreCount) ((p)->lpVtbl->GetProcessorCoreCount(p, aProcessorCoreCount)) +# define IHost_get_ProcessorOnlineCoreCount(p, aProcessorOnlineCoreCount) ((p)->lpVtbl->GetProcessorOnlineCoreCount(p, aProcessorOnlineCoreCount)) +# define IHost_GetProcessorOnlineCoreCount(p, aProcessorOnlineCoreCount) ((p)->lpVtbl->GetProcessorOnlineCoreCount(p, aProcessorOnlineCoreCount)) +# define IHost_get_MemorySize(p, aMemorySize) ((p)->lpVtbl->GetMemorySize(p, aMemorySize)) +# define IHost_GetMemorySize(p, aMemorySize) ((p)->lpVtbl->GetMemorySize(p, aMemorySize)) +# define IHost_get_MemoryAvailable(p, aMemoryAvailable) ((p)->lpVtbl->GetMemoryAvailable(p, aMemoryAvailable)) +# define IHost_GetMemoryAvailable(p, aMemoryAvailable) ((p)->lpVtbl->GetMemoryAvailable(p, aMemoryAvailable)) +# define IHost_get_OperatingSystem(p, aOperatingSystem) ((p)->lpVtbl->GetOperatingSystem(p, aOperatingSystem)) +# define IHost_GetOperatingSystem(p, aOperatingSystem) ((p)->lpVtbl->GetOperatingSystem(p, aOperatingSystem)) +# define IHost_get_OSVersion(p, aOSVersion) ((p)->lpVtbl->GetOSVersion(p, aOSVersion)) +# define IHost_GetOSVersion(p, aOSVersion) ((p)->lpVtbl->GetOSVersion(p, aOSVersion)) +# define IHost_get_UTCTime(p, aUTCTime) ((p)->lpVtbl->GetUTCTime(p, aUTCTime)) +# define IHost_GetUTCTime(p, aUTCTime) ((p)->lpVtbl->GetUTCTime(p, aUTCTime)) +# define IHost_get_Acceleration3DAvailable(p, aAcceleration3DAvailable) ((p)->lpVtbl->GetAcceleration3DAvailable(p, aAcceleration3DAvailable)) +# define IHost_GetAcceleration3DAvailable(p, aAcceleration3DAvailable) ((p)->lpVtbl->GetAcceleration3DAvailable(p, aAcceleration3DAvailable)) +# define IHost_get_VideoInputDevices(p, aVideoInputDevices) ((p)->lpVtbl->GetVideoInputDevices(p, aVideoInputDevices)) +# define IHost_GetVideoInputDevices(p, aVideoInputDevices) ((p)->lpVtbl->GetVideoInputDevices(p, aVideoInputDevices)) +# define IHost_get_Update(p, aUpdate) ((p)->lpVtbl->GetUpdate(p, aUpdate)) +# define IHost_GetUpdate(p, aUpdate) ((p)->lpVtbl->GetUpdate(p, aUpdate)) +# define IHost_GetProcessorSpeed(p, aCpuId, aSpeed) ((p)->lpVtbl->GetProcessorSpeed(p, aCpuId, aSpeed)) +# define IHost_GetProcessorFeature(p, aFeature, aSupported) ((p)->lpVtbl->GetProcessorFeature(p, aFeature, aSupported)) +# define IHost_GetProcessorDescription(p, aCpuId, aDescription) ((p)->lpVtbl->GetProcessorDescription(p, aCpuId, aDescription)) +# define IHost_GetProcessorCPUIDLeaf(p, aCpuId, aLeaf, aSubLeaf, aValEax, aValEbx, aValEcx, aValEdx) ((p)->lpVtbl->GetProcessorCPUIDLeaf(p, aCpuId, aLeaf, aSubLeaf, aValEax, aValEbx, aValEcx, aValEdx)) +# define IHost_CreateHostOnlyNetworkInterface(p, aHostInterface, aProgress) ((p)->lpVtbl->CreateHostOnlyNetworkInterface(p, aHostInterface, aProgress)) +# define IHost_RemoveHostOnlyNetworkInterface(p, aId, aProgress) ((p)->lpVtbl->RemoveHostOnlyNetworkInterface(p, aId, aProgress)) +# define IHost_CreateUSBDeviceFilter(p, aName, aFilter) ((p)->lpVtbl->CreateUSBDeviceFilter(p, aName, aFilter)) +# define IHost_InsertUSBDeviceFilter(p, aPosition, aFilter) ((p)->lpVtbl->InsertUSBDeviceFilter(p, aPosition, aFilter)) +# define IHost_RemoveUSBDeviceFilter(p, aPosition) ((p)->lpVtbl->RemoveUSBDeviceFilter(p, aPosition)) +# define IHost_FindHostDVDDrive(p, aName, aDrive) ((p)->lpVtbl->FindHostDVDDrive(p, aName, aDrive)) +# define IHost_FindHostFloppyDrive(p, aName, aDrive) ((p)->lpVtbl->FindHostFloppyDrive(p, aName, aDrive)) +# define IHost_FindHostNetworkInterfaceByName(p, aName, aNetworkInterface) ((p)->lpVtbl->FindHostNetworkInterfaceByName(p, aName, aNetworkInterface)) +# define IHost_FindHostNetworkInterfaceById(p, aId, aNetworkInterface) ((p)->lpVtbl->FindHostNetworkInterfaceById(p, aId, aNetworkInterface)) +# define IHost_FindHostNetworkInterfacesOfType(p, aType, aNetworkInterfaces) ((p)->lpVtbl->FindHostNetworkInterfacesOfType(p, aType, aNetworkInterfaces)) +# define IHost_FindUSBDeviceById(p, aId, aDevice) ((p)->lpVtbl->FindUSBDeviceById(p, aId, aDevice)) +# define IHost_FindUSBDeviceByAddress(p, aName, aDevice) ((p)->lpVtbl->FindUSBDeviceByAddress(p, aName, aDevice)) +# define IHost_GenerateMACAddress(p, aAddress) ((p)->lpVtbl->GenerateMACAddress(p, aAddress)) +# define IHost_AddUSBDeviceSource(p, aBackend, aId, aAddress, aPropertyNames, aPropertyValues) ((p)->lpVtbl->AddUSBDeviceSource(p, aBackend, aId, aAddress, aPropertyNames, aPropertyValues)) +# define IHost_RemoveUSBDeviceSource(p, aId) ((p)->lpVtbl->RemoveUSBDeviceSource(p, aId)) +# endif /* VBOX_WITH_GLUE */ + +interface IHost +{ +# ifndef VBOX_WITH_GLUE + struct IHost_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHost declaration */ + + +/* Start of struct ISystemProperties declaration */ +# define ISYSTEMPROPERTIES_IID_STR "027bc463-929c-40e8-bf16-fea557cd8e7e" +# define ISYSTEMPROPERTIES_IID { \ + 0x027bc463, 0x929c, 0x40e8, \ + { 0xbf, 0x16, 0xfe, 0xa5, 0x57, 0xcd, 0x8e, 0x7e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISystemProperties); +# ifndef VBOX_WITH_GLUE +struct ISystemProperties_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMinGuestRAM)(ISystemProperties *pThis, PRUint32 *minGuestRAM); + + nsresult (*GetMaxGuestRAM)(ISystemProperties *pThis, PRUint32 *maxGuestRAM); + + nsresult (*GetMinGuestVRAM)(ISystemProperties *pThis, PRUint32 *minGuestVRAM); + + nsresult (*GetMaxGuestVRAM)(ISystemProperties *pThis, PRUint32 *maxGuestVRAM); + + nsresult (*GetMinGuestCPUCount)(ISystemProperties *pThis, PRUint32 *minGuestCPUCount); + + nsresult (*GetMaxGuestCPUCount)(ISystemProperties *pThis, PRUint32 *maxGuestCPUCount); + + nsresult (*GetMaxGuestMonitors)(ISystemProperties *pThis, PRUint32 *maxGuestMonitors); + + nsresult (*GetInfoVDSize)(ISystemProperties *pThis, PRInt64 *infoVDSize); + + nsresult (*GetSerialPortCount)(ISystemProperties *pThis, PRUint32 *serialPortCount); + + nsresult (*GetParallelPortCount)(ISystemProperties *pThis, PRUint32 *parallelPortCount); + + nsresult (*GetMaxBootPosition)(ISystemProperties *pThis, PRUint32 *maxBootPosition); + + nsresult (*GetRawModeSupported)(ISystemProperties *pThis, PRBool *rawModeSupported); + + nsresult (*GetExclusiveHwVirt)(ISystemProperties *pThis, PRBool *exclusiveHwVirt); + nsresult (*SetExclusiveHwVirt)(ISystemProperties *pThis, PRBool exclusiveHwVirt); + + nsresult (*GetDefaultMachineFolder)(ISystemProperties *pThis, PRUnichar * *defaultMachineFolder); + nsresult (*SetDefaultMachineFolder)(ISystemProperties *pThis, PRUnichar * defaultMachineFolder); + + nsresult (*GetLoggingLevel)(ISystemProperties *pThis, PRUnichar * *loggingLevel); + nsresult (*SetLoggingLevel)(ISystemProperties *pThis, PRUnichar * loggingLevel); + + nsresult (*GetMediumFormats)(ISystemProperties *pThis, PRUint32 *mediumFormatsSize, IMediumFormat * **mediumFormats); + + nsresult (*GetDefaultHardDiskFormat)(ISystemProperties *pThis, PRUnichar * *defaultHardDiskFormat); + nsresult (*SetDefaultHardDiskFormat)(ISystemProperties *pThis, PRUnichar * defaultHardDiskFormat); + + nsresult (*GetFreeDiskSpaceWarning)(ISystemProperties *pThis, PRInt64 *freeDiskSpaceWarning); + nsresult (*SetFreeDiskSpaceWarning)(ISystemProperties *pThis, PRInt64 freeDiskSpaceWarning); + + nsresult (*GetFreeDiskSpacePercentWarning)(ISystemProperties *pThis, PRUint32 *freeDiskSpacePercentWarning); + nsresult (*SetFreeDiskSpacePercentWarning)(ISystemProperties *pThis, PRUint32 freeDiskSpacePercentWarning); + + nsresult (*GetFreeDiskSpaceError)(ISystemProperties *pThis, PRInt64 *freeDiskSpaceError); + nsresult (*SetFreeDiskSpaceError)(ISystemProperties *pThis, PRInt64 freeDiskSpaceError); + + nsresult (*GetFreeDiskSpacePercentError)(ISystemProperties *pThis, PRUint32 *freeDiskSpacePercentError); + nsresult (*SetFreeDiskSpacePercentError)(ISystemProperties *pThis, PRUint32 freeDiskSpacePercentError); + + nsresult (*GetVRDEAuthLibrary)(ISystemProperties *pThis, PRUnichar * *VRDEAuthLibrary); + nsresult (*SetVRDEAuthLibrary)(ISystemProperties *pThis, PRUnichar * VRDEAuthLibrary); + + nsresult (*GetWebServiceAuthLibrary)(ISystemProperties *pThis, PRUnichar * *webServiceAuthLibrary); + nsresult (*SetWebServiceAuthLibrary)(ISystemProperties *pThis, PRUnichar * webServiceAuthLibrary); + + nsresult (*GetDefaultVRDEExtPack)(ISystemProperties *pThis, PRUnichar * *defaultVRDEExtPack); + nsresult (*SetDefaultVRDEExtPack)(ISystemProperties *pThis, PRUnichar * defaultVRDEExtPack); + + nsresult (*GetLogHistoryCount)(ISystemProperties *pThis, PRUint32 *logHistoryCount); + nsresult (*SetLogHistoryCount)(ISystemProperties *pThis, PRUint32 logHistoryCount); + + nsresult (*GetDefaultAudioDriver)(ISystemProperties *pThis, PRUint32 *defaultAudioDriver); + + nsresult (*GetAutostartDatabasePath)(ISystemProperties *pThis, PRUnichar * *autostartDatabasePath); + nsresult (*SetAutostartDatabasePath)(ISystemProperties *pThis, PRUnichar * autostartDatabasePath); + + nsresult (*GetDefaultAdditionsISO)(ISystemProperties *pThis, PRUnichar * *defaultAdditionsISO); + nsresult (*SetDefaultAdditionsISO)(ISystemProperties *pThis, PRUnichar * defaultAdditionsISO); + + nsresult (*GetDefaultFrontend)(ISystemProperties *pThis, PRUnichar * *defaultFrontend); + nsresult (*SetDefaultFrontend)(ISystemProperties *pThis, PRUnichar * defaultFrontend); + + nsresult (*GetScreenShotFormats)(ISystemProperties *pThis, PRUint32 *screenShotFormatsSize, PRUint32 **screenShotFormats); + + nsresult (*GetProxyMode)(ISystemProperties *pThis, PRUint32 *proxyMode); + nsresult (*SetProxyMode)(ISystemProperties *pThis, PRUint32 proxyMode); + + nsresult (*GetProxyURL)(ISystemProperties *pThis, PRUnichar * *proxyURL); + nsresult (*SetProxyURL)(ISystemProperties *pThis, PRUnichar * proxyURL); + + nsresult (*GetSupportedParavirtProviders)(ISystemProperties *pThis, PRUint32 *supportedParavirtProvidersSize, PRUint32 **supportedParavirtProviders); + + nsresult (*GetSupportedClipboardModes)(ISystemProperties *pThis, PRUint32 *supportedClipboardModesSize, PRUint32 **supportedClipboardModes); + + nsresult (*GetSupportedDnDModes)(ISystemProperties *pThis, PRUint32 *supportedDnDModesSize, PRUint32 **supportedDnDModes); + + nsresult (*GetSupportedFirmwareTypes)(ISystemProperties *pThis, PRUint32 *supportedFirmwareTypesSize, PRUint32 **supportedFirmwareTypes); + + nsresult (*GetSupportedPointingHIDTypes)(ISystemProperties *pThis, PRUint32 *supportedPointingHIDTypesSize, PRUint32 **supportedPointingHIDTypes); + + nsresult (*GetSupportedKeyboardHIDTypes)(ISystemProperties *pThis, PRUint32 *supportedKeyboardHIDTypesSize, PRUint32 **supportedKeyboardHIDTypes); + + nsresult (*GetSupportedVFSTypes)(ISystemProperties *pThis, PRUint32 *supportedVFSTypesSize, PRUint32 **supportedVFSTypes); + + nsresult (*GetSupportedImportOptions)(ISystemProperties *pThis, PRUint32 *supportedImportOptionsSize, PRUint32 **supportedImportOptions); + + nsresult (*GetSupportedExportOptions)(ISystemProperties *pThis, PRUint32 *supportedExportOptionsSize, PRUint32 **supportedExportOptions); + + nsresult (*GetSupportedRecordingAudioCodecs)(ISystemProperties *pThis, PRUint32 *supportedRecordingAudioCodecsSize, PRUint32 **supportedRecordingAudioCodecs); + + nsresult (*GetSupportedRecordingVideoCodecs)(ISystemProperties *pThis, PRUint32 *supportedRecordingVideoCodecsSize, PRUint32 **supportedRecordingVideoCodecs); + + nsresult (*GetSupportedRecordingVSMethods)(ISystemProperties *pThis, PRUint32 *supportedRecordingVSMethodsSize, PRUint32 **supportedRecordingVSMethods); + + nsresult (*GetSupportedRecordingVRCModes)(ISystemProperties *pThis, PRUint32 *supportedRecordingVRCModesSize, PRUint32 **supportedRecordingVRCModes); + + nsresult (*GetSupportedGraphicsControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedGraphicsControllerTypesSize, PRUint32 **supportedGraphicsControllerTypes); + + nsresult (*GetSupportedCloneOptions)(ISystemProperties *pThis, PRUint32 *supportedCloneOptionsSize, PRUint32 **supportedCloneOptions); + + nsresult (*GetSupportedAutostopTypes)(ISystemProperties *pThis, PRUint32 *supportedAutostopTypesSize, PRUint32 **supportedAutostopTypes); + + nsresult (*GetSupportedVMProcPriorities)(ISystemProperties *pThis, PRUint32 *supportedVMProcPrioritiesSize, PRUint32 **supportedVMProcPriorities); + + nsresult (*GetSupportedNetworkAttachmentTypes)(ISystemProperties *pThis, PRUint32 *supportedNetworkAttachmentTypesSize, PRUint32 **supportedNetworkAttachmentTypes); + + nsresult (*GetSupportedNetworkAdapterTypes)(ISystemProperties *pThis, PRUint32 *supportedNetworkAdapterTypesSize, PRUint32 **supportedNetworkAdapterTypes); + + nsresult (*GetSupportedPortModes)(ISystemProperties *pThis, PRUint32 *supportedPortModesSize, PRUint32 **supportedPortModes); + + nsresult (*GetSupportedUartTypes)(ISystemProperties *pThis, PRUint32 *supportedUartTypesSize, PRUint32 **supportedUartTypes); + + nsresult (*GetSupportedUSBControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedUSBControllerTypesSize, PRUint32 **supportedUSBControllerTypes); + + nsresult (*GetSupportedAudioDriverTypes)(ISystemProperties *pThis, PRUint32 *supportedAudioDriverTypesSize, PRUint32 **supportedAudioDriverTypes); + + nsresult (*GetSupportedAudioControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedAudioControllerTypesSize, PRUint32 **supportedAudioControllerTypes); + + nsresult (*GetSupportedStorageBuses)(ISystemProperties *pThis, PRUint32 *supportedStorageBusesSize, PRUint32 **supportedStorageBuses); + + nsresult (*GetSupportedStorageControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedStorageControllerTypesSize, PRUint32 **supportedStorageControllerTypes); + + nsresult (*GetSupportedChipsetTypes)(ISystemProperties *pThis, PRUint32 *supportedChipsetTypesSize, PRUint32 **supportedChipsetTypes); + + nsresult (*GetInternalAndReservedAttribute1ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetMaxNetworkAdapters)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 * maxNetworkAdapters + ); + + nsresult (*GetMaxNetworkAdaptersOfType)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 type, + PRUint32 * maxNetworkAdapters + ); + + nsresult (*GetMaxDevicesPerPortForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 * maxDevicesPerPort + ); + + nsresult (*GetMinPortCountForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 * minPortCount + ); + + nsresult (*GetMaxPortCountForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 * maxPortCount + ); + + nsresult (*GetMaxInstancesOfStorageBus)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 bus, + PRUint32 * maxInstances + ); + + nsresult (*GetDeviceTypesForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 *deviceTypesSize, + PRUint32** deviceTypes + ); + + nsresult (*GetStorageBusForStorageControllerType)( + ISystemProperties *pThis, + PRUint32 storageControllerType, + PRUint32 * storageBus + ); + + nsresult (*GetStorageControllerTypesForStorageBus)( + ISystemProperties *pThis, + PRUint32 storageBus, + PRUint32 *storageControllerTypeSize, + PRUint32** storageControllerType + ); + + nsresult (*GetDefaultIoCacheSettingForStorageController)( + ISystemProperties *pThis, + PRUint32 controllerType, + PRBool * enabled + ); + + nsresult (*GetStorageControllerHotplugCapable)( + ISystemProperties *pThis, + PRUint32 controllerType, + PRBool * hotplugCapable + ); + + nsresult (*GetMaxInstancesOfUSBControllerType)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 type, + PRUint32 * maxInstances + ); + + nsresult (*InternalAndReservedMethod1ISystemProperties)(ISystemProperties *pThis); + + nsresult (*InternalAndReservedMethod2ISystemProperties)(ISystemProperties *pThis); + + nsresult (*InternalAndReservedMethod3ISystemProperties)(ISystemProperties *pThis); + + nsresult (*InternalAndReservedMethod4ISystemProperties)(ISystemProperties *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISystemPropertiesVtbl +{ + nsresult (*QueryInterface)(ISystemProperties *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISystemProperties *pThis); + nsrefcnt (*Release)(ISystemProperties *pThis); + nsresult (*GetMinGuestRAM)(ISystemProperties *pThis, PRUint32 *minGuestRAM); + + nsresult (*GetMaxGuestRAM)(ISystemProperties *pThis, PRUint32 *maxGuestRAM); + + nsresult (*GetMinGuestVRAM)(ISystemProperties *pThis, PRUint32 *minGuestVRAM); + + nsresult (*GetMaxGuestVRAM)(ISystemProperties *pThis, PRUint32 *maxGuestVRAM); + + nsresult (*GetMinGuestCPUCount)(ISystemProperties *pThis, PRUint32 *minGuestCPUCount); + + nsresult (*GetMaxGuestCPUCount)(ISystemProperties *pThis, PRUint32 *maxGuestCPUCount); + + nsresult (*GetMaxGuestMonitors)(ISystemProperties *pThis, PRUint32 *maxGuestMonitors); + + nsresult (*GetInfoVDSize)(ISystemProperties *pThis, PRInt64 *infoVDSize); + + nsresult (*GetSerialPortCount)(ISystemProperties *pThis, PRUint32 *serialPortCount); + + nsresult (*GetParallelPortCount)(ISystemProperties *pThis, PRUint32 *parallelPortCount); + + nsresult (*GetMaxBootPosition)(ISystemProperties *pThis, PRUint32 *maxBootPosition); + + nsresult (*GetRawModeSupported)(ISystemProperties *pThis, PRBool *rawModeSupported); + + nsresult (*GetExclusiveHwVirt)(ISystemProperties *pThis, PRBool *exclusiveHwVirt); + nsresult (*SetExclusiveHwVirt)(ISystemProperties *pThis, PRBool exclusiveHwVirt); + + nsresult (*GetDefaultMachineFolder)(ISystemProperties *pThis, PRUnichar * *defaultMachineFolder); + nsresult (*SetDefaultMachineFolder)(ISystemProperties *pThis, PRUnichar * defaultMachineFolder); + + nsresult (*GetLoggingLevel)(ISystemProperties *pThis, PRUnichar * *loggingLevel); + nsresult (*SetLoggingLevel)(ISystemProperties *pThis, PRUnichar * loggingLevel); + + nsresult (*GetMediumFormats)(ISystemProperties *pThis, PRUint32 *mediumFormatsSize, IMediumFormat * **mediumFormats); + + nsresult (*GetDefaultHardDiskFormat)(ISystemProperties *pThis, PRUnichar * *defaultHardDiskFormat); + nsresult (*SetDefaultHardDiskFormat)(ISystemProperties *pThis, PRUnichar * defaultHardDiskFormat); + + nsresult (*GetFreeDiskSpaceWarning)(ISystemProperties *pThis, PRInt64 *freeDiskSpaceWarning); + nsresult (*SetFreeDiskSpaceWarning)(ISystemProperties *pThis, PRInt64 freeDiskSpaceWarning); + + nsresult (*GetFreeDiskSpacePercentWarning)(ISystemProperties *pThis, PRUint32 *freeDiskSpacePercentWarning); + nsresult (*SetFreeDiskSpacePercentWarning)(ISystemProperties *pThis, PRUint32 freeDiskSpacePercentWarning); + + nsresult (*GetFreeDiskSpaceError)(ISystemProperties *pThis, PRInt64 *freeDiskSpaceError); + nsresult (*SetFreeDiskSpaceError)(ISystemProperties *pThis, PRInt64 freeDiskSpaceError); + + nsresult (*GetFreeDiskSpacePercentError)(ISystemProperties *pThis, PRUint32 *freeDiskSpacePercentError); + nsresult (*SetFreeDiskSpacePercentError)(ISystemProperties *pThis, PRUint32 freeDiskSpacePercentError); + + nsresult (*GetVRDEAuthLibrary)(ISystemProperties *pThis, PRUnichar * *VRDEAuthLibrary); + nsresult (*SetVRDEAuthLibrary)(ISystemProperties *pThis, PRUnichar * VRDEAuthLibrary); + + nsresult (*GetWebServiceAuthLibrary)(ISystemProperties *pThis, PRUnichar * *webServiceAuthLibrary); + nsresult (*SetWebServiceAuthLibrary)(ISystemProperties *pThis, PRUnichar * webServiceAuthLibrary); + + nsresult (*GetDefaultVRDEExtPack)(ISystemProperties *pThis, PRUnichar * *defaultVRDEExtPack); + nsresult (*SetDefaultVRDEExtPack)(ISystemProperties *pThis, PRUnichar * defaultVRDEExtPack); + + nsresult (*GetLogHistoryCount)(ISystemProperties *pThis, PRUint32 *logHistoryCount); + nsresult (*SetLogHistoryCount)(ISystemProperties *pThis, PRUint32 logHistoryCount); + + nsresult (*GetDefaultAudioDriver)(ISystemProperties *pThis, PRUint32 *defaultAudioDriver); + + nsresult (*GetAutostartDatabasePath)(ISystemProperties *pThis, PRUnichar * *autostartDatabasePath); + nsresult (*SetAutostartDatabasePath)(ISystemProperties *pThis, PRUnichar * autostartDatabasePath); + + nsresult (*GetDefaultAdditionsISO)(ISystemProperties *pThis, PRUnichar * *defaultAdditionsISO); + nsresult (*SetDefaultAdditionsISO)(ISystemProperties *pThis, PRUnichar * defaultAdditionsISO); + + nsresult (*GetDefaultFrontend)(ISystemProperties *pThis, PRUnichar * *defaultFrontend); + nsresult (*SetDefaultFrontend)(ISystemProperties *pThis, PRUnichar * defaultFrontend); + + nsresult (*GetScreenShotFormats)(ISystemProperties *pThis, PRUint32 *screenShotFormatsSize, PRUint32 **screenShotFormats); + + nsresult (*GetProxyMode)(ISystemProperties *pThis, PRUint32 *proxyMode); + nsresult (*SetProxyMode)(ISystemProperties *pThis, PRUint32 proxyMode); + + nsresult (*GetProxyURL)(ISystemProperties *pThis, PRUnichar * *proxyURL); + nsresult (*SetProxyURL)(ISystemProperties *pThis, PRUnichar * proxyURL); + + nsresult (*GetSupportedParavirtProviders)(ISystemProperties *pThis, PRUint32 *supportedParavirtProvidersSize, PRUint32 **supportedParavirtProviders); + + nsresult (*GetSupportedClipboardModes)(ISystemProperties *pThis, PRUint32 *supportedClipboardModesSize, PRUint32 **supportedClipboardModes); + + nsresult (*GetSupportedDnDModes)(ISystemProperties *pThis, PRUint32 *supportedDnDModesSize, PRUint32 **supportedDnDModes); + + nsresult (*GetSupportedFirmwareTypes)(ISystemProperties *pThis, PRUint32 *supportedFirmwareTypesSize, PRUint32 **supportedFirmwareTypes); + + nsresult (*GetSupportedPointingHIDTypes)(ISystemProperties *pThis, PRUint32 *supportedPointingHIDTypesSize, PRUint32 **supportedPointingHIDTypes); + + nsresult (*GetSupportedKeyboardHIDTypes)(ISystemProperties *pThis, PRUint32 *supportedKeyboardHIDTypesSize, PRUint32 **supportedKeyboardHIDTypes); + + nsresult (*GetSupportedVFSTypes)(ISystemProperties *pThis, PRUint32 *supportedVFSTypesSize, PRUint32 **supportedVFSTypes); + + nsresult (*GetSupportedImportOptions)(ISystemProperties *pThis, PRUint32 *supportedImportOptionsSize, PRUint32 **supportedImportOptions); + + nsresult (*GetSupportedExportOptions)(ISystemProperties *pThis, PRUint32 *supportedExportOptionsSize, PRUint32 **supportedExportOptions); + + nsresult (*GetSupportedRecordingAudioCodecs)(ISystemProperties *pThis, PRUint32 *supportedRecordingAudioCodecsSize, PRUint32 **supportedRecordingAudioCodecs); + + nsresult (*GetSupportedRecordingVideoCodecs)(ISystemProperties *pThis, PRUint32 *supportedRecordingVideoCodecsSize, PRUint32 **supportedRecordingVideoCodecs); + + nsresult (*GetSupportedRecordingVSMethods)(ISystemProperties *pThis, PRUint32 *supportedRecordingVSMethodsSize, PRUint32 **supportedRecordingVSMethods); + + nsresult (*GetSupportedRecordingVRCModes)(ISystemProperties *pThis, PRUint32 *supportedRecordingVRCModesSize, PRUint32 **supportedRecordingVRCModes); + + nsresult (*GetSupportedGraphicsControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedGraphicsControllerTypesSize, PRUint32 **supportedGraphicsControllerTypes); + + nsresult (*GetSupportedCloneOptions)(ISystemProperties *pThis, PRUint32 *supportedCloneOptionsSize, PRUint32 **supportedCloneOptions); + + nsresult (*GetSupportedAutostopTypes)(ISystemProperties *pThis, PRUint32 *supportedAutostopTypesSize, PRUint32 **supportedAutostopTypes); + + nsresult (*GetSupportedVMProcPriorities)(ISystemProperties *pThis, PRUint32 *supportedVMProcPrioritiesSize, PRUint32 **supportedVMProcPriorities); + + nsresult (*GetSupportedNetworkAttachmentTypes)(ISystemProperties *pThis, PRUint32 *supportedNetworkAttachmentTypesSize, PRUint32 **supportedNetworkAttachmentTypes); + + nsresult (*GetSupportedNetworkAdapterTypes)(ISystemProperties *pThis, PRUint32 *supportedNetworkAdapterTypesSize, PRUint32 **supportedNetworkAdapterTypes); + + nsresult (*GetSupportedPortModes)(ISystemProperties *pThis, PRUint32 *supportedPortModesSize, PRUint32 **supportedPortModes); + + nsresult (*GetSupportedUartTypes)(ISystemProperties *pThis, PRUint32 *supportedUartTypesSize, PRUint32 **supportedUartTypes); + + nsresult (*GetSupportedUSBControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedUSBControllerTypesSize, PRUint32 **supportedUSBControllerTypes); + + nsresult (*GetSupportedAudioDriverTypes)(ISystemProperties *pThis, PRUint32 *supportedAudioDriverTypesSize, PRUint32 **supportedAudioDriverTypes); + + nsresult (*GetSupportedAudioControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedAudioControllerTypesSize, PRUint32 **supportedAudioControllerTypes); + + nsresult (*GetSupportedStorageBuses)(ISystemProperties *pThis, PRUint32 *supportedStorageBusesSize, PRUint32 **supportedStorageBuses); + + nsresult (*GetSupportedStorageControllerTypes)(ISystemProperties *pThis, PRUint32 *supportedStorageControllerTypesSize, PRUint32 **supportedStorageControllerTypes); + + nsresult (*GetSupportedChipsetTypes)(ISystemProperties *pThis, PRUint32 *supportedChipsetTypesSize, PRUint32 **supportedChipsetTypes); + + nsresult (*GetInternalAndReservedAttribute1ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16ISystemProperties)(ISystemProperties *pThis, PRUint32 *reserved); + + nsresult (*GetMaxNetworkAdapters)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 * maxNetworkAdapters + ); + + nsresult (*GetMaxNetworkAdaptersOfType)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 type, + PRUint32 * maxNetworkAdapters + ); + + nsresult (*GetMaxDevicesPerPortForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 * maxDevicesPerPort + ); + + nsresult (*GetMinPortCountForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 * minPortCount + ); + + nsresult (*GetMaxPortCountForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 * maxPortCount + ); + + nsresult (*GetMaxInstancesOfStorageBus)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 bus, + PRUint32 * maxInstances + ); + + nsresult (*GetDeviceTypesForStorageBus)( + ISystemProperties *pThis, + PRUint32 bus, + PRUint32 *deviceTypesSize, + PRUint32** deviceTypes + ); + + nsresult (*GetStorageBusForStorageControllerType)( + ISystemProperties *pThis, + PRUint32 storageControllerType, + PRUint32 * storageBus + ); + + nsresult (*GetStorageControllerTypesForStorageBus)( + ISystemProperties *pThis, + PRUint32 storageBus, + PRUint32 *storageControllerTypeSize, + PRUint32** storageControllerType + ); + + nsresult (*GetDefaultIoCacheSettingForStorageController)( + ISystemProperties *pThis, + PRUint32 controllerType, + PRBool * enabled + ); + + nsresult (*GetStorageControllerHotplugCapable)( + ISystemProperties *pThis, + PRUint32 controllerType, + PRBool * hotplugCapable + ); + + nsresult (*GetMaxInstancesOfUSBControllerType)( + ISystemProperties *pThis, + PRUint32 chipset, + PRUint32 type, + PRUint32 * maxInstances + ); + + nsresult (*InternalAndReservedMethod1ISystemProperties)(ISystemProperties *pThis); + + nsresult (*InternalAndReservedMethod2ISystemProperties)(ISystemProperties *pThis); + + nsresult (*InternalAndReservedMethod3ISystemProperties)(ISystemProperties *pThis); + + nsresult (*InternalAndReservedMethod4ISystemProperties)(ISystemProperties *pThis); + +}; +# define ISystemProperties_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISystemProperties_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISystemProperties_Release(p) ((p)->lpVtbl->Release(p)) +# define ISystemProperties_get_MinGuestRAM(p, aMinGuestRAM) ((p)->lpVtbl->GetMinGuestRAM(p, aMinGuestRAM)) +# define ISystemProperties_GetMinGuestRAM(p, aMinGuestRAM) ((p)->lpVtbl->GetMinGuestRAM(p, aMinGuestRAM)) +# define ISystemProperties_get_MaxGuestRAM(p, aMaxGuestRAM) ((p)->lpVtbl->GetMaxGuestRAM(p, aMaxGuestRAM)) +# define ISystemProperties_GetMaxGuestRAM(p, aMaxGuestRAM) ((p)->lpVtbl->GetMaxGuestRAM(p, aMaxGuestRAM)) +# define ISystemProperties_get_MinGuestVRAM(p, aMinGuestVRAM) ((p)->lpVtbl->GetMinGuestVRAM(p, aMinGuestVRAM)) +# define ISystemProperties_GetMinGuestVRAM(p, aMinGuestVRAM) ((p)->lpVtbl->GetMinGuestVRAM(p, aMinGuestVRAM)) +# define ISystemProperties_get_MaxGuestVRAM(p, aMaxGuestVRAM) ((p)->lpVtbl->GetMaxGuestVRAM(p, aMaxGuestVRAM)) +# define ISystemProperties_GetMaxGuestVRAM(p, aMaxGuestVRAM) ((p)->lpVtbl->GetMaxGuestVRAM(p, aMaxGuestVRAM)) +# define ISystemProperties_get_MinGuestCPUCount(p, aMinGuestCPUCount) ((p)->lpVtbl->GetMinGuestCPUCount(p, aMinGuestCPUCount)) +# define ISystemProperties_GetMinGuestCPUCount(p, aMinGuestCPUCount) ((p)->lpVtbl->GetMinGuestCPUCount(p, aMinGuestCPUCount)) +# define ISystemProperties_get_MaxGuestCPUCount(p, aMaxGuestCPUCount) ((p)->lpVtbl->GetMaxGuestCPUCount(p, aMaxGuestCPUCount)) +# define ISystemProperties_GetMaxGuestCPUCount(p, aMaxGuestCPUCount) ((p)->lpVtbl->GetMaxGuestCPUCount(p, aMaxGuestCPUCount)) +# define ISystemProperties_get_MaxGuestMonitors(p, aMaxGuestMonitors) ((p)->lpVtbl->GetMaxGuestMonitors(p, aMaxGuestMonitors)) +# define ISystemProperties_GetMaxGuestMonitors(p, aMaxGuestMonitors) ((p)->lpVtbl->GetMaxGuestMonitors(p, aMaxGuestMonitors)) +# define ISystemProperties_get_InfoVDSize(p, aInfoVDSize) ((p)->lpVtbl->GetInfoVDSize(p, aInfoVDSize)) +# define ISystemProperties_GetInfoVDSize(p, aInfoVDSize) ((p)->lpVtbl->GetInfoVDSize(p, aInfoVDSize)) +# define ISystemProperties_get_SerialPortCount(p, aSerialPortCount) ((p)->lpVtbl->GetSerialPortCount(p, aSerialPortCount)) +# define ISystemProperties_GetSerialPortCount(p, aSerialPortCount) ((p)->lpVtbl->GetSerialPortCount(p, aSerialPortCount)) +# define ISystemProperties_get_ParallelPortCount(p, aParallelPortCount) ((p)->lpVtbl->GetParallelPortCount(p, aParallelPortCount)) +# define ISystemProperties_GetParallelPortCount(p, aParallelPortCount) ((p)->lpVtbl->GetParallelPortCount(p, aParallelPortCount)) +# define ISystemProperties_get_MaxBootPosition(p, aMaxBootPosition) ((p)->lpVtbl->GetMaxBootPosition(p, aMaxBootPosition)) +# define ISystemProperties_GetMaxBootPosition(p, aMaxBootPosition) ((p)->lpVtbl->GetMaxBootPosition(p, aMaxBootPosition)) +# define ISystemProperties_get_RawModeSupported(p, aRawModeSupported) ((p)->lpVtbl->GetRawModeSupported(p, aRawModeSupported)) +# define ISystemProperties_GetRawModeSupported(p, aRawModeSupported) ((p)->lpVtbl->GetRawModeSupported(p, aRawModeSupported)) +# define ISystemProperties_get_ExclusiveHwVirt(p, aExclusiveHwVirt) ((p)->lpVtbl->GetExclusiveHwVirt(p, aExclusiveHwVirt)) +# define ISystemProperties_GetExclusiveHwVirt(p, aExclusiveHwVirt) ((p)->lpVtbl->GetExclusiveHwVirt(p, aExclusiveHwVirt)) +# define ISystemProperties_put_ExclusiveHwVirt(p, aExclusiveHwVirt) ((p)->lpVtbl->SetExclusiveHwVirt(p, aExclusiveHwVirt)) +# define ISystemProperties_SetExclusiveHwVirt(p, aExclusiveHwVirt) ((p)->lpVtbl->SetExclusiveHwVirt(p, aExclusiveHwVirt)) +# define ISystemProperties_get_DefaultMachineFolder(p, aDefaultMachineFolder) ((p)->lpVtbl->GetDefaultMachineFolder(p, aDefaultMachineFolder)) +# define ISystemProperties_GetDefaultMachineFolder(p, aDefaultMachineFolder) ((p)->lpVtbl->GetDefaultMachineFolder(p, aDefaultMachineFolder)) +# define ISystemProperties_put_DefaultMachineFolder(p, aDefaultMachineFolder) ((p)->lpVtbl->SetDefaultMachineFolder(p, aDefaultMachineFolder)) +# define ISystemProperties_SetDefaultMachineFolder(p, aDefaultMachineFolder) ((p)->lpVtbl->SetDefaultMachineFolder(p, aDefaultMachineFolder)) +# define ISystemProperties_get_LoggingLevel(p, aLoggingLevel) ((p)->lpVtbl->GetLoggingLevel(p, aLoggingLevel)) +# define ISystemProperties_GetLoggingLevel(p, aLoggingLevel) ((p)->lpVtbl->GetLoggingLevel(p, aLoggingLevel)) +# define ISystemProperties_put_LoggingLevel(p, aLoggingLevel) ((p)->lpVtbl->SetLoggingLevel(p, aLoggingLevel)) +# define ISystemProperties_SetLoggingLevel(p, aLoggingLevel) ((p)->lpVtbl->SetLoggingLevel(p, aLoggingLevel)) +# define ISystemProperties_get_MediumFormats(p, aMediumFormats) ((p)->lpVtbl->GetMediumFormats(p, aMediumFormats)) +# define ISystemProperties_GetMediumFormats(p, aMediumFormats) ((p)->lpVtbl->GetMediumFormats(p, aMediumFormats)) +# define ISystemProperties_get_DefaultHardDiskFormat(p, aDefaultHardDiskFormat) ((p)->lpVtbl->GetDefaultHardDiskFormat(p, aDefaultHardDiskFormat)) +# define ISystemProperties_GetDefaultHardDiskFormat(p, aDefaultHardDiskFormat) ((p)->lpVtbl->GetDefaultHardDiskFormat(p, aDefaultHardDiskFormat)) +# define ISystemProperties_put_DefaultHardDiskFormat(p, aDefaultHardDiskFormat) ((p)->lpVtbl->SetDefaultHardDiskFormat(p, aDefaultHardDiskFormat)) +# define ISystemProperties_SetDefaultHardDiskFormat(p, aDefaultHardDiskFormat) ((p)->lpVtbl->SetDefaultHardDiskFormat(p, aDefaultHardDiskFormat)) +# define ISystemProperties_get_FreeDiskSpaceWarning(p, aFreeDiskSpaceWarning) ((p)->lpVtbl->GetFreeDiskSpaceWarning(p, aFreeDiskSpaceWarning)) +# define ISystemProperties_GetFreeDiskSpaceWarning(p, aFreeDiskSpaceWarning) ((p)->lpVtbl->GetFreeDiskSpaceWarning(p, aFreeDiskSpaceWarning)) +# define ISystemProperties_put_FreeDiskSpaceWarning(p, aFreeDiskSpaceWarning) ((p)->lpVtbl->SetFreeDiskSpaceWarning(p, aFreeDiskSpaceWarning)) +# define ISystemProperties_SetFreeDiskSpaceWarning(p, aFreeDiskSpaceWarning) ((p)->lpVtbl->SetFreeDiskSpaceWarning(p, aFreeDiskSpaceWarning)) +# define ISystemProperties_get_FreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning) ((p)->lpVtbl->GetFreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning)) +# define ISystemProperties_GetFreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning) ((p)->lpVtbl->GetFreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning)) +# define ISystemProperties_put_FreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning) ((p)->lpVtbl->SetFreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning)) +# define ISystemProperties_SetFreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning) ((p)->lpVtbl->SetFreeDiskSpacePercentWarning(p, aFreeDiskSpacePercentWarning)) +# define ISystemProperties_get_FreeDiskSpaceError(p, aFreeDiskSpaceError) ((p)->lpVtbl->GetFreeDiskSpaceError(p, aFreeDiskSpaceError)) +# define ISystemProperties_GetFreeDiskSpaceError(p, aFreeDiskSpaceError) ((p)->lpVtbl->GetFreeDiskSpaceError(p, aFreeDiskSpaceError)) +# define ISystemProperties_put_FreeDiskSpaceError(p, aFreeDiskSpaceError) ((p)->lpVtbl->SetFreeDiskSpaceError(p, aFreeDiskSpaceError)) +# define ISystemProperties_SetFreeDiskSpaceError(p, aFreeDiskSpaceError) ((p)->lpVtbl->SetFreeDiskSpaceError(p, aFreeDiskSpaceError)) +# define ISystemProperties_get_FreeDiskSpacePercentError(p, aFreeDiskSpacePercentError) ((p)->lpVtbl->GetFreeDiskSpacePercentError(p, aFreeDiskSpacePercentError)) +# define ISystemProperties_GetFreeDiskSpacePercentError(p, aFreeDiskSpacePercentError) ((p)->lpVtbl->GetFreeDiskSpacePercentError(p, aFreeDiskSpacePercentError)) +# define ISystemProperties_put_FreeDiskSpacePercentError(p, aFreeDiskSpacePercentError) ((p)->lpVtbl->SetFreeDiskSpacePercentError(p, aFreeDiskSpacePercentError)) +# define ISystemProperties_SetFreeDiskSpacePercentError(p, aFreeDiskSpacePercentError) ((p)->lpVtbl->SetFreeDiskSpacePercentError(p, aFreeDiskSpacePercentError)) +# define ISystemProperties_get_VRDEAuthLibrary(p, aVRDEAuthLibrary) ((p)->lpVtbl->GetVRDEAuthLibrary(p, aVRDEAuthLibrary)) +# define ISystemProperties_GetVRDEAuthLibrary(p, aVRDEAuthLibrary) ((p)->lpVtbl->GetVRDEAuthLibrary(p, aVRDEAuthLibrary)) +# define ISystemProperties_put_VRDEAuthLibrary(p, aVRDEAuthLibrary) ((p)->lpVtbl->SetVRDEAuthLibrary(p, aVRDEAuthLibrary)) +# define ISystemProperties_SetVRDEAuthLibrary(p, aVRDEAuthLibrary) ((p)->lpVtbl->SetVRDEAuthLibrary(p, aVRDEAuthLibrary)) +# define ISystemProperties_get_WebServiceAuthLibrary(p, aWebServiceAuthLibrary) ((p)->lpVtbl->GetWebServiceAuthLibrary(p, aWebServiceAuthLibrary)) +# define ISystemProperties_GetWebServiceAuthLibrary(p, aWebServiceAuthLibrary) ((p)->lpVtbl->GetWebServiceAuthLibrary(p, aWebServiceAuthLibrary)) +# define ISystemProperties_put_WebServiceAuthLibrary(p, aWebServiceAuthLibrary) ((p)->lpVtbl->SetWebServiceAuthLibrary(p, aWebServiceAuthLibrary)) +# define ISystemProperties_SetWebServiceAuthLibrary(p, aWebServiceAuthLibrary) ((p)->lpVtbl->SetWebServiceAuthLibrary(p, aWebServiceAuthLibrary)) +# define ISystemProperties_get_DefaultVRDEExtPack(p, aDefaultVRDEExtPack) ((p)->lpVtbl->GetDefaultVRDEExtPack(p, aDefaultVRDEExtPack)) +# define ISystemProperties_GetDefaultVRDEExtPack(p, aDefaultVRDEExtPack) ((p)->lpVtbl->GetDefaultVRDEExtPack(p, aDefaultVRDEExtPack)) +# define ISystemProperties_put_DefaultVRDEExtPack(p, aDefaultVRDEExtPack) ((p)->lpVtbl->SetDefaultVRDEExtPack(p, aDefaultVRDEExtPack)) +# define ISystemProperties_SetDefaultVRDEExtPack(p, aDefaultVRDEExtPack) ((p)->lpVtbl->SetDefaultVRDEExtPack(p, aDefaultVRDEExtPack)) +# define ISystemProperties_get_LogHistoryCount(p, aLogHistoryCount) ((p)->lpVtbl->GetLogHistoryCount(p, aLogHistoryCount)) +# define ISystemProperties_GetLogHistoryCount(p, aLogHistoryCount) ((p)->lpVtbl->GetLogHistoryCount(p, aLogHistoryCount)) +# define ISystemProperties_put_LogHistoryCount(p, aLogHistoryCount) ((p)->lpVtbl->SetLogHistoryCount(p, aLogHistoryCount)) +# define ISystemProperties_SetLogHistoryCount(p, aLogHistoryCount) ((p)->lpVtbl->SetLogHistoryCount(p, aLogHistoryCount)) +# define ISystemProperties_get_DefaultAudioDriver(p, aDefaultAudioDriver) ((p)->lpVtbl->GetDefaultAudioDriver(p, aDefaultAudioDriver)) +# define ISystemProperties_GetDefaultAudioDriver(p, aDefaultAudioDriver) ((p)->lpVtbl->GetDefaultAudioDriver(p, aDefaultAudioDriver)) +# define ISystemProperties_get_AutostartDatabasePath(p, aAutostartDatabasePath) ((p)->lpVtbl->GetAutostartDatabasePath(p, aAutostartDatabasePath)) +# define ISystemProperties_GetAutostartDatabasePath(p, aAutostartDatabasePath) ((p)->lpVtbl->GetAutostartDatabasePath(p, aAutostartDatabasePath)) +# define ISystemProperties_put_AutostartDatabasePath(p, aAutostartDatabasePath) ((p)->lpVtbl->SetAutostartDatabasePath(p, aAutostartDatabasePath)) +# define ISystemProperties_SetAutostartDatabasePath(p, aAutostartDatabasePath) ((p)->lpVtbl->SetAutostartDatabasePath(p, aAutostartDatabasePath)) +# define ISystemProperties_get_DefaultAdditionsISO(p, aDefaultAdditionsISO) ((p)->lpVtbl->GetDefaultAdditionsISO(p, aDefaultAdditionsISO)) +# define ISystemProperties_GetDefaultAdditionsISO(p, aDefaultAdditionsISO) ((p)->lpVtbl->GetDefaultAdditionsISO(p, aDefaultAdditionsISO)) +# define ISystemProperties_put_DefaultAdditionsISO(p, aDefaultAdditionsISO) ((p)->lpVtbl->SetDefaultAdditionsISO(p, aDefaultAdditionsISO)) +# define ISystemProperties_SetDefaultAdditionsISO(p, aDefaultAdditionsISO) ((p)->lpVtbl->SetDefaultAdditionsISO(p, aDefaultAdditionsISO)) +# define ISystemProperties_get_DefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->GetDefaultFrontend(p, aDefaultFrontend)) +# define ISystemProperties_GetDefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->GetDefaultFrontend(p, aDefaultFrontend)) +# define ISystemProperties_put_DefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->SetDefaultFrontend(p, aDefaultFrontend)) +# define ISystemProperties_SetDefaultFrontend(p, aDefaultFrontend) ((p)->lpVtbl->SetDefaultFrontend(p, aDefaultFrontend)) +# define ISystemProperties_get_ScreenShotFormats(p, aScreenShotFormats) ((p)->lpVtbl->GetScreenShotFormats(p, aScreenShotFormats)) +# define ISystemProperties_GetScreenShotFormats(p, aScreenShotFormats) ((p)->lpVtbl->GetScreenShotFormats(p, aScreenShotFormats)) +# define ISystemProperties_get_ProxyMode(p, aProxyMode) ((p)->lpVtbl->GetProxyMode(p, aProxyMode)) +# define ISystemProperties_GetProxyMode(p, aProxyMode) ((p)->lpVtbl->GetProxyMode(p, aProxyMode)) +# define ISystemProperties_put_ProxyMode(p, aProxyMode) ((p)->lpVtbl->SetProxyMode(p, aProxyMode)) +# define ISystemProperties_SetProxyMode(p, aProxyMode) ((p)->lpVtbl->SetProxyMode(p, aProxyMode)) +# define ISystemProperties_get_ProxyURL(p, aProxyURL) ((p)->lpVtbl->GetProxyURL(p, aProxyURL)) +# define ISystemProperties_GetProxyURL(p, aProxyURL) ((p)->lpVtbl->GetProxyURL(p, aProxyURL)) +# define ISystemProperties_put_ProxyURL(p, aProxyURL) ((p)->lpVtbl->SetProxyURL(p, aProxyURL)) +# define ISystemProperties_SetProxyURL(p, aProxyURL) ((p)->lpVtbl->SetProxyURL(p, aProxyURL)) +# define ISystemProperties_get_SupportedParavirtProviders(p, aSupportedParavirtProviders) ((p)->lpVtbl->GetSupportedParavirtProviders(p, aSupportedParavirtProviders)) +# define ISystemProperties_GetSupportedParavirtProviders(p, aSupportedParavirtProviders) ((p)->lpVtbl->GetSupportedParavirtProviders(p, aSupportedParavirtProviders)) +# define ISystemProperties_get_SupportedClipboardModes(p, aSupportedClipboardModes) ((p)->lpVtbl->GetSupportedClipboardModes(p, aSupportedClipboardModes)) +# define ISystemProperties_GetSupportedClipboardModes(p, aSupportedClipboardModes) ((p)->lpVtbl->GetSupportedClipboardModes(p, aSupportedClipboardModes)) +# define ISystemProperties_get_SupportedDnDModes(p, aSupportedDnDModes) ((p)->lpVtbl->GetSupportedDnDModes(p, aSupportedDnDModes)) +# define ISystemProperties_GetSupportedDnDModes(p, aSupportedDnDModes) ((p)->lpVtbl->GetSupportedDnDModes(p, aSupportedDnDModes)) +# define ISystemProperties_get_SupportedFirmwareTypes(p, aSupportedFirmwareTypes) ((p)->lpVtbl->GetSupportedFirmwareTypes(p, aSupportedFirmwareTypes)) +# define ISystemProperties_GetSupportedFirmwareTypes(p, aSupportedFirmwareTypes) ((p)->lpVtbl->GetSupportedFirmwareTypes(p, aSupportedFirmwareTypes)) +# define ISystemProperties_get_SupportedPointingHIDTypes(p, aSupportedPointingHIDTypes) ((p)->lpVtbl->GetSupportedPointingHIDTypes(p, aSupportedPointingHIDTypes)) +# define ISystemProperties_GetSupportedPointingHIDTypes(p, aSupportedPointingHIDTypes) ((p)->lpVtbl->GetSupportedPointingHIDTypes(p, aSupportedPointingHIDTypes)) +# define ISystemProperties_get_SupportedKeyboardHIDTypes(p, aSupportedKeyboardHIDTypes) ((p)->lpVtbl->GetSupportedKeyboardHIDTypes(p, aSupportedKeyboardHIDTypes)) +# define ISystemProperties_GetSupportedKeyboardHIDTypes(p, aSupportedKeyboardHIDTypes) ((p)->lpVtbl->GetSupportedKeyboardHIDTypes(p, aSupportedKeyboardHIDTypes)) +# define ISystemProperties_get_SupportedVFSTypes(p, aSupportedVFSTypes) ((p)->lpVtbl->GetSupportedVFSTypes(p, aSupportedVFSTypes)) +# define ISystemProperties_GetSupportedVFSTypes(p, aSupportedVFSTypes) ((p)->lpVtbl->GetSupportedVFSTypes(p, aSupportedVFSTypes)) +# define ISystemProperties_get_SupportedImportOptions(p, aSupportedImportOptions) ((p)->lpVtbl->GetSupportedImportOptions(p, aSupportedImportOptions)) +# define ISystemProperties_GetSupportedImportOptions(p, aSupportedImportOptions) ((p)->lpVtbl->GetSupportedImportOptions(p, aSupportedImportOptions)) +# define ISystemProperties_get_SupportedExportOptions(p, aSupportedExportOptions) ((p)->lpVtbl->GetSupportedExportOptions(p, aSupportedExportOptions)) +# define ISystemProperties_GetSupportedExportOptions(p, aSupportedExportOptions) ((p)->lpVtbl->GetSupportedExportOptions(p, aSupportedExportOptions)) +# define ISystemProperties_get_SupportedRecordingAudioCodecs(p, aSupportedRecordingAudioCodecs) ((p)->lpVtbl->GetSupportedRecordingAudioCodecs(p, aSupportedRecordingAudioCodecs)) +# define ISystemProperties_GetSupportedRecordingAudioCodecs(p, aSupportedRecordingAudioCodecs) ((p)->lpVtbl->GetSupportedRecordingAudioCodecs(p, aSupportedRecordingAudioCodecs)) +# define ISystemProperties_get_SupportedRecordingVideoCodecs(p, aSupportedRecordingVideoCodecs) ((p)->lpVtbl->GetSupportedRecordingVideoCodecs(p, aSupportedRecordingVideoCodecs)) +# define ISystemProperties_GetSupportedRecordingVideoCodecs(p, aSupportedRecordingVideoCodecs) ((p)->lpVtbl->GetSupportedRecordingVideoCodecs(p, aSupportedRecordingVideoCodecs)) +# define ISystemProperties_get_SupportedRecordingVSMethods(p, aSupportedRecordingVSMethods) ((p)->lpVtbl->GetSupportedRecordingVSMethods(p, aSupportedRecordingVSMethods)) +# define ISystemProperties_GetSupportedRecordingVSMethods(p, aSupportedRecordingVSMethods) ((p)->lpVtbl->GetSupportedRecordingVSMethods(p, aSupportedRecordingVSMethods)) +# define ISystemProperties_get_SupportedRecordingVRCModes(p, aSupportedRecordingVRCModes) ((p)->lpVtbl->GetSupportedRecordingVRCModes(p, aSupportedRecordingVRCModes)) +# define ISystemProperties_GetSupportedRecordingVRCModes(p, aSupportedRecordingVRCModes) ((p)->lpVtbl->GetSupportedRecordingVRCModes(p, aSupportedRecordingVRCModes)) +# define ISystemProperties_get_SupportedGraphicsControllerTypes(p, aSupportedGraphicsControllerTypes) ((p)->lpVtbl->GetSupportedGraphicsControllerTypes(p, aSupportedGraphicsControllerTypes)) +# define ISystemProperties_GetSupportedGraphicsControllerTypes(p, aSupportedGraphicsControllerTypes) ((p)->lpVtbl->GetSupportedGraphicsControllerTypes(p, aSupportedGraphicsControllerTypes)) +# define ISystemProperties_get_SupportedCloneOptions(p, aSupportedCloneOptions) ((p)->lpVtbl->GetSupportedCloneOptions(p, aSupportedCloneOptions)) +# define ISystemProperties_GetSupportedCloneOptions(p, aSupportedCloneOptions) ((p)->lpVtbl->GetSupportedCloneOptions(p, aSupportedCloneOptions)) +# define ISystemProperties_get_SupportedAutostopTypes(p, aSupportedAutostopTypes) ((p)->lpVtbl->GetSupportedAutostopTypes(p, aSupportedAutostopTypes)) +# define ISystemProperties_GetSupportedAutostopTypes(p, aSupportedAutostopTypes) ((p)->lpVtbl->GetSupportedAutostopTypes(p, aSupportedAutostopTypes)) +# define ISystemProperties_get_SupportedVMProcPriorities(p, aSupportedVMProcPriorities) ((p)->lpVtbl->GetSupportedVMProcPriorities(p, aSupportedVMProcPriorities)) +# define ISystemProperties_GetSupportedVMProcPriorities(p, aSupportedVMProcPriorities) ((p)->lpVtbl->GetSupportedVMProcPriorities(p, aSupportedVMProcPriorities)) +# define ISystemProperties_get_SupportedNetworkAttachmentTypes(p, aSupportedNetworkAttachmentTypes) ((p)->lpVtbl->GetSupportedNetworkAttachmentTypes(p, aSupportedNetworkAttachmentTypes)) +# define ISystemProperties_GetSupportedNetworkAttachmentTypes(p, aSupportedNetworkAttachmentTypes) ((p)->lpVtbl->GetSupportedNetworkAttachmentTypes(p, aSupportedNetworkAttachmentTypes)) +# define ISystemProperties_get_SupportedNetworkAdapterTypes(p, aSupportedNetworkAdapterTypes) ((p)->lpVtbl->GetSupportedNetworkAdapterTypes(p, aSupportedNetworkAdapterTypes)) +# define ISystemProperties_GetSupportedNetworkAdapterTypes(p, aSupportedNetworkAdapterTypes) ((p)->lpVtbl->GetSupportedNetworkAdapterTypes(p, aSupportedNetworkAdapterTypes)) +# define ISystemProperties_get_SupportedPortModes(p, aSupportedPortModes) ((p)->lpVtbl->GetSupportedPortModes(p, aSupportedPortModes)) +# define ISystemProperties_GetSupportedPortModes(p, aSupportedPortModes) ((p)->lpVtbl->GetSupportedPortModes(p, aSupportedPortModes)) +# define ISystemProperties_get_SupportedUartTypes(p, aSupportedUartTypes) ((p)->lpVtbl->GetSupportedUartTypes(p, aSupportedUartTypes)) +# define ISystemProperties_GetSupportedUartTypes(p, aSupportedUartTypes) ((p)->lpVtbl->GetSupportedUartTypes(p, aSupportedUartTypes)) +# define ISystemProperties_get_SupportedUSBControllerTypes(p, aSupportedUSBControllerTypes) ((p)->lpVtbl->GetSupportedUSBControllerTypes(p, aSupportedUSBControllerTypes)) +# define ISystemProperties_GetSupportedUSBControllerTypes(p, aSupportedUSBControllerTypes) ((p)->lpVtbl->GetSupportedUSBControllerTypes(p, aSupportedUSBControllerTypes)) +# define ISystemProperties_get_SupportedAudioDriverTypes(p, aSupportedAudioDriverTypes) ((p)->lpVtbl->GetSupportedAudioDriverTypes(p, aSupportedAudioDriverTypes)) +# define ISystemProperties_GetSupportedAudioDriverTypes(p, aSupportedAudioDriverTypes) ((p)->lpVtbl->GetSupportedAudioDriverTypes(p, aSupportedAudioDriverTypes)) +# define ISystemProperties_get_SupportedAudioControllerTypes(p, aSupportedAudioControllerTypes) ((p)->lpVtbl->GetSupportedAudioControllerTypes(p, aSupportedAudioControllerTypes)) +# define ISystemProperties_GetSupportedAudioControllerTypes(p, aSupportedAudioControllerTypes) ((p)->lpVtbl->GetSupportedAudioControllerTypes(p, aSupportedAudioControllerTypes)) +# define ISystemProperties_get_SupportedStorageBuses(p, aSupportedStorageBuses) ((p)->lpVtbl->GetSupportedStorageBuses(p, aSupportedStorageBuses)) +# define ISystemProperties_GetSupportedStorageBuses(p, aSupportedStorageBuses) ((p)->lpVtbl->GetSupportedStorageBuses(p, aSupportedStorageBuses)) +# define ISystemProperties_get_SupportedStorageControllerTypes(p, aSupportedStorageControllerTypes) ((p)->lpVtbl->GetSupportedStorageControllerTypes(p, aSupportedStorageControllerTypes)) +# define ISystemProperties_GetSupportedStorageControllerTypes(p, aSupportedStorageControllerTypes) ((p)->lpVtbl->GetSupportedStorageControllerTypes(p, aSupportedStorageControllerTypes)) +# define ISystemProperties_get_SupportedChipsetTypes(p, aSupportedChipsetTypes) ((p)->lpVtbl->GetSupportedChipsetTypes(p, aSupportedChipsetTypes)) +# define ISystemProperties_GetSupportedChipsetTypes(p, aSupportedChipsetTypes) ((p)->lpVtbl->GetSupportedChipsetTypes(p, aSupportedChipsetTypes)) +# define ISystemProperties_GetMaxNetworkAdapters(p, aChipset, aMaxNetworkAdapters) ((p)->lpVtbl->GetMaxNetworkAdapters(p, aChipset, aMaxNetworkAdapters)) +# define ISystemProperties_GetMaxNetworkAdaptersOfType(p, aChipset, aType, aMaxNetworkAdapters) ((p)->lpVtbl->GetMaxNetworkAdaptersOfType(p, aChipset, aType, aMaxNetworkAdapters)) +# define ISystemProperties_GetMaxDevicesPerPortForStorageBus(p, aBus, aMaxDevicesPerPort) ((p)->lpVtbl->GetMaxDevicesPerPortForStorageBus(p, aBus, aMaxDevicesPerPort)) +# define ISystemProperties_GetMinPortCountForStorageBus(p, aBus, aMinPortCount) ((p)->lpVtbl->GetMinPortCountForStorageBus(p, aBus, aMinPortCount)) +# define ISystemProperties_GetMaxPortCountForStorageBus(p, aBus, aMaxPortCount) ((p)->lpVtbl->GetMaxPortCountForStorageBus(p, aBus, aMaxPortCount)) +# define ISystemProperties_GetMaxInstancesOfStorageBus(p, aChipset, aBus, aMaxInstances) ((p)->lpVtbl->GetMaxInstancesOfStorageBus(p, aChipset, aBus, aMaxInstances)) +# define ISystemProperties_GetDeviceTypesForStorageBus(p, aBus, aDeviceTypes) ((p)->lpVtbl->GetDeviceTypesForStorageBus(p, aBus, aDeviceTypes)) +# define ISystemProperties_GetStorageBusForStorageControllerType(p, aStorageControllerType, aStorageBus) ((p)->lpVtbl->GetStorageBusForStorageControllerType(p, aStorageControllerType, aStorageBus)) +# define ISystemProperties_GetStorageControllerTypesForStorageBus(p, aStorageBus, aStorageControllerType) ((p)->lpVtbl->GetStorageControllerTypesForStorageBus(p, aStorageBus, aStorageControllerType)) +# define ISystemProperties_GetDefaultIoCacheSettingForStorageController(p, aControllerType, aEnabled) ((p)->lpVtbl->GetDefaultIoCacheSettingForStorageController(p, aControllerType, aEnabled)) +# define ISystemProperties_GetStorageControllerHotplugCapable(p, aControllerType, aHotplugCapable) ((p)->lpVtbl->GetStorageControllerHotplugCapable(p, aControllerType, aHotplugCapable)) +# define ISystemProperties_GetMaxInstancesOfUSBControllerType(p, aChipset, aType, aMaxInstances) ((p)->lpVtbl->GetMaxInstancesOfUSBControllerType(p, aChipset, aType, aMaxInstances)) +# endif /* VBOX_WITH_GLUE */ + +interface ISystemProperties +{ +# ifndef VBOX_WITH_GLUE + struct ISystemProperties_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISystemPropertiesVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISystemProperties declaration */ + + +/* Start of struct IGuestOSType declaration */ +# define IGUESTOSTYPE_IID_STR "d0d6c6d8-e5db-4d2c-baaa-c71053a6236d" +# define IGUESTOSTYPE_IID { \ + 0xd0d6c6d8, 0xe5db, 0x4d2c, \ + { 0xba, 0xaa, 0xc7, 0x10, 0x53, 0xa6, 0x23, 0x6d } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestOSType); +# ifndef VBOX_WITH_GLUE +struct IGuestOSType_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetFamilyId)(IGuestOSType *pThis, PRUnichar * *familyId); + + nsresult (*GetFamilyDescription)(IGuestOSType *pThis, PRUnichar * *familyDescription); + + nsresult (*GetId)(IGuestOSType *pThis, PRUnichar * *id); + + nsresult (*GetDescription)(IGuestOSType *pThis, PRUnichar * *description); + + nsresult (*GetIs64Bit)(IGuestOSType *pThis, PRBool *is64Bit); + + nsresult (*GetRecommendedIOAPIC)(IGuestOSType *pThis, PRBool *recommendedIOAPIC); + + nsresult (*GetRecommendedVirtEx)(IGuestOSType *pThis, PRBool *recommendedVirtEx); + + nsresult (*GetRecommendedRAM)(IGuestOSType *pThis, PRUint32 *recommendedRAM); + + nsresult (*GetRecommendedGraphicsController)(IGuestOSType *pThis, PRUint32 *recommendedGraphicsController); + + nsresult (*GetRecommendedVRAM)(IGuestOSType *pThis, PRUint32 *recommendedVRAM); + + nsresult (*GetRecommended2DVideoAcceleration)(IGuestOSType *pThis, PRBool *recommended2DVideoAcceleration); + + nsresult (*GetRecommended3DAcceleration)(IGuestOSType *pThis, PRBool *recommended3DAcceleration); + + nsresult (*GetRecommendedHDD)(IGuestOSType *pThis, PRInt64 *recommendedHDD); + + nsresult (*GetAdapterType)(IGuestOSType *pThis, PRUint32 *adapterType); + + nsresult (*GetRecommendedPAE)(IGuestOSType *pThis, PRBool *recommendedPAE); + + nsresult (*GetRecommendedDVDStorageController)(IGuestOSType *pThis, PRUint32 *recommendedDVDStorageController); + + nsresult (*GetRecommendedDVDStorageBus)(IGuestOSType *pThis, PRUint32 *recommendedDVDStorageBus); + + nsresult (*GetRecommendedHDStorageController)(IGuestOSType *pThis, PRUint32 *recommendedHDStorageController); + + nsresult (*GetRecommendedHDStorageBus)(IGuestOSType *pThis, PRUint32 *recommendedHDStorageBus); + + nsresult (*GetRecommendedFirmware)(IGuestOSType *pThis, PRUint32 *recommendedFirmware); + + nsresult (*GetRecommendedUSBHID)(IGuestOSType *pThis, PRBool *recommendedUSBHID); + + nsresult (*GetRecommendedHPET)(IGuestOSType *pThis, PRBool *recommendedHPET); + + nsresult (*GetRecommendedUSBTablet)(IGuestOSType *pThis, PRBool *recommendedUSBTablet); + + nsresult (*GetRecommendedRTCUseUTC)(IGuestOSType *pThis, PRBool *recommendedRTCUseUTC); + + nsresult (*GetRecommendedChipset)(IGuestOSType *pThis, PRUint32 *recommendedChipset); + + nsresult (*GetRecommendedAudioController)(IGuestOSType *pThis, PRUint32 *recommendedAudioController); + + nsresult (*GetRecommendedAudioCodec)(IGuestOSType *pThis, PRUint32 *recommendedAudioCodec); + + nsresult (*GetRecommendedFloppy)(IGuestOSType *pThis, PRBool *recommendedFloppy); + + nsresult (*GetRecommendedUSB)(IGuestOSType *pThis, PRBool *recommendedUSB); + + nsresult (*GetRecommendedUSB3)(IGuestOSType *pThis, PRBool *recommendedUSB3); + + nsresult (*GetRecommendedTFReset)(IGuestOSType *pThis, PRBool *recommendedTFReset); + + nsresult (*GetRecommendedX2APIC)(IGuestOSType *pThis, PRBool *recommendedX2APIC); + + nsresult (*GetInternalAndReservedAttribute1IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestOSTypeVtbl +{ + nsresult (*QueryInterface)(IGuestOSType *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestOSType *pThis); + nsrefcnt (*Release)(IGuestOSType *pThis); + nsresult (*GetFamilyId)(IGuestOSType *pThis, PRUnichar * *familyId); + + nsresult (*GetFamilyDescription)(IGuestOSType *pThis, PRUnichar * *familyDescription); + + nsresult (*GetId)(IGuestOSType *pThis, PRUnichar * *id); + + nsresult (*GetDescription)(IGuestOSType *pThis, PRUnichar * *description); + + nsresult (*GetIs64Bit)(IGuestOSType *pThis, PRBool *is64Bit); + + nsresult (*GetRecommendedIOAPIC)(IGuestOSType *pThis, PRBool *recommendedIOAPIC); + + nsresult (*GetRecommendedVirtEx)(IGuestOSType *pThis, PRBool *recommendedVirtEx); + + nsresult (*GetRecommendedRAM)(IGuestOSType *pThis, PRUint32 *recommendedRAM); + + nsresult (*GetRecommendedGraphicsController)(IGuestOSType *pThis, PRUint32 *recommendedGraphicsController); + + nsresult (*GetRecommendedVRAM)(IGuestOSType *pThis, PRUint32 *recommendedVRAM); + + nsresult (*GetRecommended2DVideoAcceleration)(IGuestOSType *pThis, PRBool *recommended2DVideoAcceleration); + + nsresult (*GetRecommended3DAcceleration)(IGuestOSType *pThis, PRBool *recommended3DAcceleration); + + nsresult (*GetRecommendedHDD)(IGuestOSType *pThis, PRInt64 *recommendedHDD); + + nsresult (*GetAdapterType)(IGuestOSType *pThis, PRUint32 *adapterType); + + nsresult (*GetRecommendedPAE)(IGuestOSType *pThis, PRBool *recommendedPAE); + + nsresult (*GetRecommendedDVDStorageController)(IGuestOSType *pThis, PRUint32 *recommendedDVDStorageController); + + nsresult (*GetRecommendedDVDStorageBus)(IGuestOSType *pThis, PRUint32 *recommendedDVDStorageBus); + + nsresult (*GetRecommendedHDStorageController)(IGuestOSType *pThis, PRUint32 *recommendedHDStorageController); + + nsresult (*GetRecommendedHDStorageBus)(IGuestOSType *pThis, PRUint32 *recommendedHDStorageBus); + + nsresult (*GetRecommendedFirmware)(IGuestOSType *pThis, PRUint32 *recommendedFirmware); + + nsresult (*GetRecommendedUSBHID)(IGuestOSType *pThis, PRBool *recommendedUSBHID); + + nsresult (*GetRecommendedHPET)(IGuestOSType *pThis, PRBool *recommendedHPET); + + nsresult (*GetRecommendedUSBTablet)(IGuestOSType *pThis, PRBool *recommendedUSBTablet); + + nsresult (*GetRecommendedRTCUseUTC)(IGuestOSType *pThis, PRBool *recommendedRTCUseUTC); + + nsresult (*GetRecommendedChipset)(IGuestOSType *pThis, PRUint32 *recommendedChipset); + + nsresult (*GetRecommendedAudioController)(IGuestOSType *pThis, PRUint32 *recommendedAudioController); + + nsresult (*GetRecommendedAudioCodec)(IGuestOSType *pThis, PRUint32 *recommendedAudioCodec); + + nsresult (*GetRecommendedFloppy)(IGuestOSType *pThis, PRBool *recommendedFloppy); + + nsresult (*GetRecommendedUSB)(IGuestOSType *pThis, PRBool *recommendedUSB); + + nsresult (*GetRecommendedUSB3)(IGuestOSType *pThis, PRBool *recommendedUSB3); + + nsresult (*GetRecommendedTFReset)(IGuestOSType *pThis, PRBool *recommendedTFReset); + + nsresult (*GetRecommendedX2APIC)(IGuestOSType *pThis, PRBool *recommendedX2APIC); + + nsresult (*GetInternalAndReservedAttribute1IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IGuestOSType)(IGuestOSType *pThis, PRUint32 *reserved); + +}; +# define IGuestOSType_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestOSType_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestOSType_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestOSType_get_FamilyId(p, aFamilyId) ((p)->lpVtbl->GetFamilyId(p, aFamilyId)) +# define IGuestOSType_GetFamilyId(p, aFamilyId) ((p)->lpVtbl->GetFamilyId(p, aFamilyId)) +# define IGuestOSType_get_FamilyDescription(p, aFamilyDescription) ((p)->lpVtbl->GetFamilyDescription(p, aFamilyDescription)) +# define IGuestOSType_GetFamilyDescription(p, aFamilyDescription) ((p)->lpVtbl->GetFamilyDescription(p, aFamilyDescription)) +# define IGuestOSType_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestOSType_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestOSType_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IGuestOSType_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IGuestOSType_get_Is64Bit(p, aIs64Bit) ((p)->lpVtbl->GetIs64Bit(p, aIs64Bit)) +# define IGuestOSType_GetIs64Bit(p, aIs64Bit) ((p)->lpVtbl->GetIs64Bit(p, aIs64Bit)) +# define IGuestOSType_get_RecommendedIOAPIC(p, aRecommendedIOAPIC) ((p)->lpVtbl->GetRecommendedIOAPIC(p, aRecommendedIOAPIC)) +# define IGuestOSType_GetRecommendedIOAPIC(p, aRecommendedIOAPIC) ((p)->lpVtbl->GetRecommendedIOAPIC(p, aRecommendedIOAPIC)) +# define IGuestOSType_get_RecommendedVirtEx(p, aRecommendedVirtEx) ((p)->lpVtbl->GetRecommendedVirtEx(p, aRecommendedVirtEx)) +# define IGuestOSType_GetRecommendedVirtEx(p, aRecommendedVirtEx) ((p)->lpVtbl->GetRecommendedVirtEx(p, aRecommendedVirtEx)) +# define IGuestOSType_get_RecommendedRAM(p, aRecommendedRAM) ((p)->lpVtbl->GetRecommendedRAM(p, aRecommendedRAM)) +# define IGuestOSType_GetRecommendedRAM(p, aRecommendedRAM) ((p)->lpVtbl->GetRecommendedRAM(p, aRecommendedRAM)) +# define IGuestOSType_get_RecommendedGraphicsController(p, aRecommendedGraphicsController) ((p)->lpVtbl->GetRecommendedGraphicsController(p, aRecommendedGraphicsController)) +# define IGuestOSType_GetRecommendedGraphicsController(p, aRecommendedGraphicsController) ((p)->lpVtbl->GetRecommendedGraphicsController(p, aRecommendedGraphicsController)) +# define IGuestOSType_get_RecommendedVRAM(p, aRecommendedVRAM) ((p)->lpVtbl->GetRecommendedVRAM(p, aRecommendedVRAM)) +# define IGuestOSType_GetRecommendedVRAM(p, aRecommendedVRAM) ((p)->lpVtbl->GetRecommendedVRAM(p, aRecommendedVRAM)) +# define IGuestOSType_get_Recommended2DVideoAcceleration(p, aRecommended2DVideoAcceleration) ((p)->lpVtbl->GetRecommended2DVideoAcceleration(p, aRecommended2DVideoAcceleration)) +# define IGuestOSType_GetRecommended2DVideoAcceleration(p, aRecommended2DVideoAcceleration) ((p)->lpVtbl->GetRecommended2DVideoAcceleration(p, aRecommended2DVideoAcceleration)) +# define IGuestOSType_get_Recommended3DAcceleration(p, aRecommended3DAcceleration) ((p)->lpVtbl->GetRecommended3DAcceleration(p, aRecommended3DAcceleration)) +# define IGuestOSType_GetRecommended3DAcceleration(p, aRecommended3DAcceleration) ((p)->lpVtbl->GetRecommended3DAcceleration(p, aRecommended3DAcceleration)) +# define IGuestOSType_get_RecommendedHDD(p, aRecommendedHDD) ((p)->lpVtbl->GetRecommendedHDD(p, aRecommendedHDD)) +# define IGuestOSType_GetRecommendedHDD(p, aRecommendedHDD) ((p)->lpVtbl->GetRecommendedHDD(p, aRecommendedHDD)) +# define IGuestOSType_get_AdapterType(p, aAdapterType) ((p)->lpVtbl->GetAdapterType(p, aAdapterType)) +# define IGuestOSType_GetAdapterType(p, aAdapterType) ((p)->lpVtbl->GetAdapterType(p, aAdapterType)) +# define IGuestOSType_get_RecommendedPAE(p, aRecommendedPAE) ((p)->lpVtbl->GetRecommendedPAE(p, aRecommendedPAE)) +# define IGuestOSType_GetRecommendedPAE(p, aRecommendedPAE) ((p)->lpVtbl->GetRecommendedPAE(p, aRecommendedPAE)) +# define IGuestOSType_get_RecommendedDVDStorageController(p, aRecommendedDVDStorageController) ((p)->lpVtbl->GetRecommendedDVDStorageController(p, aRecommendedDVDStorageController)) +# define IGuestOSType_GetRecommendedDVDStorageController(p, aRecommendedDVDStorageController) ((p)->lpVtbl->GetRecommendedDVDStorageController(p, aRecommendedDVDStorageController)) +# define IGuestOSType_get_RecommendedDVDStorageBus(p, aRecommendedDVDStorageBus) ((p)->lpVtbl->GetRecommendedDVDStorageBus(p, aRecommendedDVDStorageBus)) +# define IGuestOSType_GetRecommendedDVDStorageBus(p, aRecommendedDVDStorageBus) ((p)->lpVtbl->GetRecommendedDVDStorageBus(p, aRecommendedDVDStorageBus)) +# define IGuestOSType_get_RecommendedHDStorageController(p, aRecommendedHDStorageController) ((p)->lpVtbl->GetRecommendedHDStorageController(p, aRecommendedHDStorageController)) +# define IGuestOSType_GetRecommendedHDStorageController(p, aRecommendedHDStorageController) ((p)->lpVtbl->GetRecommendedHDStorageController(p, aRecommendedHDStorageController)) +# define IGuestOSType_get_RecommendedHDStorageBus(p, aRecommendedHDStorageBus) ((p)->lpVtbl->GetRecommendedHDStorageBus(p, aRecommendedHDStorageBus)) +# define IGuestOSType_GetRecommendedHDStorageBus(p, aRecommendedHDStorageBus) ((p)->lpVtbl->GetRecommendedHDStorageBus(p, aRecommendedHDStorageBus)) +# define IGuestOSType_get_RecommendedFirmware(p, aRecommendedFirmware) ((p)->lpVtbl->GetRecommendedFirmware(p, aRecommendedFirmware)) +# define IGuestOSType_GetRecommendedFirmware(p, aRecommendedFirmware) ((p)->lpVtbl->GetRecommendedFirmware(p, aRecommendedFirmware)) +# define IGuestOSType_get_RecommendedUSBHID(p, aRecommendedUSBHID) ((p)->lpVtbl->GetRecommendedUSBHID(p, aRecommendedUSBHID)) +# define IGuestOSType_GetRecommendedUSBHID(p, aRecommendedUSBHID) ((p)->lpVtbl->GetRecommendedUSBHID(p, aRecommendedUSBHID)) +# define IGuestOSType_get_RecommendedHPET(p, aRecommendedHPET) ((p)->lpVtbl->GetRecommendedHPET(p, aRecommendedHPET)) +# define IGuestOSType_GetRecommendedHPET(p, aRecommendedHPET) ((p)->lpVtbl->GetRecommendedHPET(p, aRecommendedHPET)) +# define IGuestOSType_get_RecommendedUSBTablet(p, aRecommendedUSBTablet) ((p)->lpVtbl->GetRecommendedUSBTablet(p, aRecommendedUSBTablet)) +# define IGuestOSType_GetRecommendedUSBTablet(p, aRecommendedUSBTablet) ((p)->lpVtbl->GetRecommendedUSBTablet(p, aRecommendedUSBTablet)) +# define IGuestOSType_get_RecommendedRTCUseUTC(p, aRecommendedRTCUseUTC) ((p)->lpVtbl->GetRecommendedRTCUseUTC(p, aRecommendedRTCUseUTC)) +# define IGuestOSType_GetRecommendedRTCUseUTC(p, aRecommendedRTCUseUTC) ((p)->lpVtbl->GetRecommendedRTCUseUTC(p, aRecommendedRTCUseUTC)) +# define IGuestOSType_get_RecommendedChipset(p, aRecommendedChipset) ((p)->lpVtbl->GetRecommendedChipset(p, aRecommendedChipset)) +# define IGuestOSType_GetRecommendedChipset(p, aRecommendedChipset) ((p)->lpVtbl->GetRecommendedChipset(p, aRecommendedChipset)) +# define IGuestOSType_get_RecommendedAudioController(p, aRecommendedAudioController) ((p)->lpVtbl->GetRecommendedAudioController(p, aRecommendedAudioController)) +# define IGuestOSType_GetRecommendedAudioController(p, aRecommendedAudioController) ((p)->lpVtbl->GetRecommendedAudioController(p, aRecommendedAudioController)) +# define IGuestOSType_get_RecommendedAudioCodec(p, aRecommendedAudioCodec) ((p)->lpVtbl->GetRecommendedAudioCodec(p, aRecommendedAudioCodec)) +# define IGuestOSType_GetRecommendedAudioCodec(p, aRecommendedAudioCodec) ((p)->lpVtbl->GetRecommendedAudioCodec(p, aRecommendedAudioCodec)) +# define IGuestOSType_get_RecommendedFloppy(p, aRecommendedFloppy) ((p)->lpVtbl->GetRecommendedFloppy(p, aRecommendedFloppy)) +# define IGuestOSType_GetRecommendedFloppy(p, aRecommendedFloppy) ((p)->lpVtbl->GetRecommendedFloppy(p, aRecommendedFloppy)) +# define IGuestOSType_get_RecommendedUSB(p, aRecommendedUSB) ((p)->lpVtbl->GetRecommendedUSB(p, aRecommendedUSB)) +# define IGuestOSType_GetRecommendedUSB(p, aRecommendedUSB) ((p)->lpVtbl->GetRecommendedUSB(p, aRecommendedUSB)) +# define IGuestOSType_get_RecommendedUSB3(p, aRecommendedUSB3) ((p)->lpVtbl->GetRecommendedUSB3(p, aRecommendedUSB3)) +# define IGuestOSType_GetRecommendedUSB3(p, aRecommendedUSB3) ((p)->lpVtbl->GetRecommendedUSB3(p, aRecommendedUSB3)) +# define IGuestOSType_get_RecommendedTFReset(p, aRecommendedTFReset) ((p)->lpVtbl->GetRecommendedTFReset(p, aRecommendedTFReset)) +# define IGuestOSType_GetRecommendedTFReset(p, aRecommendedTFReset) ((p)->lpVtbl->GetRecommendedTFReset(p, aRecommendedTFReset)) +# define IGuestOSType_get_RecommendedX2APIC(p, aRecommendedX2APIC) ((p)->lpVtbl->GetRecommendedX2APIC(p, aRecommendedX2APIC)) +# define IGuestOSType_GetRecommendedX2APIC(p, aRecommendedX2APIC) ((p)->lpVtbl->GetRecommendedX2APIC(p, aRecommendedX2APIC)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestOSType +{ +# ifndef VBOX_WITH_GLUE + struct IGuestOSType_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestOSTypeVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestOSType declaration */ + + +/* Start of struct IAdditionsFacility declaration */ +# define IADDITIONSFACILITY_IID_STR "f2f7fae4-4a06-81fc-a916-78b2da1fa0e5" +# define IADDITIONSFACILITY_IID { \ + 0xf2f7fae4, 0x4a06, 0x81fc, \ + { 0xa9, 0x16, 0x78, 0xb2, 0xda, 0x1f, 0xa0, 0xe5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IAdditionsFacility); +# ifndef VBOX_WITH_GLUE +struct IAdditionsFacility_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetClassType)(IAdditionsFacility *pThis, PRUint32 *classType); + + nsresult (*GetLastUpdated)(IAdditionsFacility *pThis, PRInt64 *lastUpdated); + + nsresult (*GetName)(IAdditionsFacility *pThis, PRUnichar * *name); + + nsresult (*GetStatus)(IAdditionsFacility *pThis, PRUint32 *status); + + nsresult (*GetType)(IAdditionsFacility *pThis, PRUint32 *type); + + nsresult (*GetInternalAndReservedAttribute1IAdditionsFacility)(IAdditionsFacility *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IAdditionsFacility)(IAdditionsFacility *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IAdditionsFacilityVtbl +{ + nsresult (*QueryInterface)(IAdditionsFacility *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IAdditionsFacility *pThis); + nsrefcnt (*Release)(IAdditionsFacility *pThis); + nsresult (*GetClassType)(IAdditionsFacility *pThis, PRUint32 *classType); + + nsresult (*GetLastUpdated)(IAdditionsFacility *pThis, PRInt64 *lastUpdated); + + nsresult (*GetName)(IAdditionsFacility *pThis, PRUnichar * *name); + + nsresult (*GetStatus)(IAdditionsFacility *pThis, PRUint32 *status); + + nsresult (*GetType)(IAdditionsFacility *pThis, PRUint32 *type); + + nsresult (*GetInternalAndReservedAttribute1IAdditionsFacility)(IAdditionsFacility *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IAdditionsFacility)(IAdditionsFacility *pThis, PRUint32 *reserved); + +}; +# define IAdditionsFacility_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IAdditionsFacility_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IAdditionsFacility_Release(p) ((p)->lpVtbl->Release(p)) +# define IAdditionsFacility_get_ClassType(p, aClassType) ((p)->lpVtbl->GetClassType(p, aClassType)) +# define IAdditionsFacility_GetClassType(p, aClassType) ((p)->lpVtbl->GetClassType(p, aClassType)) +# define IAdditionsFacility_get_LastUpdated(p, aLastUpdated) ((p)->lpVtbl->GetLastUpdated(p, aLastUpdated)) +# define IAdditionsFacility_GetLastUpdated(p, aLastUpdated) ((p)->lpVtbl->GetLastUpdated(p, aLastUpdated)) +# define IAdditionsFacility_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IAdditionsFacility_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IAdditionsFacility_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IAdditionsFacility_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IAdditionsFacility_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IAdditionsFacility_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# endif /* VBOX_WITH_GLUE */ + +interface IAdditionsFacility +{ +# ifndef VBOX_WITH_GLUE + struct IAdditionsFacility_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IAdditionsFacilityVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IAdditionsFacility declaration */ + + +/* Start of struct IDnDBase declaration */ +# define IDNDBASE_IID_STR "4132147b-42f8-cd96-7570-6a8800e3342c" +# define IDNDBASE_IID { \ + 0x4132147b, 0x42f8, 0xcd96, \ + { 0x75, 0x70, 0x6a, 0x88, 0x00, 0xe3, 0x34, 0x2c } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDnDBase); +# ifndef VBOX_WITH_GLUE +struct IDnDBase_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetFormats)(IDnDBase *pThis, PRUint32 *formatsSize, PRUnichar * **formats); + + nsresult (*GetProtocolVersion)(IDnDBase *pThis, PRUint32 *protocolVersion); + + nsresult (*GetInternalAndReservedAttribute1IDnDBase)(IDnDBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDBase)(IDnDBase *pThis, PRUint32 *reserved); + + nsresult (*IsFormatSupported)( + IDnDBase *pThis, + PRUnichar * format, + PRBool * supported + ); + + nsresult (*AddFormats)( + IDnDBase *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*RemoveFormats)( + IDnDBase *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*InternalAndReservedMethod1IDnDBase)(IDnDBase *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDnDBaseVtbl +{ + nsresult (*QueryInterface)(IDnDBase *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDnDBase *pThis); + nsrefcnt (*Release)(IDnDBase *pThis); + nsresult (*GetFormats)(IDnDBase *pThis, PRUint32 *formatsSize, PRUnichar * **formats); + + nsresult (*GetProtocolVersion)(IDnDBase *pThis, PRUint32 *protocolVersion); + + nsresult (*GetInternalAndReservedAttribute1IDnDBase)(IDnDBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDBase)(IDnDBase *pThis, PRUint32 *reserved); + + nsresult (*IsFormatSupported)( + IDnDBase *pThis, + PRUnichar * format, + PRBool * supported + ); + + nsresult (*AddFormats)( + IDnDBase *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*RemoveFormats)( + IDnDBase *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*InternalAndReservedMethod1IDnDBase)(IDnDBase *pThis); + +}; +# define IDnDBase_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDnDBase_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDnDBase_Release(p) ((p)->lpVtbl->Release(p)) +# define IDnDBase_get_Formats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IDnDBase_GetFormats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IDnDBase_get_ProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IDnDBase_GetProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IDnDBase_IsFormatSupported(p, aFormat, aSupported) ((p)->lpVtbl->IsFormatSupported(p, aFormat, aSupported)) +# define IDnDBase_AddFormats(p, aFormats) ((p)->lpVtbl->AddFormats(p, aFormats)) +# define IDnDBase_RemoveFormats(p, aFormats) ((p)->lpVtbl->RemoveFormats(p, aFormats)) +# endif /* VBOX_WITH_GLUE */ + +interface IDnDBase +{ +# ifndef VBOX_WITH_GLUE + struct IDnDBase_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDnDBaseVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDnDBase declaration */ + + +/* Start of struct IDnDSource declaration */ +# define IDNDSOURCE_IID_STR "d23a9ca3-42da-c94b-8aec-21968e08355d" +# define IDNDSOURCE_IID { \ + 0xd23a9ca3, 0x42da, 0xc94b, \ + { 0x8a, 0xec, 0x21, 0x96, 0x8e, 0x08, 0x35, 0x5d } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDnDSource); +# ifndef VBOX_WITH_GLUE +struct IDnDSource_vtbl +{ + struct IDnDBase_vtbl idndbase; + + nsresult (*GetInternalAndReservedAttribute1IDnDSource)(IDnDSource *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDSource)(IDnDSource *pThis, PRUint32 *reserved); + + nsresult (*DragIsPending)( + IDnDSource *pThis, + PRUint32 screenId, + PRUint32 *formatsSize, + PRUnichar *** formats, + PRUint32 *allowedActionsSize, + PRUint32** allowedActions, + PRUint32 * defaultAction + ); + + nsresult (*Drop)( + IDnDSource *pThis, + PRUnichar * format, + PRUint32 action, + IProgress * * progress + ); + + nsresult (*ReceiveData)( + IDnDSource *pThis, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*InternalAndReservedMethod1IDnDSource)(IDnDSource *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDnDSourceVtbl +{ + nsresult (*QueryInterface)(IDnDSource *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDnDSource *pThis); + nsrefcnt (*Release)(IDnDSource *pThis); + nsresult (*GetFormats)(IDnDSource *pThis, PRUint32 *formatsSize, PRUnichar * **formats); + + nsresult (*GetProtocolVersion)(IDnDSource *pThis, PRUint32 *protocolVersion); + + nsresult (*GetInternalAndReservedAttribute1IDnDBase)(IDnDSource *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDBase)(IDnDSource *pThis, PRUint32 *reserved); + + nsresult (*IsFormatSupported)( + IDnDSource *pThis, + PRUnichar * format, + PRBool * supported + ); + + nsresult (*AddFormats)( + IDnDSource *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*RemoveFormats)( + IDnDSource *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*InternalAndReservedMethod1IDnDBase)(IDnDSource *pThis); + + nsresult (*GetInternalAndReservedAttribute1IDnDSource)(IDnDSource *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDSource)(IDnDSource *pThis, PRUint32 *reserved); + + nsresult (*DragIsPending)( + IDnDSource *pThis, + PRUint32 screenId, + PRUint32 *formatsSize, + PRUnichar *** formats, + PRUint32 *allowedActionsSize, + PRUint32** allowedActions, + PRUint32 * defaultAction + ); + + nsresult (*Drop)( + IDnDSource *pThis, + PRUnichar * format, + PRUint32 action, + IProgress * * progress + ); + + nsresult (*ReceiveData)( + IDnDSource *pThis, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*InternalAndReservedMethod1IDnDSource)(IDnDSource *pThis); + +}; +# define IDnDSource_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDnDSource_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDnDSource_Release(p) ((p)->lpVtbl->Release(p)) +# define IDnDSource_get_Formats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IDnDSource_GetFormats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IDnDSource_get_ProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IDnDSource_GetProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IDnDSource_IsFormatSupported(p, aFormat, aSupported) ((p)->lpVtbl->IsFormatSupported(p, aFormat, aSupported)) +# define IDnDSource_AddFormats(p, aFormats) ((p)->lpVtbl->AddFormats(p, aFormats)) +# define IDnDSource_RemoveFormats(p, aFormats) ((p)->lpVtbl->RemoveFormats(p, aFormats)) +# define IDnDSource_DragIsPending(p, aScreenId, aFormats, aAllowedActions, aDefaultAction) ((p)->lpVtbl->DragIsPending(p, aScreenId, aFormats, aAllowedActions, aDefaultAction)) +# define IDnDSource_Drop(p, aFormat, aAction, aProgress) ((p)->lpVtbl->Drop(p, aFormat, aAction, aProgress)) +# define IDnDSource_ReceiveData(p, aData) ((p)->lpVtbl->ReceiveData(p, aData)) +# endif /* VBOX_WITH_GLUE */ + +interface IDnDSource +{ +# ifndef VBOX_WITH_GLUE + struct IDnDSource_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDnDSourceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDnDSource declaration */ + + +/* Start of struct IGuestDnDSource declaration */ +# define IGUESTDNDSOURCE_IID_STR "dedfb5d9-4c1b-edf7-fdf3-c1be6827dc28" +# define IGUESTDNDSOURCE_IID { \ + 0xdedfb5d9, 0x4c1b, 0xedf7, \ + { 0xfd, 0xf3, 0xc1, 0xbe, 0x68, 0x27, 0xdc, 0x28 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestDnDSource); +# ifndef VBOX_WITH_GLUE +struct IGuestDnDSource_vtbl +{ + struct IDnDSource_vtbl idndsource; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestDnDSource *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestDnDSourceVtbl +{ + nsresult (*QueryInterface)(IGuestDnDSource *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestDnDSource *pThis); + nsrefcnt (*Release)(IGuestDnDSource *pThis); + nsresult (*GetFormats)(IGuestDnDSource *pThis, PRUint32 *formatsSize, PRUnichar * **formats); + + nsresult (*GetProtocolVersion)(IGuestDnDSource *pThis, PRUint32 *protocolVersion); + + nsresult (*GetInternalAndReservedAttribute1IDnDBase)(IGuestDnDSource *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDBase)(IGuestDnDSource *pThis, PRUint32 *reserved); + + nsresult (*IsFormatSupported)( + IGuestDnDSource *pThis, + PRUnichar * format, + PRBool * supported + ); + + nsresult (*AddFormats)( + IGuestDnDSource *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*RemoveFormats)( + IGuestDnDSource *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*InternalAndReservedMethod1IDnDBase)(IGuestDnDSource *pThis); + + nsresult (*GetInternalAndReservedAttribute1IDnDSource)(IGuestDnDSource *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDSource)(IGuestDnDSource *pThis, PRUint32 *reserved); + + nsresult (*DragIsPending)( + IGuestDnDSource *pThis, + PRUint32 screenId, + PRUint32 *formatsSize, + PRUnichar *** formats, + PRUint32 *allowedActionsSize, + PRUint32** allowedActions, + PRUint32 * defaultAction + ); + + nsresult (*Drop)( + IGuestDnDSource *pThis, + PRUnichar * format, + PRUint32 action, + IProgress * * progress + ); + + nsresult (*ReceiveData)( + IGuestDnDSource *pThis, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*InternalAndReservedMethod1IDnDSource)(IGuestDnDSource *pThis); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestDnDSource *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestDnDSource_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestDnDSource_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestDnDSource_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestDnDSource_get_Formats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IGuestDnDSource_GetFormats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IGuestDnDSource_get_ProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IGuestDnDSource_GetProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IGuestDnDSource_IsFormatSupported(p, aFormat, aSupported) ((p)->lpVtbl->IsFormatSupported(p, aFormat, aSupported)) +# define IGuestDnDSource_AddFormats(p, aFormats) ((p)->lpVtbl->AddFormats(p, aFormats)) +# define IGuestDnDSource_RemoveFormats(p, aFormats) ((p)->lpVtbl->RemoveFormats(p, aFormats)) +# define IGuestDnDSource_DragIsPending(p, aScreenId, aFormats, aAllowedActions, aDefaultAction) ((p)->lpVtbl->DragIsPending(p, aScreenId, aFormats, aAllowedActions, aDefaultAction)) +# define IGuestDnDSource_Drop(p, aFormat, aAction, aProgress) ((p)->lpVtbl->Drop(p, aFormat, aAction, aProgress)) +# define IGuestDnDSource_ReceiveData(p, aData) ((p)->lpVtbl->ReceiveData(p, aData)) +# define IGuestDnDSource_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestDnDSource_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestDnDSource +{ +# ifndef VBOX_WITH_GLUE + struct IGuestDnDSource_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestDnDSourceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestDnDSource declaration */ + + +/* Start of struct IDnDTarget declaration */ +# define IDNDTARGET_IID_STR "ff5befc3-4ba3-7903-2aa4-43988ba11554" +# define IDNDTARGET_IID { \ + 0xff5befc3, 0x4ba3, 0x7903, \ + { 0x2a, 0xa4, 0x43, 0x98, 0x8b, 0xa1, 0x15, 0x54 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDnDTarget); +# ifndef VBOX_WITH_GLUE +struct IDnDTarget_vtbl +{ + struct IDnDBase_vtbl idndbase; + + nsresult (*GetInternalAndReservedAttribute1IDnDTarget)(IDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDTarget)(IDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*Enter)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUint32 y, + PRUint32 x, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUint32 * resultAction + ); + + nsresult (*Move)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUint32 * resultAction + ); + + nsresult (*Leave)( + IDnDTarget *pThis, + PRUint32 screenId + ); + + nsresult (*Drop)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUnichar * * format, + PRUint32 * resultAction + ); + + nsresult (*SendData)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUnichar * format, + PRUint32 dataSize, + PRUint8* data, + IProgress * * progress + ); + + nsresult (*Cancel)( + IDnDTarget *pThis, + PRBool * veto + ); + + nsresult (*InternalAndReservedMethod1IDnDTarget)(IDnDTarget *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDnDTargetVtbl +{ + nsresult (*QueryInterface)(IDnDTarget *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDnDTarget *pThis); + nsrefcnt (*Release)(IDnDTarget *pThis); + nsresult (*GetFormats)(IDnDTarget *pThis, PRUint32 *formatsSize, PRUnichar * **formats); + + nsresult (*GetProtocolVersion)(IDnDTarget *pThis, PRUint32 *protocolVersion); + + nsresult (*GetInternalAndReservedAttribute1IDnDBase)(IDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDBase)(IDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*IsFormatSupported)( + IDnDTarget *pThis, + PRUnichar * format, + PRBool * supported + ); + + nsresult (*AddFormats)( + IDnDTarget *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*RemoveFormats)( + IDnDTarget *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*InternalAndReservedMethod1IDnDBase)(IDnDTarget *pThis); + + nsresult (*GetInternalAndReservedAttribute1IDnDTarget)(IDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDTarget)(IDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*Enter)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUint32 y, + PRUint32 x, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUint32 * resultAction + ); + + nsresult (*Move)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUint32 * resultAction + ); + + nsresult (*Leave)( + IDnDTarget *pThis, + PRUint32 screenId + ); + + nsresult (*Drop)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUnichar * * format, + PRUint32 * resultAction + ); + + nsresult (*SendData)( + IDnDTarget *pThis, + PRUint32 screenId, + PRUnichar * format, + PRUint32 dataSize, + PRUint8* data, + IProgress * * progress + ); + + nsresult (*Cancel)( + IDnDTarget *pThis, + PRBool * veto + ); + + nsresult (*InternalAndReservedMethod1IDnDTarget)(IDnDTarget *pThis); + +}; +# define IDnDTarget_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDnDTarget_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDnDTarget_Release(p) ((p)->lpVtbl->Release(p)) +# define IDnDTarget_get_Formats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IDnDTarget_GetFormats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IDnDTarget_get_ProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IDnDTarget_GetProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IDnDTarget_IsFormatSupported(p, aFormat, aSupported) ((p)->lpVtbl->IsFormatSupported(p, aFormat, aSupported)) +# define IDnDTarget_AddFormats(p, aFormats) ((p)->lpVtbl->AddFormats(p, aFormats)) +# define IDnDTarget_RemoveFormats(p, aFormats) ((p)->lpVtbl->RemoveFormats(p, aFormats)) +# define IDnDTarget_Enter(p, aScreenId, aY, aX, aDefaultAction, aAllowedActions, aFormats, aResultAction) ((p)->lpVtbl->Enter(p, aScreenId, aY, aX, aDefaultAction, aAllowedActions, aFormats, aResultAction)) +# define IDnDTarget_Move(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aResultAction) ((p)->lpVtbl->Move(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aResultAction)) +# define IDnDTarget_Leave(p, aScreenId) ((p)->lpVtbl->Leave(p, aScreenId)) +# define IDnDTarget_Drop(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aFormat, aResultAction) ((p)->lpVtbl->Drop(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aFormat, aResultAction)) +# define IDnDTarget_SendData(p, aScreenId, aFormat, aData, aProgress) ((p)->lpVtbl->SendData(p, aScreenId, aFormat, aData, aProgress)) +# define IDnDTarget_Cancel(p, aVeto) ((p)->lpVtbl->Cancel(p, aVeto)) +# endif /* VBOX_WITH_GLUE */ + +interface IDnDTarget +{ +# ifndef VBOX_WITH_GLUE + struct IDnDTarget_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDnDTargetVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDnDTarget declaration */ + + +/* Start of struct IGuestDnDTarget declaration */ +# define IGUESTDNDTARGET_IID_STR "50ce4b51-0ff7-46b7-a138-3c6e5ac946b4" +# define IGUESTDNDTARGET_IID { \ + 0x50ce4b51, 0x0ff7, 0x46b7, \ + { 0xa1, 0x38, 0x3c, 0x6e, 0x5a, 0xc9, 0x46, 0xb4 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestDnDTarget); +# ifndef VBOX_WITH_GLUE +struct IGuestDnDTarget_vtbl +{ + struct IDnDTarget_vtbl idndtarget; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestDnDTarget *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestDnDTargetVtbl +{ + nsresult (*QueryInterface)(IGuestDnDTarget *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestDnDTarget *pThis); + nsrefcnt (*Release)(IGuestDnDTarget *pThis); + nsresult (*GetFormats)(IGuestDnDTarget *pThis, PRUint32 *formatsSize, PRUnichar * **formats); + + nsresult (*GetProtocolVersion)(IGuestDnDTarget *pThis, PRUint32 *protocolVersion); + + nsresult (*GetInternalAndReservedAttribute1IDnDBase)(IGuestDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDBase)(IGuestDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*IsFormatSupported)( + IGuestDnDTarget *pThis, + PRUnichar * format, + PRBool * supported + ); + + nsresult (*AddFormats)( + IGuestDnDTarget *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*RemoveFormats)( + IGuestDnDTarget *pThis, + PRUint32 formatsSize, + PRUnichar ** formats + ); + + nsresult (*InternalAndReservedMethod1IDnDBase)(IGuestDnDTarget *pThis); + + nsresult (*GetInternalAndReservedAttribute1IDnDTarget)(IGuestDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDnDTarget)(IGuestDnDTarget *pThis, PRUint32 *reserved); + + nsresult (*Enter)( + IGuestDnDTarget *pThis, + PRUint32 screenId, + PRUint32 y, + PRUint32 x, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUint32 * resultAction + ); + + nsresult (*Move)( + IGuestDnDTarget *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUint32 * resultAction + ); + + nsresult (*Leave)( + IGuestDnDTarget *pThis, + PRUint32 screenId + ); + + nsresult (*Drop)( + IGuestDnDTarget *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 defaultAction, + PRUint32 allowedActionsSize, + PRUint32* allowedActions, + PRUint32 formatsSize, + PRUnichar ** formats, + PRUnichar * * format, + PRUint32 * resultAction + ); + + nsresult (*SendData)( + IGuestDnDTarget *pThis, + PRUint32 screenId, + PRUnichar * format, + PRUint32 dataSize, + PRUint8* data, + IProgress * * progress + ); + + nsresult (*Cancel)( + IGuestDnDTarget *pThis, + PRBool * veto + ); + + nsresult (*InternalAndReservedMethod1IDnDTarget)(IGuestDnDTarget *pThis); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestDnDTarget *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestDnDTarget_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestDnDTarget_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestDnDTarget_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestDnDTarget_get_Formats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IGuestDnDTarget_GetFormats(p, aFormats) ((p)->lpVtbl->GetFormats(p, aFormats)) +# define IGuestDnDTarget_get_ProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IGuestDnDTarget_GetProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IGuestDnDTarget_IsFormatSupported(p, aFormat, aSupported) ((p)->lpVtbl->IsFormatSupported(p, aFormat, aSupported)) +# define IGuestDnDTarget_AddFormats(p, aFormats) ((p)->lpVtbl->AddFormats(p, aFormats)) +# define IGuestDnDTarget_RemoveFormats(p, aFormats) ((p)->lpVtbl->RemoveFormats(p, aFormats)) +# define IGuestDnDTarget_Enter(p, aScreenId, aY, aX, aDefaultAction, aAllowedActions, aFormats, aResultAction) ((p)->lpVtbl->Enter(p, aScreenId, aY, aX, aDefaultAction, aAllowedActions, aFormats, aResultAction)) +# define IGuestDnDTarget_Move(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aResultAction) ((p)->lpVtbl->Move(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aResultAction)) +# define IGuestDnDTarget_Leave(p, aScreenId) ((p)->lpVtbl->Leave(p, aScreenId)) +# define IGuestDnDTarget_Drop(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aFormat, aResultAction) ((p)->lpVtbl->Drop(p, aScreenId, aX, aY, aDefaultAction, aAllowedActions, aFormats, aFormat, aResultAction)) +# define IGuestDnDTarget_SendData(p, aScreenId, aFormat, aData, aProgress) ((p)->lpVtbl->SendData(p, aScreenId, aFormat, aData, aProgress)) +# define IGuestDnDTarget_Cancel(p, aVeto) ((p)->lpVtbl->Cancel(p, aVeto)) +# define IGuestDnDTarget_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestDnDTarget_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestDnDTarget +{ +# ifndef VBOX_WITH_GLUE + struct IGuestDnDTarget_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestDnDTargetVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestDnDTarget declaration */ + + +/* Start of struct IGuestSession declaration */ +# define IGUESTSESSION_IID_STR "3E14C189-4A75-437E-B0BB-7E7C90D0DF2A" +# define IGUESTSESSION_IID { \ + 0x3E14C189, 0x4A75, 0x437E, \ + { 0xB0, 0xBB, 0x7E, 0x7C, 0x90, 0xD0, 0xDF, 0x2A } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestSession); +# ifndef VBOX_WITH_GLUE +struct IGuestSession_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetUser)(IGuestSession *pThis, PRUnichar * *user); + + nsresult (*GetDomain)(IGuestSession *pThis, PRUnichar * *domain); + + nsresult (*GetName)(IGuestSession *pThis, PRUnichar * *name); + + nsresult (*GetId)(IGuestSession *pThis, PRUint32 *id); + + nsresult (*GetTimeout)(IGuestSession *pThis, PRUint32 *timeout); + nsresult (*SetTimeout)(IGuestSession *pThis, PRUint32 timeout); + + nsresult (*GetProtocolVersion)(IGuestSession *pThis, PRUint32 *protocolVersion); + + nsresult (*GetStatus)(IGuestSession *pThis, PRUint32 *status); + + nsresult (*GetEnvironmentChanges)(IGuestSession *pThis, PRUint32 *environmentChangesSize, PRUnichar * **environmentChanges); + nsresult (*SetEnvironmentChanges)(IGuestSession *pThis, PRUint32 environmentChangesSize, PRUnichar * *environmentChanges); + + nsresult (*GetEnvironmentBase)(IGuestSession *pThis, PRUint32 *environmentBaseSize, PRUnichar * **environmentBase); + + nsresult (*GetProcesses)(IGuestSession *pThis, PRUint32 *processesSize, IGuestProcess * **processes); + + nsresult (*GetPathStyle)(IGuestSession *pThis, PRUint32 *pathStyle); + + nsresult (*GetCurrentDirectory)(IGuestSession *pThis, PRUnichar * *currentDirectory); + nsresult (*SetCurrentDirectory)(IGuestSession *pThis, PRUnichar * currentDirectory); + + nsresult (*GetUserHome)(IGuestSession *pThis, PRUnichar * *userHome); + + nsresult (*GetUserDocuments)(IGuestSession *pThis, PRUnichar * *userDocuments); + + nsresult (*GetDirectories)(IGuestSession *pThis, PRUint32 *directoriesSize, IGuestDirectory * **directories); + + nsresult (*GetFiles)(IGuestSession *pThis, PRUint32 *filesSize, IGuestFile * **files); + + nsresult (*GetEventSource)(IGuestSession *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*Close)(IGuestSession *pThis ); + + nsresult (*CopyFromGuest)( + IGuestSession *pThis, + PRUint32 sourcesSize, + PRUnichar ** sources, + PRUint32 filtersSize, + PRUnichar ** filters, + PRUint32 flagsSize, + PRUnichar ** flags, + PRUnichar * destination, + IProgress * * progress + ); + + nsresult (*CopyToGuest)( + IGuestSession *pThis, + PRUint32 sourcesSize, + PRUnichar ** sources, + PRUint32 filtersSize, + PRUnichar ** filters, + PRUint32 flagsSize, + PRUnichar ** flags, + PRUnichar * destination, + IProgress * * progress + ); + + nsresult (*DirectoryCopy)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*DirectoryCopyFromGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*DirectoryCopyToGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*DirectoryCreate)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 mode, + PRUint32 flagsSize, + PRUint32* flags + ); + + nsresult (*DirectoryCreateTemp)( + IGuestSession *pThis, + PRUnichar * templateName, + PRUint32 mode, + PRUnichar * path, + PRBool secure, + PRUnichar * * directory + ); + + nsresult (*DirectoryExists)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRBool * exists + ); + + nsresult (*DirectoryOpen)( + IGuestSession *pThis, + PRUnichar * path, + PRUnichar * filter, + PRUint32 flagsSize, + PRUint32* flags, + IGuestDirectory * * directory + ); + + nsresult (*DirectoryRemove)( + IGuestSession *pThis, + PRUnichar * path + ); + + nsresult (*DirectoryRemoveRecursive)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*EnvironmentScheduleSet)( + IGuestSession *pThis, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*EnvironmentScheduleUnset)( + IGuestSession *pThis, + PRUnichar * name + ); + + nsresult (*EnvironmentGetBaseVariable)( + IGuestSession *pThis, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*EnvironmentDoesBaseVariableExist)( + IGuestSession *pThis, + PRUnichar * name, + PRBool * exists + ); + + nsresult (*FileCopy)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FileCopyFromGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FileCopyToGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FileCreateTemp)( + IGuestSession *pThis, + PRUnichar * templateName, + PRUint32 mode, + PRUnichar * path, + PRBool secure, + IGuestFile * * file + ); + + nsresult (*FileExists)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRBool * exists + ); + + nsresult (*FileOpen)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 accessMode, + PRUint32 openAction, + PRUint32 creationMode, + IGuestFile * * file + ); + + nsresult (*FileOpenEx)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 accessMode, + PRUint32 openAction, + PRUint32 sharingMode, + PRUint32 creationMode, + PRUint32 flagsSize, + PRUint32* flags, + IGuestFile * * file + ); + + nsresult (*FileQuerySize)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRInt64 * size + ); + + nsresult (*FsObjExists)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRBool * exists + ); + + nsresult (*FsObjQueryInfo)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + IGuestFsObjInfo * * info + ); + + nsresult (*FsObjRemove)( + IGuestSession *pThis, + PRUnichar * path + ); + + nsresult (*FsObjRemoveArray)( + IGuestSession *pThis, + PRUint32 pathSize, + PRUnichar ** path, + IProgress * * progress + ); + + nsresult (*FsObjRename)( + IGuestSession *pThis, + PRUnichar * oldPath, + PRUnichar * newPath, + PRUint32 flagsSize, + PRUint32* flags + ); + + nsresult (*FsObjMove)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FsObjMoveArray)( + IGuestSession *pThis, + PRUint32 sourceSize, + PRUnichar ** source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FsObjCopyArray)( + IGuestSession *pThis, + PRUint32 sourceSize, + PRUnichar ** source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FsObjSetACL)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRUnichar * acl, + PRUint32 mode + ); + + nsresult (*ProcessCreate)( + IGuestSession *pThis, + PRUnichar * executable, + PRUint32 argumentsSize, + PRUnichar ** arguments, + PRUint32 environmentChangesSize, + PRUnichar ** environmentChanges, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 timeoutMS, + IGuestProcess * * guestProcess + ); + + nsresult (*ProcessCreateEx)( + IGuestSession *pThis, + PRUnichar * executable, + PRUint32 argumentsSize, + PRUnichar ** arguments, + PRUint32 environmentChangesSize, + PRUnichar ** environmentChanges, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 timeoutMS, + PRUint32 priority, + PRUint32 affinitySize, + PRInt32* affinity, + IGuestProcess * * guestProcess + ); + + nsresult (*ProcessGet)( + IGuestSession *pThis, + PRUint32 pid, + IGuestProcess * * guestProcess + ); + + nsresult (*SymlinkCreate)( + IGuestSession *pThis, + PRUnichar * symlink, + PRUnichar * target, + PRUint32 type + ); + + nsresult (*SymlinkExists)( + IGuestSession *pThis, + PRUnichar * symlink, + PRBool * exists + ); + + nsresult (*SymlinkRead)( + IGuestSession *pThis, + PRUnichar * symlink, + PRUint32 flagsSize, + PRUint32* flags, + PRUnichar * * target + ); + + nsresult (*WaitFor)( + IGuestSession *pThis, + PRUint32 waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*WaitForArray)( + IGuestSession *pThis, + PRUint32 waitForSize, + PRUint32* waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*InternalAndReservedMethod1IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod2IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod3IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod4IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod5IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod6IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod7IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod8IGuestSession)(IGuestSession *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestSessionVtbl +{ + nsresult (*QueryInterface)(IGuestSession *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestSession *pThis); + nsrefcnt (*Release)(IGuestSession *pThis); + nsresult (*GetUser)(IGuestSession *pThis, PRUnichar * *user); + + nsresult (*GetDomain)(IGuestSession *pThis, PRUnichar * *domain); + + nsresult (*GetName)(IGuestSession *pThis, PRUnichar * *name); + + nsresult (*GetId)(IGuestSession *pThis, PRUint32 *id); + + nsresult (*GetTimeout)(IGuestSession *pThis, PRUint32 *timeout); + nsresult (*SetTimeout)(IGuestSession *pThis, PRUint32 timeout); + + nsresult (*GetProtocolVersion)(IGuestSession *pThis, PRUint32 *protocolVersion); + + nsresult (*GetStatus)(IGuestSession *pThis, PRUint32 *status); + + nsresult (*GetEnvironmentChanges)(IGuestSession *pThis, PRUint32 *environmentChangesSize, PRUnichar * **environmentChanges); + nsresult (*SetEnvironmentChanges)(IGuestSession *pThis, PRUint32 environmentChangesSize, PRUnichar * *environmentChanges); + + nsresult (*GetEnvironmentBase)(IGuestSession *pThis, PRUint32 *environmentBaseSize, PRUnichar * **environmentBase); + + nsresult (*GetProcesses)(IGuestSession *pThis, PRUint32 *processesSize, IGuestProcess * **processes); + + nsresult (*GetPathStyle)(IGuestSession *pThis, PRUint32 *pathStyle); + + nsresult (*GetCurrentDirectory)(IGuestSession *pThis, PRUnichar * *currentDirectory); + nsresult (*SetCurrentDirectory)(IGuestSession *pThis, PRUnichar * currentDirectory); + + nsresult (*GetUserHome)(IGuestSession *pThis, PRUnichar * *userHome); + + nsresult (*GetUserDocuments)(IGuestSession *pThis, PRUnichar * *userDocuments); + + nsresult (*GetDirectories)(IGuestSession *pThis, PRUint32 *directoriesSize, IGuestDirectory * **directories); + + nsresult (*GetFiles)(IGuestSession *pThis, PRUint32 *filesSize, IGuestFile * **files); + + nsresult (*GetEventSource)(IGuestSession *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IGuestSession)(IGuestSession *pThis, PRUint32 *reserved); + + nsresult (*Close)(IGuestSession *pThis ); + + nsresult (*CopyFromGuest)( + IGuestSession *pThis, + PRUint32 sourcesSize, + PRUnichar ** sources, + PRUint32 filtersSize, + PRUnichar ** filters, + PRUint32 flagsSize, + PRUnichar ** flags, + PRUnichar * destination, + IProgress * * progress + ); + + nsresult (*CopyToGuest)( + IGuestSession *pThis, + PRUint32 sourcesSize, + PRUnichar ** sources, + PRUint32 filtersSize, + PRUnichar ** filters, + PRUint32 flagsSize, + PRUnichar ** flags, + PRUnichar * destination, + IProgress * * progress + ); + + nsresult (*DirectoryCopy)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*DirectoryCopyFromGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*DirectoryCopyToGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*DirectoryCreate)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 mode, + PRUint32 flagsSize, + PRUint32* flags + ); + + nsresult (*DirectoryCreateTemp)( + IGuestSession *pThis, + PRUnichar * templateName, + PRUint32 mode, + PRUnichar * path, + PRBool secure, + PRUnichar * * directory + ); + + nsresult (*DirectoryExists)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRBool * exists + ); + + nsresult (*DirectoryOpen)( + IGuestSession *pThis, + PRUnichar * path, + PRUnichar * filter, + PRUint32 flagsSize, + PRUint32* flags, + IGuestDirectory * * directory + ); + + nsresult (*DirectoryRemove)( + IGuestSession *pThis, + PRUnichar * path + ); + + nsresult (*DirectoryRemoveRecursive)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*EnvironmentScheduleSet)( + IGuestSession *pThis, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*EnvironmentScheduleUnset)( + IGuestSession *pThis, + PRUnichar * name + ); + + nsresult (*EnvironmentGetBaseVariable)( + IGuestSession *pThis, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*EnvironmentDoesBaseVariableExist)( + IGuestSession *pThis, + PRUnichar * name, + PRBool * exists + ); + + nsresult (*FileCopy)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FileCopyFromGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FileCopyToGuest)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FileCreateTemp)( + IGuestSession *pThis, + PRUnichar * templateName, + PRUint32 mode, + PRUnichar * path, + PRBool secure, + IGuestFile * * file + ); + + nsresult (*FileExists)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRBool * exists + ); + + nsresult (*FileOpen)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 accessMode, + PRUint32 openAction, + PRUint32 creationMode, + IGuestFile * * file + ); + + nsresult (*FileOpenEx)( + IGuestSession *pThis, + PRUnichar * path, + PRUint32 accessMode, + PRUint32 openAction, + PRUint32 sharingMode, + PRUint32 creationMode, + PRUint32 flagsSize, + PRUint32* flags, + IGuestFile * * file + ); + + nsresult (*FileQuerySize)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRInt64 * size + ); + + nsresult (*FsObjExists)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRBool * exists + ); + + nsresult (*FsObjQueryInfo)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + IGuestFsObjInfo * * info + ); + + nsresult (*FsObjRemove)( + IGuestSession *pThis, + PRUnichar * path + ); + + nsresult (*FsObjRemoveArray)( + IGuestSession *pThis, + PRUint32 pathSize, + PRUnichar ** path, + IProgress * * progress + ); + + nsresult (*FsObjRename)( + IGuestSession *pThis, + PRUnichar * oldPath, + PRUnichar * newPath, + PRUint32 flagsSize, + PRUint32* flags + ); + + nsresult (*FsObjMove)( + IGuestSession *pThis, + PRUnichar * source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FsObjMoveArray)( + IGuestSession *pThis, + PRUint32 sourceSize, + PRUnichar ** source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FsObjCopyArray)( + IGuestSession *pThis, + PRUint32 sourceSize, + PRUnichar ** source, + PRUnichar * destination, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*FsObjSetACL)( + IGuestSession *pThis, + PRUnichar * path, + PRBool followSymlinks, + PRUnichar * acl, + PRUint32 mode + ); + + nsresult (*ProcessCreate)( + IGuestSession *pThis, + PRUnichar * executable, + PRUint32 argumentsSize, + PRUnichar ** arguments, + PRUint32 environmentChangesSize, + PRUnichar ** environmentChanges, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 timeoutMS, + IGuestProcess * * guestProcess + ); + + nsresult (*ProcessCreateEx)( + IGuestSession *pThis, + PRUnichar * executable, + PRUint32 argumentsSize, + PRUnichar ** arguments, + PRUint32 environmentChangesSize, + PRUnichar ** environmentChanges, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 timeoutMS, + PRUint32 priority, + PRUint32 affinitySize, + PRInt32* affinity, + IGuestProcess * * guestProcess + ); + + nsresult (*ProcessGet)( + IGuestSession *pThis, + PRUint32 pid, + IGuestProcess * * guestProcess + ); + + nsresult (*SymlinkCreate)( + IGuestSession *pThis, + PRUnichar * symlink, + PRUnichar * target, + PRUint32 type + ); + + nsresult (*SymlinkExists)( + IGuestSession *pThis, + PRUnichar * symlink, + PRBool * exists + ); + + nsresult (*SymlinkRead)( + IGuestSession *pThis, + PRUnichar * symlink, + PRUint32 flagsSize, + PRUint32* flags, + PRUnichar * * target + ); + + nsresult (*WaitFor)( + IGuestSession *pThis, + PRUint32 waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*WaitForArray)( + IGuestSession *pThis, + PRUint32 waitForSize, + PRUint32* waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*InternalAndReservedMethod1IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod2IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod3IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod4IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod5IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod6IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod7IGuestSession)(IGuestSession *pThis); + + nsresult (*InternalAndReservedMethod8IGuestSession)(IGuestSession *pThis); + +}; +# define IGuestSession_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestSession_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestSession_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestSession_get_User(p, aUser) ((p)->lpVtbl->GetUser(p, aUser)) +# define IGuestSession_GetUser(p, aUser) ((p)->lpVtbl->GetUser(p, aUser)) +# define IGuestSession_get_Domain(p, aDomain) ((p)->lpVtbl->GetDomain(p, aDomain)) +# define IGuestSession_GetDomain(p, aDomain) ((p)->lpVtbl->GetDomain(p, aDomain)) +# define IGuestSession_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestSession_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestSession_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestSession_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestSession_get_Timeout(p, aTimeout) ((p)->lpVtbl->GetTimeout(p, aTimeout)) +# define IGuestSession_GetTimeout(p, aTimeout) ((p)->lpVtbl->GetTimeout(p, aTimeout)) +# define IGuestSession_put_Timeout(p, aTimeout) ((p)->lpVtbl->SetTimeout(p, aTimeout)) +# define IGuestSession_SetTimeout(p, aTimeout) ((p)->lpVtbl->SetTimeout(p, aTimeout)) +# define IGuestSession_get_ProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IGuestSession_GetProtocolVersion(p, aProtocolVersion) ((p)->lpVtbl->GetProtocolVersion(p, aProtocolVersion)) +# define IGuestSession_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestSession_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestSession_get_EnvironmentChanges(p, aEnvironmentChanges) ((p)->lpVtbl->GetEnvironmentChanges(p, aEnvironmentChanges)) +# define IGuestSession_GetEnvironmentChanges(p, aEnvironmentChanges) ((p)->lpVtbl->GetEnvironmentChanges(p, aEnvironmentChanges)) +# define IGuestSession_put_EnvironmentChanges(p, aEnvironmentChanges) ((p)->lpVtbl->SetEnvironmentChanges(p, aEnvironmentChanges)) +# define IGuestSession_SetEnvironmentChanges(p, aEnvironmentChanges) ((p)->lpVtbl->SetEnvironmentChanges(p, aEnvironmentChanges)) +# define IGuestSession_get_EnvironmentBase(p, aEnvironmentBase) ((p)->lpVtbl->GetEnvironmentBase(p, aEnvironmentBase)) +# define IGuestSession_GetEnvironmentBase(p, aEnvironmentBase) ((p)->lpVtbl->GetEnvironmentBase(p, aEnvironmentBase)) +# define IGuestSession_get_Processes(p, aProcesses) ((p)->lpVtbl->GetProcesses(p, aProcesses)) +# define IGuestSession_GetProcesses(p, aProcesses) ((p)->lpVtbl->GetProcesses(p, aProcesses)) +# define IGuestSession_get_PathStyle(p, aPathStyle) ((p)->lpVtbl->GetPathStyle(p, aPathStyle)) +# define IGuestSession_GetPathStyle(p, aPathStyle) ((p)->lpVtbl->GetPathStyle(p, aPathStyle)) +# define IGuestSession_get_CurrentDirectory(p, aCurrentDirectory) ((p)->lpVtbl->GetCurrentDirectory(p, aCurrentDirectory)) +# define IGuestSession_GetCurrentDirectory(p, aCurrentDirectory) ((p)->lpVtbl->GetCurrentDirectory(p, aCurrentDirectory)) +# define IGuestSession_put_CurrentDirectory(p, aCurrentDirectory) ((p)->lpVtbl->SetCurrentDirectory(p, aCurrentDirectory)) +# define IGuestSession_SetCurrentDirectory(p, aCurrentDirectory) ((p)->lpVtbl->SetCurrentDirectory(p, aCurrentDirectory)) +# define IGuestSession_get_UserHome(p, aUserHome) ((p)->lpVtbl->GetUserHome(p, aUserHome)) +# define IGuestSession_GetUserHome(p, aUserHome) ((p)->lpVtbl->GetUserHome(p, aUserHome)) +# define IGuestSession_get_UserDocuments(p, aUserDocuments) ((p)->lpVtbl->GetUserDocuments(p, aUserDocuments)) +# define IGuestSession_GetUserDocuments(p, aUserDocuments) ((p)->lpVtbl->GetUserDocuments(p, aUserDocuments)) +# define IGuestSession_get_Directories(p, aDirectories) ((p)->lpVtbl->GetDirectories(p, aDirectories)) +# define IGuestSession_GetDirectories(p, aDirectories) ((p)->lpVtbl->GetDirectories(p, aDirectories)) +# define IGuestSession_get_Files(p, aFiles) ((p)->lpVtbl->GetFiles(p, aFiles)) +# define IGuestSession_GetFiles(p, aFiles) ((p)->lpVtbl->GetFiles(p, aFiles)) +# define IGuestSession_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuestSession_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuestSession_Close(p) ((p)->lpVtbl->Close(p)) +# define IGuestSession_CopyFromGuest(p, aSources, aFilters, aFlags, aDestination, aProgress) ((p)->lpVtbl->CopyFromGuest(p, aSources, aFilters, aFlags, aDestination, aProgress)) +# define IGuestSession_CopyToGuest(p, aSources, aFilters, aFlags, aDestination, aProgress) ((p)->lpVtbl->CopyToGuest(p, aSources, aFilters, aFlags, aDestination, aProgress)) +# define IGuestSession_DirectoryCopy(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->DirectoryCopy(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_DirectoryCopyFromGuest(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->DirectoryCopyFromGuest(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_DirectoryCopyToGuest(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->DirectoryCopyToGuest(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_DirectoryCreate(p, aPath, aMode, aFlags) ((p)->lpVtbl->DirectoryCreate(p, aPath, aMode, aFlags)) +# define IGuestSession_DirectoryCreateTemp(p, aTemplateName, aMode, aPath, aSecure, aDirectory) ((p)->lpVtbl->DirectoryCreateTemp(p, aTemplateName, aMode, aPath, aSecure, aDirectory)) +# define IGuestSession_DirectoryExists(p, aPath, aFollowSymlinks, aExists) ((p)->lpVtbl->DirectoryExists(p, aPath, aFollowSymlinks, aExists)) +# define IGuestSession_DirectoryOpen(p, aPath, aFilter, aFlags, aDirectory) ((p)->lpVtbl->DirectoryOpen(p, aPath, aFilter, aFlags, aDirectory)) +# define IGuestSession_DirectoryRemove(p, aPath) ((p)->lpVtbl->DirectoryRemove(p, aPath)) +# define IGuestSession_DirectoryRemoveRecursive(p, aPath, aFlags, aProgress) ((p)->lpVtbl->DirectoryRemoveRecursive(p, aPath, aFlags, aProgress)) +# define IGuestSession_EnvironmentScheduleSet(p, aName, aValue) ((p)->lpVtbl->EnvironmentScheduleSet(p, aName, aValue)) +# define IGuestSession_EnvironmentScheduleUnset(p, aName) ((p)->lpVtbl->EnvironmentScheduleUnset(p, aName)) +# define IGuestSession_EnvironmentGetBaseVariable(p, aName, aValue) ((p)->lpVtbl->EnvironmentGetBaseVariable(p, aName, aValue)) +# define IGuestSession_EnvironmentDoesBaseVariableExist(p, aName, aExists) ((p)->lpVtbl->EnvironmentDoesBaseVariableExist(p, aName, aExists)) +# define IGuestSession_FileCopy(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->FileCopy(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_FileCopyFromGuest(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->FileCopyFromGuest(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_FileCopyToGuest(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->FileCopyToGuest(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_FileCreateTemp(p, aTemplateName, aMode, aPath, aSecure, aFile) ((p)->lpVtbl->FileCreateTemp(p, aTemplateName, aMode, aPath, aSecure, aFile)) +# define IGuestSession_FileExists(p, aPath, aFollowSymlinks, aExists) ((p)->lpVtbl->FileExists(p, aPath, aFollowSymlinks, aExists)) +# define IGuestSession_FileOpen(p, aPath, aAccessMode, aOpenAction, aCreationMode, aFile) ((p)->lpVtbl->FileOpen(p, aPath, aAccessMode, aOpenAction, aCreationMode, aFile)) +# define IGuestSession_FileOpenEx(p, aPath, aAccessMode, aOpenAction, aSharingMode, aCreationMode, aFlags, aFile) ((p)->lpVtbl->FileOpenEx(p, aPath, aAccessMode, aOpenAction, aSharingMode, aCreationMode, aFlags, aFile)) +# define IGuestSession_FileQuerySize(p, aPath, aFollowSymlinks, aSize) ((p)->lpVtbl->FileQuerySize(p, aPath, aFollowSymlinks, aSize)) +# define IGuestSession_FsObjExists(p, aPath, aFollowSymlinks, aExists) ((p)->lpVtbl->FsObjExists(p, aPath, aFollowSymlinks, aExists)) +# define IGuestSession_FsObjQueryInfo(p, aPath, aFollowSymlinks, aInfo) ((p)->lpVtbl->FsObjQueryInfo(p, aPath, aFollowSymlinks, aInfo)) +# define IGuestSession_FsObjRemove(p, aPath) ((p)->lpVtbl->FsObjRemove(p, aPath)) +# define IGuestSession_FsObjRemoveArray(p, aPath, aProgress) ((p)->lpVtbl->FsObjRemoveArray(p, aPath, aProgress)) +# define IGuestSession_FsObjRename(p, aOldPath, aNewPath, aFlags) ((p)->lpVtbl->FsObjRename(p, aOldPath, aNewPath, aFlags)) +# define IGuestSession_FsObjMove(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->FsObjMove(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_FsObjMoveArray(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->FsObjMoveArray(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_FsObjCopyArray(p, aSource, aDestination, aFlags, aProgress) ((p)->lpVtbl->FsObjCopyArray(p, aSource, aDestination, aFlags, aProgress)) +# define IGuestSession_FsObjSetACL(p, aPath, aFollowSymlinks, aAcl, aMode) ((p)->lpVtbl->FsObjSetACL(p, aPath, aFollowSymlinks, aAcl, aMode)) +# define IGuestSession_ProcessCreate(p, aExecutable, aArguments, aEnvironmentChanges, aFlags, aTimeoutMS, aGuestProcess) ((p)->lpVtbl->ProcessCreate(p, aExecutable, aArguments, aEnvironmentChanges, aFlags, aTimeoutMS, aGuestProcess)) +# define IGuestSession_ProcessCreateEx(p, aExecutable, aArguments, aEnvironmentChanges, aFlags, aTimeoutMS, aPriority, aAffinity, aGuestProcess) ((p)->lpVtbl->ProcessCreateEx(p, aExecutable, aArguments, aEnvironmentChanges, aFlags, aTimeoutMS, aPriority, aAffinity, aGuestProcess)) +# define IGuestSession_ProcessGet(p, aPid, aGuestProcess) ((p)->lpVtbl->ProcessGet(p, aPid, aGuestProcess)) +# define IGuestSession_SymlinkCreate(p, aSymlink, aTarget, aType) ((p)->lpVtbl->SymlinkCreate(p, aSymlink, aTarget, aType)) +# define IGuestSession_SymlinkExists(p, aSymlink, aExists) ((p)->lpVtbl->SymlinkExists(p, aSymlink, aExists)) +# define IGuestSession_SymlinkRead(p, aSymlink, aFlags, aTarget) ((p)->lpVtbl->SymlinkRead(p, aSymlink, aFlags, aTarget)) +# define IGuestSession_WaitFor(p, aWaitFor, aTimeoutMS, aReason) ((p)->lpVtbl->WaitFor(p, aWaitFor, aTimeoutMS, aReason)) +# define IGuestSession_WaitForArray(p, aWaitFor, aTimeoutMS, aReason) ((p)->lpVtbl->WaitForArray(p, aWaitFor, aTimeoutMS, aReason)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestSession +{ +# ifndef VBOX_WITH_GLUE + struct IGuestSession_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestSessionVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestSession declaration */ + + +/* Start of struct IProcess declaration */ +# define IPROCESS_IID_STR "bc68370c-8a02-45f3-a07d-a67aa72756aa" +# define IPROCESS_IID { \ + 0xbc68370c, 0x8a02, 0x45f3, \ + { 0xa0, 0x7d, 0xa6, 0x7a, 0xa7, 0x27, 0x56, 0xaa } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IProcess); +# ifndef VBOX_WITH_GLUE +struct IProcess_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetArguments)(IProcess *pThis, PRUint32 *argumentsSize, PRUnichar * **arguments); + + nsresult (*GetEnvironment)(IProcess *pThis, PRUint32 *environmentSize, PRUnichar * **environment); + + nsresult (*GetEventSource)(IProcess *pThis, IEventSource * *eventSource); + + nsresult (*GetExecutablePath)(IProcess *pThis, PRUnichar * *executablePath); + + nsresult (*GetExitCode)(IProcess *pThis, PRInt32 *exitCode); + + nsresult (*GetName)(IProcess *pThis, PRUnichar * *name); + + nsresult (*GetPID)(IProcess *pThis, PRUint32 *PID); + + nsresult (*GetStatus)(IProcess *pThis, PRUint32 *status); + + nsresult (*GetInternalAndReservedAttribute1IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*WaitFor)( + IProcess *pThis, + PRUint32 waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*WaitForArray)( + IProcess *pThis, + PRUint32 waitForSize, + PRUint32* waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*Read)( + IProcess *pThis, + PRUint32 handle, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Write)( + IProcess *pThis, + PRUint32 handle, + PRUint32 flags, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*WriteArray)( + IProcess *pThis, + PRUint32 handle, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*Terminate)(IProcess *pThis ); + + nsresult (*InternalAndReservedMethod1IProcess)(IProcess *pThis); + + nsresult (*InternalAndReservedMethod2IProcess)(IProcess *pThis); + + nsresult (*InternalAndReservedMethod3IProcess)(IProcess *pThis); + + nsresult (*InternalAndReservedMethod4IProcess)(IProcess *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IProcessVtbl +{ + nsresult (*QueryInterface)(IProcess *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IProcess *pThis); + nsrefcnt (*Release)(IProcess *pThis); + nsresult (*GetArguments)(IProcess *pThis, PRUint32 *argumentsSize, PRUnichar * **arguments); + + nsresult (*GetEnvironment)(IProcess *pThis, PRUint32 *environmentSize, PRUnichar * **environment); + + nsresult (*GetEventSource)(IProcess *pThis, IEventSource * *eventSource); + + nsresult (*GetExecutablePath)(IProcess *pThis, PRUnichar * *executablePath); + + nsresult (*GetExitCode)(IProcess *pThis, PRInt32 *exitCode); + + nsresult (*GetName)(IProcess *pThis, PRUnichar * *name); + + nsresult (*GetPID)(IProcess *pThis, PRUint32 *PID); + + nsresult (*GetStatus)(IProcess *pThis, PRUint32 *status); + + nsresult (*GetInternalAndReservedAttribute1IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IProcess)(IProcess *pThis, PRUint32 *reserved); + + nsresult (*WaitFor)( + IProcess *pThis, + PRUint32 waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*WaitForArray)( + IProcess *pThis, + PRUint32 waitForSize, + PRUint32* waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*Read)( + IProcess *pThis, + PRUint32 handle, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Write)( + IProcess *pThis, + PRUint32 handle, + PRUint32 flags, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*WriteArray)( + IProcess *pThis, + PRUint32 handle, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*Terminate)(IProcess *pThis ); + + nsresult (*InternalAndReservedMethod1IProcess)(IProcess *pThis); + + nsresult (*InternalAndReservedMethod2IProcess)(IProcess *pThis); + + nsresult (*InternalAndReservedMethod3IProcess)(IProcess *pThis); + + nsresult (*InternalAndReservedMethod4IProcess)(IProcess *pThis); + +}; +# define IProcess_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IProcess_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IProcess_Release(p) ((p)->lpVtbl->Release(p)) +# define IProcess_get_Arguments(p, aArguments) ((p)->lpVtbl->GetArguments(p, aArguments)) +# define IProcess_GetArguments(p, aArguments) ((p)->lpVtbl->GetArguments(p, aArguments)) +# define IProcess_get_Environment(p, aEnvironment) ((p)->lpVtbl->GetEnvironment(p, aEnvironment)) +# define IProcess_GetEnvironment(p, aEnvironment) ((p)->lpVtbl->GetEnvironment(p, aEnvironment)) +# define IProcess_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IProcess_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IProcess_get_ExecutablePath(p, aExecutablePath) ((p)->lpVtbl->GetExecutablePath(p, aExecutablePath)) +# define IProcess_GetExecutablePath(p, aExecutablePath) ((p)->lpVtbl->GetExecutablePath(p, aExecutablePath)) +# define IProcess_get_ExitCode(p, aExitCode) ((p)->lpVtbl->GetExitCode(p, aExitCode)) +# define IProcess_GetExitCode(p, aExitCode) ((p)->lpVtbl->GetExitCode(p, aExitCode)) +# define IProcess_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IProcess_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IProcess_get_PID(p, aPID) ((p)->lpVtbl->GetPID(p, aPID)) +# define IProcess_GetPID(p, aPID) ((p)->lpVtbl->GetPID(p, aPID)) +# define IProcess_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IProcess_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IProcess_WaitFor(p, aWaitFor, aTimeoutMS, aReason) ((p)->lpVtbl->WaitFor(p, aWaitFor, aTimeoutMS, aReason)) +# define IProcess_WaitForArray(p, aWaitFor, aTimeoutMS, aReason) ((p)->lpVtbl->WaitForArray(p, aWaitFor, aTimeoutMS, aReason)) +# define IProcess_Read(p, aHandle, aToRead, aTimeoutMS, aData) ((p)->lpVtbl->Read(p, aHandle, aToRead, aTimeoutMS, aData)) +# define IProcess_Write(p, aHandle, aFlags, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->Write(p, aHandle, aFlags, aData, aTimeoutMS, aWritten)) +# define IProcess_WriteArray(p, aHandle, aFlags, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->WriteArray(p, aHandle, aFlags, aData, aTimeoutMS, aWritten)) +# define IProcess_Terminate(p) ((p)->lpVtbl->Terminate(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IProcess +{ +# ifndef VBOX_WITH_GLUE + struct IProcess_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IProcessVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IProcess declaration */ + + +/* Start of struct IGuestProcess declaration */ +# define IGUESTPROCESS_IID_STR "35cf4b3f-4453-4f3e-c9b8-5686939c80b6" +# define IGUESTPROCESS_IID { \ + 0x35cf4b3f, 0x4453, 0x4f3e, \ + { 0xc9, 0xb8, 0x56, 0x86, 0x93, 0x9c, 0x80, 0xb6 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcess); +# ifndef VBOX_WITH_GLUE +struct IGuestProcess_vtbl +{ + struct IProcess_vtbl iprocess; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestProcess *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessVtbl +{ + nsresult (*QueryInterface)(IGuestProcess *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcess *pThis); + nsrefcnt (*Release)(IGuestProcess *pThis); + nsresult (*GetArguments)(IGuestProcess *pThis, PRUint32 *argumentsSize, PRUnichar * **arguments); + + nsresult (*GetEnvironment)(IGuestProcess *pThis, PRUint32 *environmentSize, PRUnichar * **environment); + + nsresult (*GetEventSource)(IGuestProcess *pThis, IEventSource * *eventSource); + + nsresult (*GetExecutablePath)(IGuestProcess *pThis, PRUnichar * *executablePath); + + nsresult (*GetExitCode)(IGuestProcess *pThis, PRInt32 *exitCode); + + nsresult (*GetName)(IGuestProcess *pThis, PRUnichar * *name); + + nsresult (*GetPID)(IGuestProcess *pThis, PRUint32 *PID); + + nsresult (*GetStatus)(IGuestProcess *pThis, PRUint32 *status); + + nsresult (*GetInternalAndReservedAttribute1IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IProcess)(IGuestProcess *pThis, PRUint32 *reserved); + + nsresult (*WaitFor)( + IGuestProcess *pThis, + PRUint32 waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*WaitForArray)( + IGuestProcess *pThis, + PRUint32 waitForSize, + PRUint32* waitFor, + PRUint32 timeoutMS, + PRUint32 * reason + ); + + nsresult (*Read)( + IGuestProcess *pThis, + PRUint32 handle, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Write)( + IGuestProcess *pThis, + PRUint32 handle, + PRUint32 flags, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*WriteArray)( + IGuestProcess *pThis, + PRUint32 handle, + PRUint32 flagsSize, + PRUint32* flags, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*Terminate)(IGuestProcess *pThis ); + + nsresult (*InternalAndReservedMethod1IProcess)(IGuestProcess *pThis); + + nsresult (*InternalAndReservedMethod2IProcess)(IGuestProcess *pThis); + + nsresult (*InternalAndReservedMethod3IProcess)(IGuestProcess *pThis); + + nsresult (*InternalAndReservedMethod4IProcess)(IGuestProcess *pThis); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestProcess *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestProcess_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcess_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcess_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcess_get_Arguments(p, aArguments) ((p)->lpVtbl->GetArguments(p, aArguments)) +# define IGuestProcess_GetArguments(p, aArguments) ((p)->lpVtbl->GetArguments(p, aArguments)) +# define IGuestProcess_get_Environment(p, aEnvironment) ((p)->lpVtbl->GetEnvironment(p, aEnvironment)) +# define IGuestProcess_GetEnvironment(p, aEnvironment) ((p)->lpVtbl->GetEnvironment(p, aEnvironment)) +# define IGuestProcess_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuestProcess_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuestProcess_get_ExecutablePath(p, aExecutablePath) ((p)->lpVtbl->GetExecutablePath(p, aExecutablePath)) +# define IGuestProcess_GetExecutablePath(p, aExecutablePath) ((p)->lpVtbl->GetExecutablePath(p, aExecutablePath)) +# define IGuestProcess_get_ExitCode(p, aExitCode) ((p)->lpVtbl->GetExitCode(p, aExitCode)) +# define IGuestProcess_GetExitCode(p, aExitCode) ((p)->lpVtbl->GetExitCode(p, aExitCode)) +# define IGuestProcess_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestProcess_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestProcess_get_PID(p, aPID) ((p)->lpVtbl->GetPID(p, aPID)) +# define IGuestProcess_GetPID(p, aPID) ((p)->lpVtbl->GetPID(p, aPID)) +# define IGuestProcess_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestProcess_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestProcess_WaitFor(p, aWaitFor, aTimeoutMS, aReason) ((p)->lpVtbl->WaitFor(p, aWaitFor, aTimeoutMS, aReason)) +# define IGuestProcess_WaitForArray(p, aWaitFor, aTimeoutMS, aReason) ((p)->lpVtbl->WaitForArray(p, aWaitFor, aTimeoutMS, aReason)) +# define IGuestProcess_Read(p, aHandle, aToRead, aTimeoutMS, aData) ((p)->lpVtbl->Read(p, aHandle, aToRead, aTimeoutMS, aData)) +# define IGuestProcess_Write(p, aHandle, aFlags, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->Write(p, aHandle, aFlags, aData, aTimeoutMS, aWritten)) +# define IGuestProcess_WriteArray(p, aHandle, aFlags, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->WriteArray(p, aHandle, aFlags, aData, aTimeoutMS, aWritten)) +# define IGuestProcess_Terminate(p) ((p)->lpVtbl->Terminate(p)) +# define IGuestProcess_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestProcess_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcess +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcess_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcess declaration */ + + +/* Start of struct IDirectory declaration */ +# define IDIRECTORY_IID_STR "758d7eac-e4b1-486a-8f2e-747ae346c3e9" +# define IDIRECTORY_IID { \ + 0x758d7eac, 0xe4b1, 0x486a, \ + { 0x8f, 0x2e, 0x74, 0x7a, 0xe3, 0x46, 0xc3, 0xe9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDirectory); +# ifndef VBOX_WITH_GLUE +struct IDirectory_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetDirectoryName)(IDirectory *pThis, PRUnichar * *directoryName); + + nsresult (*GetFilter)(IDirectory *pThis, PRUnichar * *filter); + + nsresult (*GetInternalAndReservedAttribute1IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*Close)(IDirectory *pThis ); + + nsresult (*Read)( + IDirectory *pThis, + IFsObjInfo * * objInfo + ); + + nsresult (*InternalAndReservedMethod1IDirectory)(IDirectory *pThis); + + nsresult (*InternalAndReservedMethod2IDirectory)(IDirectory *pThis); + + nsresult (*InternalAndReservedMethod3IDirectory)(IDirectory *pThis); + + nsresult (*InternalAndReservedMethod4IDirectory)(IDirectory *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDirectoryVtbl +{ + nsresult (*QueryInterface)(IDirectory *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDirectory *pThis); + nsrefcnt (*Release)(IDirectory *pThis); + nsresult (*GetDirectoryName)(IDirectory *pThis, PRUnichar * *directoryName); + + nsresult (*GetFilter)(IDirectory *pThis, PRUnichar * *filter); + + nsresult (*GetInternalAndReservedAttribute1IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDirectory)(IDirectory *pThis, PRUint32 *reserved); + + nsresult (*Close)(IDirectory *pThis ); + + nsresult (*Read)( + IDirectory *pThis, + IFsObjInfo * * objInfo + ); + + nsresult (*InternalAndReservedMethod1IDirectory)(IDirectory *pThis); + + nsresult (*InternalAndReservedMethod2IDirectory)(IDirectory *pThis); + + nsresult (*InternalAndReservedMethod3IDirectory)(IDirectory *pThis); + + nsresult (*InternalAndReservedMethod4IDirectory)(IDirectory *pThis); + +}; +# define IDirectory_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDirectory_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDirectory_Release(p) ((p)->lpVtbl->Release(p)) +# define IDirectory_get_DirectoryName(p, aDirectoryName) ((p)->lpVtbl->GetDirectoryName(p, aDirectoryName)) +# define IDirectory_GetDirectoryName(p, aDirectoryName) ((p)->lpVtbl->GetDirectoryName(p, aDirectoryName)) +# define IDirectory_get_Filter(p, aFilter) ((p)->lpVtbl->GetFilter(p, aFilter)) +# define IDirectory_GetFilter(p, aFilter) ((p)->lpVtbl->GetFilter(p, aFilter)) +# define IDirectory_Close(p) ((p)->lpVtbl->Close(p)) +# define IDirectory_Read(p, aObjInfo) ((p)->lpVtbl->Read(p, aObjInfo)) +# endif /* VBOX_WITH_GLUE */ + +interface IDirectory +{ +# ifndef VBOX_WITH_GLUE + struct IDirectory_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDirectoryVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDirectory declaration */ + + +/* Start of struct IGuestDirectory declaration */ +# define IGUESTDIRECTORY_IID_STR "cc830458-4974-a19c-4dc6-cc98c2269626" +# define IGUESTDIRECTORY_IID { \ + 0xcc830458, 0x4974, 0xa19c, \ + { 0x4d, 0xc6, 0xcc, 0x98, 0xc2, 0x26, 0x96, 0x26 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestDirectory); +# ifndef VBOX_WITH_GLUE +struct IGuestDirectory_vtbl +{ + struct IDirectory_vtbl idirectory; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestDirectory *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestDirectoryVtbl +{ + nsresult (*QueryInterface)(IGuestDirectory *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestDirectory *pThis); + nsrefcnt (*Release)(IGuestDirectory *pThis); + nsresult (*GetDirectoryName)(IGuestDirectory *pThis, PRUnichar * *directoryName); + + nsresult (*GetFilter)(IGuestDirectory *pThis, PRUnichar * *filter); + + nsresult (*GetInternalAndReservedAttribute1IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDirectory)(IGuestDirectory *pThis, PRUint32 *reserved); + + nsresult (*Close)(IGuestDirectory *pThis ); + + nsresult (*Read)( + IGuestDirectory *pThis, + IFsObjInfo * * objInfo + ); + + nsresult (*InternalAndReservedMethod1IDirectory)(IGuestDirectory *pThis); + + nsresult (*InternalAndReservedMethod2IDirectory)(IGuestDirectory *pThis); + + nsresult (*InternalAndReservedMethod3IDirectory)(IGuestDirectory *pThis); + + nsresult (*InternalAndReservedMethod4IDirectory)(IGuestDirectory *pThis); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestDirectory *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestDirectory_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestDirectory_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestDirectory_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestDirectory_get_DirectoryName(p, aDirectoryName) ((p)->lpVtbl->GetDirectoryName(p, aDirectoryName)) +# define IGuestDirectory_GetDirectoryName(p, aDirectoryName) ((p)->lpVtbl->GetDirectoryName(p, aDirectoryName)) +# define IGuestDirectory_get_Filter(p, aFilter) ((p)->lpVtbl->GetFilter(p, aFilter)) +# define IGuestDirectory_GetFilter(p, aFilter) ((p)->lpVtbl->GetFilter(p, aFilter)) +# define IGuestDirectory_Close(p) ((p)->lpVtbl->Close(p)) +# define IGuestDirectory_Read(p, aObjInfo) ((p)->lpVtbl->Read(p, aObjInfo)) +# define IGuestDirectory_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestDirectory_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestDirectory +{ +# ifndef VBOX_WITH_GLUE + struct IGuestDirectory_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestDirectoryVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestDirectory declaration */ + + +/* Start of struct IFile declaration */ +# define IFILE_IID_STR "59a235ac-2f1a-4d6c-81fc-e3fa843f49ae" +# define IFILE_IID { \ + 0x59a235ac, 0x2f1a, 0x4d6c, \ + { 0x81, 0xfc, 0xe3, 0xfa, 0x84, 0x3f, 0x49, 0xae } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IFile); +# ifndef VBOX_WITH_GLUE +struct IFile_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetEventSource)(IFile *pThis, IEventSource * *eventSource); + + nsresult (*GetId)(IFile *pThis, PRUint32 *id); + + nsresult (*GetInitialSize)(IFile *pThis, PRInt64 *initialSize); + + nsresult (*GetOffset)(IFile *pThis, PRInt64 *offset); + + nsresult (*GetStatus)(IFile *pThis, PRUint32 *status); + + nsresult (*GetFilename)(IFile *pThis, PRUnichar * *filename); + + nsresult (*GetCreationMode)(IFile *pThis, PRUint32 *creationMode); + + nsresult (*GetOpenAction)(IFile *pThis, PRUint32 *openAction); + + nsresult (*GetAccessMode)(IFile *pThis, PRUint32 *accessMode); + + nsresult (*GetInternalAndReservedAttribute1IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*Close)(IFile *pThis ); + + nsresult (*QueryInfo)( + IFile *pThis, + IFsObjInfo * * objInfo + ); + + nsresult (*QuerySize)( + IFile *pThis, + PRInt64 * size + ); + + nsresult (*Read)( + IFile *pThis, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*ReadAt)( + IFile *pThis, + PRInt64 offset, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Seek)( + IFile *pThis, + PRInt64 offset, + PRUint32 whence, + PRInt64 * newOffset + ); + + nsresult (*SetACL)( + IFile *pThis, + PRUnichar * acl, + PRUint32 mode + ); + + nsresult (*SetSize)( + IFile *pThis, + PRInt64 size + ); + + nsresult (*Write)( + IFile *pThis, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*WriteAt)( + IFile *pThis, + PRInt64 offset, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*InternalAndReservedMethod1IFile)(IFile *pThis); + + nsresult (*InternalAndReservedMethod2IFile)(IFile *pThis); + + nsresult (*InternalAndReservedMethod3IFile)(IFile *pThis); + + nsresult (*InternalAndReservedMethod4IFile)(IFile *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IFileVtbl +{ + nsresult (*QueryInterface)(IFile *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IFile *pThis); + nsrefcnt (*Release)(IFile *pThis); + nsresult (*GetEventSource)(IFile *pThis, IEventSource * *eventSource); + + nsresult (*GetId)(IFile *pThis, PRUint32 *id); + + nsresult (*GetInitialSize)(IFile *pThis, PRInt64 *initialSize); + + nsresult (*GetOffset)(IFile *pThis, PRInt64 *offset); + + nsresult (*GetStatus)(IFile *pThis, PRUint32 *status); + + nsresult (*GetFilename)(IFile *pThis, PRUnichar * *filename); + + nsresult (*GetCreationMode)(IFile *pThis, PRUint32 *creationMode); + + nsresult (*GetOpenAction)(IFile *pThis, PRUint32 *openAction); + + nsresult (*GetAccessMode)(IFile *pThis, PRUint32 *accessMode); + + nsresult (*GetInternalAndReservedAttribute1IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFile)(IFile *pThis, PRUint32 *reserved); + + nsresult (*Close)(IFile *pThis ); + + nsresult (*QueryInfo)( + IFile *pThis, + IFsObjInfo * * objInfo + ); + + nsresult (*QuerySize)( + IFile *pThis, + PRInt64 * size + ); + + nsresult (*Read)( + IFile *pThis, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*ReadAt)( + IFile *pThis, + PRInt64 offset, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Seek)( + IFile *pThis, + PRInt64 offset, + PRUint32 whence, + PRInt64 * newOffset + ); + + nsresult (*SetACL)( + IFile *pThis, + PRUnichar * acl, + PRUint32 mode + ); + + nsresult (*SetSize)( + IFile *pThis, + PRInt64 size + ); + + nsresult (*Write)( + IFile *pThis, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*WriteAt)( + IFile *pThis, + PRInt64 offset, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*InternalAndReservedMethod1IFile)(IFile *pThis); + + nsresult (*InternalAndReservedMethod2IFile)(IFile *pThis); + + nsresult (*InternalAndReservedMethod3IFile)(IFile *pThis); + + nsresult (*InternalAndReservedMethod4IFile)(IFile *pThis); + +}; +# define IFile_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IFile_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IFile_Release(p) ((p)->lpVtbl->Release(p)) +# define IFile_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IFile_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IFile_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IFile_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IFile_get_InitialSize(p, aInitialSize) ((p)->lpVtbl->GetInitialSize(p, aInitialSize)) +# define IFile_GetInitialSize(p, aInitialSize) ((p)->lpVtbl->GetInitialSize(p, aInitialSize)) +# define IFile_get_Offset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IFile_GetOffset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IFile_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IFile_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IFile_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IFile_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IFile_get_CreationMode(p, aCreationMode) ((p)->lpVtbl->GetCreationMode(p, aCreationMode)) +# define IFile_GetCreationMode(p, aCreationMode) ((p)->lpVtbl->GetCreationMode(p, aCreationMode)) +# define IFile_get_OpenAction(p, aOpenAction) ((p)->lpVtbl->GetOpenAction(p, aOpenAction)) +# define IFile_GetOpenAction(p, aOpenAction) ((p)->lpVtbl->GetOpenAction(p, aOpenAction)) +# define IFile_get_AccessMode(p, aAccessMode) ((p)->lpVtbl->GetAccessMode(p, aAccessMode)) +# define IFile_GetAccessMode(p, aAccessMode) ((p)->lpVtbl->GetAccessMode(p, aAccessMode)) +# define IFile_Close(p) ((p)->lpVtbl->Close(p)) +# define IFile_QueryInfo(p, aObjInfo) ((p)->lpVtbl->QueryInfo(p, aObjInfo)) +# define IFile_QuerySize(p, aSize) ((p)->lpVtbl->QuerySize(p, aSize)) +# define IFile_Read(p, aToRead, aTimeoutMS, aData) ((p)->lpVtbl->Read(p, aToRead, aTimeoutMS, aData)) +# define IFile_ReadAt(p, aOffset, aToRead, aTimeoutMS, aData) ((p)->lpVtbl->ReadAt(p, aOffset, aToRead, aTimeoutMS, aData)) +# define IFile_Seek(p, aOffset, aWhence, aNewOffset) ((p)->lpVtbl->Seek(p, aOffset, aWhence, aNewOffset)) +# define IFile_SetACL(p, aAcl, aMode) ((p)->lpVtbl->SetACL(p, aAcl, aMode)) +# define IFile_SetSize(p, aSize) ((p)->lpVtbl->SetSize(p, aSize)) +# define IFile_Write(p, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->Write(p, aData, aTimeoutMS, aWritten)) +# define IFile_WriteAt(p, aOffset, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->WriteAt(p, aOffset, aData, aTimeoutMS, aWritten)) +# endif /* VBOX_WITH_GLUE */ + +interface IFile +{ +# ifndef VBOX_WITH_GLUE + struct IFile_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IFileVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IFile declaration */ + + +/* Start of struct IGuestFile declaration */ +# define IGUESTFILE_IID_STR "92f21dc0-44de-1653-b717-2ebf0ca9b664" +# define IGUESTFILE_IID { \ + 0x92f21dc0, 0x44de, 0x1653, \ + { 0xb7, 0x17, 0x2e, 0xbf, 0x0c, 0xa9, 0xb6, 0x64 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFile); +# ifndef VBOX_WITH_GLUE +struct IGuestFile_vtbl +{ + struct IFile_vtbl ifile; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFile *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileVtbl +{ + nsresult (*QueryInterface)(IGuestFile *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFile *pThis); + nsrefcnt (*Release)(IGuestFile *pThis); + nsresult (*GetEventSource)(IGuestFile *pThis, IEventSource * *eventSource); + + nsresult (*GetId)(IGuestFile *pThis, PRUint32 *id); + + nsresult (*GetInitialSize)(IGuestFile *pThis, PRInt64 *initialSize); + + nsresult (*GetOffset)(IGuestFile *pThis, PRInt64 *offset); + + nsresult (*GetStatus)(IGuestFile *pThis, PRUint32 *status); + + nsresult (*GetFilename)(IGuestFile *pThis, PRUnichar * *filename); + + nsresult (*GetCreationMode)(IGuestFile *pThis, PRUint32 *creationMode); + + nsresult (*GetOpenAction)(IGuestFile *pThis, PRUint32 *openAction); + + nsresult (*GetAccessMode)(IGuestFile *pThis, PRUint32 *accessMode); + + nsresult (*GetInternalAndReservedAttribute1IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFile)(IGuestFile *pThis, PRUint32 *reserved); + + nsresult (*Close)(IGuestFile *pThis ); + + nsresult (*QueryInfo)( + IGuestFile *pThis, + IFsObjInfo * * objInfo + ); + + nsresult (*QuerySize)( + IGuestFile *pThis, + PRInt64 * size + ); + + nsresult (*Read)( + IGuestFile *pThis, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*ReadAt)( + IGuestFile *pThis, + PRInt64 offset, + PRUint32 toRead, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Seek)( + IGuestFile *pThis, + PRInt64 offset, + PRUint32 whence, + PRInt64 * newOffset + ); + + nsresult (*SetACL)( + IGuestFile *pThis, + PRUnichar * acl, + PRUint32 mode + ); + + nsresult (*SetSize)( + IGuestFile *pThis, + PRInt64 size + ); + + nsresult (*Write)( + IGuestFile *pThis, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*WriteAt)( + IGuestFile *pThis, + PRInt64 offset, + PRUint32 dataSize, + PRUint8* data, + PRUint32 timeoutMS, + PRUint32 * written + ); + + nsresult (*InternalAndReservedMethod1IFile)(IGuestFile *pThis); + + nsresult (*InternalAndReservedMethod2IFile)(IGuestFile *pThis); + + nsresult (*InternalAndReservedMethod3IFile)(IGuestFile *pThis); + + nsresult (*InternalAndReservedMethod4IFile)(IGuestFile *pThis); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFile *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestFile_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFile_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFile_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFile_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuestFile_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuestFile_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestFile_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestFile_get_InitialSize(p, aInitialSize) ((p)->lpVtbl->GetInitialSize(p, aInitialSize)) +# define IGuestFile_GetInitialSize(p, aInitialSize) ((p)->lpVtbl->GetInitialSize(p, aInitialSize)) +# define IGuestFile_get_Offset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFile_GetOffset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFile_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestFile_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestFile_get_Filename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IGuestFile_GetFilename(p, aFilename) ((p)->lpVtbl->GetFilename(p, aFilename)) +# define IGuestFile_get_CreationMode(p, aCreationMode) ((p)->lpVtbl->GetCreationMode(p, aCreationMode)) +# define IGuestFile_GetCreationMode(p, aCreationMode) ((p)->lpVtbl->GetCreationMode(p, aCreationMode)) +# define IGuestFile_get_OpenAction(p, aOpenAction) ((p)->lpVtbl->GetOpenAction(p, aOpenAction)) +# define IGuestFile_GetOpenAction(p, aOpenAction) ((p)->lpVtbl->GetOpenAction(p, aOpenAction)) +# define IGuestFile_get_AccessMode(p, aAccessMode) ((p)->lpVtbl->GetAccessMode(p, aAccessMode)) +# define IGuestFile_GetAccessMode(p, aAccessMode) ((p)->lpVtbl->GetAccessMode(p, aAccessMode)) +# define IGuestFile_Close(p) ((p)->lpVtbl->Close(p)) +# define IGuestFile_QueryInfo(p, aObjInfo) ((p)->lpVtbl->QueryInfo(p, aObjInfo)) +# define IGuestFile_QuerySize(p, aSize) ((p)->lpVtbl->QuerySize(p, aSize)) +# define IGuestFile_Read(p, aToRead, aTimeoutMS, aData) ((p)->lpVtbl->Read(p, aToRead, aTimeoutMS, aData)) +# define IGuestFile_ReadAt(p, aOffset, aToRead, aTimeoutMS, aData) ((p)->lpVtbl->ReadAt(p, aOffset, aToRead, aTimeoutMS, aData)) +# define IGuestFile_Seek(p, aOffset, aWhence, aNewOffset) ((p)->lpVtbl->Seek(p, aOffset, aWhence, aNewOffset)) +# define IGuestFile_SetACL(p, aAcl, aMode) ((p)->lpVtbl->SetACL(p, aAcl, aMode)) +# define IGuestFile_SetSize(p, aSize) ((p)->lpVtbl->SetSize(p, aSize)) +# define IGuestFile_Write(p, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->Write(p, aData, aTimeoutMS, aWritten)) +# define IGuestFile_WriteAt(p, aOffset, aData, aTimeoutMS, aWritten) ((p)->lpVtbl->WriteAt(p, aOffset, aData, aTimeoutMS, aWritten)) +# define IGuestFile_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestFile_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFile +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFile_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFile declaration */ + + +/* Start of struct IFsObjInfo declaration */ +# define IFSOBJINFO_IID_STR "081fc833-c6fa-430e-6020-6a505d086387" +# define IFSOBJINFO_IID { \ + 0x081fc833, 0xc6fa, 0x430e, \ + { 0x60, 0x20, 0x6a, 0x50, 0x5d, 0x08, 0x63, 0x87 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IFsObjInfo); +# ifndef VBOX_WITH_GLUE +struct IFsObjInfo_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IFsObjInfo *pThis, PRUnichar * *name); + + nsresult (*GetType)(IFsObjInfo *pThis, PRUint32 *type); + + nsresult (*GetFileAttributes)(IFsObjInfo *pThis, PRUnichar * *fileAttributes); + + nsresult (*GetObjectSize)(IFsObjInfo *pThis, PRInt64 *objectSize); + + nsresult (*GetAllocatedSize)(IFsObjInfo *pThis, PRInt64 *allocatedSize); + + nsresult (*GetAccessTime)(IFsObjInfo *pThis, PRInt64 *accessTime); + + nsresult (*GetBirthTime)(IFsObjInfo *pThis, PRInt64 *birthTime); + + nsresult (*GetChangeTime)(IFsObjInfo *pThis, PRInt64 *changeTime); + + nsresult (*GetModificationTime)(IFsObjInfo *pThis, PRInt64 *modificationTime); + + nsresult (*GetUID)(IFsObjInfo *pThis, PRInt32 *UID); + + nsresult (*GetUserName)(IFsObjInfo *pThis, PRUnichar * *userName); + + nsresult (*GetGID)(IFsObjInfo *pThis, PRInt32 *GID); + + nsresult (*GetGroupName)(IFsObjInfo *pThis, PRUnichar * *groupName); + + nsresult (*GetNodeId)(IFsObjInfo *pThis, PRInt64 *nodeId); + + nsresult (*GetNodeIdDevice)(IFsObjInfo *pThis, PRUint32 *nodeIdDevice); + + nsresult (*GetHardLinks)(IFsObjInfo *pThis, PRUint32 *hardLinks); + + nsresult (*GetDeviceNumber)(IFsObjInfo *pThis, PRUint32 *deviceNumber); + + nsresult (*GetGenerationId)(IFsObjInfo *pThis, PRUint32 *generationId); + + nsresult (*GetUserFlags)(IFsObjInfo *pThis, PRUint32 *userFlags); + + nsresult (*GetInternalAndReservedAttribute1IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IFsObjInfoVtbl +{ + nsresult (*QueryInterface)(IFsObjInfo *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IFsObjInfo *pThis); + nsrefcnt (*Release)(IFsObjInfo *pThis); + nsresult (*GetName)(IFsObjInfo *pThis, PRUnichar * *name); + + nsresult (*GetType)(IFsObjInfo *pThis, PRUint32 *type); + + nsresult (*GetFileAttributes)(IFsObjInfo *pThis, PRUnichar * *fileAttributes); + + nsresult (*GetObjectSize)(IFsObjInfo *pThis, PRInt64 *objectSize); + + nsresult (*GetAllocatedSize)(IFsObjInfo *pThis, PRInt64 *allocatedSize); + + nsresult (*GetAccessTime)(IFsObjInfo *pThis, PRInt64 *accessTime); + + nsresult (*GetBirthTime)(IFsObjInfo *pThis, PRInt64 *birthTime); + + nsresult (*GetChangeTime)(IFsObjInfo *pThis, PRInt64 *changeTime); + + nsresult (*GetModificationTime)(IFsObjInfo *pThis, PRInt64 *modificationTime); + + nsresult (*GetUID)(IFsObjInfo *pThis, PRInt32 *UID); + + nsresult (*GetUserName)(IFsObjInfo *pThis, PRUnichar * *userName); + + nsresult (*GetGID)(IFsObjInfo *pThis, PRInt32 *GID); + + nsresult (*GetGroupName)(IFsObjInfo *pThis, PRUnichar * *groupName); + + nsresult (*GetNodeId)(IFsObjInfo *pThis, PRInt64 *nodeId); + + nsresult (*GetNodeIdDevice)(IFsObjInfo *pThis, PRUint32 *nodeIdDevice); + + nsresult (*GetHardLinks)(IFsObjInfo *pThis, PRUint32 *hardLinks); + + nsresult (*GetDeviceNumber)(IFsObjInfo *pThis, PRUint32 *deviceNumber); + + nsresult (*GetGenerationId)(IFsObjInfo *pThis, PRUint32 *generationId); + + nsresult (*GetUserFlags)(IFsObjInfo *pThis, PRUint32 *userFlags); + + nsresult (*GetInternalAndReservedAttribute1IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFsObjInfo)(IFsObjInfo *pThis, PRUint32 *reserved); + +}; +# define IFsObjInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IFsObjInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IFsObjInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define IFsObjInfo_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IFsObjInfo_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IFsObjInfo_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IFsObjInfo_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IFsObjInfo_get_FileAttributes(p, aFileAttributes) ((p)->lpVtbl->GetFileAttributes(p, aFileAttributes)) +# define IFsObjInfo_GetFileAttributes(p, aFileAttributes) ((p)->lpVtbl->GetFileAttributes(p, aFileAttributes)) +# define IFsObjInfo_get_ObjectSize(p, aObjectSize) ((p)->lpVtbl->GetObjectSize(p, aObjectSize)) +# define IFsObjInfo_GetObjectSize(p, aObjectSize) ((p)->lpVtbl->GetObjectSize(p, aObjectSize)) +# define IFsObjInfo_get_AllocatedSize(p, aAllocatedSize) ((p)->lpVtbl->GetAllocatedSize(p, aAllocatedSize)) +# define IFsObjInfo_GetAllocatedSize(p, aAllocatedSize) ((p)->lpVtbl->GetAllocatedSize(p, aAllocatedSize)) +# define IFsObjInfo_get_AccessTime(p, aAccessTime) ((p)->lpVtbl->GetAccessTime(p, aAccessTime)) +# define IFsObjInfo_GetAccessTime(p, aAccessTime) ((p)->lpVtbl->GetAccessTime(p, aAccessTime)) +# define IFsObjInfo_get_BirthTime(p, aBirthTime) ((p)->lpVtbl->GetBirthTime(p, aBirthTime)) +# define IFsObjInfo_GetBirthTime(p, aBirthTime) ((p)->lpVtbl->GetBirthTime(p, aBirthTime)) +# define IFsObjInfo_get_ChangeTime(p, aChangeTime) ((p)->lpVtbl->GetChangeTime(p, aChangeTime)) +# define IFsObjInfo_GetChangeTime(p, aChangeTime) ((p)->lpVtbl->GetChangeTime(p, aChangeTime)) +# define IFsObjInfo_get_ModificationTime(p, aModificationTime) ((p)->lpVtbl->GetModificationTime(p, aModificationTime)) +# define IFsObjInfo_GetModificationTime(p, aModificationTime) ((p)->lpVtbl->GetModificationTime(p, aModificationTime)) +# define IFsObjInfo_get_UID(p, aUID) ((p)->lpVtbl->GetUID(p, aUID)) +# define IFsObjInfo_GetUID(p, aUID) ((p)->lpVtbl->GetUID(p, aUID)) +# define IFsObjInfo_get_UserName(p, aUserName) ((p)->lpVtbl->GetUserName(p, aUserName)) +# define IFsObjInfo_GetUserName(p, aUserName) ((p)->lpVtbl->GetUserName(p, aUserName)) +# define IFsObjInfo_get_GID(p, aGID) ((p)->lpVtbl->GetGID(p, aGID)) +# define IFsObjInfo_GetGID(p, aGID) ((p)->lpVtbl->GetGID(p, aGID)) +# define IFsObjInfo_get_GroupName(p, aGroupName) ((p)->lpVtbl->GetGroupName(p, aGroupName)) +# define IFsObjInfo_GetGroupName(p, aGroupName) ((p)->lpVtbl->GetGroupName(p, aGroupName)) +# define IFsObjInfo_get_NodeId(p, aNodeId) ((p)->lpVtbl->GetNodeId(p, aNodeId)) +# define IFsObjInfo_GetNodeId(p, aNodeId) ((p)->lpVtbl->GetNodeId(p, aNodeId)) +# define IFsObjInfo_get_NodeIdDevice(p, aNodeIdDevice) ((p)->lpVtbl->GetNodeIdDevice(p, aNodeIdDevice)) +# define IFsObjInfo_GetNodeIdDevice(p, aNodeIdDevice) ((p)->lpVtbl->GetNodeIdDevice(p, aNodeIdDevice)) +# define IFsObjInfo_get_HardLinks(p, aHardLinks) ((p)->lpVtbl->GetHardLinks(p, aHardLinks)) +# define IFsObjInfo_GetHardLinks(p, aHardLinks) ((p)->lpVtbl->GetHardLinks(p, aHardLinks)) +# define IFsObjInfo_get_DeviceNumber(p, aDeviceNumber) ((p)->lpVtbl->GetDeviceNumber(p, aDeviceNumber)) +# define IFsObjInfo_GetDeviceNumber(p, aDeviceNumber) ((p)->lpVtbl->GetDeviceNumber(p, aDeviceNumber)) +# define IFsObjInfo_get_GenerationId(p, aGenerationId) ((p)->lpVtbl->GetGenerationId(p, aGenerationId)) +# define IFsObjInfo_GetGenerationId(p, aGenerationId) ((p)->lpVtbl->GetGenerationId(p, aGenerationId)) +# define IFsObjInfo_get_UserFlags(p, aUserFlags) ((p)->lpVtbl->GetUserFlags(p, aUserFlags)) +# define IFsObjInfo_GetUserFlags(p, aUserFlags) ((p)->lpVtbl->GetUserFlags(p, aUserFlags)) +# endif /* VBOX_WITH_GLUE */ + +interface IFsObjInfo +{ +# ifndef VBOX_WITH_GLUE + struct IFsObjInfo_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IFsObjInfoVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IFsObjInfo declaration */ + + +/* Start of struct IGuestFsObjInfo declaration */ +# define IGUESTFSOBJINFO_IID_STR "6620db85-44e0-ca69-e9e0-d4907ceccbe5" +# define IGUESTFSOBJINFO_IID { \ + 0x6620db85, 0x44e0, 0xca69, \ + { 0xe9, 0xe0, 0xd4, 0x90, 0x7c, 0xec, 0xcb, 0xe5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFsObjInfo); +# ifndef VBOX_WITH_GLUE +struct IGuestFsObjInfo_vtbl +{ + struct IFsObjInfo_vtbl ifsobjinfo; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFsObjInfo *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFsObjInfoVtbl +{ + nsresult (*QueryInterface)(IGuestFsObjInfo *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFsObjInfo *pThis); + nsrefcnt (*Release)(IGuestFsObjInfo *pThis); + nsresult (*GetName)(IGuestFsObjInfo *pThis, PRUnichar * *name); + + nsresult (*GetType)(IGuestFsObjInfo *pThis, PRUint32 *type); + + nsresult (*GetFileAttributes)(IGuestFsObjInfo *pThis, PRUnichar * *fileAttributes); + + nsresult (*GetObjectSize)(IGuestFsObjInfo *pThis, PRInt64 *objectSize); + + nsresult (*GetAllocatedSize)(IGuestFsObjInfo *pThis, PRInt64 *allocatedSize); + + nsresult (*GetAccessTime)(IGuestFsObjInfo *pThis, PRInt64 *accessTime); + + nsresult (*GetBirthTime)(IGuestFsObjInfo *pThis, PRInt64 *birthTime); + + nsresult (*GetChangeTime)(IGuestFsObjInfo *pThis, PRInt64 *changeTime); + + nsresult (*GetModificationTime)(IGuestFsObjInfo *pThis, PRInt64 *modificationTime); + + nsresult (*GetUID)(IGuestFsObjInfo *pThis, PRInt32 *UID); + + nsresult (*GetUserName)(IGuestFsObjInfo *pThis, PRUnichar * *userName); + + nsresult (*GetGID)(IGuestFsObjInfo *pThis, PRInt32 *GID); + + nsresult (*GetGroupName)(IGuestFsObjInfo *pThis, PRUnichar * *groupName); + + nsresult (*GetNodeId)(IGuestFsObjInfo *pThis, PRInt64 *nodeId); + + nsresult (*GetNodeIdDevice)(IGuestFsObjInfo *pThis, PRUint32 *nodeIdDevice); + + nsresult (*GetHardLinks)(IGuestFsObjInfo *pThis, PRUint32 *hardLinks); + + nsresult (*GetDeviceNumber)(IGuestFsObjInfo *pThis, PRUint32 *deviceNumber); + + nsresult (*GetGenerationId)(IGuestFsObjInfo *pThis, PRUint32 *generationId); + + nsresult (*GetUserFlags)(IGuestFsObjInfo *pThis, PRUint32 *userFlags); + + nsresult (*GetInternalAndReservedAttribute1IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFsObjInfo)(IGuestFsObjInfo *pThis, PRUint32 *reserved); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFsObjInfo *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestFsObjInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFsObjInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFsObjInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFsObjInfo_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestFsObjInfo_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestFsObjInfo_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFsObjInfo_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFsObjInfo_get_FileAttributes(p, aFileAttributes) ((p)->lpVtbl->GetFileAttributes(p, aFileAttributes)) +# define IGuestFsObjInfo_GetFileAttributes(p, aFileAttributes) ((p)->lpVtbl->GetFileAttributes(p, aFileAttributes)) +# define IGuestFsObjInfo_get_ObjectSize(p, aObjectSize) ((p)->lpVtbl->GetObjectSize(p, aObjectSize)) +# define IGuestFsObjInfo_GetObjectSize(p, aObjectSize) ((p)->lpVtbl->GetObjectSize(p, aObjectSize)) +# define IGuestFsObjInfo_get_AllocatedSize(p, aAllocatedSize) ((p)->lpVtbl->GetAllocatedSize(p, aAllocatedSize)) +# define IGuestFsObjInfo_GetAllocatedSize(p, aAllocatedSize) ((p)->lpVtbl->GetAllocatedSize(p, aAllocatedSize)) +# define IGuestFsObjInfo_get_AccessTime(p, aAccessTime) ((p)->lpVtbl->GetAccessTime(p, aAccessTime)) +# define IGuestFsObjInfo_GetAccessTime(p, aAccessTime) ((p)->lpVtbl->GetAccessTime(p, aAccessTime)) +# define IGuestFsObjInfo_get_BirthTime(p, aBirthTime) ((p)->lpVtbl->GetBirthTime(p, aBirthTime)) +# define IGuestFsObjInfo_GetBirthTime(p, aBirthTime) ((p)->lpVtbl->GetBirthTime(p, aBirthTime)) +# define IGuestFsObjInfo_get_ChangeTime(p, aChangeTime) ((p)->lpVtbl->GetChangeTime(p, aChangeTime)) +# define IGuestFsObjInfo_GetChangeTime(p, aChangeTime) ((p)->lpVtbl->GetChangeTime(p, aChangeTime)) +# define IGuestFsObjInfo_get_ModificationTime(p, aModificationTime) ((p)->lpVtbl->GetModificationTime(p, aModificationTime)) +# define IGuestFsObjInfo_GetModificationTime(p, aModificationTime) ((p)->lpVtbl->GetModificationTime(p, aModificationTime)) +# define IGuestFsObjInfo_get_UID(p, aUID) ((p)->lpVtbl->GetUID(p, aUID)) +# define IGuestFsObjInfo_GetUID(p, aUID) ((p)->lpVtbl->GetUID(p, aUID)) +# define IGuestFsObjInfo_get_UserName(p, aUserName) ((p)->lpVtbl->GetUserName(p, aUserName)) +# define IGuestFsObjInfo_GetUserName(p, aUserName) ((p)->lpVtbl->GetUserName(p, aUserName)) +# define IGuestFsObjInfo_get_GID(p, aGID) ((p)->lpVtbl->GetGID(p, aGID)) +# define IGuestFsObjInfo_GetGID(p, aGID) ((p)->lpVtbl->GetGID(p, aGID)) +# define IGuestFsObjInfo_get_GroupName(p, aGroupName) ((p)->lpVtbl->GetGroupName(p, aGroupName)) +# define IGuestFsObjInfo_GetGroupName(p, aGroupName) ((p)->lpVtbl->GetGroupName(p, aGroupName)) +# define IGuestFsObjInfo_get_NodeId(p, aNodeId) ((p)->lpVtbl->GetNodeId(p, aNodeId)) +# define IGuestFsObjInfo_GetNodeId(p, aNodeId) ((p)->lpVtbl->GetNodeId(p, aNodeId)) +# define IGuestFsObjInfo_get_NodeIdDevice(p, aNodeIdDevice) ((p)->lpVtbl->GetNodeIdDevice(p, aNodeIdDevice)) +# define IGuestFsObjInfo_GetNodeIdDevice(p, aNodeIdDevice) ((p)->lpVtbl->GetNodeIdDevice(p, aNodeIdDevice)) +# define IGuestFsObjInfo_get_HardLinks(p, aHardLinks) ((p)->lpVtbl->GetHardLinks(p, aHardLinks)) +# define IGuestFsObjInfo_GetHardLinks(p, aHardLinks) ((p)->lpVtbl->GetHardLinks(p, aHardLinks)) +# define IGuestFsObjInfo_get_DeviceNumber(p, aDeviceNumber) ((p)->lpVtbl->GetDeviceNumber(p, aDeviceNumber)) +# define IGuestFsObjInfo_GetDeviceNumber(p, aDeviceNumber) ((p)->lpVtbl->GetDeviceNumber(p, aDeviceNumber)) +# define IGuestFsObjInfo_get_GenerationId(p, aGenerationId) ((p)->lpVtbl->GetGenerationId(p, aGenerationId)) +# define IGuestFsObjInfo_GetGenerationId(p, aGenerationId) ((p)->lpVtbl->GetGenerationId(p, aGenerationId)) +# define IGuestFsObjInfo_get_UserFlags(p, aUserFlags) ((p)->lpVtbl->GetUserFlags(p, aUserFlags)) +# define IGuestFsObjInfo_GetUserFlags(p, aUserFlags) ((p)->lpVtbl->GetUserFlags(p, aUserFlags)) +# define IGuestFsObjInfo_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestFsObjInfo_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFsObjInfo +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFsObjInfo_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFsObjInfoVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFsObjInfo declaration */ + + +/* Start of struct IGuest declaration */ +# define IGUEST_IID_STR "13a11514-402e-022e-6180-c3944de3f9c8" +# define IGUEST_IID { \ + 0x13a11514, 0x402e, 0x022e, \ + { 0x61, 0x80, 0xc3, 0x94, 0x4d, 0xe3, 0xf9, 0xc8 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuest); +# ifndef VBOX_WITH_GLUE +struct IGuest_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetOSTypeId)(IGuest *pThis, PRUnichar * *OSTypeId); + + nsresult (*GetAdditionsRunLevel)(IGuest *pThis, PRUint32 *additionsRunLevel); + + nsresult (*GetAdditionsVersion)(IGuest *pThis, PRUnichar * *additionsVersion); + + nsresult (*GetAdditionsRevision)(IGuest *pThis, PRUint32 *additionsRevision); + + nsresult (*GetDnDSource)(IGuest *pThis, IGuestDnDSource * *dnDSource); + + nsresult (*GetDnDTarget)(IGuest *pThis, IGuestDnDTarget * *dnDTarget); + + nsresult (*GetEventSource)(IGuest *pThis, IEventSource * *eventSource); + + nsresult (*GetFacilities)(IGuest *pThis, PRUint32 *facilitiesSize, IAdditionsFacility * **facilities); + + nsresult (*GetSessions)(IGuest *pThis, PRUint32 *sessionsSize, IGuestSession * **sessions); + + nsresult (*GetMemoryBalloonSize)(IGuest *pThis, PRUint32 *memoryBalloonSize); + nsresult (*SetMemoryBalloonSize)(IGuest *pThis, PRUint32 memoryBalloonSize); + + nsresult (*GetStatisticsUpdateInterval)(IGuest *pThis, PRUint32 *statisticsUpdateInterval); + nsresult (*SetStatisticsUpdateInterval)(IGuest *pThis, PRUint32 statisticsUpdateInterval); + + nsresult (*GetInternalAndReservedAttribute1IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*InternalGetStatistics)( + IGuest *pThis, + PRUint32 * cpuUser, + PRUint32 * cpuKernel, + PRUint32 * cpuIdle, + PRUint32 * memTotal, + PRUint32 * memFree, + PRUint32 * memBalloon, + PRUint32 * memShared, + PRUint32 * memCache, + PRUint32 * pagedTotal, + PRUint32 * memAllocTotal, + PRUint32 * memFreeTotal, + PRUint32 * memBalloonTotal, + PRUint32 * memSharedTotal + ); + + nsresult (*GetFacilityStatus)( + IGuest *pThis, + PRUint32 facility, + PRInt64 * timestamp, + PRUint32 * status + ); + + nsresult (*GetAdditionsStatus)( + IGuest *pThis, + PRUint32 level, + PRBool * active + ); + + nsresult (*SetCredentials)( + IGuest *pThis, + PRUnichar * userName, + PRUnichar * password, + PRUnichar * domain, + PRBool allowInteractiveLogon + ); + + nsresult (*CreateSession)( + IGuest *pThis, + PRUnichar * user, + PRUnichar * password, + PRUnichar * domain, + PRUnichar * sessionName, + IGuestSession * * guestSession + ); + + nsresult (*FindSession)( + IGuest *pThis, + PRUnichar * sessionName, + PRUint32 *sessionsSize, + IGuestSession *** sessions + ); + + nsresult (*UpdateGuestAdditions)( + IGuest *pThis, + PRUnichar * source, + PRUint32 argumentsSize, + PRUnichar ** arguments, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod2IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod3IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod4IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod5IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod6IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod7IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod8IGuest)(IGuest *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestVtbl +{ + nsresult (*QueryInterface)(IGuest *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuest *pThis); + nsrefcnt (*Release)(IGuest *pThis); + nsresult (*GetOSTypeId)(IGuest *pThis, PRUnichar * *OSTypeId); + + nsresult (*GetAdditionsRunLevel)(IGuest *pThis, PRUint32 *additionsRunLevel); + + nsresult (*GetAdditionsVersion)(IGuest *pThis, PRUnichar * *additionsVersion); + + nsresult (*GetAdditionsRevision)(IGuest *pThis, PRUint32 *additionsRevision); + + nsresult (*GetDnDSource)(IGuest *pThis, IGuestDnDSource * *dnDSource); + + nsresult (*GetDnDTarget)(IGuest *pThis, IGuestDnDTarget * *dnDTarget); + + nsresult (*GetEventSource)(IGuest *pThis, IEventSource * *eventSource); + + nsresult (*GetFacilities)(IGuest *pThis, PRUint32 *facilitiesSize, IAdditionsFacility * **facilities); + + nsresult (*GetSessions)(IGuest *pThis, PRUint32 *sessionsSize, IGuestSession * **sessions); + + nsresult (*GetMemoryBalloonSize)(IGuest *pThis, PRUint32 *memoryBalloonSize); + nsresult (*SetMemoryBalloonSize)(IGuest *pThis, PRUint32 memoryBalloonSize); + + nsresult (*GetStatisticsUpdateInterval)(IGuest *pThis, PRUint32 *statisticsUpdateInterval); + nsresult (*SetStatisticsUpdateInterval)(IGuest *pThis, PRUint32 statisticsUpdateInterval); + + nsresult (*GetInternalAndReservedAttribute1IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IGuest)(IGuest *pThis, PRUint32 *reserved); + + nsresult (*InternalGetStatistics)( + IGuest *pThis, + PRUint32 * cpuUser, + PRUint32 * cpuKernel, + PRUint32 * cpuIdle, + PRUint32 * memTotal, + PRUint32 * memFree, + PRUint32 * memBalloon, + PRUint32 * memShared, + PRUint32 * memCache, + PRUint32 * pagedTotal, + PRUint32 * memAllocTotal, + PRUint32 * memFreeTotal, + PRUint32 * memBalloonTotal, + PRUint32 * memSharedTotal + ); + + nsresult (*GetFacilityStatus)( + IGuest *pThis, + PRUint32 facility, + PRInt64 * timestamp, + PRUint32 * status + ); + + nsresult (*GetAdditionsStatus)( + IGuest *pThis, + PRUint32 level, + PRBool * active + ); + + nsresult (*SetCredentials)( + IGuest *pThis, + PRUnichar * userName, + PRUnichar * password, + PRUnichar * domain, + PRBool allowInteractiveLogon + ); + + nsresult (*CreateSession)( + IGuest *pThis, + PRUnichar * user, + PRUnichar * password, + PRUnichar * domain, + PRUnichar * sessionName, + IGuestSession * * guestSession + ); + + nsresult (*FindSession)( + IGuest *pThis, + PRUnichar * sessionName, + PRUint32 *sessionsSize, + IGuestSession *** sessions + ); + + nsresult (*UpdateGuestAdditions)( + IGuest *pThis, + PRUnichar * source, + PRUint32 argumentsSize, + PRUnichar ** arguments, + PRUint32 flagsSize, + PRUint32* flags, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod2IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod3IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod4IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod5IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod6IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod7IGuest)(IGuest *pThis); + + nsresult (*InternalAndReservedMethod8IGuest)(IGuest *pThis); + +}; +# define IGuest_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuest_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuest_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuest_get_OSTypeId(p, aOSTypeId) ((p)->lpVtbl->GetOSTypeId(p, aOSTypeId)) +# define IGuest_GetOSTypeId(p, aOSTypeId) ((p)->lpVtbl->GetOSTypeId(p, aOSTypeId)) +# define IGuest_get_AdditionsRunLevel(p, aAdditionsRunLevel) ((p)->lpVtbl->GetAdditionsRunLevel(p, aAdditionsRunLevel)) +# define IGuest_GetAdditionsRunLevel(p, aAdditionsRunLevel) ((p)->lpVtbl->GetAdditionsRunLevel(p, aAdditionsRunLevel)) +# define IGuest_get_AdditionsVersion(p, aAdditionsVersion) ((p)->lpVtbl->GetAdditionsVersion(p, aAdditionsVersion)) +# define IGuest_GetAdditionsVersion(p, aAdditionsVersion) ((p)->lpVtbl->GetAdditionsVersion(p, aAdditionsVersion)) +# define IGuest_get_AdditionsRevision(p, aAdditionsRevision) ((p)->lpVtbl->GetAdditionsRevision(p, aAdditionsRevision)) +# define IGuest_GetAdditionsRevision(p, aAdditionsRevision) ((p)->lpVtbl->GetAdditionsRevision(p, aAdditionsRevision)) +# define IGuest_get_DnDSource(p, aDnDSource) ((p)->lpVtbl->GetDnDSource(p, aDnDSource)) +# define IGuest_GetDnDSource(p, aDnDSource) ((p)->lpVtbl->GetDnDSource(p, aDnDSource)) +# define IGuest_get_DnDTarget(p, aDnDTarget) ((p)->lpVtbl->GetDnDTarget(p, aDnDTarget)) +# define IGuest_GetDnDTarget(p, aDnDTarget) ((p)->lpVtbl->GetDnDTarget(p, aDnDTarget)) +# define IGuest_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuest_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IGuest_get_Facilities(p, aFacilities) ((p)->lpVtbl->GetFacilities(p, aFacilities)) +# define IGuest_GetFacilities(p, aFacilities) ((p)->lpVtbl->GetFacilities(p, aFacilities)) +# define IGuest_get_Sessions(p, aSessions) ((p)->lpVtbl->GetSessions(p, aSessions)) +# define IGuest_GetSessions(p, aSessions) ((p)->lpVtbl->GetSessions(p, aSessions)) +# define IGuest_get_MemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->GetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IGuest_GetMemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->GetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IGuest_put_MemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->SetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IGuest_SetMemoryBalloonSize(p, aMemoryBalloonSize) ((p)->lpVtbl->SetMemoryBalloonSize(p, aMemoryBalloonSize)) +# define IGuest_get_StatisticsUpdateInterval(p, aStatisticsUpdateInterval) ((p)->lpVtbl->GetStatisticsUpdateInterval(p, aStatisticsUpdateInterval)) +# define IGuest_GetStatisticsUpdateInterval(p, aStatisticsUpdateInterval) ((p)->lpVtbl->GetStatisticsUpdateInterval(p, aStatisticsUpdateInterval)) +# define IGuest_put_StatisticsUpdateInterval(p, aStatisticsUpdateInterval) ((p)->lpVtbl->SetStatisticsUpdateInterval(p, aStatisticsUpdateInterval)) +# define IGuest_SetStatisticsUpdateInterval(p, aStatisticsUpdateInterval) ((p)->lpVtbl->SetStatisticsUpdateInterval(p, aStatisticsUpdateInterval)) +# define IGuest_InternalGetStatistics(p, aCpuUser, aCpuKernel, aCpuIdle, aMemTotal, aMemFree, aMemBalloon, aMemShared, aMemCache, aPagedTotal, aMemAllocTotal, aMemFreeTotal, aMemBalloonTotal, aMemSharedTotal) ((p)->lpVtbl->InternalGetStatistics(p, aCpuUser, aCpuKernel, aCpuIdle, aMemTotal, aMemFree, aMemBalloon, aMemShared, aMemCache, aPagedTotal, aMemAllocTotal, aMemFreeTotal, aMemBalloonTotal, aMemSharedTotal)) +# define IGuest_GetFacilityStatus(p, aFacility, aTimestamp, aStatus) ((p)->lpVtbl->GetFacilityStatus(p, aFacility, aTimestamp, aStatus)) +# define IGuest_GetAdditionsStatus(p, aLevel, aActive) ((p)->lpVtbl->GetAdditionsStatus(p, aLevel, aActive)) +# define IGuest_SetCredentials(p, aUserName, aPassword, aDomain, aAllowInteractiveLogon) ((p)->lpVtbl->SetCredentials(p, aUserName, aPassword, aDomain, aAllowInteractiveLogon)) +# define IGuest_CreateSession(p, aUser, aPassword, aDomain, aSessionName, aGuestSession) ((p)->lpVtbl->CreateSession(p, aUser, aPassword, aDomain, aSessionName, aGuestSession)) +# define IGuest_FindSession(p, aSessionName, aSessions) ((p)->lpVtbl->FindSession(p, aSessionName, aSessions)) +# define IGuest_UpdateGuestAdditions(p, aSource, aArguments, aFlags, aProgress) ((p)->lpVtbl->UpdateGuestAdditions(p, aSource, aArguments, aFlags, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuest +{ +# ifndef VBOX_WITH_GLUE + struct IGuest_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuest declaration */ + + +/* Start of struct IProgress declaration */ +# define IPROGRESS_IID_STR "d7b98d2b-30e8-447e-99cb-e31becae6ae4" +# define IPROGRESS_IID { \ + 0xd7b98d2b, 0x30e8, 0x447e, \ + { 0x99, 0xcb, 0xe3, 0x1b, 0xec, 0xae, 0x6a, 0xe4 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IProgress); +# ifndef VBOX_WITH_GLUE +struct IProgress_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetId)(IProgress *pThis, PRUnichar * *id); + + nsresult (*GetDescription)(IProgress *pThis, PRUnichar * *description); + + nsresult (*GetInitiator)(IProgress *pThis, nsISupports * *initiator); + + nsresult (*GetCancelable)(IProgress *pThis, PRBool *cancelable); + + nsresult (*GetPercent)(IProgress *pThis, PRUint32 *percent); + + nsresult (*GetTimeRemaining)(IProgress *pThis, PRInt32 *timeRemaining); + + nsresult (*GetCompleted)(IProgress *pThis, PRBool *completed); + + nsresult (*GetCanceled)(IProgress *pThis, PRBool *canceled); + + nsresult (*GetResultCode)(IProgress *pThis, PRInt32 *resultCode); + + nsresult (*GetErrorInfo)(IProgress *pThis, IVirtualBoxErrorInfo * *errorInfo); + + nsresult (*GetOperationCount)(IProgress *pThis, PRUint32 *operationCount); + + nsresult (*GetOperation)(IProgress *pThis, PRUint32 *operation); + + nsresult (*GetOperationDescription)(IProgress *pThis, PRUnichar * *operationDescription); + + nsresult (*GetOperationPercent)(IProgress *pThis, PRUint32 *operationPercent); + + nsresult (*GetOperationWeight)(IProgress *pThis, PRUint32 *operationWeight); + + nsresult (*GetTimeout)(IProgress *pThis, PRUint32 *timeout); + nsresult (*SetTimeout)(IProgress *pThis, PRUint32 timeout); + + nsresult (*GetEventSource)(IProgress *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*WaitForCompletion)( + IProgress *pThis, + PRInt32 timeout + ); + + nsresult (*WaitForOperationCompletion)( + IProgress *pThis, + PRUint32 operation, + PRInt32 timeout + ); + + nsresult (*Cancel)(IProgress *pThis ); + + nsresult (*InternalAndReservedMethod1IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod2IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod3IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod4IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod5IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod6IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod7IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod8IProgress)(IProgress *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IProgressVtbl +{ + nsresult (*QueryInterface)(IProgress *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IProgress *pThis); + nsrefcnt (*Release)(IProgress *pThis); + nsresult (*GetId)(IProgress *pThis, PRUnichar * *id); + + nsresult (*GetDescription)(IProgress *pThis, PRUnichar * *description); + + nsresult (*GetInitiator)(IProgress *pThis, nsISupports * *initiator); + + nsresult (*GetCancelable)(IProgress *pThis, PRBool *cancelable); + + nsresult (*GetPercent)(IProgress *pThis, PRUint32 *percent); + + nsresult (*GetTimeRemaining)(IProgress *pThis, PRInt32 *timeRemaining); + + nsresult (*GetCompleted)(IProgress *pThis, PRBool *completed); + + nsresult (*GetCanceled)(IProgress *pThis, PRBool *canceled); + + nsresult (*GetResultCode)(IProgress *pThis, PRInt32 *resultCode); + + nsresult (*GetErrorInfo)(IProgress *pThis, IVirtualBoxErrorInfo * *errorInfo); + + nsresult (*GetOperationCount)(IProgress *pThis, PRUint32 *operationCount); + + nsresult (*GetOperation)(IProgress *pThis, PRUint32 *operation); + + nsresult (*GetOperationDescription)(IProgress *pThis, PRUnichar * *operationDescription); + + nsresult (*GetOperationPercent)(IProgress *pThis, PRUint32 *operationPercent); + + nsresult (*GetOperationWeight)(IProgress *pThis, PRUint32 *operationWeight); + + nsresult (*GetTimeout)(IProgress *pThis, PRUint32 *timeout); + nsresult (*SetTimeout)(IProgress *pThis, PRUint32 timeout); + + nsresult (*GetEventSource)(IProgress *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IProgress)(IProgress *pThis, PRUint32 *reserved); + + nsresult (*WaitForCompletion)( + IProgress *pThis, + PRInt32 timeout + ); + + nsresult (*WaitForOperationCompletion)( + IProgress *pThis, + PRUint32 operation, + PRInt32 timeout + ); + + nsresult (*Cancel)(IProgress *pThis ); + + nsresult (*InternalAndReservedMethod1IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod2IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod3IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod4IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod5IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod6IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod7IProgress)(IProgress *pThis); + + nsresult (*InternalAndReservedMethod8IProgress)(IProgress *pThis); + +}; +# define IProgress_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IProgress_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IProgress_Release(p) ((p)->lpVtbl->Release(p)) +# define IProgress_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IProgress_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IProgress_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IProgress_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IProgress_get_Initiator(p, aInitiator) ((p)->lpVtbl->GetInitiator(p, aInitiator)) +# define IProgress_GetInitiator(p, aInitiator) ((p)->lpVtbl->GetInitiator(p, aInitiator)) +# define IProgress_get_Cancelable(p, aCancelable) ((p)->lpVtbl->GetCancelable(p, aCancelable)) +# define IProgress_GetCancelable(p, aCancelable) ((p)->lpVtbl->GetCancelable(p, aCancelable)) +# define IProgress_get_Percent(p, aPercent) ((p)->lpVtbl->GetPercent(p, aPercent)) +# define IProgress_GetPercent(p, aPercent) ((p)->lpVtbl->GetPercent(p, aPercent)) +# define IProgress_get_TimeRemaining(p, aTimeRemaining) ((p)->lpVtbl->GetTimeRemaining(p, aTimeRemaining)) +# define IProgress_GetTimeRemaining(p, aTimeRemaining) ((p)->lpVtbl->GetTimeRemaining(p, aTimeRemaining)) +# define IProgress_get_Completed(p, aCompleted) ((p)->lpVtbl->GetCompleted(p, aCompleted)) +# define IProgress_GetCompleted(p, aCompleted) ((p)->lpVtbl->GetCompleted(p, aCompleted)) +# define IProgress_get_Canceled(p, aCanceled) ((p)->lpVtbl->GetCanceled(p, aCanceled)) +# define IProgress_GetCanceled(p, aCanceled) ((p)->lpVtbl->GetCanceled(p, aCanceled)) +# define IProgress_get_ResultCode(p, aResultCode) ((p)->lpVtbl->GetResultCode(p, aResultCode)) +# define IProgress_GetResultCode(p, aResultCode) ((p)->lpVtbl->GetResultCode(p, aResultCode)) +# define IProgress_get_ErrorInfo(p, aErrorInfo) ((p)->lpVtbl->GetErrorInfo(p, aErrorInfo)) +# define IProgress_GetErrorInfo(p, aErrorInfo) ((p)->lpVtbl->GetErrorInfo(p, aErrorInfo)) +# define IProgress_get_OperationCount(p, aOperationCount) ((p)->lpVtbl->GetOperationCount(p, aOperationCount)) +# define IProgress_GetOperationCount(p, aOperationCount) ((p)->lpVtbl->GetOperationCount(p, aOperationCount)) +# define IProgress_get_Operation(p, aOperation) ((p)->lpVtbl->GetOperation(p, aOperation)) +# define IProgress_GetOperation(p, aOperation) ((p)->lpVtbl->GetOperation(p, aOperation)) +# define IProgress_get_OperationDescription(p, aOperationDescription) ((p)->lpVtbl->GetOperationDescription(p, aOperationDescription)) +# define IProgress_GetOperationDescription(p, aOperationDescription) ((p)->lpVtbl->GetOperationDescription(p, aOperationDescription)) +# define IProgress_get_OperationPercent(p, aOperationPercent) ((p)->lpVtbl->GetOperationPercent(p, aOperationPercent)) +# define IProgress_GetOperationPercent(p, aOperationPercent) ((p)->lpVtbl->GetOperationPercent(p, aOperationPercent)) +# define IProgress_get_OperationWeight(p, aOperationWeight) ((p)->lpVtbl->GetOperationWeight(p, aOperationWeight)) +# define IProgress_GetOperationWeight(p, aOperationWeight) ((p)->lpVtbl->GetOperationWeight(p, aOperationWeight)) +# define IProgress_get_Timeout(p, aTimeout) ((p)->lpVtbl->GetTimeout(p, aTimeout)) +# define IProgress_GetTimeout(p, aTimeout) ((p)->lpVtbl->GetTimeout(p, aTimeout)) +# define IProgress_put_Timeout(p, aTimeout) ((p)->lpVtbl->SetTimeout(p, aTimeout)) +# define IProgress_SetTimeout(p, aTimeout) ((p)->lpVtbl->SetTimeout(p, aTimeout)) +# define IProgress_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IProgress_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IProgress_WaitForCompletion(p, aTimeout) ((p)->lpVtbl->WaitForCompletion(p, aTimeout)) +# define IProgress_WaitForOperationCompletion(p, aOperation, aTimeout) ((p)->lpVtbl->WaitForOperationCompletion(p, aOperation, aTimeout)) +# define IProgress_Cancel(p) ((p)->lpVtbl->Cancel(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IProgress +{ +# ifndef VBOX_WITH_GLUE + struct IProgress_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IProgressVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IProgress declaration */ + + +/* Start of struct ISnapshot declaration */ +# define ISNAPSHOT_IID_STR "6cc49055-dad4-4496-85cf-3f76bcb3b5fa" +# define ISNAPSHOT_IID { \ + 0x6cc49055, 0xdad4, 0x4496, \ + { 0x85, 0xcf, 0x3f, 0x76, 0xbc, 0xb3, 0xb5, 0xfa } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISnapshot); +# ifndef VBOX_WITH_GLUE +struct ISnapshot_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetId)(ISnapshot *pThis, PRUnichar * *id); + + nsresult (*GetName)(ISnapshot *pThis, PRUnichar * *name); + nsresult (*SetName)(ISnapshot *pThis, PRUnichar * name); + + nsresult (*GetDescription)(ISnapshot *pThis, PRUnichar * *description); + nsresult (*SetDescription)(ISnapshot *pThis, PRUnichar * description); + + nsresult (*GetTimeStamp)(ISnapshot *pThis, PRInt64 *timeStamp); + + nsresult (*GetOnline)(ISnapshot *pThis, PRBool *online); + + nsresult (*GetMachine)(ISnapshot *pThis, IMachine * *machine); + + nsresult (*GetParent)(ISnapshot *pThis, ISnapshot * *parent); + + nsresult (*GetChildren)(ISnapshot *pThis, PRUint32 *childrenSize, ISnapshot * **children); + + nsresult (*GetChildrenCount)(ISnapshot *pThis, PRUint32 *childrenCount); + + nsresult (*GetInternalAndReservedAttribute1ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1ISnapshot)(ISnapshot *pThis); + + nsresult (*InternalAndReservedMethod2ISnapshot)(ISnapshot *pThis); + + nsresult (*InternalAndReservedMethod3ISnapshot)(ISnapshot *pThis); + + nsresult (*InternalAndReservedMethod4ISnapshot)(ISnapshot *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISnapshotVtbl +{ + nsresult (*QueryInterface)(ISnapshot *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISnapshot *pThis); + nsrefcnt (*Release)(ISnapshot *pThis); + nsresult (*GetId)(ISnapshot *pThis, PRUnichar * *id); + + nsresult (*GetName)(ISnapshot *pThis, PRUnichar * *name); + nsresult (*SetName)(ISnapshot *pThis, PRUnichar * name); + + nsresult (*GetDescription)(ISnapshot *pThis, PRUnichar * *description); + nsresult (*SetDescription)(ISnapshot *pThis, PRUnichar * description); + + nsresult (*GetTimeStamp)(ISnapshot *pThis, PRInt64 *timeStamp); + + nsresult (*GetOnline)(ISnapshot *pThis, PRBool *online); + + nsresult (*GetMachine)(ISnapshot *pThis, IMachine * *machine); + + nsresult (*GetParent)(ISnapshot *pThis, ISnapshot * *parent); + + nsresult (*GetChildren)(ISnapshot *pThis, PRUint32 *childrenSize, ISnapshot * **children); + + nsresult (*GetChildrenCount)(ISnapshot *pThis, PRUint32 *childrenCount); + + nsresult (*GetInternalAndReservedAttribute1ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISnapshot)(ISnapshot *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1ISnapshot)(ISnapshot *pThis); + + nsresult (*InternalAndReservedMethod2ISnapshot)(ISnapshot *pThis); + + nsresult (*InternalAndReservedMethod3ISnapshot)(ISnapshot *pThis); + + nsresult (*InternalAndReservedMethod4ISnapshot)(ISnapshot *pThis); + +}; +# define ISnapshot_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISnapshot_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISnapshot_Release(p) ((p)->lpVtbl->Release(p)) +# define ISnapshot_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define ISnapshot_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define ISnapshot_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ISnapshot_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ISnapshot_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define ISnapshot_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define ISnapshot_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define ISnapshot_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define ISnapshot_put_Description(p, aDescription) ((p)->lpVtbl->SetDescription(p, aDescription)) +# define ISnapshot_SetDescription(p, aDescription) ((p)->lpVtbl->SetDescription(p, aDescription)) +# define ISnapshot_get_TimeStamp(p, aTimeStamp) ((p)->lpVtbl->GetTimeStamp(p, aTimeStamp)) +# define ISnapshot_GetTimeStamp(p, aTimeStamp) ((p)->lpVtbl->GetTimeStamp(p, aTimeStamp)) +# define ISnapshot_get_Online(p, aOnline) ((p)->lpVtbl->GetOnline(p, aOnline)) +# define ISnapshot_GetOnline(p, aOnline) ((p)->lpVtbl->GetOnline(p, aOnline)) +# define ISnapshot_get_Machine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define ISnapshot_GetMachine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define ISnapshot_get_Parent(p, aParent) ((p)->lpVtbl->GetParent(p, aParent)) +# define ISnapshot_GetParent(p, aParent) ((p)->lpVtbl->GetParent(p, aParent)) +# define ISnapshot_get_Children(p, aChildren) ((p)->lpVtbl->GetChildren(p, aChildren)) +# define ISnapshot_GetChildren(p, aChildren) ((p)->lpVtbl->GetChildren(p, aChildren)) +# define ISnapshot_get_ChildrenCount(p, aChildrenCount) ((p)->lpVtbl->GetChildrenCount(p, aChildrenCount)) +# define ISnapshot_GetChildrenCount(p, aChildrenCount) ((p)->lpVtbl->GetChildrenCount(p, aChildrenCount)) +# endif /* VBOX_WITH_GLUE */ + +interface ISnapshot +{ +# ifndef VBOX_WITH_GLUE + struct ISnapshot_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISnapshotVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISnapshot declaration */ + + +/* Start of struct IMediumAttachment declaration */ +# define IMEDIUMATTACHMENT_IID_STR "8d095cb0-0126-43e0-b05d-326e74abb356" +# define IMEDIUMATTACHMENT_IID { \ + 0x8d095cb0, 0x0126, 0x43e0, \ + { 0xb0, 0x5d, 0x32, 0x6e, 0x74, 0xab, 0xb3, 0x56 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMediumAttachment); +# ifndef VBOX_WITH_GLUE +struct IMediumAttachment_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMachine)(IMediumAttachment *pThis, IMachine * *machine); + + nsresult (*GetMedium)(IMediumAttachment *pThis, IMedium * *medium); + + nsresult (*GetController)(IMediumAttachment *pThis, PRUnichar * *controller); + + nsresult (*GetPort)(IMediumAttachment *pThis, PRInt32 *port); + + nsresult (*GetDevice)(IMediumAttachment *pThis, PRInt32 *device); + + nsresult (*GetType)(IMediumAttachment *pThis, PRUint32 *type); + + nsresult (*GetPassthrough)(IMediumAttachment *pThis, PRBool *passthrough); + + nsresult (*GetTemporaryEject)(IMediumAttachment *pThis, PRBool *temporaryEject); + + nsresult (*GetIsEjected)(IMediumAttachment *pThis, PRBool *isEjected); + + nsresult (*GetNonRotational)(IMediumAttachment *pThis, PRBool *nonRotational); + + nsresult (*GetDiscard)(IMediumAttachment *pThis, PRBool *discard); + + nsresult (*GetHotPluggable)(IMediumAttachment *pThis, PRBool *hotPluggable); + + nsresult (*GetBandwidthGroup)(IMediumAttachment *pThis, IBandwidthGroup * *bandwidthGroup); + + nsresult (*GetInternalAndReservedAttribute1IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumAttachmentVtbl +{ + nsresult (*QueryInterface)(IMediumAttachment *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMediumAttachment *pThis); + nsrefcnt (*Release)(IMediumAttachment *pThis); + nsresult (*GetMachine)(IMediumAttachment *pThis, IMachine * *machine); + + nsresult (*GetMedium)(IMediumAttachment *pThis, IMedium * *medium); + + nsresult (*GetController)(IMediumAttachment *pThis, PRUnichar * *controller); + + nsresult (*GetPort)(IMediumAttachment *pThis, PRInt32 *port); + + nsresult (*GetDevice)(IMediumAttachment *pThis, PRInt32 *device); + + nsresult (*GetType)(IMediumAttachment *pThis, PRUint32 *type); + + nsresult (*GetPassthrough)(IMediumAttachment *pThis, PRBool *passthrough); + + nsresult (*GetTemporaryEject)(IMediumAttachment *pThis, PRBool *temporaryEject); + + nsresult (*GetIsEjected)(IMediumAttachment *pThis, PRBool *isEjected); + + nsresult (*GetNonRotational)(IMediumAttachment *pThis, PRBool *nonRotational); + + nsresult (*GetDiscard)(IMediumAttachment *pThis, PRBool *discard); + + nsresult (*GetHotPluggable)(IMediumAttachment *pThis, PRBool *hotPluggable); + + nsresult (*GetBandwidthGroup)(IMediumAttachment *pThis, IBandwidthGroup * *bandwidthGroup); + + nsresult (*GetInternalAndReservedAttribute1IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMediumAttachment)(IMediumAttachment *pThis, PRUint32 *reserved); + +}; +# define IMediumAttachment_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMediumAttachment_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMediumAttachment_Release(p) ((p)->lpVtbl->Release(p)) +# define IMediumAttachment_get_Machine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define IMediumAttachment_GetMachine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define IMediumAttachment_get_Medium(p, aMedium) ((p)->lpVtbl->GetMedium(p, aMedium)) +# define IMediumAttachment_GetMedium(p, aMedium) ((p)->lpVtbl->GetMedium(p, aMedium)) +# define IMediumAttachment_get_Controller(p, aController) ((p)->lpVtbl->GetController(p, aController)) +# define IMediumAttachment_GetController(p, aController) ((p)->lpVtbl->GetController(p, aController)) +# define IMediumAttachment_get_Port(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IMediumAttachment_GetPort(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IMediumAttachment_get_Device(p, aDevice) ((p)->lpVtbl->GetDevice(p, aDevice)) +# define IMediumAttachment_GetDevice(p, aDevice) ((p)->lpVtbl->GetDevice(p, aDevice)) +# define IMediumAttachment_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumAttachment_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumAttachment_get_Passthrough(p, aPassthrough) ((p)->lpVtbl->GetPassthrough(p, aPassthrough)) +# define IMediumAttachment_GetPassthrough(p, aPassthrough) ((p)->lpVtbl->GetPassthrough(p, aPassthrough)) +# define IMediumAttachment_get_TemporaryEject(p, aTemporaryEject) ((p)->lpVtbl->GetTemporaryEject(p, aTemporaryEject)) +# define IMediumAttachment_GetTemporaryEject(p, aTemporaryEject) ((p)->lpVtbl->GetTemporaryEject(p, aTemporaryEject)) +# define IMediumAttachment_get_IsEjected(p, aIsEjected) ((p)->lpVtbl->GetIsEjected(p, aIsEjected)) +# define IMediumAttachment_GetIsEjected(p, aIsEjected) ((p)->lpVtbl->GetIsEjected(p, aIsEjected)) +# define IMediumAttachment_get_NonRotational(p, aNonRotational) ((p)->lpVtbl->GetNonRotational(p, aNonRotational)) +# define IMediumAttachment_GetNonRotational(p, aNonRotational) ((p)->lpVtbl->GetNonRotational(p, aNonRotational)) +# define IMediumAttachment_get_Discard(p, aDiscard) ((p)->lpVtbl->GetDiscard(p, aDiscard)) +# define IMediumAttachment_GetDiscard(p, aDiscard) ((p)->lpVtbl->GetDiscard(p, aDiscard)) +# define IMediumAttachment_get_HotPluggable(p, aHotPluggable) ((p)->lpVtbl->GetHotPluggable(p, aHotPluggable)) +# define IMediumAttachment_GetHotPluggable(p, aHotPluggable) ((p)->lpVtbl->GetHotPluggable(p, aHotPluggable)) +# define IMediumAttachment_get_BandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aBandwidthGroup)) +# define IMediumAttachment_GetBandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aBandwidthGroup)) +# endif /* VBOX_WITH_GLUE */ + +interface IMediumAttachment +{ +# ifndef VBOX_WITH_GLUE + struct IMediumAttachment_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumAttachmentVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMediumAttachment declaration */ + + +/* Start of struct IMedium declaration */ +# define IMEDIUM_IID_STR "ad47ad09-787b-44ab-b343-a082a3f2dfb1" +# define IMEDIUM_IID { \ + 0xad47ad09, 0x787b, 0x44ab, \ + { 0xb3, 0x43, 0xa0, 0x82, 0xa3, 0xf2, 0xdf, 0xb1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMedium); +# ifndef VBOX_WITH_GLUE +struct IMedium_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetId)(IMedium *pThis, PRUnichar * *id); + + nsresult (*GetDescription)(IMedium *pThis, PRUnichar * *description); + nsresult (*SetDescription)(IMedium *pThis, PRUnichar * description); + + nsresult (*GetState)(IMedium *pThis, PRUint32 *state); + + nsresult (*GetVariant)(IMedium *pThis, PRUint32 *variantSize, PRUint32 **variant); + + nsresult (*GetLocation)(IMedium *pThis, PRUnichar * *location); + nsresult (*SetLocation)(IMedium *pThis, PRUnichar * location); + + nsresult (*GetName)(IMedium *pThis, PRUnichar * *name); + + nsresult (*GetDeviceType)(IMedium *pThis, PRUint32 *deviceType); + + nsresult (*GetHostDrive)(IMedium *pThis, PRBool *hostDrive); + + nsresult (*GetSize)(IMedium *pThis, PRInt64 *size); + + nsresult (*GetFormat)(IMedium *pThis, PRUnichar * *format); + + nsresult (*GetMediumFormat)(IMedium *pThis, IMediumFormat * *mediumFormat); + + nsresult (*GetType)(IMedium *pThis, PRUint32 *type); + nsresult (*SetType)(IMedium *pThis, PRUint32 type); + + nsresult (*GetAllowedTypes)(IMedium *pThis, PRUint32 *allowedTypesSize, PRUint32 **allowedTypes); + + nsresult (*GetParent)(IMedium *pThis, IMedium * *parent); + + nsresult (*GetChildren)(IMedium *pThis, PRUint32 *childrenSize, IMedium * **children); + + nsresult (*GetBase)(IMedium *pThis, IMedium * *base); + + nsresult (*GetReadOnly)(IMedium *pThis, PRBool *readOnly); + + nsresult (*GetLogicalSize)(IMedium *pThis, PRInt64 *logicalSize); + + nsresult (*GetAutoReset)(IMedium *pThis, PRBool *autoReset); + nsresult (*SetAutoReset)(IMedium *pThis, PRBool autoReset); + + nsresult (*GetLastAccessError)(IMedium *pThis, PRUnichar * *lastAccessError); + + nsresult (*GetMachineIds)(IMedium *pThis, PRUint32 *machineIdsSize, PRUnichar * **machineIds); + + nsresult (*GetInternalAndReservedAttribute1IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*SetIds)( + IMedium *pThis, + PRBool setImageId, + PRUnichar * imageId, + PRBool setParentId, + PRUnichar * parentId + ); + + nsresult (*RefreshState)( + IMedium *pThis, + PRUint32 * state + ); + + nsresult (*GetSnapshotIds)( + IMedium *pThis, + PRUnichar * machineId, + PRUint32 *snapshotIdsSize, + PRUnichar *** snapshotIds + ); + + nsresult (*LockRead)( + IMedium *pThis, + IToken * * token + ); + + nsresult (*LockWrite)( + IMedium *pThis, + IToken * * token + ); + + nsresult (*Close)(IMedium *pThis ); + + nsresult (*GetProperty)( + IMedium *pThis, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*SetProperty)( + IMedium *pThis, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*GetProperties)( + IMedium *pThis, + PRUnichar * names, + PRUint32 *returnNamesSize, + PRUnichar *** returnNames, + PRUint32 *returnValuesSize, + PRUnichar *** returnValues + ); + + nsresult (*SetProperties)( + IMedium *pThis, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*CreateBaseStorage)( + IMedium *pThis, + PRInt64 logicalSize, + PRUint32 variantSize, + PRUint32* variant, + IProgress * * progress + ); + + nsresult (*DeleteStorage)( + IMedium *pThis, + IProgress * * progress + ); + + nsresult (*CreateDiffStorage)( + IMedium *pThis, + IMedium * target, + PRUint32 variantSize, + PRUint32* variant, + IProgress * * progress + ); + + nsresult (*MergeTo)( + IMedium *pThis, + IMedium * target, + IProgress * * progress + ); + + nsresult (*CloneTo)( + IMedium *pThis, + IMedium * target, + PRUint32 variantSize, + PRUint32* variant, + IMedium * parent, + IProgress * * progress + ); + + nsresult (*CloneToBase)( + IMedium *pThis, + IMedium * target, + PRUint32 variantSize, + PRUint32* variant, + IProgress * * progress + ); + + nsresult (*MoveTo)( + IMedium *pThis, + PRUnichar * location, + IProgress * * progress + ); + + nsresult (*Compact)( + IMedium *pThis, + IProgress * * progress + ); + + nsresult (*Resize)( + IMedium *pThis, + PRInt64 logicalSize, + IProgress * * progress + ); + + nsresult (*Reset)( + IMedium *pThis, + IProgress * * progress + ); + + nsresult (*ChangeEncryption)( + IMedium *pThis, + PRUnichar * currentPassword, + PRUnichar * cipher, + PRUnichar * newPassword, + PRUnichar * newPasswordId, + IProgress * * progress + ); + + nsresult (*GetEncryptionSettings)( + IMedium *pThis, + PRUnichar * * cipher, + PRUnichar * * passwordId + ); + + nsresult (*CheckEncryptionPassword)( + IMedium *pThis, + PRUnichar * password + ); + + nsresult (*OpenForIO)( + IMedium *pThis, + PRBool writable, + PRUnichar * password, + IMediumIO * * mediumIO + ); + + nsresult (*InternalAndReservedMethod1IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod2IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod3IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod4IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod5IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod6IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod7IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod8IMedium)(IMedium *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumVtbl +{ + nsresult (*QueryInterface)(IMedium *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMedium *pThis); + nsrefcnt (*Release)(IMedium *pThis); + nsresult (*GetId)(IMedium *pThis, PRUnichar * *id); + + nsresult (*GetDescription)(IMedium *pThis, PRUnichar * *description); + nsresult (*SetDescription)(IMedium *pThis, PRUnichar * description); + + nsresult (*GetState)(IMedium *pThis, PRUint32 *state); + + nsresult (*GetVariant)(IMedium *pThis, PRUint32 *variantSize, PRUint32 **variant); + + nsresult (*GetLocation)(IMedium *pThis, PRUnichar * *location); + nsresult (*SetLocation)(IMedium *pThis, PRUnichar * location); + + nsresult (*GetName)(IMedium *pThis, PRUnichar * *name); + + nsresult (*GetDeviceType)(IMedium *pThis, PRUint32 *deviceType); + + nsresult (*GetHostDrive)(IMedium *pThis, PRBool *hostDrive); + + nsresult (*GetSize)(IMedium *pThis, PRInt64 *size); + + nsresult (*GetFormat)(IMedium *pThis, PRUnichar * *format); + + nsresult (*GetMediumFormat)(IMedium *pThis, IMediumFormat * *mediumFormat); + + nsresult (*GetType)(IMedium *pThis, PRUint32 *type); + nsresult (*SetType)(IMedium *pThis, PRUint32 type); + + nsresult (*GetAllowedTypes)(IMedium *pThis, PRUint32 *allowedTypesSize, PRUint32 **allowedTypes); + + nsresult (*GetParent)(IMedium *pThis, IMedium * *parent); + + nsresult (*GetChildren)(IMedium *pThis, PRUint32 *childrenSize, IMedium * **children); + + nsresult (*GetBase)(IMedium *pThis, IMedium * *base); + + nsresult (*GetReadOnly)(IMedium *pThis, PRBool *readOnly); + + nsresult (*GetLogicalSize)(IMedium *pThis, PRInt64 *logicalSize); + + nsresult (*GetAutoReset)(IMedium *pThis, PRBool *autoReset); + nsresult (*SetAutoReset)(IMedium *pThis, PRBool autoReset); + + nsresult (*GetLastAccessError)(IMedium *pThis, PRUnichar * *lastAccessError); + + nsresult (*GetMachineIds)(IMedium *pThis, PRUint32 *machineIdsSize, PRUnichar * **machineIds); + + nsresult (*GetInternalAndReservedAttribute1IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IMedium)(IMedium *pThis, PRUint32 *reserved); + + nsresult (*SetIds)( + IMedium *pThis, + PRBool setImageId, + PRUnichar * imageId, + PRBool setParentId, + PRUnichar * parentId + ); + + nsresult (*RefreshState)( + IMedium *pThis, + PRUint32 * state + ); + + nsresult (*GetSnapshotIds)( + IMedium *pThis, + PRUnichar * machineId, + PRUint32 *snapshotIdsSize, + PRUnichar *** snapshotIds + ); + + nsresult (*LockRead)( + IMedium *pThis, + IToken * * token + ); + + nsresult (*LockWrite)( + IMedium *pThis, + IToken * * token + ); + + nsresult (*Close)(IMedium *pThis ); + + nsresult (*GetProperty)( + IMedium *pThis, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*SetProperty)( + IMedium *pThis, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*GetProperties)( + IMedium *pThis, + PRUnichar * names, + PRUint32 *returnNamesSize, + PRUnichar *** returnNames, + PRUint32 *returnValuesSize, + PRUnichar *** returnValues + ); + + nsresult (*SetProperties)( + IMedium *pThis, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*CreateBaseStorage)( + IMedium *pThis, + PRInt64 logicalSize, + PRUint32 variantSize, + PRUint32* variant, + IProgress * * progress + ); + + nsresult (*DeleteStorage)( + IMedium *pThis, + IProgress * * progress + ); + + nsresult (*CreateDiffStorage)( + IMedium *pThis, + IMedium * target, + PRUint32 variantSize, + PRUint32* variant, + IProgress * * progress + ); + + nsresult (*MergeTo)( + IMedium *pThis, + IMedium * target, + IProgress * * progress + ); + + nsresult (*CloneTo)( + IMedium *pThis, + IMedium * target, + PRUint32 variantSize, + PRUint32* variant, + IMedium * parent, + IProgress * * progress + ); + + nsresult (*CloneToBase)( + IMedium *pThis, + IMedium * target, + PRUint32 variantSize, + PRUint32* variant, + IProgress * * progress + ); + + nsresult (*MoveTo)( + IMedium *pThis, + PRUnichar * location, + IProgress * * progress + ); + + nsresult (*Compact)( + IMedium *pThis, + IProgress * * progress + ); + + nsresult (*Resize)( + IMedium *pThis, + PRInt64 logicalSize, + IProgress * * progress + ); + + nsresult (*Reset)( + IMedium *pThis, + IProgress * * progress + ); + + nsresult (*ChangeEncryption)( + IMedium *pThis, + PRUnichar * currentPassword, + PRUnichar * cipher, + PRUnichar * newPassword, + PRUnichar * newPasswordId, + IProgress * * progress + ); + + nsresult (*GetEncryptionSettings)( + IMedium *pThis, + PRUnichar * * cipher, + PRUnichar * * passwordId + ); + + nsresult (*CheckEncryptionPassword)( + IMedium *pThis, + PRUnichar * password + ); + + nsresult (*OpenForIO)( + IMedium *pThis, + PRBool writable, + PRUnichar * password, + IMediumIO * * mediumIO + ); + + nsresult (*InternalAndReservedMethod1IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod2IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod3IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod4IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod5IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod6IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod7IMedium)(IMedium *pThis); + + nsresult (*InternalAndReservedMethod8IMedium)(IMedium *pThis); + +}; +# define IMedium_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMedium_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMedium_Release(p) ((p)->lpVtbl->Release(p)) +# define IMedium_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IMedium_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IMedium_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IMedium_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IMedium_put_Description(p, aDescription) ((p)->lpVtbl->SetDescription(p, aDescription)) +# define IMedium_SetDescription(p, aDescription) ((p)->lpVtbl->SetDescription(p, aDescription)) +# define IMedium_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IMedium_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IMedium_get_Variant(p, aVariant) ((p)->lpVtbl->GetVariant(p, aVariant)) +# define IMedium_GetVariant(p, aVariant) ((p)->lpVtbl->GetVariant(p, aVariant)) +# define IMedium_get_Location(p, aLocation) ((p)->lpVtbl->GetLocation(p, aLocation)) +# define IMedium_GetLocation(p, aLocation) ((p)->lpVtbl->GetLocation(p, aLocation)) +# define IMedium_put_Location(p, aLocation) ((p)->lpVtbl->SetLocation(p, aLocation)) +# define IMedium_SetLocation(p, aLocation) ((p)->lpVtbl->SetLocation(p, aLocation)) +# define IMedium_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IMedium_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IMedium_get_DeviceType(p, aDeviceType) ((p)->lpVtbl->GetDeviceType(p, aDeviceType)) +# define IMedium_GetDeviceType(p, aDeviceType) ((p)->lpVtbl->GetDeviceType(p, aDeviceType)) +# define IMedium_get_HostDrive(p, aHostDrive) ((p)->lpVtbl->GetHostDrive(p, aHostDrive)) +# define IMedium_GetHostDrive(p, aHostDrive) ((p)->lpVtbl->GetHostDrive(p, aHostDrive)) +# define IMedium_get_Size(p, aSize) ((p)->lpVtbl->GetSize(p, aSize)) +# define IMedium_GetSize(p, aSize) ((p)->lpVtbl->GetSize(p, aSize)) +# define IMedium_get_Format(p, aFormat) ((p)->lpVtbl->GetFormat(p, aFormat)) +# define IMedium_GetFormat(p, aFormat) ((p)->lpVtbl->GetFormat(p, aFormat)) +# define IMedium_get_MediumFormat(p, aMediumFormat) ((p)->lpVtbl->GetMediumFormat(p, aMediumFormat)) +# define IMedium_GetMediumFormat(p, aMediumFormat) ((p)->lpVtbl->GetMediumFormat(p, aMediumFormat)) +# define IMedium_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMedium_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMedium_put_Type(p, aType) ((p)->lpVtbl->SetType(p, aType)) +# define IMedium_SetType(p, aType) ((p)->lpVtbl->SetType(p, aType)) +# define IMedium_get_AllowedTypes(p, aAllowedTypes) ((p)->lpVtbl->GetAllowedTypes(p, aAllowedTypes)) +# define IMedium_GetAllowedTypes(p, aAllowedTypes) ((p)->lpVtbl->GetAllowedTypes(p, aAllowedTypes)) +# define IMedium_get_Parent(p, aParent) ((p)->lpVtbl->GetParent(p, aParent)) +# define IMedium_GetParent(p, aParent) ((p)->lpVtbl->GetParent(p, aParent)) +# define IMedium_get_Children(p, aChildren) ((p)->lpVtbl->GetChildren(p, aChildren)) +# define IMedium_GetChildren(p, aChildren) ((p)->lpVtbl->GetChildren(p, aChildren)) +# define IMedium_get_Base(p, aBase) ((p)->lpVtbl->GetBase(p, aBase)) +# define IMedium_GetBase(p, aBase) ((p)->lpVtbl->GetBase(p, aBase)) +# define IMedium_get_ReadOnly(p, aReadOnly) ((p)->lpVtbl->GetReadOnly(p, aReadOnly)) +# define IMedium_GetReadOnly(p, aReadOnly) ((p)->lpVtbl->GetReadOnly(p, aReadOnly)) +# define IMedium_get_LogicalSize(p, aLogicalSize) ((p)->lpVtbl->GetLogicalSize(p, aLogicalSize)) +# define IMedium_GetLogicalSize(p, aLogicalSize) ((p)->lpVtbl->GetLogicalSize(p, aLogicalSize)) +# define IMedium_get_AutoReset(p, aAutoReset) ((p)->lpVtbl->GetAutoReset(p, aAutoReset)) +# define IMedium_GetAutoReset(p, aAutoReset) ((p)->lpVtbl->GetAutoReset(p, aAutoReset)) +# define IMedium_put_AutoReset(p, aAutoReset) ((p)->lpVtbl->SetAutoReset(p, aAutoReset)) +# define IMedium_SetAutoReset(p, aAutoReset) ((p)->lpVtbl->SetAutoReset(p, aAutoReset)) +# define IMedium_get_LastAccessError(p, aLastAccessError) ((p)->lpVtbl->GetLastAccessError(p, aLastAccessError)) +# define IMedium_GetLastAccessError(p, aLastAccessError) ((p)->lpVtbl->GetLastAccessError(p, aLastAccessError)) +# define IMedium_get_MachineIds(p, aMachineIds) ((p)->lpVtbl->GetMachineIds(p, aMachineIds)) +# define IMedium_GetMachineIds(p, aMachineIds) ((p)->lpVtbl->GetMachineIds(p, aMachineIds)) +# define IMedium_SetIds(p, aSetImageId, aImageId, aSetParentId, aParentId) ((p)->lpVtbl->SetIds(p, aSetImageId, aImageId, aSetParentId, aParentId)) +# define IMedium_RefreshState(p, aState) ((p)->lpVtbl->RefreshState(p, aState)) +# define IMedium_GetSnapshotIds(p, aMachineId, aSnapshotIds) ((p)->lpVtbl->GetSnapshotIds(p, aMachineId, aSnapshotIds)) +# define IMedium_LockRead(p, aToken) ((p)->lpVtbl->LockRead(p, aToken)) +# define IMedium_LockWrite(p, aToken) ((p)->lpVtbl->LockWrite(p, aToken)) +# define IMedium_Close(p) ((p)->lpVtbl->Close(p)) +# define IMedium_GetProperty(p, aName, aValue) ((p)->lpVtbl->GetProperty(p, aName, aValue)) +# define IMedium_SetProperty(p, aName, aValue) ((p)->lpVtbl->SetProperty(p, aName, aValue)) +# define IMedium_GetProperties(p, aNames, aReturnNames, aReturnValues) ((p)->lpVtbl->GetProperties(p, aNames, aReturnNames, aReturnValues)) +# define IMedium_SetProperties(p, aNames, aValues) ((p)->lpVtbl->SetProperties(p, aNames, aValues)) +# define IMedium_CreateBaseStorage(p, aLogicalSize, aVariant, aProgress) ((p)->lpVtbl->CreateBaseStorage(p, aLogicalSize, aVariant, aProgress)) +# define IMedium_DeleteStorage(p, aProgress) ((p)->lpVtbl->DeleteStorage(p, aProgress)) +# define IMedium_CreateDiffStorage(p, aTarget, aVariant, aProgress) ((p)->lpVtbl->CreateDiffStorage(p, aTarget, aVariant, aProgress)) +# define IMedium_MergeTo(p, aTarget, aProgress) ((p)->lpVtbl->MergeTo(p, aTarget, aProgress)) +# define IMedium_CloneTo(p, aTarget, aVariant, aParent, aProgress) ((p)->lpVtbl->CloneTo(p, aTarget, aVariant, aParent, aProgress)) +# define IMedium_CloneToBase(p, aTarget, aVariant, aProgress) ((p)->lpVtbl->CloneToBase(p, aTarget, aVariant, aProgress)) +# define IMedium_MoveTo(p, aLocation, aProgress) ((p)->lpVtbl->MoveTo(p, aLocation, aProgress)) +# define IMedium_Compact(p, aProgress) ((p)->lpVtbl->Compact(p, aProgress)) +# define IMedium_Resize(p, aLogicalSize, aProgress) ((p)->lpVtbl->Resize(p, aLogicalSize, aProgress)) +# define IMedium_Reset(p, aProgress) ((p)->lpVtbl->Reset(p, aProgress)) +# define IMedium_ChangeEncryption(p, aCurrentPassword, aCipher, aNewPassword, aNewPasswordId, aProgress) ((p)->lpVtbl->ChangeEncryption(p, aCurrentPassword, aCipher, aNewPassword, aNewPasswordId, aProgress)) +# define IMedium_GetEncryptionSettings(p, aCipher, aPasswordId) ((p)->lpVtbl->GetEncryptionSettings(p, aCipher, aPasswordId)) +# define IMedium_CheckEncryptionPassword(p, aPassword) ((p)->lpVtbl->CheckEncryptionPassword(p, aPassword)) +# define IMedium_OpenForIO(p, aWritable, aPassword, aMediumIO) ((p)->lpVtbl->OpenForIO(p, aWritable, aPassword, aMediumIO)) +# endif /* VBOX_WITH_GLUE */ + +interface IMedium +{ +# ifndef VBOX_WITH_GLUE + struct IMedium_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMedium declaration */ + + +/* Start of struct IMediumFormat declaration */ +# define IMEDIUMFORMAT_IID_STR "11be93c7-a862-4dc9-8c89-bf4ba74a886a" +# define IMEDIUMFORMAT_IID { \ + 0x11be93c7, 0xa862, 0x4dc9, \ + { 0x8c, 0x89, 0xbf, 0x4b, 0xa7, 0x4a, 0x88, 0x6a } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMediumFormat); +# ifndef VBOX_WITH_GLUE +struct IMediumFormat_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetId)(IMediumFormat *pThis, PRUnichar * *id); + + nsresult (*GetName)(IMediumFormat *pThis, PRUnichar * *name); + + nsresult (*GetCapabilities)(IMediumFormat *pThis, PRUint32 *capabilitiesSize, PRUint32 **capabilities); + + nsresult (*GetInternalAndReservedAttribute1IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*DescribeFileExtensions)( + IMediumFormat *pThis, + PRUint32 *extensionsSize, + PRUnichar *** extensions, + PRUint32 *typesSize, + PRUint32** types + ); + + nsresult (*DescribeProperties)( + IMediumFormat *pThis, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *descriptionsSize, + PRUnichar *** descriptions, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *flagsSize, + PRUint32** flags, + PRUint32 *defaultsSize, + PRUnichar *** defaults + ); + + nsresult (*InternalAndReservedMethod1IMediumFormat)(IMediumFormat *pThis); + + nsresult (*InternalAndReservedMethod2IMediumFormat)(IMediumFormat *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumFormatVtbl +{ + nsresult (*QueryInterface)(IMediumFormat *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMediumFormat *pThis); + nsrefcnt (*Release)(IMediumFormat *pThis); + nsresult (*GetId)(IMediumFormat *pThis, PRUnichar * *id); + + nsresult (*GetName)(IMediumFormat *pThis, PRUnichar * *name); + + nsresult (*GetCapabilities)(IMediumFormat *pThis, PRUint32 *capabilitiesSize, PRUint32 **capabilities); + + nsresult (*GetInternalAndReservedAttribute1IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMediumFormat)(IMediumFormat *pThis, PRUint32 *reserved); + + nsresult (*DescribeFileExtensions)( + IMediumFormat *pThis, + PRUint32 *extensionsSize, + PRUnichar *** extensions, + PRUint32 *typesSize, + PRUint32** types + ); + + nsresult (*DescribeProperties)( + IMediumFormat *pThis, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *descriptionsSize, + PRUnichar *** descriptions, + PRUint32 *typesSize, + PRUint32** types, + PRUint32 *flagsSize, + PRUint32** flags, + PRUint32 *defaultsSize, + PRUnichar *** defaults + ); + + nsresult (*InternalAndReservedMethod1IMediumFormat)(IMediumFormat *pThis); + + nsresult (*InternalAndReservedMethod2IMediumFormat)(IMediumFormat *pThis); + +}; +# define IMediumFormat_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMediumFormat_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMediumFormat_Release(p) ((p)->lpVtbl->Release(p)) +# define IMediumFormat_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IMediumFormat_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IMediumFormat_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IMediumFormat_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IMediumFormat_get_Capabilities(p, aCapabilities) ((p)->lpVtbl->GetCapabilities(p, aCapabilities)) +# define IMediumFormat_GetCapabilities(p, aCapabilities) ((p)->lpVtbl->GetCapabilities(p, aCapabilities)) +# define IMediumFormat_DescribeFileExtensions(p, aExtensions, aTypes) ((p)->lpVtbl->DescribeFileExtensions(p, aExtensions, aTypes)) +# define IMediumFormat_DescribeProperties(p, aNames, aDescriptions, aTypes, aFlags, aDefaults) ((p)->lpVtbl->DescribeProperties(p, aNames, aDescriptions, aTypes, aFlags, aDefaults)) +# endif /* VBOX_WITH_GLUE */ + +interface IMediumFormat +{ +# ifndef VBOX_WITH_GLUE + struct IMediumFormat_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumFormatVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMediumFormat declaration */ + + +/* Start of struct IDataStream declaration */ +# define IDATASTREAM_IID_STR "a338ed20-58d9-43ae-8b03-c1fd7088ef15" +# define IDATASTREAM_IID { \ + 0xa338ed20, 0x58d9, 0x43ae, \ + { 0x8b, 0x03, 0xc1, 0xfd, 0x70, 0x88, 0xef, 0x15 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDataStream); +# ifndef VBOX_WITH_GLUE +struct IDataStream_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetReadSize)(IDataStream *pThis, PRUint32 *readSize); + + nsresult (*GetInternalAndReservedAttribute1IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*Read)( + IDataStream *pThis, + PRUint32 size, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*InternalAndReservedMethod1IDataStream)(IDataStream *pThis); + + nsresult (*InternalAndReservedMethod2IDataStream)(IDataStream *pThis); + + nsresult (*InternalAndReservedMethod3IDataStream)(IDataStream *pThis); + + nsresult (*InternalAndReservedMethod4IDataStream)(IDataStream *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDataStreamVtbl +{ + nsresult (*QueryInterface)(IDataStream *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDataStream *pThis); + nsrefcnt (*Release)(IDataStream *pThis); + nsresult (*GetReadSize)(IDataStream *pThis, PRUint32 *readSize); + + nsresult (*GetInternalAndReservedAttribute1IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDataStream)(IDataStream *pThis, PRUint32 *reserved); + + nsresult (*Read)( + IDataStream *pThis, + PRUint32 size, + PRUint32 timeoutMS, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*InternalAndReservedMethod1IDataStream)(IDataStream *pThis); + + nsresult (*InternalAndReservedMethod2IDataStream)(IDataStream *pThis); + + nsresult (*InternalAndReservedMethod3IDataStream)(IDataStream *pThis); + + nsresult (*InternalAndReservedMethod4IDataStream)(IDataStream *pThis); + +}; +# define IDataStream_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDataStream_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDataStream_Release(p) ((p)->lpVtbl->Release(p)) +# define IDataStream_get_ReadSize(p, aReadSize) ((p)->lpVtbl->GetReadSize(p, aReadSize)) +# define IDataStream_GetReadSize(p, aReadSize) ((p)->lpVtbl->GetReadSize(p, aReadSize)) +# define IDataStream_Read(p, aSize, aTimeoutMS, aData) ((p)->lpVtbl->Read(p, aSize, aTimeoutMS, aData)) +# endif /* VBOX_WITH_GLUE */ + +interface IDataStream +{ +# ifndef VBOX_WITH_GLUE + struct IDataStream_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDataStreamVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDataStream declaration */ + + +/* Start of struct IMediumIO declaration */ +# define IMEDIUMIO_IID_STR "e4b301a9-5f86-4d65-ad1b-87ca284fb1c8" +# define IMEDIUMIO_IID { \ + 0xe4b301a9, 0x5f86, 0x4d65, \ + { 0xad, 0x1b, 0x87, 0xca, 0x28, 0x4f, 0xb1, 0xc8 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMediumIO); +# ifndef VBOX_WITH_GLUE +struct IMediumIO_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMedium)(IMediumIO *pThis, IMedium * *medium); + + nsresult (*GetWritable)(IMediumIO *pThis, PRBool *writable); + + nsresult (*GetExplorer)(IMediumIO *pThis, IVFSExplorer * *explorer); + + nsresult (*GetInternalAndReservedAttribute1IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*Read)( + IMediumIO *pThis, + PRInt64 offset, + PRUint32 size, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Write)( + IMediumIO *pThis, + PRInt64 offset, + PRUint32 dataSize, + PRUint8* data, + PRUint32 * written + ); + + nsresult (*FormatFAT)( + IMediumIO *pThis, + PRBool quick + ); + + nsresult (*InitializePartitionTable)( + IMediumIO *pThis, + PRUint32 format, + PRBool wholeDiskInOneEntry + ); + + nsresult (*ConvertToStream)( + IMediumIO *pThis, + PRUnichar * format, + PRUint32 variantSize, + PRUint32* variant, + PRUint32 bufferSize, + IDataStream * * stream, + IProgress * * progress + ); + + nsresult (*Close)(IMediumIO *pThis ); + + nsresult (*InternalAndReservedMethod1IMediumIO)(IMediumIO *pThis); + + nsresult (*InternalAndReservedMethod2IMediumIO)(IMediumIO *pThis); + + nsresult (*InternalAndReservedMethod3IMediumIO)(IMediumIO *pThis); + + nsresult (*InternalAndReservedMethod4IMediumIO)(IMediumIO *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumIOVtbl +{ + nsresult (*QueryInterface)(IMediumIO *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMediumIO *pThis); + nsrefcnt (*Release)(IMediumIO *pThis); + nsresult (*GetMedium)(IMediumIO *pThis, IMedium * *medium); + + nsresult (*GetWritable)(IMediumIO *pThis, PRBool *writable); + + nsresult (*GetExplorer)(IMediumIO *pThis, IVFSExplorer * *explorer); + + nsresult (*GetInternalAndReservedAttribute1IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMediumIO)(IMediumIO *pThis, PRUint32 *reserved); + + nsresult (*Read)( + IMediumIO *pThis, + PRInt64 offset, + PRUint32 size, + PRUint32 *dataSize, + PRUint8** data + ); + + nsresult (*Write)( + IMediumIO *pThis, + PRInt64 offset, + PRUint32 dataSize, + PRUint8* data, + PRUint32 * written + ); + + nsresult (*FormatFAT)( + IMediumIO *pThis, + PRBool quick + ); + + nsresult (*InitializePartitionTable)( + IMediumIO *pThis, + PRUint32 format, + PRBool wholeDiskInOneEntry + ); + + nsresult (*ConvertToStream)( + IMediumIO *pThis, + PRUnichar * format, + PRUint32 variantSize, + PRUint32* variant, + PRUint32 bufferSize, + IDataStream * * stream, + IProgress * * progress + ); + + nsresult (*Close)(IMediumIO *pThis ); + + nsresult (*InternalAndReservedMethod1IMediumIO)(IMediumIO *pThis); + + nsresult (*InternalAndReservedMethod2IMediumIO)(IMediumIO *pThis); + + nsresult (*InternalAndReservedMethod3IMediumIO)(IMediumIO *pThis); + + nsresult (*InternalAndReservedMethod4IMediumIO)(IMediumIO *pThis); + +}; +# define IMediumIO_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMediumIO_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMediumIO_Release(p) ((p)->lpVtbl->Release(p)) +# define IMediumIO_get_Medium(p, aMedium) ((p)->lpVtbl->GetMedium(p, aMedium)) +# define IMediumIO_GetMedium(p, aMedium) ((p)->lpVtbl->GetMedium(p, aMedium)) +# define IMediumIO_get_Writable(p, aWritable) ((p)->lpVtbl->GetWritable(p, aWritable)) +# define IMediumIO_GetWritable(p, aWritable) ((p)->lpVtbl->GetWritable(p, aWritable)) +# define IMediumIO_get_Explorer(p, aExplorer) ((p)->lpVtbl->GetExplorer(p, aExplorer)) +# define IMediumIO_GetExplorer(p, aExplorer) ((p)->lpVtbl->GetExplorer(p, aExplorer)) +# define IMediumIO_Read(p, aOffset, aSize, aData) ((p)->lpVtbl->Read(p, aOffset, aSize, aData)) +# define IMediumIO_Write(p, aOffset, aData, aWritten) ((p)->lpVtbl->Write(p, aOffset, aData, aWritten)) +# define IMediumIO_FormatFAT(p, aQuick) ((p)->lpVtbl->FormatFAT(p, aQuick)) +# define IMediumIO_InitializePartitionTable(p, aFormat, aWholeDiskInOneEntry) ((p)->lpVtbl->InitializePartitionTable(p, aFormat, aWholeDiskInOneEntry)) +# define IMediumIO_ConvertToStream(p, aFormat, aVariant, aBufferSize, aStream, aProgress) ((p)->lpVtbl->ConvertToStream(p, aFormat, aVariant, aBufferSize, aStream, aProgress)) +# define IMediumIO_Close(p) ((p)->lpVtbl->Close(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IMediumIO +{ +# ifndef VBOX_WITH_GLUE + struct IMediumIO_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumIOVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMediumIO declaration */ + + +/* Start of struct IToken declaration */ +# define ITOKEN_IID_STR "20479eaf-d8ed-44cf-85ac-c83a26c95a4d" +# define ITOKEN_IID { \ + 0x20479eaf, 0xd8ed, 0x44cf, \ + { 0x85, 0xac, 0xc8, 0x3a, 0x26, 0xc9, 0x5a, 0x4d } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IToken); +# ifndef VBOX_WITH_GLUE +struct IToken_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetInternalAndReservedAttribute1IToken)(IToken *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IToken)(IToken *pThis, PRUint32 *reserved); + + nsresult (*Abandon)(IToken *pThis ); + + nsresult (*Dummy)(IToken *pThis ); + + nsresult (*InternalAndReservedMethod1IToken)(IToken *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ITokenVtbl +{ + nsresult (*QueryInterface)(IToken *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IToken *pThis); + nsrefcnt (*Release)(IToken *pThis); + nsresult (*GetInternalAndReservedAttribute1IToken)(IToken *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IToken)(IToken *pThis, PRUint32 *reserved); + + nsresult (*Abandon)(IToken *pThis ); + + nsresult (*Dummy)(IToken *pThis ); + + nsresult (*InternalAndReservedMethod1IToken)(IToken *pThis); + +}; +# define IToken_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IToken_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IToken_Release(p) ((p)->lpVtbl->Release(p)) +# define IToken_Abandon(p) ((p)->lpVtbl->Abandon(p)) +# define IToken_Dummy(p) ((p)->lpVtbl->Dummy(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IToken +{ +# ifndef VBOX_WITH_GLUE + struct IToken_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ITokenVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IToken declaration */ + + +/* Start of struct IKeyboard declaration */ +# define IKEYBOARD_IID_STR "755e6bdf-1640-41f9-bd74-3ef5fd653250" +# define IKEYBOARD_IID { \ + 0x755e6bdf, 0x1640, 0x41f9, \ + { 0xbd, 0x74, 0x3e, 0xf5, 0xfd, 0x65, 0x32, 0x50 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IKeyboard); +# ifndef VBOX_WITH_GLUE +struct IKeyboard_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetKeyboardLEDs)(IKeyboard *pThis, PRUint32 *keyboardLEDsSize, PRUint32 **keyboardLEDs); + + nsresult (*GetEventSource)(IKeyboard *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*PutScancode)( + IKeyboard *pThis, + PRInt32 scancode + ); + + nsresult (*PutScancodes)( + IKeyboard *pThis, + PRUint32 scancodesSize, + PRInt32* scancodes, + PRUint32 * codesStored + ); + + nsresult (*PutCAD)(IKeyboard *pThis ); + + nsresult (*ReleaseKeys)(IKeyboard *pThis ); + + nsresult (*PutUsageCode)( + IKeyboard *pThis, + PRInt32 usageCode, + PRInt32 usagePage, + PRBool keyRelease + ); + + nsresult (*InternalAndReservedMethod1IKeyboard)(IKeyboard *pThis); + + nsresult (*InternalAndReservedMethod2IKeyboard)(IKeyboard *pThis); + + nsresult (*InternalAndReservedMethod3IKeyboard)(IKeyboard *pThis); + + nsresult (*InternalAndReservedMethod4IKeyboard)(IKeyboard *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IKeyboardVtbl +{ + nsresult (*QueryInterface)(IKeyboard *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IKeyboard *pThis); + nsrefcnt (*Release)(IKeyboard *pThis); + nsresult (*GetKeyboardLEDs)(IKeyboard *pThis, PRUint32 *keyboardLEDsSize, PRUint32 **keyboardLEDs); + + nsresult (*GetEventSource)(IKeyboard *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IKeyboard)(IKeyboard *pThis, PRUint32 *reserved); + + nsresult (*PutScancode)( + IKeyboard *pThis, + PRInt32 scancode + ); + + nsresult (*PutScancodes)( + IKeyboard *pThis, + PRUint32 scancodesSize, + PRInt32* scancodes, + PRUint32 * codesStored + ); + + nsresult (*PutCAD)(IKeyboard *pThis ); + + nsresult (*ReleaseKeys)(IKeyboard *pThis ); + + nsresult (*PutUsageCode)( + IKeyboard *pThis, + PRInt32 usageCode, + PRInt32 usagePage, + PRBool keyRelease + ); + + nsresult (*InternalAndReservedMethod1IKeyboard)(IKeyboard *pThis); + + nsresult (*InternalAndReservedMethod2IKeyboard)(IKeyboard *pThis); + + nsresult (*InternalAndReservedMethod3IKeyboard)(IKeyboard *pThis); + + nsresult (*InternalAndReservedMethod4IKeyboard)(IKeyboard *pThis); + +}; +# define IKeyboard_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IKeyboard_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IKeyboard_Release(p) ((p)->lpVtbl->Release(p)) +# define IKeyboard_get_KeyboardLEDs(p, aKeyboardLEDs) ((p)->lpVtbl->GetKeyboardLEDs(p, aKeyboardLEDs)) +# define IKeyboard_GetKeyboardLEDs(p, aKeyboardLEDs) ((p)->lpVtbl->GetKeyboardLEDs(p, aKeyboardLEDs)) +# define IKeyboard_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IKeyboard_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IKeyboard_PutScancode(p, aScancode) ((p)->lpVtbl->PutScancode(p, aScancode)) +# define IKeyboard_PutScancodes(p, aScancodes, aCodesStored) ((p)->lpVtbl->PutScancodes(p, aScancodes, aCodesStored)) +# define IKeyboard_PutCAD(p) ((p)->lpVtbl->PutCAD(p)) +# define IKeyboard_ReleaseKeys(p) ((p)->lpVtbl->ReleaseKeys(p)) +# define IKeyboard_PutUsageCode(p, aUsageCode, aUsagePage, aKeyRelease) ((p)->lpVtbl->PutUsageCode(p, aUsageCode, aUsagePage, aKeyRelease)) +# endif /* VBOX_WITH_GLUE */ + +interface IKeyboard +{ +# ifndef VBOX_WITH_GLUE + struct IKeyboard_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IKeyboardVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IKeyboard declaration */ + + +/* Start of struct IMousePointerShape declaration */ +# define IMOUSEPOINTERSHAPE_IID_STR "1e775ea3-9070-4f9c-b0d5-53054496dbe0" +# define IMOUSEPOINTERSHAPE_IID { \ + 0x1e775ea3, 0x9070, 0x4f9c, \ + { 0xb0, 0xd5, 0x53, 0x05, 0x44, 0x96, 0xdb, 0xe0 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMousePointerShape); +# ifndef VBOX_WITH_GLUE +struct IMousePointerShape_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetVisible)(IMousePointerShape *pThis, PRBool *visible); + + nsresult (*GetAlpha)(IMousePointerShape *pThis, PRBool *alpha); + + nsresult (*GetHotX)(IMousePointerShape *pThis, PRUint32 *hotX); + + nsresult (*GetHotY)(IMousePointerShape *pThis, PRUint32 *hotY); + + nsresult (*GetWidth)(IMousePointerShape *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IMousePointerShape *pThis, PRUint32 *height); + + nsresult (*GetShape)(IMousePointerShape *pThis, PRUint32 *shapeSize, PRUint8 **shape); + + nsresult (*GetInternalAndReservedAttribute1IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMousePointerShapeVtbl +{ + nsresult (*QueryInterface)(IMousePointerShape *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMousePointerShape *pThis); + nsrefcnt (*Release)(IMousePointerShape *pThis); + nsresult (*GetVisible)(IMousePointerShape *pThis, PRBool *visible); + + nsresult (*GetAlpha)(IMousePointerShape *pThis, PRBool *alpha); + + nsresult (*GetHotX)(IMousePointerShape *pThis, PRUint32 *hotX); + + nsresult (*GetHotY)(IMousePointerShape *pThis, PRUint32 *hotY); + + nsresult (*GetWidth)(IMousePointerShape *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IMousePointerShape *pThis, PRUint32 *height); + + nsresult (*GetShape)(IMousePointerShape *pThis, PRUint32 *shapeSize, PRUint8 **shape); + + nsresult (*GetInternalAndReservedAttribute1IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMousePointerShape)(IMousePointerShape *pThis, PRUint32 *reserved); + +}; +# define IMousePointerShape_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMousePointerShape_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMousePointerShape_Release(p) ((p)->lpVtbl->Release(p)) +# define IMousePointerShape_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IMousePointerShape_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IMousePointerShape_get_Alpha(p, aAlpha) ((p)->lpVtbl->GetAlpha(p, aAlpha)) +# define IMousePointerShape_GetAlpha(p, aAlpha) ((p)->lpVtbl->GetAlpha(p, aAlpha)) +# define IMousePointerShape_get_HotX(p, aHotX) ((p)->lpVtbl->GetHotX(p, aHotX)) +# define IMousePointerShape_GetHotX(p, aHotX) ((p)->lpVtbl->GetHotX(p, aHotX)) +# define IMousePointerShape_get_HotY(p, aHotY) ((p)->lpVtbl->GetHotY(p, aHotY)) +# define IMousePointerShape_GetHotY(p, aHotY) ((p)->lpVtbl->GetHotY(p, aHotY)) +# define IMousePointerShape_get_Width(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IMousePointerShape_GetWidth(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IMousePointerShape_get_Height(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IMousePointerShape_GetHeight(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IMousePointerShape_get_Shape(p, aShape) ((p)->lpVtbl->GetShape(p, aShape)) +# define IMousePointerShape_GetShape(p, aShape) ((p)->lpVtbl->GetShape(p, aShape)) +# endif /* VBOX_WITH_GLUE */ + +interface IMousePointerShape +{ +# ifndef VBOX_WITH_GLUE + struct IMousePointerShape_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMousePointerShapeVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMousePointerShape declaration */ + + +/* Start of struct IMouse declaration */ +# define IMOUSE_IID_STR "10cd08d0-e8b8-4838-b10c-45ba193734c1" +# define IMOUSE_IID { \ + 0x10cd08d0, 0xe8b8, 0x4838, \ + { 0xb1, 0x0c, 0x45, 0xba, 0x19, 0x37, 0x34, 0xc1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMouse); +# ifndef VBOX_WITH_GLUE +struct IMouse_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetAbsoluteSupported)(IMouse *pThis, PRBool *absoluteSupported); + + nsresult (*GetRelativeSupported)(IMouse *pThis, PRBool *relativeSupported); + + nsresult (*GetMultiTouchSupported)(IMouse *pThis, PRBool *multiTouchSupported); + + nsresult (*GetNeedsHostCursor)(IMouse *pThis, PRBool *needsHostCursor); + + nsresult (*GetPointerShape)(IMouse *pThis, IMousePointerShape * *pointerShape); + + nsresult (*GetEventSource)(IMouse *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*PutMouseEvent)( + IMouse *pThis, + PRInt32 dx, + PRInt32 dy, + PRInt32 dz, + PRInt32 dw, + PRInt32 buttonState + ); + + nsresult (*PutMouseEventAbsolute)( + IMouse *pThis, + PRInt32 x, + PRInt32 y, + PRInt32 dz, + PRInt32 dw, + PRInt32 buttonState + ); + + nsresult (*PutEventMultiTouch)( + IMouse *pThis, + PRInt32 count, + PRUint32 contactsSize, + PRInt64* contacts, + PRUint32 scanTime + ); + + nsresult (*PutEventMultiTouchString)( + IMouse *pThis, + PRInt32 count, + PRUnichar * contacts, + PRUint32 scanTime + ); + + nsresult (*InternalAndReservedMethod1IMouse)(IMouse *pThis); + + nsresult (*InternalAndReservedMethod2IMouse)(IMouse *pThis); + + nsresult (*InternalAndReservedMethod3IMouse)(IMouse *pThis); + + nsresult (*InternalAndReservedMethod4IMouse)(IMouse *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMouseVtbl +{ + nsresult (*QueryInterface)(IMouse *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMouse *pThis); + nsrefcnt (*Release)(IMouse *pThis); + nsresult (*GetAbsoluteSupported)(IMouse *pThis, PRBool *absoluteSupported); + + nsresult (*GetRelativeSupported)(IMouse *pThis, PRBool *relativeSupported); + + nsresult (*GetMultiTouchSupported)(IMouse *pThis, PRBool *multiTouchSupported); + + nsresult (*GetNeedsHostCursor)(IMouse *pThis, PRBool *needsHostCursor); + + nsresult (*GetPointerShape)(IMouse *pThis, IMousePointerShape * *pointerShape); + + nsresult (*GetEventSource)(IMouse *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMouse)(IMouse *pThis, PRUint32 *reserved); + + nsresult (*PutMouseEvent)( + IMouse *pThis, + PRInt32 dx, + PRInt32 dy, + PRInt32 dz, + PRInt32 dw, + PRInt32 buttonState + ); + + nsresult (*PutMouseEventAbsolute)( + IMouse *pThis, + PRInt32 x, + PRInt32 y, + PRInt32 dz, + PRInt32 dw, + PRInt32 buttonState + ); + + nsresult (*PutEventMultiTouch)( + IMouse *pThis, + PRInt32 count, + PRUint32 contactsSize, + PRInt64* contacts, + PRUint32 scanTime + ); + + nsresult (*PutEventMultiTouchString)( + IMouse *pThis, + PRInt32 count, + PRUnichar * contacts, + PRUint32 scanTime + ); + + nsresult (*InternalAndReservedMethod1IMouse)(IMouse *pThis); + + nsresult (*InternalAndReservedMethod2IMouse)(IMouse *pThis); + + nsresult (*InternalAndReservedMethod3IMouse)(IMouse *pThis); + + nsresult (*InternalAndReservedMethod4IMouse)(IMouse *pThis); + +}; +# define IMouse_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMouse_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMouse_Release(p) ((p)->lpVtbl->Release(p)) +# define IMouse_get_AbsoluteSupported(p, aAbsoluteSupported) ((p)->lpVtbl->GetAbsoluteSupported(p, aAbsoluteSupported)) +# define IMouse_GetAbsoluteSupported(p, aAbsoluteSupported) ((p)->lpVtbl->GetAbsoluteSupported(p, aAbsoluteSupported)) +# define IMouse_get_RelativeSupported(p, aRelativeSupported) ((p)->lpVtbl->GetRelativeSupported(p, aRelativeSupported)) +# define IMouse_GetRelativeSupported(p, aRelativeSupported) ((p)->lpVtbl->GetRelativeSupported(p, aRelativeSupported)) +# define IMouse_get_MultiTouchSupported(p, aMultiTouchSupported) ((p)->lpVtbl->GetMultiTouchSupported(p, aMultiTouchSupported)) +# define IMouse_GetMultiTouchSupported(p, aMultiTouchSupported) ((p)->lpVtbl->GetMultiTouchSupported(p, aMultiTouchSupported)) +# define IMouse_get_NeedsHostCursor(p, aNeedsHostCursor) ((p)->lpVtbl->GetNeedsHostCursor(p, aNeedsHostCursor)) +# define IMouse_GetNeedsHostCursor(p, aNeedsHostCursor) ((p)->lpVtbl->GetNeedsHostCursor(p, aNeedsHostCursor)) +# define IMouse_get_PointerShape(p, aPointerShape) ((p)->lpVtbl->GetPointerShape(p, aPointerShape)) +# define IMouse_GetPointerShape(p, aPointerShape) ((p)->lpVtbl->GetPointerShape(p, aPointerShape)) +# define IMouse_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IMouse_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IMouse_PutMouseEvent(p, aDx, aDy, aDz, aDw, aButtonState) ((p)->lpVtbl->PutMouseEvent(p, aDx, aDy, aDz, aDw, aButtonState)) +# define IMouse_PutMouseEventAbsolute(p, aX, aY, aDz, aDw, aButtonState) ((p)->lpVtbl->PutMouseEventAbsolute(p, aX, aY, aDz, aDw, aButtonState)) +# define IMouse_PutEventMultiTouch(p, aCount, aContacts, aScanTime) ((p)->lpVtbl->PutEventMultiTouch(p, aCount, aContacts, aScanTime)) +# define IMouse_PutEventMultiTouchString(p, aCount, aContacts, aScanTime) ((p)->lpVtbl->PutEventMultiTouchString(p, aCount, aContacts, aScanTime)) +# endif /* VBOX_WITH_GLUE */ + +interface IMouse +{ +# ifndef VBOX_WITH_GLUE + struct IMouse_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMouseVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMouse declaration */ + + +/* Start of struct IDisplaySourceBitmap declaration */ +# define IDISPLAYSOURCEBITMAP_IID_STR "5094f67a-8084-11e9-b185-dbe296e54799" +# define IDISPLAYSOURCEBITMAP_IID { \ + 0x5094f67a, 0x8084, 0x11e9, \ + { 0xb1, 0x85, 0xdb, 0xe2, 0x96, 0xe5, 0x47, 0x99 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDisplaySourceBitmap); +# ifndef VBOX_WITH_GLUE +struct IDisplaySourceBitmap_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetScreenId)(IDisplaySourceBitmap *pThis, PRUint32 *screenId); + + nsresult (*QueryBitmapInfo)( + IDisplaySourceBitmap *pThis, + PRUint8 * * address, + PRUint32 * width, + PRUint32 * height, + PRUint32 * bitsPerPixel, + PRUint32 * bytesPerLine, + PRUint32 * bitmapFormat + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDisplaySourceBitmapVtbl +{ + nsresult (*QueryInterface)(IDisplaySourceBitmap *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDisplaySourceBitmap *pThis); + nsrefcnt (*Release)(IDisplaySourceBitmap *pThis); + nsresult (*GetScreenId)(IDisplaySourceBitmap *pThis, PRUint32 *screenId); + + nsresult (*QueryBitmapInfo)( + IDisplaySourceBitmap *pThis, + PRUint8 * * address, + PRUint32 * width, + PRUint32 * height, + PRUint32 * bitsPerPixel, + PRUint32 * bytesPerLine, + PRUint32 * bitmapFormat + ); + +}; +# define IDisplaySourceBitmap_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDisplaySourceBitmap_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDisplaySourceBitmap_Release(p) ((p)->lpVtbl->Release(p)) +# define IDisplaySourceBitmap_get_ScreenId(p, aScreenId) ((p)->lpVtbl->GetScreenId(p, aScreenId)) +# define IDisplaySourceBitmap_GetScreenId(p, aScreenId) ((p)->lpVtbl->GetScreenId(p, aScreenId)) +# define IDisplaySourceBitmap_QueryBitmapInfo(p, aAddress, aWidth, aHeight, aBitsPerPixel, aBytesPerLine, aBitmapFormat) ((p)->lpVtbl->QueryBitmapInfo(p, aAddress, aWidth, aHeight, aBitsPerPixel, aBytesPerLine, aBitmapFormat)) +# endif /* VBOX_WITH_GLUE */ + +interface IDisplaySourceBitmap +{ +# ifndef VBOX_WITH_GLUE + struct IDisplaySourceBitmap_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDisplaySourceBitmapVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDisplaySourceBitmap declaration */ + + +/* Start of struct IFramebuffer declaration */ +# define IFRAMEBUFFER_IID_STR "1e8d3f27-b45c-48ae-8b36-d35e83d207aa" +# define IFRAMEBUFFER_IID { \ + 0x1e8d3f27, 0xb45c, 0x48ae, \ + { 0x8b, 0x36, 0xd3, 0x5e, 0x83, 0xd2, 0x07, 0xaa } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IFramebuffer); +# ifndef VBOX_WITH_GLUE +struct IFramebuffer_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetWidth)(IFramebuffer *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IFramebuffer *pThis, PRUint32 *height); + + nsresult (*GetBitsPerPixel)(IFramebuffer *pThis, PRUint32 *bitsPerPixel); + + nsresult (*GetBytesPerLine)(IFramebuffer *pThis, PRUint32 *bytesPerLine); + + nsresult (*GetPixelFormat)(IFramebuffer *pThis, PRUint32 *pixelFormat); + + nsresult (*GetHeightReduction)(IFramebuffer *pThis, PRUint32 *heightReduction); + + nsresult (*GetOverlay)(IFramebuffer *pThis, IFramebufferOverlay * *overlay); + + nsresult (*GetWinId)(IFramebuffer *pThis, PRInt64 *winId); + + nsresult (*GetCapabilities)(IFramebuffer *pThis, PRUint32 *capabilitiesSize, PRUint32 **capabilities); + + nsresult (*NotifyUpdate)( + IFramebuffer *pThis, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*NotifyUpdateImage)( + IFramebuffer *pThis, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height, + PRUint32 imageSize, + PRUint8* image + ); + + nsresult (*NotifyChange)( + IFramebuffer *pThis, + PRUint32 screenId, + PRUint32 xOrigin, + PRUint32 yOrigin, + PRUint32 width, + PRUint32 height + ); + + nsresult (*VideoModeSupported)( + IFramebuffer *pThis, + PRUint32 width, + PRUint32 height, + PRUint32 bpp, + PRBool * supported + ); + + nsresult (*GetVisibleRegion)( + IFramebuffer *pThis, + PRUint8 * rectangles, + PRUint32 count, + PRUint32 * countCopied + ); + + nsresult (*SetVisibleRegion)( + IFramebuffer *pThis, + PRUint8 * rectangles, + PRUint32 count + ); + + nsresult (*ProcessVHWACommand)( + IFramebuffer *pThis, + PRUint8 * command, + PRInt32 enmCmd, + PRBool fromGuest + ); + + nsresult (*Notify3DEvent)( + IFramebuffer *pThis, + PRUint32 type, + PRUint32 dataSize, + PRUint8* data + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IFramebufferVtbl +{ + nsresult (*QueryInterface)(IFramebuffer *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IFramebuffer *pThis); + nsrefcnt (*Release)(IFramebuffer *pThis); + nsresult (*GetWidth)(IFramebuffer *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IFramebuffer *pThis, PRUint32 *height); + + nsresult (*GetBitsPerPixel)(IFramebuffer *pThis, PRUint32 *bitsPerPixel); + + nsresult (*GetBytesPerLine)(IFramebuffer *pThis, PRUint32 *bytesPerLine); + + nsresult (*GetPixelFormat)(IFramebuffer *pThis, PRUint32 *pixelFormat); + + nsresult (*GetHeightReduction)(IFramebuffer *pThis, PRUint32 *heightReduction); + + nsresult (*GetOverlay)(IFramebuffer *pThis, IFramebufferOverlay * *overlay); + + nsresult (*GetWinId)(IFramebuffer *pThis, PRInt64 *winId); + + nsresult (*GetCapabilities)(IFramebuffer *pThis, PRUint32 *capabilitiesSize, PRUint32 **capabilities); + + nsresult (*NotifyUpdate)( + IFramebuffer *pThis, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*NotifyUpdateImage)( + IFramebuffer *pThis, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height, + PRUint32 imageSize, + PRUint8* image + ); + + nsresult (*NotifyChange)( + IFramebuffer *pThis, + PRUint32 screenId, + PRUint32 xOrigin, + PRUint32 yOrigin, + PRUint32 width, + PRUint32 height + ); + + nsresult (*VideoModeSupported)( + IFramebuffer *pThis, + PRUint32 width, + PRUint32 height, + PRUint32 bpp, + PRBool * supported + ); + + nsresult (*GetVisibleRegion)( + IFramebuffer *pThis, + PRUint8 * rectangles, + PRUint32 count, + PRUint32 * countCopied + ); + + nsresult (*SetVisibleRegion)( + IFramebuffer *pThis, + PRUint8 * rectangles, + PRUint32 count + ); + + nsresult (*ProcessVHWACommand)( + IFramebuffer *pThis, + PRUint8 * command, + PRInt32 enmCmd, + PRBool fromGuest + ); + + nsresult (*Notify3DEvent)( + IFramebuffer *pThis, + PRUint32 type, + PRUint32 dataSize, + PRUint8* data + ); + +}; +# define IFramebuffer_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IFramebuffer_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IFramebuffer_Release(p) ((p)->lpVtbl->Release(p)) +# define IFramebuffer_get_Width(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IFramebuffer_GetWidth(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IFramebuffer_get_Height(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IFramebuffer_GetHeight(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IFramebuffer_get_BitsPerPixel(p, aBitsPerPixel) ((p)->lpVtbl->GetBitsPerPixel(p, aBitsPerPixel)) +# define IFramebuffer_GetBitsPerPixel(p, aBitsPerPixel) ((p)->lpVtbl->GetBitsPerPixel(p, aBitsPerPixel)) +# define IFramebuffer_get_BytesPerLine(p, aBytesPerLine) ((p)->lpVtbl->GetBytesPerLine(p, aBytesPerLine)) +# define IFramebuffer_GetBytesPerLine(p, aBytesPerLine) ((p)->lpVtbl->GetBytesPerLine(p, aBytesPerLine)) +# define IFramebuffer_get_PixelFormat(p, aPixelFormat) ((p)->lpVtbl->GetPixelFormat(p, aPixelFormat)) +# define IFramebuffer_GetPixelFormat(p, aPixelFormat) ((p)->lpVtbl->GetPixelFormat(p, aPixelFormat)) +# define IFramebuffer_get_HeightReduction(p, aHeightReduction) ((p)->lpVtbl->GetHeightReduction(p, aHeightReduction)) +# define IFramebuffer_GetHeightReduction(p, aHeightReduction) ((p)->lpVtbl->GetHeightReduction(p, aHeightReduction)) +# define IFramebuffer_get_Overlay(p, aOverlay) ((p)->lpVtbl->GetOverlay(p, aOverlay)) +# define IFramebuffer_GetOverlay(p, aOverlay) ((p)->lpVtbl->GetOverlay(p, aOverlay)) +# define IFramebuffer_get_WinId(p, aWinId) ((p)->lpVtbl->GetWinId(p, aWinId)) +# define IFramebuffer_GetWinId(p, aWinId) ((p)->lpVtbl->GetWinId(p, aWinId)) +# define IFramebuffer_get_Capabilities(p, aCapabilities) ((p)->lpVtbl->GetCapabilities(p, aCapabilities)) +# define IFramebuffer_GetCapabilities(p, aCapabilities) ((p)->lpVtbl->GetCapabilities(p, aCapabilities)) +# define IFramebuffer_NotifyUpdate(p, aX, aY, aWidth, aHeight) ((p)->lpVtbl->NotifyUpdate(p, aX, aY, aWidth, aHeight)) +# define IFramebuffer_NotifyUpdateImage(p, aX, aY, aWidth, aHeight, aImage) ((p)->lpVtbl->NotifyUpdateImage(p, aX, aY, aWidth, aHeight, aImage)) +# define IFramebuffer_NotifyChange(p, aScreenId, aXOrigin, aYOrigin, aWidth, aHeight) ((p)->lpVtbl->NotifyChange(p, aScreenId, aXOrigin, aYOrigin, aWidth, aHeight)) +# define IFramebuffer_VideoModeSupported(p, aWidth, aHeight, aBpp, aSupported) ((p)->lpVtbl->VideoModeSupported(p, aWidth, aHeight, aBpp, aSupported)) +# define IFramebuffer_GetVisibleRegion(p, aRectangles, aCount, aCountCopied) ((p)->lpVtbl->GetVisibleRegion(p, aRectangles, aCount, aCountCopied)) +# define IFramebuffer_SetVisibleRegion(p, aRectangles, aCount) ((p)->lpVtbl->SetVisibleRegion(p, aRectangles, aCount)) +# define IFramebuffer_ProcessVHWACommand(p, aCommand, aEnmCmd, aFromGuest) ((p)->lpVtbl->ProcessVHWACommand(p, aCommand, aEnmCmd, aFromGuest)) +# define IFramebuffer_Notify3DEvent(p, aType, aData) ((p)->lpVtbl->Notify3DEvent(p, aType, aData)) +# endif /* VBOX_WITH_GLUE */ + +interface IFramebuffer +{ +# ifndef VBOX_WITH_GLUE + struct IFramebuffer_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IFramebufferVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IFramebuffer declaration */ + + +/* Start of struct IFramebufferOverlay declaration */ +# define IFRAMEBUFFEROVERLAY_IID_STR "af398a9a-6b76-4805-8fab-00a9dcf4732b" +# define IFRAMEBUFFEROVERLAY_IID { \ + 0xaf398a9a, 0x6b76, 0x4805, \ + { 0x8f, 0xab, 0x00, 0xa9, 0xdc, 0xf4, 0x73, 0x2b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IFramebufferOverlay); +# ifndef VBOX_WITH_GLUE +struct IFramebufferOverlay_vtbl +{ + struct IFramebuffer_vtbl iframebuffer; + + nsresult (*GetX)(IFramebufferOverlay *pThis, PRUint32 *x); + + nsresult (*GetY)(IFramebufferOverlay *pThis, PRUint32 *y); + + nsresult (*GetVisible)(IFramebufferOverlay *pThis, PRBool *visible); + nsresult (*SetVisible)(IFramebufferOverlay *pThis, PRBool visible); + + nsresult (*GetAlpha)(IFramebufferOverlay *pThis, PRUint32 *alpha); + nsresult (*SetAlpha)(IFramebufferOverlay *pThis, PRUint32 alpha); + + nsresult (*Move)( + IFramebufferOverlay *pThis, + PRUint32 x, + PRUint32 y + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IFramebufferOverlayVtbl +{ + nsresult (*QueryInterface)(IFramebufferOverlay *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IFramebufferOverlay *pThis); + nsrefcnt (*Release)(IFramebufferOverlay *pThis); + nsresult (*GetWidth)(IFramebufferOverlay *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IFramebufferOverlay *pThis, PRUint32 *height); + + nsresult (*GetBitsPerPixel)(IFramebufferOverlay *pThis, PRUint32 *bitsPerPixel); + + nsresult (*GetBytesPerLine)(IFramebufferOverlay *pThis, PRUint32 *bytesPerLine); + + nsresult (*GetPixelFormat)(IFramebufferOverlay *pThis, PRUint32 *pixelFormat); + + nsresult (*GetHeightReduction)(IFramebufferOverlay *pThis, PRUint32 *heightReduction); + + nsresult (*GetOverlay)(IFramebufferOverlay *pThis, IFramebufferOverlay * *overlay); + + nsresult (*GetWinId)(IFramebufferOverlay *pThis, PRInt64 *winId); + + nsresult (*GetCapabilities)(IFramebufferOverlay *pThis, PRUint32 *capabilitiesSize, PRUint32 **capabilities); + + nsresult (*NotifyUpdate)( + IFramebufferOverlay *pThis, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*NotifyUpdateImage)( + IFramebufferOverlay *pThis, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height, + PRUint32 imageSize, + PRUint8* image + ); + + nsresult (*NotifyChange)( + IFramebufferOverlay *pThis, + PRUint32 screenId, + PRUint32 xOrigin, + PRUint32 yOrigin, + PRUint32 width, + PRUint32 height + ); + + nsresult (*VideoModeSupported)( + IFramebufferOverlay *pThis, + PRUint32 width, + PRUint32 height, + PRUint32 bpp, + PRBool * supported + ); + + nsresult (*GetVisibleRegion)( + IFramebufferOverlay *pThis, + PRUint8 * rectangles, + PRUint32 count, + PRUint32 * countCopied + ); + + nsresult (*SetVisibleRegion)( + IFramebufferOverlay *pThis, + PRUint8 * rectangles, + PRUint32 count + ); + + nsresult (*ProcessVHWACommand)( + IFramebufferOverlay *pThis, + PRUint8 * command, + PRInt32 enmCmd, + PRBool fromGuest + ); + + nsresult (*Notify3DEvent)( + IFramebufferOverlay *pThis, + PRUint32 type, + PRUint32 dataSize, + PRUint8* data + ); + + nsresult (*GetX)(IFramebufferOverlay *pThis, PRUint32 *x); + + nsresult (*GetY)(IFramebufferOverlay *pThis, PRUint32 *y); + + nsresult (*GetVisible)(IFramebufferOverlay *pThis, PRBool *visible); + nsresult (*SetVisible)(IFramebufferOverlay *pThis, PRBool visible); + + nsresult (*GetAlpha)(IFramebufferOverlay *pThis, PRUint32 *alpha); + nsresult (*SetAlpha)(IFramebufferOverlay *pThis, PRUint32 alpha); + + nsresult (*Move)( + IFramebufferOverlay *pThis, + PRUint32 x, + PRUint32 y + ); + +}; +# define IFramebufferOverlay_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IFramebufferOverlay_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IFramebufferOverlay_Release(p) ((p)->lpVtbl->Release(p)) +# define IFramebufferOverlay_get_Width(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IFramebufferOverlay_GetWidth(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IFramebufferOverlay_get_Height(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IFramebufferOverlay_GetHeight(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IFramebufferOverlay_get_BitsPerPixel(p, aBitsPerPixel) ((p)->lpVtbl->GetBitsPerPixel(p, aBitsPerPixel)) +# define IFramebufferOverlay_GetBitsPerPixel(p, aBitsPerPixel) ((p)->lpVtbl->GetBitsPerPixel(p, aBitsPerPixel)) +# define IFramebufferOverlay_get_BytesPerLine(p, aBytesPerLine) ((p)->lpVtbl->GetBytesPerLine(p, aBytesPerLine)) +# define IFramebufferOverlay_GetBytesPerLine(p, aBytesPerLine) ((p)->lpVtbl->GetBytesPerLine(p, aBytesPerLine)) +# define IFramebufferOverlay_get_PixelFormat(p, aPixelFormat) ((p)->lpVtbl->GetPixelFormat(p, aPixelFormat)) +# define IFramebufferOverlay_GetPixelFormat(p, aPixelFormat) ((p)->lpVtbl->GetPixelFormat(p, aPixelFormat)) +# define IFramebufferOverlay_get_HeightReduction(p, aHeightReduction) ((p)->lpVtbl->GetHeightReduction(p, aHeightReduction)) +# define IFramebufferOverlay_GetHeightReduction(p, aHeightReduction) ((p)->lpVtbl->GetHeightReduction(p, aHeightReduction)) +# define IFramebufferOverlay_get_Overlay(p, aOverlay) ((p)->lpVtbl->GetOverlay(p, aOverlay)) +# define IFramebufferOverlay_GetOverlay(p, aOverlay) ((p)->lpVtbl->GetOverlay(p, aOverlay)) +# define IFramebufferOverlay_get_WinId(p, aWinId) ((p)->lpVtbl->GetWinId(p, aWinId)) +# define IFramebufferOverlay_GetWinId(p, aWinId) ((p)->lpVtbl->GetWinId(p, aWinId)) +# define IFramebufferOverlay_get_Capabilities(p, aCapabilities) ((p)->lpVtbl->GetCapabilities(p, aCapabilities)) +# define IFramebufferOverlay_GetCapabilities(p, aCapabilities) ((p)->lpVtbl->GetCapabilities(p, aCapabilities)) +# define IFramebufferOverlay_NotifyUpdate(p, aX, aY, aWidth, aHeight) ((p)->lpVtbl->NotifyUpdate(p, aX, aY, aWidth, aHeight)) +# define IFramebufferOverlay_NotifyUpdateImage(p, aX, aY, aWidth, aHeight, aImage) ((p)->lpVtbl->NotifyUpdateImage(p, aX, aY, aWidth, aHeight, aImage)) +# define IFramebufferOverlay_NotifyChange(p, aScreenId, aXOrigin, aYOrigin, aWidth, aHeight) ((p)->lpVtbl->NotifyChange(p, aScreenId, aXOrigin, aYOrigin, aWidth, aHeight)) +# define IFramebufferOverlay_VideoModeSupported(p, aWidth, aHeight, aBpp, aSupported) ((p)->lpVtbl->VideoModeSupported(p, aWidth, aHeight, aBpp, aSupported)) +# define IFramebufferOverlay_GetVisibleRegion(p, aRectangles, aCount, aCountCopied) ((p)->lpVtbl->GetVisibleRegion(p, aRectangles, aCount, aCountCopied)) +# define IFramebufferOverlay_SetVisibleRegion(p, aRectangles, aCount) ((p)->lpVtbl->SetVisibleRegion(p, aRectangles, aCount)) +# define IFramebufferOverlay_ProcessVHWACommand(p, aCommand, aEnmCmd, aFromGuest) ((p)->lpVtbl->ProcessVHWACommand(p, aCommand, aEnmCmd, aFromGuest)) +# define IFramebufferOverlay_Notify3DEvent(p, aType, aData) ((p)->lpVtbl->Notify3DEvent(p, aType, aData)) +# define IFramebufferOverlay_get_X(p, aX) ((p)->lpVtbl->GetX(p, aX)) +# define IFramebufferOverlay_GetX(p, aX) ((p)->lpVtbl->GetX(p, aX)) +# define IFramebufferOverlay_get_Y(p, aY) ((p)->lpVtbl->GetY(p, aY)) +# define IFramebufferOverlay_GetY(p, aY) ((p)->lpVtbl->GetY(p, aY)) +# define IFramebufferOverlay_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IFramebufferOverlay_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IFramebufferOverlay_put_Visible(p, aVisible) ((p)->lpVtbl->SetVisible(p, aVisible)) +# define IFramebufferOverlay_SetVisible(p, aVisible) ((p)->lpVtbl->SetVisible(p, aVisible)) +# define IFramebufferOverlay_get_Alpha(p, aAlpha) ((p)->lpVtbl->GetAlpha(p, aAlpha)) +# define IFramebufferOverlay_GetAlpha(p, aAlpha) ((p)->lpVtbl->GetAlpha(p, aAlpha)) +# define IFramebufferOverlay_put_Alpha(p, aAlpha) ((p)->lpVtbl->SetAlpha(p, aAlpha)) +# define IFramebufferOverlay_SetAlpha(p, aAlpha) ((p)->lpVtbl->SetAlpha(p, aAlpha)) +# define IFramebufferOverlay_Move(p, aX, aY) ((p)->lpVtbl->Move(p, aX, aY)) +# endif /* VBOX_WITH_GLUE */ + +interface IFramebufferOverlay +{ +# ifndef VBOX_WITH_GLUE + struct IFramebufferOverlay_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IFramebufferOverlayVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IFramebufferOverlay declaration */ + + +/* Start of struct IGuestScreenInfo declaration */ +# define IGUESTSCREENINFO_IID_STR "6b2f98f8-9641-4397-854a-040439d0114b" +# define IGUESTSCREENINFO_IID { \ + 0x6b2f98f8, 0x9641, 0x4397, \ + { 0x85, 0x4a, 0x04, 0x04, 0x39, 0xd0, 0x11, 0x4b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestScreenInfo); +# ifndef VBOX_WITH_GLUE +struct IGuestScreenInfo_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetScreenId)(IGuestScreenInfo *pThis, PRUint32 *screenId); + + nsresult (*GetGuestMonitorStatus)(IGuestScreenInfo *pThis, PRUint32 *guestMonitorStatus); + + nsresult (*GetPrimary)(IGuestScreenInfo *pThis, PRBool *primary); + + nsresult (*GetOrigin)(IGuestScreenInfo *pThis, PRBool *origin); + + nsresult (*GetOriginX)(IGuestScreenInfo *pThis, PRInt32 *originX); + + nsresult (*GetOriginY)(IGuestScreenInfo *pThis, PRInt32 *originY); + + nsresult (*GetWidth)(IGuestScreenInfo *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IGuestScreenInfo *pThis, PRUint32 *height); + + nsresult (*GetBitsPerPixel)(IGuestScreenInfo *pThis, PRUint32 *bitsPerPixel); + + nsresult (*GetExtendedInfo)(IGuestScreenInfo *pThis, PRUnichar * *extendedInfo); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestScreenInfoVtbl +{ + nsresult (*QueryInterface)(IGuestScreenInfo *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestScreenInfo *pThis); + nsrefcnt (*Release)(IGuestScreenInfo *pThis); + nsresult (*GetScreenId)(IGuestScreenInfo *pThis, PRUint32 *screenId); + + nsresult (*GetGuestMonitorStatus)(IGuestScreenInfo *pThis, PRUint32 *guestMonitorStatus); + + nsresult (*GetPrimary)(IGuestScreenInfo *pThis, PRBool *primary); + + nsresult (*GetOrigin)(IGuestScreenInfo *pThis, PRBool *origin); + + nsresult (*GetOriginX)(IGuestScreenInfo *pThis, PRInt32 *originX); + + nsresult (*GetOriginY)(IGuestScreenInfo *pThis, PRInt32 *originY); + + nsresult (*GetWidth)(IGuestScreenInfo *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IGuestScreenInfo *pThis, PRUint32 *height); + + nsresult (*GetBitsPerPixel)(IGuestScreenInfo *pThis, PRUint32 *bitsPerPixel); + + nsresult (*GetExtendedInfo)(IGuestScreenInfo *pThis, PRUnichar * *extendedInfo); + +}; +# define IGuestScreenInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestScreenInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestScreenInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestScreenInfo_get_ScreenId(p, aScreenId) ((p)->lpVtbl->GetScreenId(p, aScreenId)) +# define IGuestScreenInfo_GetScreenId(p, aScreenId) ((p)->lpVtbl->GetScreenId(p, aScreenId)) +# define IGuestScreenInfo_get_GuestMonitorStatus(p, aGuestMonitorStatus) ((p)->lpVtbl->GetGuestMonitorStatus(p, aGuestMonitorStatus)) +# define IGuestScreenInfo_GetGuestMonitorStatus(p, aGuestMonitorStatus) ((p)->lpVtbl->GetGuestMonitorStatus(p, aGuestMonitorStatus)) +# define IGuestScreenInfo_get_Primary(p, aPrimary) ((p)->lpVtbl->GetPrimary(p, aPrimary)) +# define IGuestScreenInfo_GetPrimary(p, aPrimary) ((p)->lpVtbl->GetPrimary(p, aPrimary)) +# define IGuestScreenInfo_get_Origin(p, aOrigin) ((p)->lpVtbl->GetOrigin(p, aOrigin)) +# define IGuestScreenInfo_GetOrigin(p, aOrigin) ((p)->lpVtbl->GetOrigin(p, aOrigin)) +# define IGuestScreenInfo_get_OriginX(p, aOriginX) ((p)->lpVtbl->GetOriginX(p, aOriginX)) +# define IGuestScreenInfo_GetOriginX(p, aOriginX) ((p)->lpVtbl->GetOriginX(p, aOriginX)) +# define IGuestScreenInfo_get_OriginY(p, aOriginY) ((p)->lpVtbl->GetOriginY(p, aOriginY)) +# define IGuestScreenInfo_GetOriginY(p, aOriginY) ((p)->lpVtbl->GetOriginY(p, aOriginY)) +# define IGuestScreenInfo_get_Width(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IGuestScreenInfo_GetWidth(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IGuestScreenInfo_get_Height(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IGuestScreenInfo_GetHeight(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IGuestScreenInfo_get_BitsPerPixel(p, aBitsPerPixel) ((p)->lpVtbl->GetBitsPerPixel(p, aBitsPerPixel)) +# define IGuestScreenInfo_GetBitsPerPixel(p, aBitsPerPixel) ((p)->lpVtbl->GetBitsPerPixel(p, aBitsPerPixel)) +# define IGuestScreenInfo_get_ExtendedInfo(p, aExtendedInfo) ((p)->lpVtbl->GetExtendedInfo(p, aExtendedInfo)) +# define IGuestScreenInfo_GetExtendedInfo(p, aExtendedInfo) ((p)->lpVtbl->GetExtendedInfo(p, aExtendedInfo)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestScreenInfo +{ +# ifndef VBOX_WITH_GLUE + struct IGuestScreenInfo_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestScreenInfoVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestScreenInfo declaration */ + + +/* Start of struct IDisplay declaration */ +# define IDISPLAY_IID_STR "4680b2de-8690-11e9-b83d-5719e53cf1de" +# define IDISPLAY_IID { \ + 0x4680b2de, 0x8690, 0x11e9, \ + { 0xb8, 0x3d, 0x57, 0x19, 0xe5, 0x3c, 0xf1, 0xde } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDisplay); +# ifndef VBOX_WITH_GLUE +struct IDisplay_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetGuestScreenLayout)(IDisplay *pThis, PRUint32 *guestScreenLayoutSize, IGuestScreenInfo * **guestScreenLayout); + + nsresult (*GetInternalAndReservedAttribute1IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetScreenResolution)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 * width, + PRUint32 * height, + PRUint32 * bitsPerPixel, + PRInt32 * xOrigin, + PRInt32 * yOrigin, + PRUint32 * guestMonitorStatus + ); + + nsresult (*AttachFramebuffer)( + IDisplay *pThis, + PRUint32 screenId, + IFramebuffer * framebuffer, + PRUnichar * * id + ); + + nsresult (*DetachFramebuffer)( + IDisplay *pThis, + PRUint32 screenId, + PRUnichar * id + ); + + nsresult (*QueryFramebuffer)( + IDisplay *pThis, + PRUint32 screenId, + IFramebuffer * * framebuffer + ); + + nsresult (*SetVideoModeHint)( + IDisplay *pThis, + PRUint32 display, + PRBool enabled, + PRBool changeOrigin, + PRInt32 originX, + PRInt32 originY, + PRUint32 width, + PRUint32 height, + PRUint32 bitsPerPixel, + PRBool notify + ); + + nsresult (*GetVideoModeHint)( + IDisplay *pThis, + PRUint32 display, + PRBool * enabled, + PRBool * changeOrigin, + PRInt32 * originX, + PRInt32 * originY, + PRUint32 * width, + PRUint32 * height, + PRUint32 * bitsPerPixel + ); + + nsresult (*SetSeamlessMode)( + IDisplay *pThis, + PRBool enabled + ); + + nsresult (*TakeScreenShot)( + IDisplay *pThis, + PRUint32 screenId, + PRUint8 * address, + PRUint32 width, + PRUint32 height, + PRUint32 bitmapFormat + ); + + nsresult (*TakeScreenShotToArray)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 width, + PRUint32 height, + PRUint32 bitmapFormat, + PRUint32 *screenDataSize, + PRUint8** screenData + ); + + nsresult (*DrawToScreen)( + IDisplay *pThis, + PRUint32 screenId, + PRUint8 * address, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*InvalidateAndUpdate)(IDisplay *pThis ); + + nsresult (*InvalidateAndUpdateScreen)( + IDisplay *pThis, + PRUint32 screenId + ); + + nsresult (*CompleteVHWACommand)( + IDisplay *pThis, + PRUint8 * command + ); + + nsresult (*ViewportChanged)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*QuerySourceBitmap)( + IDisplay *pThis, + PRUint32 screenId, + IDisplaySourceBitmap * * displaySourceBitmap + ); + + nsresult (*NotifyScaleFactorChange)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 u32ScaleFactorWMultiplied, + PRUint32 u32ScaleFactorHMultiplied + ); + + nsresult (*NotifyHiDPIOutputPolicyChange)( + IDisplay *pThis, + PRBool fUnscaledHiDPI + ); + + nsresult (*SetScreenLayout)( + IDisplay *pThis, + PRUint32 screenLayoutMode, + PRUint32 guestScreenInfoSize, + IGuestScreenInfo ** guestScreenInfo + ); + + nsresult (*DetachScreens)( + IDisplay *pThis, + PRUint32 screenIdsSize, + PRInt32* screenIds + ); + + nsresult (*CreateGuestScreenInfo)( + IDisplay *pThis, + PRUint32 display, + PRUint32 status, + PRBool primary, + PRBool changeOrigin, + PRInt32 originX, + PRInt32 originY, + PRUint32 width, + PRUint32 height, + PRUint32 bitsPerPixel, + IGuestScreenInfo * * guestScreenInfo + ); + + nsresult (*InternalAndReservedMethod1IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod2IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod3IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod4IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod5IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod6IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod7IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod8IDisplay)(IDisplay *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDisplayVtbl +{ + nsresult (*QueryInterface)(IDisplay *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDisplay *pThis); + nsrefcnt (*Release)(IDisplay *pThis); + nsresult (*GetGuestScreenLayout)(IDisplay *pThis, PRUint32 *guestScreenLayoutSize, IGuestScreenInfo * **guestScreenLayout); + + nsresult (*GetInternalAndReservedAttribute1IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IDisplay)(IDisplay *pThis, PRUint32 *reserved); + + nsresult (*GetScreenResolution)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 * width, + PRUint32 * height, + PRUint32 * bitsPerPixel, + PRInt32 * xOrigin, + PRInt32 * yOrigin, + PRUint32 * guestMonitorStatus + ); + + nsresult (*AttachFramebuffer)( + IDisplay *pThis, + PRUint32 screenId, + IFramebuffer * framebuffer, + PRUnichar * * id + ); + + nsresult (*DetachFramebuffer)( + IDisplay *pThis, + PRUint32 screenId, + PRUnichar * id + ); + + nsresult (*QueryFramebuffer)( + IDisplay *pThis, + PRUint32 screenId, + IFramebuffer * * framebuffer + ); + + nsresult (*SetVideoModeHint)( + IDisplay *pThis, + PRUint32 display, + PRBool enabled, + PRBool changeOrigin, + PRInt32 originX, + PRInt32 originY, + PRUint32 width, + PRUint32 height, + PRUint32 bitsPerPixel, + PRBool notify + ); + + nsresult (*GetVideoModeHint)( + IDisplay *pThis, + PRUint32 display, + PRBool * enabled, + PRBool * changeOrigin, + PRInt32 * originX, + PRInt32 * originY, + PRUint32 * width, + PRUint32 * height, + PRUint32 * bitsPerPixel + ); + + nsresult (*SetSeamlessMode)( + IDisplay *pThis, + PRBool enabled + ); + + nsresult (*TakeScreenShot)( + IDisplay *pThis, + PRUint32 screenId, + PRUint8 * address, + PRUint32 width, + PRUint32 height, + PRUint32 bitmapFormat + ); + + nsresult (*TakeScreenShotToArray)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 width, + PRUint32 height, + PRUint32 bitmapFormat, + PRUint32 *screenDataSize, + PRUint8** screenData + ); + + nsresult (*DrawToScreen)( + IDisplay *pThis, + PRUint32 screenId, + PRUint8 * address, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*InvalidateAndUpdate)(IDisplay *pThis ); + + nsresult (*InvalidateAndUpdateScreen)( + IDisplay *pThis, + PRUint32 screenId + ); + + nsresult (*CompleteVHWACommand)( + IDisplay *pThis, + PRUint8 * command + ); + + nsresult (*ViewportChanged)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 x, + PRUint32 y, + PRUint32 width, + PRUint32 height + ); + + nsresult (*QuerySourceBitmap)( + IDisplay *pThis, + PRUint32 screenId, + IDisplaySourceBitmap * * displaySourceBitmap + ); + + nsresult (*NotifyScaleFactorChange)( + IDisplay *pThis, + PRUint32 screenId, + PRUint32 u32ScaleFactorWMultiplied, + PRUint32 u32ScaleFactorHMultiplied + ); + + nsresult (*NotifyHiDPIOutputPolicyChange)( + IDisplay *pThis, + PRBool fUnscaledHiDPI + ); + + nsresult (*SetScreenLayout)( + IDisplay *pThis, + PRUint32 screenLayoutMode, + PRUint32 guestScreenInfoSize, + IGuestScreenInfo ** guestScreenInfo + ); + + nsresult (*DetachScreens)( + IDisplay *pThis, + PRUint32 screenIdsSize, + PRInt32* screenIds + ); + + nsresult (*CreateGuestScreenInfo)( + IDisplay *pThis, + PRUint32 display, + PRUint32 status, + PRBool primary, + PRBool changeOrigin, + PRInt32 originX, + PRInt32 originY, + PRUint32 width, + PRUint32 height, + PRUint32 bitsPerPixel, + IGuestScreenInfo * * guestScreenInfo + ); + + nsresult (*InternalAndReservedMethod1IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod2IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod3IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod4IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod5IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod6IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod7IDisplay)(IDisplay *pThis); + + nsresult (*InternalAndReservedMethod8IDisplay)(IDisplay *pThis); + +}; +# define IDisplay_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDisplay_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDisplay_Release(p) ((p)->lpVtbl->Release(p)) +# define IDisplay_get_GuestScreenLayout(p, aGuestScreenLayout) ((p)->lpVtbl->GetGuestScreenLayout(p, aGuestScreenLayout)) +# define IDisplay_GetGuestScreenLayout(p, aGuestScreenLayout) ((p)->lpVtbl->GetGuestScreenLayout(p, aGuestScreenLayout)) +# define IDisplay_GetScreenResolution(p, aScreenId, aWidth, aHeight, aBitsPerPixel, aXOrigin, aYOrigin, aGuestMonitorStatus) ((p)->lpVtbl->GetScreenResolution(p, aScreenId, aWidth, aHeight, aBitsPerPixel, aXOrigin, aYOrigin, aGuestMonitorStatus)) +# define IDisplay_AttachFramebuffer(p, aScreenId, aFramebuffer, aId) ((p)->lpVtbl->AttachFramebuffer(p, aScreenId, aFramebuffer, aId)) +# define IDisplay_DetachFramebuffer(p, aScreenId, aId) ((p)->lpVtbl->DetachFramebuffer(p, aScreenId, aId)) +# define IDisplay_QueryFramebuffer(p, aScreenId, aFramebuffer) ((p)->lpVtbl->QueryFramebuffer(p, aScreenId, aFramebuffer)) +# define IDisplay_SetVideoModeHint(p, aDisplay, aEnabled, aChangeOrigin, aOriginX, aOriginY, aWidth, aHeight, aBitsPerPixel, aNotify) ((p)->lpVtbl->SetVideoModeHint(p, aDisplay, aEnabled, aChangeOrigin, aOriginX, aOriginY, aWidth, aHeight, aBitsPerPixel, aNotify)) +# define IDisplay_GetVideoModeHint(p, aDisplay, aEnabled, aChangeOrigin, aOriginX, aOriginY, aWidth, aHeight, aBitsPerPixel) ((p)->lpVtbl->GetVideoModeHint(p, aDisplay, aEnabled, aChangeOrigin, aOriginX, aOriginY, aWidth, aHeight, aBitsPerPixel)) +# define IDisplay_SetSeamlessMode(p, aEnabled) ((p)->lpVtbl->SetSeamlessMode(p, aEnabled)) +# define IDisplay_TakeScreenShot(p, aScreenId, aAddress, aWidth, aHeight, aBitmapFormat) ((p)->lpVtbl->TakeScreenShot(p, aScreenId, aAddress, aWidth, aHeight, aBitmapFormat)) +# define IDisplay_TakeScreenShotToArray(p, aScreenId, aWidth, aHeight, aBitmapFormat, aScreenData) ((p)->lpVtbl->TakeScreenShotToArray(p, aScreenId, aWidth, aHeight, aBitmapFormat, aScreenData)) +# define IDisplay_DrawToScreen(p, aScreenId, aAddress, aX, aY, aWidth, aHeight) ((p)->lpVtbl->DrawToScreen(p, aScreenId, aAddress, aX, aY, aWidth, aHeight)) +# define IDisplay_InvalidateAndUpdate(p) ((p)->lpVtbl->InvalidateAndUpdate(p)) +# define IDisplay_InvalidateAndUpdateScreen(p, aScreenId) ((p)->lpVtbl->InvalidateAndUpdateScreen(p, aScreenId)) +# define IDisplay_CompleteVHWACommand(p, aCommand) ((p)->lpVtbl->CompleteVHWACommand(p, aCommand)) +# define IDisplay_ViewportChanged(p, aScreenId, aX, aY, aWidth, aHeight) ((p)->lpVtbl->ViewportChanged(p, aScreenId, aX, aY, aWidth, aHeight)) +# define IDisplay_QuerySourceBitmap(p, aScreenId, aDisplaySourceBitmap) ((p)->lpVtbl->QuerySourceBitmap(p, aScreenId, aDisplaySourceBitmap)) +# define IDisplay_NotifyScaleFactorChange(p, aScreenId, aU32ScaleFactorWMultiplied, aU32ScaleFactorHMultiplied) ((p)->lpVtbl->NotifyScaleFactorChange(p, aScreenId, aU32ScaleFactorWMultiplied, aU32ScaleFactorHMultiplied)) +# define IDisplay_NotifyHiDPIOutputPolicyChange(p, aFUnscaledHiDPI) ((p)->lpVtbl->NotifyHiDPIOutputPolicyChange(p, aFUnscaledHiDPI)) +# define IDisplay_SetScreenLayout(p, aScreenLayoutMode, aGuestScreenInfo) ((p)->lpVtbl->SetScreenLayout(p, aScreenLayoutMode, aGuestScreenInfo)) +# define IDisplay_DetachScreens(p, aScreenIds) ((p)->lpVtbl->DetachScreens(p, aScreenIds)) +# define IDisplay_CreateGuestScreenInfo(p, aDisplay, aStatus, aPrimary, aChangeOrigin, aOriginX, aOriginY, aWidth, aHeight, aBitsPerPixel, aGuestScreenInfo) ((p)->lpVtbl->CreateGuestScreenInfo(p, aDisplay, aStatus, aPrimary, aChangeOrigin, aOriginX, aOriginY, aWidth, aHeight, aBitsPerPixel, aGuestScreenInfo)) +# endif /* VBOX_WITH_GLUE */ + +interface IDisplay +{ +# ifndef VBOX_WITH_GLUE + struct IDisplay_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDisplayVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDisplay declaration */ + + +/* Start of struct INetworkAdapter declaration */ +# define INETWORKADAPTER_IID_STR "e9a0c183-7071-4894-93d6-dcbec010fa91" +# define INETWORKADAPTER_IID { \ + 0xe9a0c183, 0x7071, 0x4894, \ + { 0x93, 0xd6, 0xdc, 0xbe, 0xc0, 0x10, 0xfa, 0x91 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INetworkAdapter); +# ifndef VBOX_WITH_GLUE +struct INetworkAdapter_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetAdapterType)(INetworkAdapter *pThis, PRUint32 *adapterType); + nsresult (*SetAdapterType)(INetworkAdapter *pThis, PRUint32 adapterType); + + nsresult (*GetSlot)(INetworkAdapter *pThis, PRUint32 *slot); + + nsresult (*GetEnabled)(INetworkAdapter *pThis, PRBool *enabled); + nsresult (*SetEnabled)(INetworkAdapter *pThis, PRBool enabled); + + nsresult (*GetMACAddress)(INetworkAdapter *pThis, PRUnichar * *MACAddress); + nsresult (*SetMACAddress)(INetworkAdapter *pThis, PRUnichar * MACAddress); + + nsresult (*GetAttachmentType)(INetworkAdapter *pThis, PRUint32 *attachmentType); + nsresult (*SetAttachmentType)(INetworkAdapter *pThis, PRUint32 attachmentType); + + nsresult (*GetBridgedInterface)(INetworkAdapter *pThis, PRUnichar * *bridgedInterface); + nsresult (*SetBridgedInterface)(INetworkAdapter *pThis, PRUnichar * bridgedInterface); + + nsresult (*GetHostOnlyInterface)(INetworkAdapter *pThis, PRUnichar * *hostOnlyInterface); + nsresult (*SetHostOnlyInterface)(INetworkAdapter *pThis, PRUnichar * hostOnlyInterface); + + nsresult (*GetInternalNetwork)(INetworkAdapter *pThis, PRUnichar * *internalNetwork); + nsresult (*SetInternalNetwork)(INetworkAdapter *pThis, PRUnichar * internalNetwork); + + nsresult (*GetNATNetwork)(INetworkAdapter *pThis, PRUnichar * *NATNetwork); + nsresult (*SetNATNetwork)(INetworkAdapter *pThis, PRUnichar * NATNetwork); + + nsresult (*GetGenericDriver)(INetworkAdapter *pThis, PRUnichar * *genericDriver); + nsresult (*SetGenericDriver)(INetworkAdapter *pThis, PRUnichar * genericDriver); + + nsresult (*GetCloudNetwork)(INetworkAdapter *pThis, PRUnichar * *cloudNetwork); + nsresult (*SetCloudNetwork)(INetworkAdapter *pThis, PRUnichar * cloudNetwork); + + nsresult (*GetCableConnected)(INetworkAdapter *pThis, PRBool *cableConnected); + nsresult (*SetCableConnected)(INetworkAdapter *pThis, PRBool cableConnected); + + nsresult (*GetLineSpeed)(INetworkAdapter *pThis, PRUint32 *lineSpeed); + nsresult (*SetLineSpeed)(INetworkAdapter *pThis, PRUint32 lineSpeed); + + nsresult (*GetPromiscModePolicy)(INetworkAdapter *pThis, PRUint32 *promiscModePolicy); + nsresult (*SetPromiscModePolicy)(INetworkAdapter *pThis, PRUint32 promiscModePolicy); + + nsresult (*GetTraceEnabled)(INetworkAdapter *pThis, PRBool *traceEnabled); + nsresult (*SetTraceEnabled)(INetworkAdapter *pThis, PRBool traceEnabled); + + nsresult (*GetTraceFile)(INetworkAdapter *pThis, PRUnichar * *traceFile); + nsresult (*SetTraceFile)(INetworkAdapter *pThis, PRUnichar * traceFile); + + nsresult (*GetNATEngine)(INetworkAdapter *pThis, INATEngine * *NATEngine); + + nsresult (*GetBootPriority)(INetworkAdapter *pThis, PRUint32 *bootPriority); + nsresult (*SetBootPriority)(INetworkAdapter *pThis, PRUint32 bootPriority); + + nsresult (*GetBandwidthGroup)(INetworkAdapter *pThis, IBandwidthGroup * *bandwidthGroup); + nsresult (*SetBandwidthGroup)(INetworkAdapter *pThis, IBandwidthGroup * bandwidthGroup); + + nsresult (*GetInternalAndReservedAttribute1INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetProperty)( + INetworkAdapter *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*SetProperty)( + INetworkAdapter *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetProperties)( + INetworkAdapter *pThis, + PRUnichar * names, + PRUint32 *returnNamesSize, + PRUnichar *** returnNames, + PRUint32 *returnValuesSize, + PRUnichar *** returnValues + ); + + nsresult (*InternalAndReservedMethod1INetworkAdapter)(INetworkAdapter *pThis); + + nsresult (*InternalAndReservedMethod2INetworkAdapter)(INetworkAdapter *pThis); + + nsresult (*InternalAndReservedMethod3INetworkAdapter)(INetworkAdapter *pThis); + + nsresult (*InternalAndReservedMethod4INetworkAdapter)(INetworkAdapter *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct INetworkAdapterVtbl +{ + nsresult (*QueryInterface)(INetworkAdapter *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INetworkAdapter *pThis); + nsrefcnt (*Release)(INetworkAdapter *pThis); + nsresult (*GetAdapterType)(INetworkAdapter *pThis, PRUint32 *adapterType); + nsresult (*SetAdapterType)(INetworkAdapter *pThis, PRUint32 adapterType); + + nsresult (*GetSlot)(INetworkAdapter *pThis, PRUint32 *slot); + + nsresult (*GetEnabled)(INetworkAdapter *pThis, PRBool *enabled); + nsresult (*SetEnabled)(INetworkAdapter *pThis, PRBool enabled); + + nsresult (*GetMACAddress)(INetworkAdapter *pThis, PRUnichar * *MACAddress); + nsresult (*SetMACAddress)(INetworkAdapter *pThis, PRUnichar * MACAddress); + + nsresult (*GetAttachmentType)(INetworkAdapter *pThis, PRUint32 *attachmentType); + nsresult (*SetAttachmentType)(INetworkAdapter *pThis, PRUint32 attachmentType); + + nsresult (*GetBridgedInterface)(INetworkAdapter *pThis, PRUnichar * *bridgedInterface); + nsresult (*SetBridgedInterface)(INetworkAdapter *pThis, PRUnichar * bridgedInterface); + + nsresult (*GetHostOnlyInterface)(INetworkAdapter *pThis, PRUnichar * *hostOnlyInterface); + nsresult (*SetHostOnlyInterface)(INetworkAdapter *pThis, PRUnichar * hostOnlyInterface); + + nsresult (*GetInternalNetwork)(INetworkAdapter *pThis, PRUnichar * *internalNetwork); + nsresult (*SetInternalNetwork)(INetworkAdapter *pThis, PRUnichar * internalNetwork); + + nsresult (*GetNATNetwork)(INetworkAdapter *pThis, PRUnichar * *NATNetwork); + nsresult (*SetNATNetwork)(INetworkAdapter *pThis, PRUnichar * NATNetwork); + + nsresult (*GetGenericDriver)(INetworkAdapter *pThis, PRUnichar * *genericDriver); + nsresult (*SetGenericDriver)(INetworkAdapter *pThis, PRUnichar * genericDriver); + + nsresult (*GetCloudNetwork)(INetworkAdapter *pThis, PRUnichar * *cloudNetwork); + nsresult (*SetCloudNetwork)(INetworkAdapter *pThis, PRUnichar * cloudNetwork); + + nsresult (*GetCableConnected)(INetworkAdapter *pThis, PRBool *cableConnected); + nsresult (*SetCableConnected)(INetworkAdapter *pThis, PRBool cableConnected); + + nsresult (*GetLineSpeed)(INetworkAdapter *pThis, PRUint32 *lineSpeed); + nsresult (*SetLineSpeed)(INetworkAdapter *pThis, PRUint32 lineSpeed); + + nsresult (*GetPromiscModePolicy)(INetworkAdapter *pThis, PRUint32 *promiscModePolicy); + nsresult (*SetPromiscModePolicy)(INetworkAdapter *pThis, PRUint32 promiscModePolicy); + + nsresult (*GetTraceEnabled)(INetworkAdapter *pThis, PRBool *traceEnabled); + nsresult (*SetTraceEnabled)(INetworkAdapter *pThis, PRBool traceEnabled); + + nsresult (*GetTraceFile)(INetworkAdapter *pThis, PRUnichar * *traceFile); + nsresult (*SetTraceFile)(INetworkAdapter *pThis, PRUnichar * traceFile); + + nsresult (*GetNATEngine)(INetworkAdapter *pThis, INATEngine * *NATEngine); + + nsresult (*GetBootPriority)(INetworkAdapter *pThis, PRUint32 *bootPriority); + nsresult (*SetBootPriority)(INetworkAdapter *pThis, PRUint32 bootPriority); + + nsresult (*GetBandwidthGroup)(INetworkAdapter *pThis, IBandwidthGroup * *bandwidthGroup); + nsresult (*SetBandwidthGroup)(INetworkAdapter *pThis, IBandwidthGroup * bandwidthGroup); + + nsresult (*GetInternalAndReservedAttribute1INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8INetworkAdapter)(INetworkAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetProperty)( + INetworkAdapter *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*SetProperty)( + INetworkAdapter *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetProperties)( + INetworkAdapter *pThis, + PRUnichar * names, + PRUint32 *returnNamesSize, + PRUnichar *** returnNames, + PRUint32 *returnValuesSize, + PRUnichar *** returnValues + ); + + nsresult (*InternalAndReservedMethod1INetworkAdapter)(INetworkAdapter *pThis); + + nsresult (*InternalAndReservedMethod2INetworkAdapter)(INetworkAdapter *pThis); + + nsresult (*InternalAndReservedMethod3INetworkAdapter)(INetworkAdapter *pThis); + + nsresult (*InternalAndReservedMethod4INetworkAdapter)(INetworkAdapter *pThis); + +}; +# define INetworkAdapter_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INetworkAdapter_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INetworkAdapter_Release(p) ((p)->lpVtbl->Release(p)) +# define INetworkAdapter_get_AdapterType(p, aAdapterType) ((p)->lpVtbl->GetAdapterType(p, aAdapterType)) +# define INetworkAdapter_GetAdapterType(p, aAdapterType) ((p)->lpVtbl->GetAdapterType(p, aAdapterType)) +# define INetworkAdapter_put_AdapterType(p, aAdapterType) ((p)->lpVtbl->SetAdapterType(p, aAdapterType)) +# define INetworkAdapter_SetAdapterType(p, aAdapterType) ((p)->lpVtbl->SetAdapterType(p, aAdapterType)) +# define INetworkAdapter_get_Slot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define INetworkAdapter_GetSlot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define INetworkAdapter_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define INetworkAdapter_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define INetworkAdapter_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define INetworkAdapter_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define INetworkAdapter_get_MACAddress(p, aMACAddress) ((p)->lpVtbl->GetMACAddress(p, aMACAddress)) +# define INetworkAdapter_GetMACAddress(p, aMACAddress) ((p)->lpVtbl->GetMACAddress(p, aMACAddress)) +# define INetworkAdapter_put_MACAddress(p, aMACAddress) ((p)->lpVtbl->SetMACAddress(p, aMACAddress)) +# define INetworkAdapter_SetMACAddress(p, aMACAddress) ((p)->lpVtbl->SetMACAddress(p, aMACAddress)) +# define INetworkAdapter_get_AttachmentType(p, aAttachmentType) ((p)->lpVtbl->GetAttachmentType(p, aAttachmentType)) +# define INetworkAdapter_GetAttachmentType(p, aAttachmentType) ((p)->lpVtbl->GetAttachmentType(p, aAttachmentType)) +# define INetworkAdapter_put_AttachmentType(p, aAttachmentType) ((p)->lpVtbl->SetAttachmentType(p, aAttachmentType)) +# define INetworkAdapter_SetAttachmentType(p, aAttachmentType) ((p)->lpVtbl->SetAttachmentType(p, aAttachmentType)) +# define INetworkAdapter_get_BridgedInterface(p, aBridgedInterface) ((p)->lpVtbl->GetBridgedInterface(p, aBridgedInterface)) +# define INetworkAdapter_GetBridgedInterface(p, aBridgedInterface) ((p)->lpVtbl->GetBridgedInterface(p, aBridgedInterface)) +# define INetworkAdapter_put_BridgedInterface(p, aBridgedInterface) ((p)->lpVtbl->SetBridgedInterface(p, aBridgedInterface)) +# define INetworkAdapter_SetBridgedInterface(p, aBridgedInterface) ((p)->lpVtbl->SetBridgedInterface(p, aBridgedInterface)) +# define INetworkAdapter_get_HostOnlyInterface(p, aHostOnlyInterface) ((p)->lpVtbl->GetHostOnlyInterface(p, aHostOnlyInterface)) +# define INetworkAdapter_GetHostOnlyInterface(p, aHostOnlyInterface) ((p)->lpVtbl->GetHostOnlyInterface(p, aHostOnlyInterface)) +# define INetworkAdapter_put_HostOnlyInterface(p, aHostOnlyInterface) ((p)->lpVtbl->SetHostOnlyInterface(p, aHostOnlyInterface)) +# define INetworkAdapter_SetHostOnlyInterface(p, aHostOnlyInterface) ((p)->lpVtbl->SetHostOnlyInterface(p, aHostOnlyInterface)) +# define INetworkAdapter_get_InternalNetwork(p, aInternalNetwork) ((p)->lpVtbl->GetInternalNetwork(p, aInternalNetwork)) +# define INetworkAdapter_GetInternalNetwork(p, aInternalNetwork) ((p)->lpVtbl->GetInternalNetwork(p, aInternalNetwork)) +# define INetworkAdapter_put_InternalNetwork(p, aInternalNetwork) ((p)->lpVtbl->SetInternalNetwork(p, aInternalNetwork)) +# define INetworkAdapter_SetInternalNetwork(p, aInternalNetwork) ((p)->lpVtbl->SetInternalNetwork(p, aInternalNetwork)) +# define INetworkAdapter_get_NATNetwork(p, aNATNetwork) ((p)->lpVtbl->GetNATNetwork(p, aNATNetwork)) +# define INetworkAdapter_GetNATNetwork(p, aNATNetwork) ((p)->lpVtbl->GetNATNetwork(p, aNATNetwork)) +# define INetworkAdapter_put_NATNetwork(p, aNATNetwork) ((p)->lpVtbl->SetNATNetwork(p, aNATNetwork)) +# define INetworkAdapter_SetNATNetwork(p, aNATNetwork) ((p)->lpVtbl->SetNATNetwork(p, aNATNetwork)) +# define INetworkAdapter_get_GenericDriver(p, aGenericDriver) ((p)->lpVtbl->GetGenericDriver(p, aGenericDriver)) +# define INetworkAdapter_GetGenericDriver(p, aGenericDriver) ((p)->lpVtbl->GetGenericDriver(p, aGenericDriver)) +# define INetworkAdapter_put_GenericDriver(p, aGenericDriver) ((p)->lpVtbl->SetGenericDriver(p, aGenericDriver)) +# define INetworkAdapter_SetGenericDriver(p, aGenericDriver) ((p)->lpVtbl->SetGenericDriver(p, aGenericDriver)) +# define INetworkAdapter_get_CloudNetwork(p, aCloudNetwork) ((p)->lpVtbl->GetCloudNetwork(p, aCloudNetwork)) +# define INetworkAdapter_GetCloudNetwork(p, aCloudNetwork) ((p)->lpVtbl->GetCloudNetwork(p, aCloudNetwork)) +# define INetworkAdapter_put_CloudNetwork(p, aCloudNetwork) ((p)->lpVtbl->SetCloudNetwork(p, aCloudNetwork)) +# define INetworkAdapter_SetCloudNetwork(p, aCloudNetwork) ((p)->lpVtbl->SetCloudNetwork(p, aCloudNetwork)) +# define INetworkAdapter_get_CableConnected(p, aCableConnected) ((p)->lpVtbl->GetCableConnected(p, aCableConnected)) +# define INetworkAdapter_GetCableConnected(p, aCableConnected) ((p)->lpVtbl->GetCableConnected(p, aCableConnected)) +# define INetworkAdapter_put_CableConnected(p, aCableConnected) ((p)->lpVtbl->SetCableConnected(p, aCableConnected)) +# define INetworkAdapter_SetCableConnected(p, aCableConnected) ((p)->lpVtbl->SetCableConnected(p, aCableConnected)) +# define INetworkAdapter_get_LineSpeed(p, aLineSpeed) ((p)->lpVtbl->GetLineSpeed(p, aLineSpeed)) +# define INetworkAdapter_GetLineSpeed(p, aLineSpeed) ((p)->lpVtbl->GetLineSpeed(p, aLineSpeed)) +# define INetworkAdapter_put_LineSpeed(p, aLineSpeed) ((p)->lpVtbl->SetLineSpeed(p, aLineSpeed)) +# define INetworkAdapter_SetLineSpeed(p, aLineSpeed) ((p)->lpVtbl->SetLineSpeed(p, aLineSpeed)) +# define INetworkAdapter_get_PromiscModePolicy(p, aPromiscModePolicy) ((p)->lpVtbl->GetPromiscModePolicy(p, aPromiscModePolicy)) +# define INetworkAdapter_GetPromiscModePolicy(p, aPromiscModePolicy) ((p)->lpVtbl->GetPromiscModePolicy(p, aPromiscModePolicy)) +# define INetworkAdapter_put_PromiscModePolicy(p, aPromiscModePolicy) ((p)->lpVtbl->SetPromiscModePolicy(p, aPromiscModePolicy)) +# define INetworkAdapter_SetPromiscModePolicy(p, aPromiscModePolicy) ((p)->lpVtbl->SetPromiscModePolicy(p, aPromiscModePolicy)) +# define INetworkAdapter_get_TraceEnabled(p, aTraceEnabled) ((p)->lpVtbl->GetTraceEnabled(p, aTraceEnabled)) +# define INetworkAdapter_GetTraceEnabled(p, aTraceEnabled) ((p)->lpVtbl->GetTraceEnabled(p, aTraceEnabled)) +# define INetworkAdapter_put_TraceEnabled(p, aTraceEnabled) ((p)->lpVtbl->SetTraceEnabled(p, aTraceEnabled)) +# define INetworkAdapter_SetTraceEnabled(p, aTraceEnabled) ((p)->lpVtbl->SetTraceEnabled(p, aTraceEnabled)) +# define INetworkAdapter_get_TraceFile(p, aTraceFile) ((p)->lpVtbl->GetTraceFile(p, aTraceFile)) +# define INetworkAdapter_GetTraceFile(p, aTraceFile) ((p)->lpVtbl->GetTraceFile(p, aTraceFile)) +# define INetworkAdapter_put_TraceFile(p, aTraceFile) ((p)->lpVtbl->SetTraceFile(p, aTraceFile)) +# define INetworkAdapter_SetTraceFile(p, aTraceFile) ((p)->lpVtbl->SetTraceFile(p, aTraceFile)) +# define INetworkAdapter_get_NATEngine(p, aNATEngine) ((p)->lpVtbl->GetNATEngine(p, aNATEngine)) +# define INetworkAdapter_GetNATEngine(p, aNATEngine) ((p)->lpVtbl->GetNATEngine(p, aNATEngine)) +# define INetworkAdapter_get_BootPriority(p, aBootPriority) ((p)->lpVtbl->GetBootPriority(p, aBootPriority)) +# define INetworkAdapter_GetBootPriority(p, aBootPriority) ((p)->lpVtbl->GetBootPriority(p, aBootPriority)) +# define INetworkAdapter_put_BootPriority(p, aBootPriority) ((p)->lpVtbl->SetBootPriority(p, aBootPriority)) +# define INetworkAdapter_SetBootPriority(p, aBootPriority) ((p)->lpVtbl->SetBootPriority(p, aBootPriority)) +# define INetworkAdapter_get_BandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aBandwidthGroup)) +# define INetworkAdapter_GetBandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aBandwidthGroup)) +# define INetworkAdapter_put_BandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->SetBandwidthGroup(p, aBandwidthGroup)) +# define INetworkAdapter_SetBandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->SetBandwidthGroup(p, aBandwidthGroup)) +# define INetworkAdapter_GetProperty(p, aKey, aValue) ((p)->lpVtbl->GetProperty(p, aKey, aValue)) +# define INetworkAdapter_SetProperty(p, aKey, aValue) ((p)->lpVtbl->SetProperty(p, aKey, aValue)) +# define INetworkAdapter_GetProperties(p, aNames, aReturnNames, aReturnValues) ((p)->lpVtbl->GetProperties(p, aNames, aReturnNames, aReturnValues)) +# endif /* VBOX_WITH_GLUE */ + +interface INetworkAdapter +{ +# ifndef VBOX_WITH_GLUE + struct INetworkAdapter_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INetworkAdapterVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INetworkAdapter declaration */ + + +/* Start of struct ISerialPort declaration */ +# define ISERIALPORT_IID_STR "5587d0f6-a227-4f23-8278-2f675eea1bb2" +# define ISERIALPORT_IID { \ + 0x5587d0f6, 0xa227, 0x4f23, \ + { 0x82, 0x78, 0x2f, 0x67, 0x5e, 0xea, 0x1b, 0xb2 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISerialPort); +# ifndef VBOX_WITH_GLUE +struct ISerialPort_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetSlot)(ISerialPort *pThis, PRUint32 *slot); + + nsresult (*GetEnabled)(ISerialPort *pThis, PRBool *enabled); + nsresult (*SetEnabled)(ISerialPort *pThis, PRBool enabled); + + nsresult (*GetIOBase)(ISerialPort *pThis, PRUint32 *IOBase); + nsresult (*SetIOBase)(ISerialPort *pThis, PRUint32 IOBase); + + nsresult (*GetIRQ)(ISerialPort *pThis, PRUint32 *IRQ); + nsresult (*SetIRQ)(ISerialPort *pThis, PRUint32 IRQ); + + nsresult (*GetHostMode)(ISerialPort *pThis, PRUint32 *hostMode); + nsresult (*SetHostMode)(ISerialPort *pThis, PRUint32 hostMode); + + nsresult (*GetServer)(ISerialPort *pThis, PRBool *server); + nsresult (*SetServer)(ISerialPort *pThis, PRBool server); + + nsresult (*GetPath)(ISerialPort *pThis, PRUnichar * *path); + nsresult (*SetPath)(ISerialPort *pThis, PRUnichar * path); + + nsresult (*GetUartType)(ISerialPort *pThis, PRUint32 *uartType); + nsresult (*SetUartType)(ISerialPort *pThis, PRUint32 uartType); + + nsresult (*GetInternalAndReservedAttribute1ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISerialPortVtbl +{ + nsresult (*QueryInterface)(ISerialPort *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISerialPort *pThis); + nsrefcnt (*Release)(ISerialPort *pThis); + nsresult (*GetSlot)(ISerialPort *pThis, PRUint32 *slot); + + nsresult (*GetEnabled)(ISerialPort *pThis, PRBool *enabled); + nsresult (*SetEnabled)(ISerialPort *pThis, PRBool enabled); + + nsresult (*GetIOBase)(ISerialPort *pThis, PRUint32 *IOBase); + nsresult (*SetIOBase)(ISerialPort *pThis, PRUint32 IOBase); + + nsresult (*GetIRQ)(ISerialPort *pThis, PRUint32 *IRQ); + nsresult (*SetIRQ)(ISerialPort *pThis, PRUint32 IRQ); + + nsresult (*GetHostMode)(ISerialPort *pThis, PRUint32 *hostMode); + nsresult (*SetHostMode)(ISerialPort *pThis, PRUint32 hostMode); + + nsresult (*GetServer)(ISerialPort *pThis, PRBool *server); + nsresult (*SetServer)(ISerialPort *pThis, PRBool server); + + nsresult (*GetPath)(ISerialPort *pThis, PRUnichar * *path); + nsresult (*SetPath)(ISerialPort *pThis, PRUnichar * path); + + nsresult (*GetUartType)(ISerialPort *pThis, PRUint32 *uartType); + nsresult (*SetUartType)(ISerialPort *pThis, PRUint32 uartType); + + nsresult (*GetInternalAndReservedAttribute1ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISerialPort)(ISerialPort *pThis, PRUint32 *reserved); + +}; +# define ISerialPort_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISerialPort_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISerialPort_Release(p) ((p)->lpVtbl->Release(p)) +# define ISerialPort_get_Slot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define ISerialPort_GetSlot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define ISerialPort_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define ISerialPort_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define ISerialPort_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define ISerialPort_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define ISerialPort_get_IOBase(p, aIOBase) ((p)->lpVtbl->GetIOBase(p, aIOBase)) +# define ISerialPort_GetIOBase(p, aIOBase) ((p)->lpVtbl->GetIOBase(p, aIOBase)) +# define ISerialPort_put_IOBase(p, aIOBase) ((p)->lpVtbl->SetIOBase(p, aIOBase)) +# define ISerialPort_SetIOBase(p, aIOBase) ((p)->lpVtbl->SetIOBase(p, aIOBase)) +# define ISerialPort_get_IRQ(p, aIRQ) ((p)->lpVtbl->GetIRQ(p, aIRQ)) +# define ISerialPort_GetIRQ(p, aIRQ) ((p)->lpVtbl->GetIRQ(p, aIRQ)) +# define ISerialPort_put_IRQ(p, aIRQ) ((p)->lpVtbl->SetIRQ(p, aIRQ)) +# define ISerialPort_SetIRQ(p, aIRQ) ((p)->lpVtbl->SetIRQ(p, aIRQ)) +# define ISerialPort_get_HostMode(p, aHostMode) ((p)->lpVtbl->GetHostMode(p, aHostMode)) +# define ISerialPort_GetHostMode(p, aHostMode) ((p)->lpVtbl->GetHostMode(p, aHostMode)) +# define ISerialPort_put_HostMode(p, aHostMode) ((p)->lpVtbl->SetHostMode(p, aHostMode)) +# define ISerialPort_SetHostMode(p, aHostMode) ((p)->lpVtbl->SetHostMode(p, aHostMode)) +# define ISerialPort_get_Server(p, aServer) ((p)->lpVtbl->GetServer(p, aServer)) +# define ISerialPort_GetServer(p, aServer) ((p)->lpVtbl->GetServer(p, aServer)) +# define ISerialPort_put_Server(p, aServer) ((p)->lpVtbl->SetServer(p, aServer)) +# define ISerialPort_SetServer(p, aServer) ((p)->lpVtbl->SetServer(p, aServer)) +# define ISerialPort_get_Path(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define ISerialPort_GetPath(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define ISerialPort_put_Path(p, aPath) ((p)->lpVtbl->SetPath(p, aPath)) +# define ISerialPort_SetPath(p, aPath) ((p)->lpVtbl->SetPath(p, aPath)) +# define ISerialPort_get_UartType(p, aUartType) ((p)->lpVtbl->GetUartType(p, aUartType)) +# define ISerialPort_GetUartType(p, aUartType) ((p)->lpVtbl->GetUartType(p, aUartType)) +# define ISerialPort_put_UartType(p, aUartType) ((p)->lpVtbl->SetUartType(p, aUartType)) +# define ISerialPort_SetUartType(p, aUartType) ((p)->lpVtbl->SetUartType(p, aUartType)) +# endif /* VBOX_WITH_GLUE */ + +interface ISerialPort +{ +# ifndef VBOX_WITH_GLUE + struct ISerialPort_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISerialPortVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISerialPort declaration */ + + +/* Start of struct IParallelPort declaration */ +# define IPARALLELPORT_IID_STR "788b87df-7708-444b-9eef-c116ce423d39" +# define IPARALLELPORT_IID { \ + 0x788b87df, 0x7708, 0x444b, \ + { 0x9e, 0xef, 0xc1, 0x16, 0xce, 0x42, 0x3d, 0x39 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IParallelPort); +# ifndef VBOX_WITH_GLUE +struct IParallelPort_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetSlot)(IParallelPort *pThis, PRUint32 *slot); + + nsresult (*GetEnabled)(IParallelPort *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IParallelPort *pThis, PRBool enabled); + + nsresult (*GetIOBase)(IParallelPort *pThis, PRUint32 *IOBase); + nsresult (*SetIOBase)(IParallelPort *pThis, PRUint32 IOBase); + + nsresult (*GetIRQ)(IParallelPort *pThis, PRUint32 *IRQ); + nsresult (*SetIRQ)(IParallelPort *pThis, PRUint32 IRQ); + + nsresult (*GetPath)(IParallelPort *pThis, PRUnichar * *path); + nsresult (*SetPath)(IParallelPort *pThis, PRUnichar * path); + + nsresult (*GetInternalAndReservedAttribute1IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IParallelPortVtbl +{ + nsresult (*QueryInterface)(IParallelPort *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IParallelPort *pThis); + nsrefcnt (*Release)(IParallelPort *pThis); + nsresult (*GetSlot)(IParallelPort *pThis, PRUint32 *slot); + + nsresult (*GetEnabled)(IParallelPort *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IParallelPort *pThis, PRBool enabled); + + nsresult (*GetIOBase)(IParallelPort *pThis, PRUint32 *IOBase); + nsresult (*SetIOBase)(IParallelPort *pThis, PRUint32 IOBase); + + nsresult (*GetIRQ)(IParallelPort *pThis, PRUint32 *IRQ); + nsresult (*SetIRQ)(IParallelPort *pThis, PRUint32 IRQ); + + nsresult (*GetPath)(IParallelPort *pThis, PRUnichar * *path); + nsresult (*SetPath)(IParallelPort *pThis, PRUnichar * path); + + nsresult (*GetInternalAndReservedAttribute1IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IParallelPort)(IParallelPort *pThis, PRUint32 *reserved); + +}; +# define IParallelPort_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IParallelPort_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IParallelPort_Release(p) ((p)->lpVtbl->Release(p)) +# define IParallelPort_get_Slot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define IParallelPort_GetSlot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define IParallelPort_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IParallelPort_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IParallelPort_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IParallelPort_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IParallelPort_get_IOBase(p, aIOBase) ((p)->lpVtbl->GetIOBase(p, aIOBase)) +# define IParallelPort_GetIOBase(p, aIOBase) ((p)->lpVtbl->GetIOBase(p, aIOBase)) +# define IParallelPort_put_IOBase(p, aIOBase) ((p)->lpVtbl->SetIOBase(p, aIOBase)) +# define IParallelPort_SetIOBase(p, aIOBase) ((p)->lpVtbl->SetIOBase(p, aIOBase)) +# define IParallelPort_get_IRQ(p, aIRQ) ((p)->lpVtbl->GetIRQ(p, aIRQ)) +# define IParallelPort_GetIRQ(p, aIRQ) ((p)->lpVtbl->GetIRQ(p, aIRQ)) +# define IParallelPort_put_IRQ(p, aIRQ) ((p)->lpVtbl->SetIRQ(p, aIRQ)) +# define IParallelPort_SetIRQ(p, aIRQ) ((p)->lpVtbl->SetIRQ(p, aIRQ)) +# define IParallelPort_get_Path(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IParallelPort_GetPath(p, aPath) ((p)->lpVtbl->GetPath(p, aPath)) +# define IParallelPort_put_Path(p, aPath) ((p)->lpVtbl->SetPath(p, aPath)) +# define IParallelPort_SetPath(p, aPath) ((p)->lpVtbl->SetPath(p, aPath)) +# endif /* VBOX_WITH_GLUE */ + +interface IParallelPort +{ +# ifndef VBOX_WITH_GLUE + struct IParallelPort_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IParallelPortVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IParallelPort declaration */ + + +/* Start of struct IMachineDebugger declaration */ +# define IMACHINEDEBUGGER_IID_STR "00ae6af4-00a7-4104-0009-49bc00b2da80" +# define IMACHINEDEBUGGER_IID { \ + 0x00ae6af4, 0x00a7, 0x4104, \ + { 0x00, 0x09, 0x49, 0xbc, 0x00, 0xb2, 0xda, 0x80 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMachineDebugger); +# ifndef VBOX_WITH_GLUE +struct IMachineDebugger_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetSingleStep)(IMachineDebugger *pThis, PRBool *singleStep); + nsresult (*SetSingleStep)(IMachineDebugger *pThis, PRBool singleStep); + + nsresult (*GetRecompileUser)(IMachineDebugger *pThis, PRBool *recompileUser); + nsresult (*SetRecompileUser)(IMachineDebugger *pThis, PRBool recompileUser); + + nsresult (*GetRecompileSupervisor)(IMachineDebugger *pThis, PRBool *recompileSupervisor); + nsresult (*SetRecompileSupervisor)(IMachineDebugger *pThis, PRBool recompileSupervisor); + + nsresult (*GetExecuteAllInIEM)(IMachineDebugger *pThis, PRBool *executeAllInIEM); + nsresult (*SetExecuteAllInIEM)(IMachineDebugger *pThis, PRBool executeAllInIEM); + + nsresult (*GetPATMEnabled)(IMachineDebugger *pThis, PRBool *PATMEnabled); + nsresult (*SetPATMEnabled)(IMachineDebugger *pThis, PRBool PATMEnabled); + + nsresult (*GetCSAMEnabled)(IMachineDebugger *pThis, PRBool *CSAMEnabled); + nsresult (*SetCSAMEnabled)(IMachineDebugger *pThis, PRBool CSAMEnabled); + + nsresult (*GetLogEnabled)(IMachineDebugger *pThis, PRBool *logEnabled); + nsresult (*SetLogEnabled)(IMachineDebugger *pThis, PRBool logEnabled); + + nsresult (*GetLogDbgFlags)(IMachineDebugger *pThis, PRUnichar * *logDbgFlags); + + nsresult (*GetLogDbgGroups)(IMachineDebugger *pThis, PRUnichar * *logDbgGroups); + + nsresult (*GetLogDbgDestinations)(IMachineDebugger *pThis, PRUnichar * *logDbgDestinations); + + nsresult (*GetLogRelFlags)(IMachineDebugger *pThis, PRUnichar * *logRelFlags); + + nsresult (*GetLogRelGroups)(IMachineDebugger *pThis, PRUnichar * *logRelGroups); + + nsresult (*GetLogRelDestinations)(IMachineDebugger *pThis, PRUnichar * *logRelDestinations); + + nsresult (*GetExecutionEngine)(IMachineDebugger *pThis, PRUint32 *executionEngine); + + nsresult (*GetHWVirtExEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExEnabled); + + nsresult (*GetHWVirtExNestedPagingEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExNestedPagingEnabled); + + nsresult (*GetHWVirtExVPIDEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExVPIDEnabled); + + nsresult (*GetHWVirtExUXEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExUXEnabled); + + nsresult (*GetOSName)(IMachineDebugger *pThis, PRUnichar * *OSName); + + nsresult (*GetOSVersion)(IMachineDebugger *pThis, PRUnichar * *OSVersion); + + nsresult (*GetPAEEnabled)(IMachineDebugger *pThis, PRBool *PAEEnabled); + + nsresult (*GetVirtualTimeRate)(IMachineDebugger *pThis, PRUint32 *virtualTimeRate); + nsresult (*SetVirtualTimeRate)(IMachineDebugger *pThis, PRUint32 virtualTimeRate); + + nsresult (*GetVM)(IMachineDebugger *pThis, PRInt64 *VM); + + nsresult (*GetUptime)(IMachineDebugger *pThis, PRInt64 *uptime); + + nsresult (*GetInternalAndReservedAttribute1IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*DumpGuestCore)( + IMachineDebugger *pThis, + PRUnichar * filename, + PRUnichar * compression + ); + + nsresult (*DumpHostProcessCore)( + IMachineDebugger *pThis, + PRUnichar * filename, + PRUnichar * compression + ); + + nsresult (*Info)( + IMachineDebugger *pThis, + PRUnichar * name, + PRUnichar * args, + PRUnichar * * info + ); + + nsresult (*InjectNMI)(IMachineDebugger *pThis ); + + nsresult (*ModifyLogGroups)( + IMachineDebugger *pThis, + PRUnichar * settings + ); + + nsresult (*ModifyLogFlags)( + IMachineDebugger *pThis, + PRUnichar * settings + ); + + nsresult (*ModifyLogDestinations)( + IMachineDebugger *pThis, + PRUnichar * settings + ); + + nsresult (*ReadPhysicalMemory)( + IMachineDebugger *pThis, + PRInt64 address, + PRUint32 size, + PRUint32 *bytesSize, + PRUint8** bytes + ); + + nsresult (*WritePhysicalMemory)( + IMachineDebugger *pThis, + PRInt64 address, + PRUint32 size, + PRUint32 bytesSize, + PRUint8* bytes + ); + + nsresult (*ReadVirtualMemory)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRInt64 address, + PRUint32 size, + PRUint32 *bytesSize, + PRUint8** bytes + ); + + nsresult (*WriteVirtualMemory)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRInt64 address, + PRUint32 size, + PRUint32 bytesSize, + PRUint8* bytes + ); + + nsresult (*LoadPlugIn)( + IMachineDebugger *pThis, + PRUnichar * name, + PRUnichar * * plugInName + ); + + nsresult (*UnloadPlugIn)( + IMachineDebugger *pThis, + PRUnichar * name + ); + + nsresult (*DetectOS)( + IMachineDebugger *pThis, + PRUnichar * * os + ); + + nsresult (*QueryOSKernelLog)( + IMachineDebugger *pThis, + PRUint32 maxMessages, + PRUnichar * * dmesg + ); + + nsresult (*GetRegister)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*GetRegisters)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*SetRegister)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*SetRegisters)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*DumpGuestStack)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUnichar * * stack + ); + + nsresult (*ResetStats)( + IMachineDebugger *pThis, + PRUnichar * pattern + ); + + nsresult (*DumpStats)( + IMachineDebugger *pThis, + PRUnichar * pattern + ); + + nsresult (*GetStats)( + IMachineDebugger *pThis, + PRUnichar * pattern, + PRBool withDescriptions, + PRUnichar * * stats + ); + + nsresult (*GetCPULoad)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUint32 * pctExecuting, + PRUint32 * pctHalted, + PRUint32 * pctOther, + PRInt64 * msInterval + ); + + nsresult (*InternalAndReservedMethod1IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod2IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod3IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod4IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod5IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod6IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod7IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod8IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod9IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod10IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod11IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod12IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod13IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod14IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod15IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod16IMachineDebugger)(IMachineDebugger *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMachineDebuggerVtbl +{ + nsresult (*QueryInterface)(IMachineDebugger *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMachineDebugger *pThis); + nsrefcnt (*Release)(IMachineDebugger *pThis); + nsresult (*GetSingleStep)(IMachineDebugger *pThis, PRBool *singleStep); + nsresult (*SetSingleStep)(IMachineDebugger *pThis, PRBool singleStep); + + nsresult (*GetRecompileUser)(IMachineDebugger *pThis, PRBool *recompileUser); + nsresult (*SetRecompileUser)(IMachineDebugger *pThis, PRBool recompileUser); + + nsresult (*GetRecompileSupervisor)(IMachineDebugger *pThis, PRBool *recompileSupervisor); + nsresult (*SetRecompileSupervisor)(IMachineDebugger *pThis, PRBool recompileSupervisor); + + nsresult (*GetExecuteAllInIEM)(IMachineDebugger *pThis, PRBool *executeAllInIEM); + nsresult (*SetExecuteAllInIEM)(IMachineDebugger *pThis, PRBool executeAllInIEM); + + nsresult (*GetPATMEnabled)(IMachineDebugger *pThis, PRBool *PATMEnabled); + nsresult (*SetPATMEnabled)(IMachineDebugger *pThis, PRBool PATMEnabled); + + nsresult (*GetCSAMEnabled)(IMachineDebugger *pThis, PRBool *CSAMEnabled); + nsresult (*SetCSAMEnabled)(IMachineDebugger *pThis, PRBool CSAMEnabled); + + nsresult (*GetLogEnabled)(IMachineDebugger *pThis, PRBool *logEnabled); + nsresult (*SetLogEnabled)(IMachineDebugger *pThis, PRBool logEnabled); + + nsresult (*GetLogDbgFlags)(IMachineDebugger *pThis, PRUnichar * *logDbgFlags); + + nsresult (*GetLogDbgGroups)(IMachineDebugger *pThis, PRUnichar * *logDbgGroups); + + nsresult (*GetLogDbgDestinations)(IMachineDebugger *pThis, PRUnichar * *logDbgDestinations); + + nsresult (*GetLogRelFlags)(IMachineDebugger *pThis, PRUnichar * *logRelFlags); + + nsresult (*GetLogRelGroups)(IMachineDebugger *pThis, PRUnichar * *logRelGroups); + + nsresult (*GetLogRelDestinations)(IMachineDebugger *pThis, PRUnichar * *logRelDestinations); + + nsresult (*GetExecutionEngine)(IMachineDebugger *pThis, PRUint32 *executionEngine); + + nsresult (*GetHWVirtExEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExEnabled); + + nsresult (*GetHWVirtExNestedPagingEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExNestedPagingEnabled); + + nsresult (*GetHWVirtExVPIDEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExVPIDEnabled); + + nsresult (*GetHWVirtExUXEnabled)(IMachineDebugger *pThis, PRBool *HWVirtExUXEnabled); + + nsresult (*GetOSName)(IMachineDebugger *pThis, PRUnichar * *OSName); + + nsresult (*GetOSVersion)(IMachineDebugger *pThis, PRUnichar * *OSVersion); + + nsresult (*GetPAEEnabled)(IMachineDebugger *pThis, PRBool *PAEEnabled); + + nsresult (*GetVirtualTimeRate)(IMachineDebugger *pThis, PRUint32 *virtualTimeRate); + nsresult (*SetVirtualTimeRate)(IMachineDebugger *pThis, PRUint32 virtualTimeRate); + + nsresult (*GetVM)(IMachineDebugger *pThis, PRInt64 *VM); + + nsresult (*GetUptime)(IMachineDebugger *pThis, PRInt64 *uptime); + + nsresult (*GetInternalAndReservedAttribute1IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16IMachineDebugger)(IMachineDebugger *pThis, PRUint32 *reserved); + + nsresult (*DumpGuestCore)( + IMachineDebugger *pThis, + PRUnichar * filename, + PRUnichar * compression + ); + + nsresult (*DumpHostProcessCore)( + IMachineDebugger *pThis, + PRUnichar * filename, + PRUnichar * compression + ); + + nsresult (*Info)( + IMachineDebugger *pThis, + PRUnichar * name, + PRUnichar * args, + PRUnichar * * info + ); + + nsresult (*InjectNMI)(IMachineDebugger *pThis ); + + nsresult (*ModifyLogGroups)( + IMachineDebugger *pThis, + PRUnichar * settings + ); + + nsresult (*ModifyLogFlags)( + IMachineDebugger *pThis, + PRUnichar * settings + ); + + nsresult (*ModifyLogDestinations)( + IMachineDebugger *pThis, + PRUnichar * settings + ); + + nsresult (*ReadPhysicalMemory)( + IMachineDebugger *pThis, + PRInt64 address, + PRUint32 size, + PRUint32 *bytesSize, + PRUint8** bytes + ); + + nsresult (*WritePhysicalMemory)( + IMachineDebugger *pThis, + PRInt64 address, + PRUint32 size, + PRUint32 bytesSize, + PRUint8* bytes + ); + + nsresult (*ReadVirtualMemory)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRInt64 address, + PRUint32 size, + PRUint32 *bytesSize, + PRUint8** bytes + ); + + nsresult (*WriteVirtualMemory)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRInt64 address, + PRUint32 size, + PRUint32 bytesSize, + PRUint8* bytes + ); + + nsresult (*LoadPlugIn)( + IMachineDebugger *pThis, + PRUnichar * name, + PRUnichar * * plugInName + ); + + nsresult (*UnloadPlugIn)( + IMachineDebugger *pThis, + PRUnichar * name + ); + + nsresult (*DetectOS)( + IMachineDebugger *pThis, + PRUnichar * * os + ); + + nsresult (*QueryOSKernelLog)( + IMachineDebugger *pThis, + PRUint32 maxMessages, + PRUnichar * * dmesg + ); + + nsresult (*GetRegister)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*GetRegisters)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUint32 *namesSize, + PRUnichar *** names, + PRUint32 *valuesSize, + PRUnichar *** values + ); + + nsresult (*SetRegister)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*SetRegisters)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*DumpGuestStack)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUnichar * * stack + ); + + nsresult (*ResetStats)( + IMachineDebugger *pThis, + PRUnichar * pattern + ); + + nsresult (*DumpStats)( + IMachineDebugger *pThis, + PRUnichar * pattern + ); + + nsresult (*GetStats)( + IMachineDebugger *pThis, + PRUnichar * pattern, + PRBool withDescriptions, + PRUnichar * * stats + ); + + nsresult (*GetCPULoad)( + IMachineDebugger *pThis, + PRUint32 cpuId, + PRUint32 * pctExecuting, + PRUint32 * pctHalted, + PRUint32 * pctOther, + PRInt64 * msInterval + ); + + nsresult (*InternalAndReservedMethod1IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod2IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod3IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod4IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod5IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod6IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod7IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod8IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod9IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod10IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod11IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod12IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod13IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod14IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod15IMachineDebugger)(IMachineDebugger *pThis); + + nsresult (*InternalAndReservedMethod16IMachineDebugger)(IMachineDebugger *pThis); + +}; +# define IMachineDebugger_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMachineDebugger_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMachineDebugger_Release(p) ((p)->lpVtbl->Release(p)) +# define IMachineDebugger_get_SingleStep(p, aSingleStep) ((p)->lpVtbl->GetSingleStep(p, aSingleStep)) +# define IMachineDebugger_GetSingleStep(p, aSingleStep) ((p)->lpVtbl->GetSingleStep(p, aSingleStep)) +# define IMachineDebugger_put_SingleStep(p, aSingleStep) ((p)->lpVtbl->SetSingleStep(p, aSingleStep)) +# define IMachineDebugger_SetSingleStep(p, aSingleStep) ((p)->lpVtbl->SetSingleStep(p, aSingleStep)) +# define IMachineDebugger_get_RecompileUser(p, aRecompileUser) ((p)->lpVtbl->GetRecompileUser(p, aRecompileUser)) +# define IMachineDebugger_GetRecompileUser(p, aRecompileUser) ((p)->lpVtbl->GetRecompileUser(p, aRecompileUser)) +# define IMachineDebugger_put_RecompileUser(p, aRecompileUser) ((p)->lpVtbl->SetRecompileUser(p, aRecompileUser)) +# define IMachineDebugger_SetRecompileUser(p, aRecompileUser) ((p)->lpVtbl->SetRecompileUser(p, aRecompileUser)) +# define IMachineDebugger_get_RecompileSupervisor(p, aRecompileSupervisor) ((p)->lpVtbl->GetRecompileSupervisor(p, aRecompileSupervisor)) +# define IMachineDebugger_GetRecompileSupervisor(p, aRecompileSupervisor) ((p)->lpVtbl->GetRecompileSupervisor(p, aRecompileSupervisor)) +# define IMachineDebugger_put_RecompileSupervisor(p, aRecompileSupervisor) ((p)->lpVtbl->SetRecompileSupervisor(p, aRecompileSupervisor)) +# define IMachineDebugger_SetRecompileSupervisor(p, aRecompileSupervisor) ((p)->lpVtbl->SetRecompileSupervisor(p, aRecompileSupervisor)) +# define IMachineDebugger_get_ExecuteAllInIEM(p, aExecuteAllInIEM) ((p)->lpVtbl->GetExecuteAllInIEM(p, aExecuteAllInIEM)) +# define IMachineDebugger_GetExecuteAllInIEM(p, aExecuteAllInIEM) ((p)->lpVtbl->GetExecuteAllInIEM(p, aExecuteAllInIEM)) +# define IMachineDebugger_put_ExecuteAllInIEM(p, aExecuteAllInIEM) ((p)->lpVtbl->SetExecuteAllInIEM(p, aExecuteAllInIEM)) +# define IMachineDebugger_SetExecuteAllInIEM(p, aExecuteAllInIEM) ((p)->lpVtbl->SetExecuteAllInIEM(p, aExecuteAllInIEM)) +# define IMachineDebugger_get_PATMEnabled(p, aPATMEnabled) ((p)->lpVtbl->GetPATMEnabled(p, aPATMEnabled)) +# define IMachineDebugger_GetPATMEnabled(p, aPATMEnabled) ((p)->lpVtbl->GetPATMEnabled(p, aPATMEnabled)) +# define IMachineDebugger_put_PATMEnabled(p, aPATMEnabled) ((p)->lpVtbl->SetPATMEnabled(p, aPATMEnabled)) +# define IMachineDebugger_SetPATMEnabled(p, aPATMEnabled) ((p)->lpVtbl->SetPATMEnabled(p, aPATMEnabled)) +# define IMachineDebugger_get_CSAMEnabled(p, aCSAMEnabled) ((p)->lpVtbl->GetCSAMEnabled(p, aCSAMEnabled)) +# define IMachineDebugger_GetCSAMEnabled(p, aCSAMEnabled) ((p)->lpVtbl->GetCSAMEnabled(p, aCSAMEnabled)) +# define IMachineDebugger_put_CSAMEnabled(p, aCSAMEnabled) ((p)->lpVtbl->SetCSAMEnabled(p, aCSAMEnabled)) +# define IMachineDebugger_SetCSAMEnabled(p, aCSAMEnabled) ((p)->lpVtbl->SetCSAMEnabled(p, aCSAMEnabled)) +# define IMachineDebugger_get_LogEnabled(p, aLogEnabled) ((p)->lpVtbl->GetLogEnabled(p, aLogEnabled)) +# define IMachineDebugger_GetLogEnabled(p, aLogEnabled) ((p)->lpVtbl->GetLogEnabled(p, aLogEnabled)) +# define IMachineDebugger_put_LogEnabled(p, aLogEnabled) ((p)->lpVtbl->SetLogEnabled(p, aLogEnabled)) +# define IMachineDebugger_SetLogEnabled(p, aLogEnabled) ((p)->lpVtbl->SetLogEnabled(p, aLogEnabled)) +# define IMachineDebugger_get_LogDbgFlags(p, aLogDbgFlags) ((p)->lpVtbl->GetLogDbgFlags(p, aLogDbgFlags)) +# define IMachineDebugger_GetLogDbgFlags(p, aLogDbgFlags) ((p)->lpVtbl->GetLogDbgFlags(p, aLogDbgFlags)) +# define IMachineDebugger_get_LogDbgGroups(p, aLogDbgGroups) ((p)->lpVtbl->GetLogDbgGroups(p, aLogDbgGroups)) +# define IMachineDebugger_GetLogDbgGroups(p, aLogDbgGroups) ((p)->lpVtbl->GetLogDbgGroups(p, aLogDbgGroups)) +# define IMachineDebugger_get_LogDbgDestinations(p, aLogDbgDestinations) ((p)->lpVtbl->GetLogDbgDestinations(p, aLogDbgDestinations)) +# define IMachineDebugger_GetLogDbgDestinations(p, aLogDbgDestinations) ((p)->lpVtbl->GetLogDbgDestinations(p, aLogDbgDestinations)) +# define IMachineDebugger_get_LogRelFlags(p, aLogRelFlags) ((p)->lpVtbl->GetLogRelFlags(p, aLogRelFlags)) +# define IMachineDebugger_GetLogRelFlags(p, aLogRelFlags) ((p)->lpVtbl->GetLogRelFlags(p, aLogRelFlags)) +# define IMachineDebugger_get_LogRelGroups(p, aLogRelGroups) ((p)->lpVtbl->GetLogRelGroups(p, aLogRelGroups)) +# define IMachineDebugger_GetLogRelGroups(p, aLogRelGroups) ((p)->lpVtbl->GetLogRelGroups(p, aLogRelGroups)) +# define IMachineDebugger_get_LogRelDestinations(p, aLogRelDestinations) ((p)->lpVtbl->GetLogRelDestinations(p, aLogRelDestinations)) +# define IMachineDebugger_GetLogRelDestinations(p, aLogRelDestinations) ((p)->lpVtbl->GetLogRelDestinations(p, aLogRelDestinations)) +# define IMachineDebugger_get_ExecutionEngine(p, aExecutionEngine) ((p)->lpVtbl->GetExecutionEngine(p, aExecutionEngine)) +# define IMachineDebugger_GetExecutionEngine(p, aExecutionEngine) ((p)->lpVtbl->GetExecutionEngine(p, aExecutionEngine)) +# define IMachineDebugger_get_HWVirtExEnabled(p, aHWVirtExEnabled) ((p)->lpVtbl->GetHWVirtExEnabled(p, aHWVirtExEnabled)) +# define IMachineDebugger_GetHWVirtExEnabled(p, aHWVirtExEnabled) ((p)->lpVtbl->GetHWVirtExEnabled(p, aHWVirtExEnabled)) +# define IMachineDebugger_get_HWVirtExNestedPagingEnabled(p, aHWVirtExNestedPagingEnabled) ((p)->lpVtbl->GetHWVirtExNestedPagingEnabled(p, aHWVirtExNestedPagingEnabled)) +# define IMachineDebugger_GetHWVirtExNestedPagingEnabled(p, aHWVirtExNestedPagingEnabled) ((p)->lpVtbl->GetHWVirtExNestedPagingEnabled(p, aHWVirtExNestedPagingEnabled)) +# define IMachineDebugger_get_HWVirtExVPIDEnabled(p, aHWVirtExVPIDEnabled) ((p)->lpVtbl->GetHWVirtExVPIDEnabled(p, aHWVirtExVPIDEnabled)) +# define IMachineDebugger_GetHWVirtExVPIDEnabled(p, aHWVirtExVPIDEnabled) ((p)->lpVtbl->GetHWVirtExVPIDEnabled(p, aHWVirtExVPIDEnabled)) +# define IMachineDebugger_get_HWVirtExUXEnabled(p, aHWVirtExUXEnabled) ((p)->lpVtbl->GetHWVirtExUXEnabled(p, aHWVirtExUXEnabled)) +# define IMachineDebugger_GetHWVirtExUXEnabled(p, aHWVirtExUXEnabled) ((p)->lpVtbl->GetHWVirtExUXEnabled(p, aHWVirtExUXEnabled)) +# define IMachineDebugger_get_OSName(p, aOSName) ((p)->lpVtbl->GetOSName(p, aOSName)) +# define IMachineDebugger_GetOSName(p, aOSName) ((p)->lpVtbl->GetOSName(p, aOSName)) +# define IMachineDebugger_get_OSVersion(p, aOSVersion) ((p)->lpVtbl->GetOSVersion(p, aOSVersion)) +# define IMachineDebugger_GetOSVersion(p, aOSVersion) ((p)->lpVtbl->GetOSVersion(p, aOSVersion)) +# define IMachineDebugger_get_PAEEnabled(p, aPAEEnabled) ((p)->lpVtbl->GetPAEEnabled(p, aPAEEnabled)) +# define IMachineDebugger_GetPAEEnabled(p, aPAEEnabled) ((p)->lpVtbl->GetPAEEnabled(p, aPAEEnabled)) +# define IMachineDebugger_get_VirtualTimeRate(p, aVirtualTimeRate) ((p)->lpVtbl->GetVirtualTimeRate(p, aVirtualTimeRate)) +# define IMachineDebugger_GetVirtualTimeRate(p, aVirtualTimeRate) ((p)->lpVtbl->GetVirtualTimeRate(p, aVirtualTimeRate)) +# define IMachineDebugger_put_VirtualTimeRate(p, aVirtualTimeRate) ((p)->lpVtbl->SetVirtualTimeRate(p, aVirtualTimeRate)) +# define IMachineDebugger_SetVirtualTimeRate(p, aVirtualTimeRate) ((p)->lpVtbl->SetVirtualTimeRate(p, aVirtualTimeRate)) +# define IMachineDebugger_get_VM(p, aVM) ((p)->lpVtbl->GetVM(p, aVM)) +# define IMachineDebugger_GetVM(p, aVM) ((p)->lpVtbl->GetVM(p, aVM)) +# define IMachineDebugger_get_Uptime(p, aUptime) ((p)->lpVtbl->GetUptime(p, aUptime)) +# define IMachineDebugger_GetUptime(p, aUptime) ((p)->lpVtbl->GetUptime(p, aUptime)) +# define IMachineDebugger_DumpGuestCore(p, aFilename, aCompression) ((p)->lpVtbl->DumpGuestCore(p, aFilename, aCompression)) +# define IMachineDebugger_DumpHostProcessCore(p, aFilename, aCompression) ((p)->lpVtbl->DumpHostProcessCore(p, aFilename, aCompression)) +# define IMachineDebugger_Info(p, aName, aArgs, aInfo) ((p)->lpVtbl->Info(p, aName, aArgs, aInfo)) +# define IMachineDebugger_InjectNMI(p) ((p)->lpVtbl->InjectNMI(p)) +# define IMachineDebugger_ModifyLogGroups(p, aSettings) ((p)->lpVtbl->ModifyLogGroups(p, aSettings)) +# define IMachineDebugger_ModifyLogFlags(p, aSettings) ((p)->lpVtbl->ModifyLogFlags(p, aSettings)) +# define IMachineDebugger_ModifyLogDestinations(p, aSettings) ((p)->lpVtbl->ModifyLogDestinations(p, aSettings)) +# define IMachineDebugger_ReadPhysicalMemory(p, aAddress, aSize, aBytes) ((p)->lpVtbl->ReadPhysicalMemory(p, aAddress, aSize, aBytes)) +# define IMachineDebugger_WritePhysicalMemory(p, aAddress, aSize, aBytes) ((p)->lpVtbl->WritePhysicalMemory(p, aAddress, aSize, aBytes)) +# define IMachineDebugger_ReadVirtualMemory(p, aCpuId, aAddress, aSize, aBytes) ((p)->lpVtbl->ReadVirtualMemory(p, aCpuId, aAddress, aSize, aBytes)) +# define IMachineDebugger_WriteVirtualMemory(p, aCpuId, aAddress, aSize, aBytes) ((p)->lpVtbl->WriteVirtualMemory(p, aCpuId, aAddress, aSize, aBytes)) +# define IMachineDebugger_LoadPlugIn(p, aName, aPlugInName) ((p)->lpVtbl->LoadPlugIn(p, aName, aPlugInName)) +# define IMachineDebugger_UnloadPlugIn(p, aName) ((p)->lpVtbl->UnloadPlugIn(p, aName)) +# define IMachineDebugger_DetectOS(p, aOs) ((p)->lpVtbl->DetectOS(p, aOs)) +# define IMachineDebugger_QueryOSKernelLog(p, aMaxMessages, aDmesg) ((p)->lpVtbl->QueryOSKernelLog(p, aMaxMessages, aDmesg)) +# define IMachineDebugger_GetRegister(p, aCpuId, aName, aValue) ((p)->lpVtbl->GetRegister(p, aCpuId, aName, aValue)) +# define IMachineDebugger_GetRegisters(p, aCpuId, aNames, aValues) ((p)->lpVtbl->GetRegisters(p, aCpuId, aNames, aValues)) +# define IMachineDebugger_SetRegister(p, aCpuId, aName, aValue) ((p)->lpVtbl->SetRegister(p, aCpuId, aName, aValue)) +# define IMachineDebugger_SetRegisters(p, aCpuId, aNames, aValues) ((p)->lpVtbl->SetRegisters(p, aCpuId, aNames, aValues)) +# define IMachineDebugger_DumpGuestStack(p, aCpuId, aStack) ((p)->lpVtbl->DumpGuestStack(p, aCpuId, aStack)) +# define IMachineDebugger_ResetStats(p, aPattern) ((p)->lpVtbl->ResetStats(p, aPattern)) +# define IMachineDebugger_DumpStats(p, aPattern) ((p)->lpVtbl->DumpStats(p, aPattern)) +# define IMachineDebugger_GetStats(p, aPattern, aWithDescriptions, aStats) ((p)->lpVtbl->GetStats(p, aPattern, aWithDescriptions, aStats)) +# define IMachineDebugger_GetCPULoad(p, aCpuId, aPctExecuting, aPctHalted, aPctOther, aMsInterval) ((p)->lpVtbl->GetCPULoad(p, aCpuId, aPctExecuting, aPctHalted, aPctOther, aMsInterval)) +# endif /* VBOX_WITH_GLUE */ + +interface IMachineDebugger +{ +# ifndef VBOX_WITH_GLUE + struct IMachineDebugger_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMachineDebuggerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMachineDebugger declaration */ + + +/* Start of struct IUSBDeviceFilters declaration */ +# define IUSBDEVICEFILTERS_IID_STR "9709db9b-3346-49d6-8f1c-41b0c4784ff2" +# define IUSBDEVICEFILTERS_IID { \ + 0x9709db9b, 0x3346, 0x49d6, \ + { 0x8f, 0x1c, 0x41, 0xb0, 0xc4, 0x78, 0x4f, 0xf2 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBDeviceFilters); +# ifndef VBOX_WITH_GLUE +struct IUSBDeviceFilters_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetDeviceFilters)(IUSBDeviceFilters *pThis, PRUint32 *deviceFiltersSize, IUSBDeviceFilter * **deviceFilters); + + nsresult (*GetInternalAndReservedAttribute1IUSBDeviceFilters)(IUSBDeviceFilters *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDeviceFilters)(IUSBDeviceFilters *pThis, PRUint32 *reserved); + + nsresult (*CreateDeviceFilter)( + IUSBDeviceFilters *pThis, + PRUnichar * name, + IUSBDeviceFilter * * filter + ); + + nsresult (*InsertDeviceFilter)( + IUSBDeviceFilters *pThis, + PRUint32 position, + IUSBDeviceFilter * filter + ); + + nsresult (*RemoveDeviceFilter)( + IUSBDeviceFilters *pThis, + PRUint32 position, + IUSBDeviceFilter * * filter + ); + + nsresult (*InternalAndReservedMethod1IUSBDeviceFilters)(IUSBDeviceFilters *pThis); + + nsresult (*InternalAndReservedMethod2IUSBDeviceFilters)(IUSBDeviceFilters *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBDeviceFiltersVtbl +{ + nsresult (*QueryInterface)(IUSBDeviceFilters *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBDeviceFilters *pThis); + nsrefcnt (*Release)(IUSBDeviceFilters *pThis); + nsresult (*GetDeviceFilters)(IUSBDeviceFilters *pThis, PRUint32 *deviceFiltersSize, IUSBDeviceFilter * **deviceFilters); + + nsresult (*GetInternalAndReservedAttribute1IUSBDeviceFilters)(IUSBDeviceFilters *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDeviceFilters)(IUSBDeviceFilters *pThis, PRUint32 *reserved); + + nsresult (*CreateDeviceFilter)( + IUSBDeviceFilters *pThis, + PRUnichar * name, + IUSBDeviceFilter * * filter + ); + + nsresult (*InsertDeviceFilter)( + IUSBDeviceFilters *pThis, + PRUint32 position, + IUSBDeviceFilter * filter + ); + + nsresult (*RemoveDeviceFilter)( + IUSBDeviceFilters *pThis, + PRUint32 position, + IUSBDeviceFilter * * filter + ); + + nsresult (*InternalAndReservedMethod1IUSBDeviceFilters)(IUSBDeviceFilters *pThis); + + nsresult (*InternalAndReservedMethod2IUSBDeviceFilters)(IUSBDeviceFilters *pThis); + +}; +# define IUSBDeviceFilters_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBDeviceFilters_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBDeviceFilters_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBDeviceFilters_get_DeviceFilters(p, aDeviceFilters) ((p)->lpVtbl->GetDeviceFilters(p, aDeviceFilters)) +# define IUSBDeviceFilters_GetDeviceFilters(p, aDeviceFilters) ((p)->lpVtbl->GetDeviceFilters(p, aDeviceFilters)) +# define IUSBDeviceFilters_CreateDeviceFilter(p, aName, aFilter) ((p)->lpVtbl->CreateDeviceFilter(p, aName, aFilter)) +# define IUSBDeviceFilters_InsertDeviceFilter(p, aPosition, aFilter) ((p)->lpVtbl->InsertDeviceFilter(p, aPosition, aFilter)) +# define IUSBDeviceFilters_RemoveDeviceFilter(p, aPosition, aFilter) ((p)->lpVtbl->RemoveDeviceFilter(p, aPosition, aFilter)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBDeviceFilters +{ +# ifndef VBOX_WITH_GLUE + struct IUSBDeviceFilters_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBDeviceFiltersVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBDeviceFilters declaration */ + + +/* Start of struct IUSBController declaration */ +# define IUSBCONTROLLER_IID_STR "ee206a6e-7ff8-4a84-bd34-0c651e118bb5" +# define IUSBCONTROLLER_IID { \ + 0xee206a6e, 0x7ff8, 0x4a84, \ + { 0xbd, 0x34, 0x0c, 0x65, 0x1e, 0x11, 0x8b, 0xb5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBController); +# ifndef VBOX_WITH_GLUE +struct IUSBController_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IUSBController *pThis, PRUnichar * *name); + nsresult (*SetName)(IUSBController *pThis, PRUnichar * name); + + nsresult (*GetType)(IUSBController *pThis, PRUint32 *type); + nsresult (*SetType)(IUSBController *pThis, PRUint32 type); + + nsresult (*GetUSBStandard)(IUSBController *pThis, PRUint16 *USBStandard); + + nsresult (*GetInternalAndReservedAttribute1IUSBController)(IUSBController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBController)(IUSBController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBController)(IUSBController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBController)(IUSBController *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBControllerVtbl +{ + nsresult (*QueryInterface)(IUSBController *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBController *pThis); + nsrefcnt (*Release)(IUSBController *pThis); + nsresult (*GetName)(IUSBController *pThis, PRUnichar * *name); + nsresult (*SetName)(IUSBController *pThis, PRUnichar * name); + + nsresult (*GetType)(IUSBController *pThis, PRUint32 *type); + nsresult (*SetType)(IUSBController *pThis, PRUint32 type); + + nsresult (*GetUSBStandard)(IUSBController *pThis, PRUint16 *USBStandard); + + nsresult (*GetInternalAndReservedAttribute1IUSBController)(IUSBController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBController)(IUSBController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBController)(IUSBController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBController)(IUSBController *pThis, PRUint32 *reserved); + +}; +# define IUSBController_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBController_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBController_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBController_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IUSBController_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IUSBController_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IUSBController_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IUSBController_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBController_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBController_put_Type(p, aType) ((p)->lpVtbl->SetType(p, aType)) +# define IUSBController_SetType(p, aType) ((p)->lpVtbl->SetType(p, aType)) +# define IUSBController_get_USBStandard(p, aUSBStandard) ((p)->lpVtbl->GetUSBStandard(p, aUSBStandard)) +# define IUSBController_GetUSBStandard(p, aUSBStandard) ((p)->lpVtbl->GetUSBStandard(p, aUSBStandard)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBController +{ +# ifndef VBOX_WITH_GLUE + struct IUSBController_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBControllerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBController declaration */ + + +/* Start of struct IUSBDevice declaration */ +# define IUSBDEVICE_IID_STR "6dc83c2c-81a9-4005-9d52-fc45a78bf3f5" +# define IUSBDEVICE_IID { \ + 0x6dc83c2c, 0x81a9, 0x4005, \ + { 0x9d, 0x52, 0xfc, 0x45, 0xa7, 0x8b, 0xf3, 0xf5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBDevice); +# ifndef VBOX_WITH_GLUE +struct IUSBDevice_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetId)(IUSBDevice *pThis, PRUnichar * *id); + + nsresult (*GetVendorId)(IUSBDevice *pThis, PRUint16 *vendorId); + + nsresult (*GetProductId)(IUSBDevice *pThis, PRUint16 *productId); + + nsresult (*GetRevision)(IUSBDevice *pThis, PRUint16 *revision); + + nsresult (*GetManufacturer)(IUSBDevice *pThis, PRUnichar * *manufacturer); + + nsresult (*GetProduct)(IUSBDevice *pThis, PRUnichar * *product); + + nsresult (*GetSerialNumber)(IUSBDevice *pThis, PRUnichar * *serialNumber); + + nsresult (*GetAddress)(IUSBDevice *pThis, PRUnichar * *address); + + nsresult (*GetPort)(IUSBDevice *pThis, PRUint16 *port); + + nsresult (*GetPortPath)(IUSBDevice *pThis, PRUnichar * *portPath); + + nsresult (*GetVersion)(IUSBDevice *pThis, PRUint16 *version); + + nsresult (*GetSpeed)(IUSBDevice *pThis, PRUint32 *speed); + + nsresult (*GetRemote)(IUSBDevice *pThis, PRBool *remote); + + nsresult (*GetDeviceInfo)(IUSBDevice *pThis, PRUint32 *deviceInfoSize, PRUnichar * **deviceInfo); + + nsresult (*GetBackend)(IUSBDevice *pThis, PRUnichar * *backend); + + nsresult (*GetInternalAndReservedAttribute1IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBDeviceVtbl +{ + nsresult (*QueryInterface)(IUSBDevice *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBDevice *pThis); + nsrefcnt (*Release)(IUSBDevice *pThis); + nsresult (*GetId)(IUSBDevice *pThis, PRUnichar * *id); + + nsresult (*GetVendorId)(IUSBDevice *pThis, PRUint16 *vendorId); + + nsresult (*GetProductId)(IUSBDevice *pThis, PRUint16 *productId); + + nsresult (*GetRevision)(IUSBDevice *pThis, PRUint16 *revision); + + nsresult (*GetManufacturer)(IUSBDevice *pThis, PRUnichar * *manufacturer); + + nsresult (*GetProduct)(IUSBDevice *pThis, PRUnichar * *product); + + nsresult (*GetSerialNumber)(IUSBDevice *pThis, PRUnichar * *serialNumber); + + nsresult (*GetAddress)(IUSBDevice *pThis, PRUnichar * *address); + + nsresult (*GetPort)(IUSBDevice *pThis, PRUint16 *port); + + nsresult (*GetPortPath)(IUSBDevice *pThis, PRUnichar * *portPath); + + nsresult (*GetVersion)(IUSBDevice *pThis, PRUint16 *version); + + nsresult (*GetSpeed)(IUSBDevice *pThis, PRUint32 *speed); + + nsresult (*GetRemote)(IUSBDevice *pThis, PRBool *remote); + + nsresult (*GetDeviceInfo)(IUSBDevice *pThis, PRUint32 *deviceInfoSize, PRUnichar * **deviceInfo); + + nsresult (*GetBackend)(IUSBDevice *pThis, PRUnichar * *backend); + + nsresult (*GetInternalAndReservedAttribute1IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBDevice)(IUSBDevice *pThis, PRUint32 *reserved); + +}; +# define IUSBDevice_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBDevice_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBDevice_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBDevice_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IUSBDevice_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IUSBDevice_get_VendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IUSBDevice_GetVendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IUSBDevice_get_ProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IUSBDevice_GetProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IUSBDevice_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IUSBDevice_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IUSBDevice_get_Manufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IUSBDevice_GetManufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IUSBDevice_get_Product(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IUSBDevice_GetProduct(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IUSBDevice_get_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IUSBDevice_GetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IUSBDevice_get_Address(p, aAddress) ((p)->lpVtbl->GetAddress(p, aAddress)) +# define IUSBDevice_GetAddress(p, aAddress) ((p)->lpVtbl->GetAddress(p, aAddress)) +# define IUSBDevice_get_Port(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IUSBDevice_GetPort(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IUSBDevice_get_PortPath(p, aPortPath) ((p)->lpVtbl->GetPortPath(p, aPortPath)) +# define IUSBDevice_GetPortPath(p, aPortPath) ((p)->lpVtbl->GetPortPath(p, aPortPath)) +# define IUSBDevice_get_Version(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IUSBDevice_GetVersion(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IUSBDevice_get_Speed(p, aSpeed) ((p)->lpVtbl->GetSpeed(p, aSpeed)) +# define IUSBDevice_GetSpeed(p, aSpeed) ((p)->lpVtbl->GetSpeed(p, aSpeed)) +# define IUSBDevice_get_Remote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IUSBDevice_GetRemote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IUSBDevice_get_DeviceInfo(p, aDeviceInfo) ((p)->lpVtbl->GetDeviceInfo(p, aDeviceInfo)) +# define IUSBDevice_GetDeviceInfo(p, aDeviceInfo) ((p)->lpVtbl->GetDeviceInfo(p, aDeviceInfo)) +# define IUSBDevice_get_Backend(p, aBackend) ((p)->lpVtbl->GetBackend(p, aBackend)) +# define IUSBDevice_GetBackend(p, aBackend) ((p)->lpVtbl->GetBackend(p, aBackend)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBDevice +{ +# ifndef VBOX_WITH_GLUE + struct IUSBDevice_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBDeviceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBDevice declaration */ + + +/* Start of struct IUSBDeviceFilter declaration */ +# define IUSBDEVICEFILTER_IID_STR "45587218-4289-ef4e-8e6a-e5b07816b631" +# define IUSBDEVICEFILTER_IID { \ + 0x45587218, 0x4289, 0xef4e, \ + { 0x8e, 0x6a, 0xe5, 0xb0, 0x78, 0x16, 0xb6, 0x31 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBDeviceFilter); +# ifndef VBOX_WITH_GLUE +struct IUSBDeviceFilter_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IUSBDeviceFilter *pThis, PRUnichar * *name); + nsresult (*SetName)(IUSBDeviceFilter *pThis, PRUnichar * name); + + nsresult (*GetActive)(IUSBDeviceFilter *pThis, PRBool *active); + nsresult (*SetActive)(IUSBDeviceFilter *pThis, PRBool active); + + nsresult (*GetVendorId)(IUSBDeviceFilter *pThis, PRUnichar * *vendorId); + nsresult (*SetVendorId)(IUSBDeviceFilter *pThis, PRUnichar * vendorId); + + nsresult (*GetProductId)(IUSBDeviceFilter *pThis, PRUnichar * *productId); + nsresult (*SetProductId)(IUSBDeviceFilter *pThis, PRUnichar * productId); + + nsresult (*GetRevision)(IUSBDeviceFilter *pThis, PRUnichar * *revision); + nsresult (*SetRevision)(IUSBDeviceFilter *pThis, PRUnichar * revision); + + nsresult (*GetManufacturer)(IUSBDeviceFilter *pThis, PRUnichar * *manufacturer); + nsresult (*SetManufacturer)(IUSBDeviceFilter *pThis, PRUnichar * manufacturer); + + nsresult (*GetProduct)(IUSBDeviceFilter *pThis, PRUnichar * *product); + nsresult (*SetProduct)(IUSBDeviceFilter *pThis, PRUnichar * product); + + nsresult (*GetSerialNumber)(IUSBDeviceFilter *pThis, PRUnichar * *serialNumber); + nsresult (*SetSerialNumber)(IUSBDeviceFilter *pThis, PRUnichar * serialNumber); + + nsresult (*GetPort)(IUSBDeviceFilter *pThis, PRUnichar * *port); + nsresult (*SetPort)(IUSBDeviceFilter *pThis, PRUnichar * port); + + nsresult (*GetRemote)(IUSBDeviceFilter *pThis, PRUnichar * *remote); + nsresult (*SetRemote)(IUSBDeviceFilter *pThis, PRUnichar * remote); + + nsresult (*GetMaskedInterfaces)(IUSBDeviceFilter *pThis, PRUint32 *maskedInterfaces); + nsresult (*SetMaskedInterfaces)(IUSBDeviceFilter *pThis, PRUint32 maskedInterfaces); + + nsresult (*GetInternalAndReservedAttribute1IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBDeviceFilterVtbl +{ + nsresult (*QueryInterface)(IUSBDeviceFilter *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBDeviceFilter *pThis); + nsrefcnt (*Release)(IUSBDeviceFilter *pThis); + nsresult (*GetName)(IUSBDeviceFilter *pThis, PRUnichar * *name); + nsresult (*SetName)(IUSBDeviceFilter *pThis, PRUnichar * name); + + nsresult (*GetActive)(IUSBDeviceFilter *pThis, PRBool *active); + nsresult (*SetActive)(IUSBDeviceFilter *pThis, PRBool active); + + nsresult (*GetVendorId)(IUSBDeviceFilter *pThis, PRUnichar * *vendorId); + nsresult (*SetVendorId)(IUSBDeviceFilter *pThis, PRUnichar * vendorId); + + nsresult (*GetProductId)(IUSBDeviceFilter *pThis, PRUnichar * *productId); + nsresult (*SetProductId)(IUSBDeviceFilter *pThis, PRUnichar * productId); + + nsresult (*GetRevision)(IUSBDeviceFilter *pThis, PRUnichar * *revision); + nsresult (*SetRevision)(IUSBDeviceFilter *pThis, PRUnichar * revision); + + nsresult (*GetManufacturer)(IUSBDeviceFilter *pThis, PRUnichar * *manufacturer); + nsresult (*SetManufacturer)(IUSBDeviceFilter *pThis, PRUnichar * manufacturer); + + nsresult (*GetProduct)(IUSBDeviceFilter *pThis, PRUnichar * *product); + nsresult (*SetProduct)(IUSBDeviceFilter *pThis, PRUnichar * product); + + nsresult (*GetSerialNumber)(IUSBDeviceFilter *pThis, PRUnichar * *serialNumber); + nsresult (*SetSerialNumber)(IUSBDeviceFilter *pThis, PRUnichar * serialNumber); + + nsresult (*GetPort)(IUSBDeviceFilter *pThis, PRUnichar * *port); + nsresult (*SetPort)(IUSBDeviceFilter *pThis, PRUnichar * port); + + nsresult (*GetRemote)(IUSBDeviceFilter *pThis, PRUnichar * *remote); + nsresult (*SetRemote)(IUSBDeviceFilter *pThis, PRUnichar * remote); + + nsresult (*GetMaskedInterfaces)(IUSBDeviceFilter *pThis, PRUint32 *maskedInterfaces); + nsresult (*SetMaskedInterfaces)(IUSBDeviceFilter *pThis, PRUint32 maskedInterfaces); + + nsresult (*GetInternalAndReservedAttribute1IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUSBDeviceFilter)(IUSBDeviceFilter *pThis, PRUint32 *reserved); + +}; +# define IUSBDeviceFilter_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBDeviceFilter_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBDeviceFilter_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBDeviceFilter_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IUSBDeviceFilter_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IUSBDeviceFilter_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IUSBDeviceFilter_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IUSBDeviceFilter_get_Active(p, aActive) ((p)->lpVtbl->GetActive(p, aActive)) +# define IUSBDeviceFilter_GetActive(p, aActive) ((p)->lpVtbl->GetActive(p, aActive)) +# define IUSBDeviceFilter_put_Active(p, aActive) ((p)->lpVtbl->SetActive(p, aActive)) +# define IUSBDeviceFilter_SetActive(p, aActive) ((p)->lpVtbl->SetActive(p, aActive)) +# define IUSBDeviceFilter_get_VendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IUSBDeviceFilter_GetVendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IUSBDeviceFilter_put_VendorId(p, aVendorId) ((p)->lpVtbl->SetVendorId(p, aVendorId)) +# define IUSBDeviceFilter_SetVendorId(p, aVendorId) ((p)->lpVtbl->SetVendorId(p, aVendorId)) +# define IUSBDeviceFilter_get_ProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IUSBDeviceFilter_GetProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IUSBDeviceFilter_put_ProductId(p, aProductId) ((p)->lpVtbl->SetProductId(p, aProductId)) +# define IUSBDeviceFilter_SetProductId(p, aProductId) ((p)->lpVtbl->SetProductId(p, aProductId)) +# define IUSBDeviceFilter_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IUSBDeviceFilter_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IUSBDeviceFilter_put_Revision(p, aRevision) ((p)->lpVtbl->SetRevision(p, aRevision)) +# define IUSBDeviceFilter_SetRevision(p, aRevision) ((p)->lpVtbl->SetRevision(p, aRevision)) +# define IUSBDeviceFilter_get_Manufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IUSBDeviceFilter_GetManufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IUSBDeviceFilter_put_Manufacturer(p, aManufacturer) ((p)->lpVtbl->SetManufacturer(p, aManufacturer)) +# define IUSBDeviceFilter_SetManufacturer(p, aManufacturer) ((p)->lpVtbl->SetManufacturer(p, aManufacturer)) +# define IUSBDeviceFilter_get_Product(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IUSBDeviceFilter_GetProduct(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IUSBDeviceFilter_put_Product(p, aProduct) ((p)->lpVtbl->SetProduct(p, aProduct)) +# define IUSBDeviceFilter_SetProduct(p, aProduct) ((p)->lpVtbl->SetProduct(p, aProduct)) +# define IUSBDeviceFilter_get_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IUSBDeviceFilter_GetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IUSBDeviceFilter_put_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->SetSerialNumber(p, aSerialNumber)) +# define IUSBDeviceFilter_SetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->SetSerialNumber(p, aSerialNumber)) +# define IUSBDeviceFilter_get_Port(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IUSBDeviceFilter_GetPort(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IUSBDeviceFilter_put_Port(p, aPort) ((p)->lpVtbl->SetPort(p, aPort)) +# define IUSBDeviceFilter_SetPort(p, aPort) ((p)->lpVtbl->SetPort(p, aPort)) +# define IUSBDeviceFilter_get_Remote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IUSBDeviceFilter_GetRemote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IUSBDeviceFilter_put_Remote(p, aRemote) ((p)->lpVtbl->SetRemote(p, aRemote)) +# define IUSBDeviceFilter_SetRemote(p, aRemote) ((p)->lpVtbl->SetRemote(p, aRemote)) +# define IUSBDeviceFilter_get_MaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->GetMaskedInterfaces(p, aMaskedInterfaces)) +# define IUSBDeviceFilter_GetMaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->GetMaskedInterfaces(p, aMaskedInterfaces)) +# define IUSBDeviceFilter_put_MaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->SetMaskedInterfaces(p, aMaskedInterfaces)) +# define IUSBDeviceFilter_SetMaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->SetMaskedInterfaces(p, aMaskedInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBDeviceFilter +{ +# ifndef VBOX_WITH_GLUE + struct IUSBDeviceFilter_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBDeviceFilterVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBDeviceFilter declaration */ + + +/* Start of struct IHostUSBDevice declaration */ +# define IHOSTUSBDEVICE_IID_STR "c19073dd-cc7b-431b-98b2-951fda8eab89" +# define IHOSTUSBDEVICE_IID { \ + 0xc19073dd, 0xcc7b, 0x431b, \ + { 0x98, 0xb2, 0x95, 0x1f, 0xda, 0x8e, 0xab, 0x89 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostUSBDevice); +# ifndef VBOX_WITH_GLUE +struct IHostUSBDevice_vtbl +{ + struct IUSBDevice_vtbl iusbdevice; + + nsresult (*GetState)(IHostUSBDevice *pThis, PRUint32 *state); + + nsresult (*GetInternalAndReservedAttribute1IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostUSBDeviceVtbl +{ + nsresult (*QueryInterface)(IHostUSBDevice *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostUSBDevice *pThis); + nsrefcnt (*Release)(IHostUSBDevice *pThis); + nsresult (*GetId)(IHostUSBDevice *pThis, PRUnichar * *id); + + nsresult (*GetVendorId)(IHostUSBDevice *pThis, PRUint16 *vendorId); + + nsresult (*GetProductId)(IHostUSBDevice *pThis, PRUint16 *productId); + + nsresult (*GetRevision)(IHostUSBDevice *pThis, PRUint16 *revision); + + nsresult (*GetManufacturer)(IHostUSBDevice *pThis, PRUnichar * *manufacturer); + + nsresult (*GetProduct)(IHostUSBDevice *pThis, PRUnichar * *product); + + nsresult (*GetSerialNumber)(IHostUSBDevice *pThis, PRUnichar * *serialNumber); + + nsresult (*GetAddress)(IHostUSBDevice *pThis, PRUnichar * *address); + + nsresult (*GetPort)(IHostUSBDevice *pThis, PRUint16 *port); + + nsresult (*GetPortPath)(IHostUSBDevice *pThis, PRUnichar * *portPath); + + nsresult (*GetVersion)(IHostUSBDevice *pThis, PRUint16 *version); + + nsresult (*GetSpeed)(IHostUSBDevice *pThis, PRUint32 *speed); + + nsresult (*GetRemote)(IHostUSBDevice *pThis, PRBool *remote); + + nsresult (*GetDeviceInfo)(IHostUSBDevice *pThis, PRUint32 *deviceInfoSize, PRUnichar * **deviceInfo); + + nsresult (*GetBackend)(IHostUSBDevice *pThis, PRUnichar * *backend); + + nsresult (*GetInternalAndReservedAttribute1IUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetState)(IHostUSBDevice *pThis, PRUint32 *state); + + nsresult (*GetInternalAndReservedAttribute1IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostUSBDevice)(IHostUSBDevice *pThis, PRUint32 *reserved); + +}; +# define IHostUSBDevice_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostUSBDevice_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostUSBDevice_Release(p) ((p)->lpVtbl->Release(p)) +# define IHostUSBDevice_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IHostUSBDevice_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IHostUSBDevice_get_VendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IHostUSBDevice_GetVendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IHostUSBDevice_get_ProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IHostUSBDevice_GetProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IHostUSBDevice_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IHostUSBDevice_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IHostUSBDevice_get_Manufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IHostUSBDevice_GetManufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IHostUSBDevice_get_Product(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IHostUSBDevice_GetProduct(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IHostUSBDevice_get_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IHostUSBDevice_GetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IHostUSBDevice_get_Address(p, aAddress) ((p)->lpVtbl->GetAddress(p, aAddress)) +# define IHostUSBDevice_GetAddress(p, aAddress) ((p)->lpVtbl->GetAddress(p, aAddress)) +# define IHostUSBDevice_get_Port(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IHostUSBDevice_GetPort(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IHostUSBDevice_get_PortPath(p, aPortPath) ((p)->lpVtbl->GetPortPath(p, aPortPath)) +# define IHostUSBDevice_GetPortPath(p, aPortPath) ((p)->lpVtbl->GetPortPath(p, aPortPath)) +# define IHostUSBDevice_get_Version(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IHostUSBDevice_GetVersion(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IHostUSBDevice_get_Speed(p, aSpeed) ((p)->lpVtbl->GetSpeed(p, aSpeed)) +# define IHostUSBDevice_GetSpeed(p, aSpeed) ((p)->lpVtbl->GetSpeed(p, aSpeed)) +# define IHostUSBDevice_get_Remote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IHostUSBDevice_GetRemote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IHostUSBDevice_get_DeviceInfo(p, aDeviceInfo) ((p)->lpVtbl->GetDeviceInfo(p, aDeviceInfo)) +# define IHostUSBDevice_GetDeviceInfo(p, aDeviceInfo) ((p)->lpVtbl->GetDeviceInfo(p, aDeviceInfo)) +# define IHostUSBDevice_get_Backend(p, aBackend) ((p)->lpVtbl->GetBackend(p, aBackend)) +# define IHostUSBDevice_GetBackend(p, aBackend) ((p)->lpVtbl->GetBackend(p, aBackend)) +# define IHostUSBDevice_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IHostUSBDevice_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostUSBDevice +{ +# ifndef VBOX_WITH_GLUE + struct IHostUSBDevice_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostUSBDeviceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostUSBDevice declaration */ + + +/* Start of struct IHostUSBDeviceFilter declaration */ +# define IHOSTUSBDEVICEFILTER_IID_STR "01adb2d6-aedf-461c-be2c-99e91bdad8a1" +# define IHOSTUSBDEVICEFILTER_IID { \ + 0x01adb2d6, 0xaedf, 0x461c, \ + { 0xbe, 0x2c, 0x99, 0xe9, 0x1b, 0xda, 0xd8, 0xa1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostUSBDeviceFilter); +# ifndef VBOX_WITH_GLUE +struct IHostUSBDeviceFilter_vtbl +{ + struct IUSBDeviceFilter_vtbl iusbdevicefilter; + + nsresult (*GetAction)(IHostUSBDeviceFilter *pThis, PRUint32 *action); + nsresult (*SetAction)(IHostUSBDeviceFilter *pThis, PRUint32 action); + + nsresult (*GetInternalAndReservedAttribute1IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostUSBDeviceFilterVtbl +{ + nsresult (*QueryInterface)(IHostUSBDeviceFilter *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostUSBDeviceFilter *pThis); + nsrefcnt (*Release)(IHostUSBDeviceFilter *pThis); + nsresult (*GetName)(IHostUSBDeviceFilter *pThis, PRUnichar * *name); + nsresult (*SetName)(IHostUSBDeviceFilter *pThis, PRUnichar * name); + + nsresult (*GetActive)(IHostUSBDeviceFilter *pThis, PRBool *active); + nsresult (*SetActive)(IHostUSBDeviceFilter *pThis, PRBool active); + + nsresult (*GetVendorId)(IHostUSBDeviceFilter *pThis, PRUnichar * *vendorId); + nsresult (*SetVendorId)(IHostUSBDeviceFilter *pThis, PRUnichar * vendorId); + + nsresult (*GetProductId)(IHostUSBDeviceFilter *pThis, PRUnichar * *productId); + nsresult (*SetProductId)(IHostUSBDeviceFilter *pThis, PRUnichar * productId); + + nsresult (*GetRevision)(IHostUSBDeviceFilter *pThis, PRUnichar * *revision); + nsresult (*SetRevision)(IHostUSBDeviceFilter *pThis, PRUnichar * revision); + + nsresult (*GetManufacturer)(IHostUSBDeviceFilter *pThis, PRUnichar * *manufacturer); + nsresult (*SetManufacturer)(IHostUSBDeviceFilter *pThis, PRUnichar * manufacturer); + + nsresult (*GetProduct)(IHostUSBDeviceFilter *pThis, PRUnichar * *product); + nsresult (*SetProduct)(IHostUSBDeviceFilter *pThis, PRUnichar * product); + + nsresult (*GetSerialNumber)(IHostUSBDeviceFilter *pThis, PRUnichar * *serialNumber); + nsresult (*SetSerialNumber)(IHostUSBDeviceFilter *pThis, PRUnichar * serialNumber); + + nsresult (*GetPort)(IHostUSBDeviceFilter *pThis, PRUnichar * *port); + nsresult (*SetPort)(IHostUSBDeviceFilter *pThis, PRUnichar * port); + + nsresult (*GetRemote)(IHostUSBDeviceFilter *pThis, PRUnichar * *remote); + nsresult (*SetRemote)(IHostUSBDeviceFilter *pThis, PRUnichar * remote); + + nsresult (*GetMaskedInterfaces)(IHostUSBDeviceFilter *pThis, PRUint32 *maskedInterfaces); + nsresult (*SetMaskedInterfaces)(IHostUSBDeviceFilter *pThis, PRUint32 maskedInterfaces); + + nsresult (*GetInternalAndReservedAttribute1IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetAction)(IHostUSBDeviceFilter *pThis, PRUint32 *action); + nsresult (*SetAction)(IHostUSBDeviceFilter *pThis, PRUint32 action); + + nsresult (*GetInternalAndReservedAttribute1IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IHostUSBDeviceFilter)(IHostUSBDeviceFilter *pThis, PRUint32 *reserved); + +}; +# define IHostUSBDeviceFilter_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostUSBDeviceFilter_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostUSBDeviceFilter_Release(p) ((p)->lpVtbl->Release(p)) +# define IHostUSBDeviceFilter_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IHostUSBDeviceFilter_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IHostUSBDeviceFilter_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IHostUSBDeviceFilter_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IHostUSBDeviceFilter_get_Active(p, aActive) ((p)->lpVtbl->GetActive(p, aActive)) +# define IHostUSBDeviceFilter_GetActive(p, aActive) ((p)->lpVtbl->GetActive(p, aActive)) +# define IHostUSBDeviceFilter_put_Active(p, aActive) ((p)->lpVtbl->SetActive(p, aActive)) +# define IHostUSBDeviceFilter_SetActive(p, aActive) ((p)->lpVtbl->SetActive(p, aActive)) +# define IHostUSBDeviceFilter_get_VendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IHostUSBDeviceFilter_GetVendorId(p, aVendorId) ((p)->lpVtbl->GetVendorId(p, aVendorId)) +# define IHostUSBDeviceFilter_put_VendorId(p, aVendorId) ((p)->lpVtbl->SetVendorId(p, aVendorId)) +# define IHostUSBDeviceFilter_SetVendorId(p, aVendorId) ((p)->lpVtbl->SetVendorId(p, aVendorId)) +# define IHostUSBDeviceFilter_get_ProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IHostUSBDeviceFilter_GetProductId(p, aProductId) ((p)->lpVtbl->GetProductId(p, aProductId)) +# define IHostUSBDeviceFilter_put_ProductId(p, aProductId) ((p)->lpVtbl->SetProductId(p, aProductId)) +# define IHostUSBDeviceFilter_SetProductId(p, aProductId) ((p)->lpVtbl->SetProductId(p, aProductId)) +# define IHostUSBDeviceFilter_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IHostUSBDeviceFilter_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IHostUSBDeviceFilter_put_Revision(p, aRevision) ((p)->lpVtbl->SetRevision(p, aRevision)) +# define IHostUSBDeviceFilter_SetRevision(p, aRevision) ((p)->lpVtbl->SetRevision(p, aRevision)) +# define IHostUSBDeviceFilter_get_Manufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IHostUSBDeviceFilter_GetManufacturer(p, aManufacturer) ((p)->lpVtbl->GetManufacturer(p, aManufacturer)) +# define IHostUSBDeviceFilter_put_Manufacturer(p, aManufacturer) ((p)->lpVtbl->SetManufacturer(p, aManufacturer)) +# define IHostUSBDeviceFilter_SetManufacturer(p, aManufacturer) ((p)->lpVtbl->SetManufacturer(p, aManufacturer)) +# define IHostUSBDeviceFilter_get_Product(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IHostUSBDeviceFilter_GetProduct(p, aProduct) ((p)->lpVtbl->GetProduct(p, aProduct)) +# define IHostUSBDeviceFilter_put_Product(p, aProduct) ((p)->lpVtbl->SetProduct(p, aProduct)) +# define IHostUSBDeviceFilter_SetProduct(p, aProduct) ((p)->lpVtbl->SetProduct(p, aProduct)) +# define IHostUSBDeviceFilter_get_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IHostUSBDeviceFilter_GetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->GetSerialNumber(p, aSerialNumber)) +# define IHostUSBDeviceFilter_put_SerialNumber(p, aSerialNumber) ((p)->lpVtbl->SetSerialNumber(p, aSerialNumber)) +# define IHostUSBDeviceFilter_SetSerialNumber(p, aSerialNumber) ((p)->lpVtbl->SetSerialNumber(p, aSerialNumber)) +# define IHostUSBDeviceFilter_get_Port(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IHostUSBDeviceFilter_GetPort(p, aPort) ((p)->lpVtbl->GetPort(p, aPort)) +# define IHostUSBDeviceFilter_put_Port(p, aPort) ((p)->lpVtbl->SetPort(p, aPort)) +# define IHostUSBDeviceFilter_SetPort(p, aPort) ((p)->lpVtbl->SetPort(p, aPort)) +# define IHostUSBDeviceFilter_get_Remote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IHostUSBDeviceFilter_GetRemote(p, aRemote) ((p)->lpVtbl->GetRemote(p, aRemote)) +# define IHostUSBDeviceFilter_put_Remote(p, aRemote) ((p)->lpVtbl->SetRemote(p, aRemote)) +# define IHostUSBDeviceFilter_SetRemote(p, aRemote) ((p)->lpVtbl->SetRemote(p, aRemote)) +# define IHostUSBDeviceFilter_get_MaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->GetMaskedInterfaces(p, aMaskedInterfaces)) +# define IHostUSBDeviceFilter_GetMaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->GetMaskedInterfaces(p, aMaskedInterfaces)) +# define IHostUSBDeviceFilter_put_MaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->SetMaskedInterfaces(p, aMaskedInterfaces)) +# define IHostUSBDeviceFilter_SetMaskedInterfaces(p, aMaskedInterfaces) ((p)->lpVtbl->SetMaskedInterfaces(p, aMaskedInterfaces)) +# define IHostUSBDeviceFilter_get_Action(p, aAction) ((p)->lpVtbl->GetAction(p, aAction)) +# define IHostUSBDeviceFilter_GetAction(p, aAction) ((p)->lpVtbl->GetAction(p, aAction)) +# define IHostUSBDeviceFilter_put_Action(p, aAction) ((p)->lpVtbl->SetAction(p, aAction)) +# define IHostUSBDeviceFilter_SetAction(p, aAction) ((p)->lpVtbl->SetAction(p, aAction)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostUSBDeviceFilter +{ +# ifndef VBOX_WITH_GLUE + struct IHostUSBDeviceFilter_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostUSBDeviceFilterVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostUSBDeviceFilter declaration */ + + +/* Start of struct IUSBProxyBackend declaration */ +# define IUSBPROXYBACKEND_IID_STR "dfe56449-6989-4002-80cf-3607f377d40c" +# define IUSBPROXYBACKEND_IID { \ + 0xdfe56449, 0x6989, 0x4002, \ + { 0x80, 0xcf, 0x36, 0x07, 0xf3, 0x77, 0xd4, 0x0c } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBProxyBackend); +# ifndef VBOX_WITH_GLUE +struct IUSBProxyBackend_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IUSBProxyBackend *pThis, PRUnichar * *name); + + nsresult (*GetType)(IUSBProxyBackend *pThis, PRUnichar * *type); + + nsresult (*GetInternalAndReservedAttribute1IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IUSBProxyBackend)(IUSBProxyBackend *pThis); + + nsresult (*InternalAndReservedMethod2IUSBProxyBackend)(IUSBProxyBackend *pThis); + + nsresult (*InternalAndReservedMethod3IUSBProxyBackend)(IUSBProxyBackend *pThis); + + nsresult (*InternalAndReservedMethod4IUSBProxyBackend)(IUSBProxyBackend *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBProxyBackendVtbl +{ + nsresult (*QueryInterface)(IUSBProxyBackend *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBProxyBackend *pThis); + nsrefcnt (*Release)(IUSBProxyBackend *pThis); + nsresult (*GetName)(IUSBProxyBackend *pThis, PRUnichar * *name); + + nsresult (*GetType)(IUSBProxyBackend *pThis, PRUnichar * *type); + + nsresult (*GetInternalAndReservedAttribute1IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IUSBProxyBackend)(IUSBProxyBackend *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IUSBProxyBackend)(IUSBProxyBackend *pThis); + + nsresult (*InternalAndReservedMethod2IUSBProxyBackend)(IUSBProxyBackend *pThis); + + nsresult (*InternalAndReservedMethod3IUSBProxyBackend)(IUSBProxyBackend *pThis); + + nsresult (*InternalAndReservedMethod4IUSBProxyBackend)(IUSBProxyBackend *pThis); + +}; +# define IUSBProxyBackend_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBProxyBackend_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBProxyBackend_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBProxyBackend_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IUSBProxyBackend_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IUSBProxyBackend_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBProxyBackend_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBProxyBackend +{ +# ifndef VBOX_WITH_GLUE + struct IUSBProxyBackend_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBProxyBackendVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBProxyBackend declaration */ + + +/* Start of struct IAudioAdapter declaration */ +# define IAUDIOADAPTER_IID_STR "5155bfd3-7ba7-45a8-b26d-c91ae3754e37" +# define IAUDIOADAPTER_IID { \ + 0x5155bfd3, 0x7ba7, 0x45a8, \ + { 0xb2, 0x6d, 0xc9, 0x1a, 0xe3, 0x75, 0x4e, 0x37 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IAudioAdapter); +# ifndef VBOX_WITH_GLUE +struct IAudioAdapter_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetEnabled)(IAudioAdapter *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IAudioAdapter *pThis, PRBool enabled); + + nsresult (*GetEnabledIn)(IAudioAdapter *pThis, PRBool *enabledIn); + nsresult (*SetEnabledIn)(IAudioAdapter *pThis, PRBool enabledIn); + + nsresult (*GetEnabledOut)(IAudioAdapter *pThis, PRBool *enabledOut); + nsresult (*SetEnabledOut)(IAudioAdapter *pThis, PRBool enabledOut); + + nsresult (*GetAudioController)(IAudioAdapter *pThis, PRUint32 *audioController); + nsresult (*SetAudioController)(IAudioAdapter *pThis, PRUint32 audioController); + + nsresult (*GetAudioCodec)(IAudioAdapter *pThis, PRUint32 *audioCodec); + nsresult (*SetAudioCodec)(IAudioAdapter *pThis, PRUint32 audioCodec); + + nsresult (*GetAudioDriver)(IAudioAdapter *pThis, PRUint32 *audioDriver); + nsresult (*SetAudioDriver)(IAudioAdapter *pThis, PRUint32 audioDriver); + + nsresult (*GetPropertiesList)(IAudioAdapter *pThis, PRUint32 *propertiesListSize, PRUnichar * **propertiesList); + + nsresult (*GetInternalAndReservedAttribute1IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*SetProperty)( + IAudioAdapter *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetProperty)( + IAudioAdapter *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*InternalAndReservedMethod1IAudioAdapter)(IAudioAdapter *pThis); + + nsresult (*InternalAndReservedMethod2IAudioAdapter)(IAudioAdapter *pThis); + + nsresult (*InternalAndReservedMethod3IAudioAdapter)(IAudioAdapter *pThis); + + nsresult (*InternalAndReservedMethod4IAudioAdapter)(IAudioAdapter *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IAudioAdapterVtbl +{ + nsresult (*QueryInterface)(IAudioAdapter *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IAudioAdapter *pThis); + nsrefcnt (*Release)(IAudioAdapter *pThis); + nsresult (*GetEnabled)(IAudioAdapter *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IAudioAdapter *pThis, PRBool enabled); + + nsresult (*GetEnabledIn)(IAudioAdapter *pThis, PRBool *enabledIn); + nsresult (*SetEnabledIn)(IAudioAdapter *pThis, PRBool enabledIn); + + nsresult (*GetEnabledOut)(IAudioAdapter *pThis, PRBool *enabledOut); + nsresult (*SetEnabledOut)(IAudioAdapter *pThis, PRBool enabledOut); + + nsresult (*GetAudioController)(IAudioAdapter *pThis, PRUint32 *audioController); + nsresult (*SetAudioController)(IAudioAdapter *pThis, PRUint32 audioController); + + nsresult (*GetAudioCodec)(IAudioAdapter *pThis, PRUint32 *audioCodec); + nsresult (*SetAudioCodec)(IAudioAdapter *pThis, PRUint32 audioCodec); + + nsresult (*GetAudioDriver)(IAudioAdapter *pThis, PRUint32 *audioDriver); + nsresult (*SetAudioDriver)(IAudioAdapter *pThis, PRUint32 audioDriver); + + nsresult (*GetPropertiesList)(IAudioAdapter *pThis, PRUint32 *propertiesListSize, PRUnichar * **propertiesList); + + nsresult (*GetInternalAndReservedAttribute1IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IAudioAdapter)(IAudioAdapter *pThis, PRUint32 *reserved); + + nsresult (*SetProperty)( + IAudioAdapter *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetProperty)( + IAudioAdapter *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*InternalAndReservedMethod1IAudioAdapter)(IAudioAdapter *pThis); + + nsresult (*InternalAndReservedMethod2IAudioAdapter)(IAudioAdapter *pThis); + + nsresult (*InternalAndReservedMethod3IAudioAdapter)(IAudioAdapter *pThis); + + nsresult (*InternalAndReservedMethod4IAudioAdapter)(IAudioAdapter *pThis); + +}; +# define IAudioAdapter_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IAudioAdapter_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IAudioAdapter_Release(p) ((p)->lpVtbl->Release(p)) +# define IAudioAdapter_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IAudioAdapter_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IAudioAdapter_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IAudioAdapter_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IAudioAdapter_get_EnabledIn(p, aEnabledIn) ((p)->lpVtbl->GetEnabledIn(p, aEnabledIn)) +# define IAudioAdapter_GetEnabledIn(p, aEnabledIn) ((p)->lpVtbl->GetEnabledIn(p, aEnabledIn)) +# define IAudioAdapter_put_EnabledIn(p, aEnabledIn) ((p)->lpVtbl->SetEnabledIn(p, aEnabledIn)) +# define IAudioAdapter_SetEnabledIn(p, aEnabledIn) ((p)->lpVtbl->SetEnabledIn(p, aEnabledIn)) +# define IAudioAdapter_get_EnabledOut(p, aEnabledOut) ((p)->lpVtbl->GetEnabledOut(p, aEnabledOut)) +# define IAudioAdapter_GetEnabledOut(p, aEnabledOut) ((p)->lpVtbl->GetEnabledOut(p, aEnabledOut)) +# define IAudioAdapter_put_EnabledOut(p, aEnabledOut) ((p)->lpVtbl->SetEnabledOut(p, aEnabledOut)) +# define IAudioAdapter_SetEnabledOut(p, aEnabledOut) ((p)->lpVtbl->SetEnabledOut(p, aEnabledOut)) +# define IAudioAdapter_get_AudioController(p, aAudioController) ((p)->lpVtbl->GetAudioController(p, aAudioController)) +# define IAudioAdapter_GetAudioController(p, aAudioController) ((p)->lpVtbl->GetAudioController(p, aAudioController)) +# define IAudioAdapter_put_AudioController(p, aAudioController) ((p)->lpVtbl->SetAudioController(p, aAudioController)) +# define IAudioAdapter_SetAudioController(p, aAudioController) ((p)->lpVtbl->SetAudioController(p, aAudioController)) +# define IAudioAdapter_get_AudioCodec(p, aAudioCodec) ((p)->lpVtbl->GetAudioCodec(p, aAudioCodec)) +# define IAudioAdapter_GetAudioCodec(p, aAudioCodec) ((p)->lpVtbl->GetAudioCodec(p, aAudioCodec)) +# define IAudioAdapter_put_AudioCodec(p, aAudioCodec) ((p)->lpVtbl->SetAudioCodec(p, aAudioCodec)) +# define IAudioAdapter_SetAudioCodec(p, aAudioCodec) ((p)->lpVtbl->SetAudioCodec(p, aAudioCodec)) +# define IAudioAdapter_get_AudioDriver(p, aAudioDriver) ((p)->lpVtbl->GetAudioDriver(p, aAudioDriver)) +# define IAudioAdapter_GetAudioDriver(p, aAudioDriver) ((p)->lpVtbl->GetAudioDriver(p, aAudioDriver)) +# define IAudioAdapter_put_AudioDriver(p, aAudioDriver) ((p)->lpVtbl->SetAudioDriver(p, aAudioDriver)) +# define IAudioAdapter_SetAudioDriver(p, aAudioDriver) ((p)->lpVtbl->SetAudioDriver(p, aAudioDriver)) +# define IAudioAdapter_get_PropertiesList(p, aPropertiesList) ((p)->lpVtbl->GetPropertiesList(p, aPropertiesList)) +# define IAudioAdapter_GetPropertiesList(p, aPropertiesList) ((p)->lpVtbl->GetPropertiesList(p, aPropertiesList)) +# define IAudioAdapter_SetProperty(p, aKey, aValue) ((p)->lpVtbl->SetProperty(p, aKey, aValue)) +# define IAudioAdapter_GetProperty(p, aKey, aValue) ((p)->lpVtbl->GetProperty(p, aKey, aValue)) +# endif /* VBOX_WITH_GLUE */ + +interface IAudioAdapter +{ +# ifndef VBOX_WITH_GLUE + struct IAudioAdapter_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IAudioAdapterVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IAudioAdapter declaration */ + + +/* Start of struct IVRDEServer declaration */ +# define IVRDESERVER_IID_STR "08e25756-08a2-41af-a05f-d7c661abaebe" +# define IVRDESERVER_IID { \ + 0x08e25756, 0x08a2, 0x41af, \ + { 0xa0, 0x5f, 0xd7, 0xc6, 0x61, 0xab, 0xae, 0xbe } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVRDEServer); +# ifndef VBOX_WITH_GLUE +struct IVRDEServer_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetEnabled)(IVRDEServer *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IVRDEServer *pThis, PRBool enabled); + + nsresult (*GetAuthType)(IVRDEServer *pThis, PRUint32 *authType); + nsresult (*SetAuthType)(IVRDEServer *pThis, PRUint32 authType); + + nsresult (*GetAuthTimeout)(IVRDEServer *pThis, PRUint32 *authTimeout); + nsresult (*SetAuthTimeout)(IVRDEServer *pThis, PRUint32 authTimeout); + + nsresult (*GetAllowMultiConnection)(IVRDEServer *pThis, PRBool *allowMultiConnection); + nsresult (*SetAllowMultiConnection)(IVRDEServer *pThis, PRBool allowMultiConnection); + + nsresult (*GetReuseSingleConnection)(IVRDEServer *pThis, PRBool *reuseSingleConnection); + nsresult (*SetReuseSingleConnection)(IVRDEServer *pThis, PRBool reuseSingleConnection); + + nsresult (*GetVRDEExtPack)(IVRDEServer *pThis, PRUnichar * *VRDEExtPack); + nsresult (*SetVRDEExtPack)(IVRDEServer *pThis, PRUnichar * VRDEExtPack); + + nsresult (*GetAuthLibrary)(IVRDEServer *pThis, PRUnichar * *authLibrary); + nsresult (*SetAuthLibrary)(IVRDEServer *pThis, PRUnichar * authLibrary); + + nsresult (*GetVRDEProperties)(IVRDEServer *pThis, PRUint32 *VRDEPropertiesSize, PRUnichar * **VRDEProperties); + + nsresult (*GetInternalAndReservedAttribute1IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*SetVRDEProperty)( + IVRDEServer *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetVRDEProperty)( + IVRDEServer *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*InternalAndReservedMethod1IVRDEServer)(IVRDEServer *pThis); + + nsresult (*InternalAndReservedMethod2IVRDEServer)(IVRDEServer *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVRDEServerVtbl +{ + nsresult (*QueryInterface)(IVRDEServer *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVRDEServer *pThis); + nsrefcnt (*Release)(IVRDEServer *pThis); + nsresult (*GetEnabled)(IVRDEServer *pThis, PRBool *enabled); + nsresult (*SetEnabled)(IVRDEServer *pThis, PRBool enabled); + + nsresult (*GetAuthType)(IVRDEServer *pThis, PRUint32 *authType); + nsresult (*SetAuthType)(IVRDEServer *pThis, PRUint32 authType); + + nsresult (*GetAuthTimeout)(IVRDEServer *pThis, PRUint32 *authTimeout); + nsresult (*SetAuthTimeout)(IVRDEServer *pThis, PRUint32 authTimeout); + + nsresult (*GetAllowMultiConnection)(IVRDEServer *pThis, PRBool *allowMultiConnection); + nsresult (*SetAllowMultiConnection)(IVRDEServer *pThis, PRBool allowMultiConnection); + + nsresult (*GetReuseSingleConnection)(IVRDEServer *pThis, PRBool *reuseSingleConnection); + nsresult (*SetReuseSingleConnection)(IVRDEServer *pThis, PRBool reuseSingleConnection); + + nsresult (*GetVRDEExtPack)(IVRDEServer *pThis, PRUnichar * *VRDEExtPack); + nsresult (*SetVRDEExtPack)(IVRDEServer *pThis, PRUnichar * VRDEExtPack); + + nsresult (*GetAuthLibrary)(IVRDEServer *pThis, PRUnichar * *authLibrary); + nsresult (*SetAuthLibrary)(IVRDEServer *pThis, PRUnichar * authLibrary); + + nsresult (*GetVRDEProperties)(IVRDEServer *pThis, PRUint32 *VRDEPropertiesSize, PRUnichar * **VRDEProperties); + + nsresult (*GetInternalAndReservedAttribute1IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVRDEServer)(IVRDEServer *pThis, PRUint32 *reserved); + + nsresult (*SetVRDEProperty)( + IVRDEServer *pThis, + PRUnichar * key, + PRUnichar * value + ); + + nsresult (*GetVRDEProperty)( + IVRDEServer *pThis, + PRUnichar * key, + PRUnichar * * value + ); + + nsresult (*InternalAndReservedMethod1IVRDEServer)(IVRDEServer *pThis); + + nsresult (*InternalAndReservedMethod2IVRDEServer)(IVRDEServer *pThis); + +}; +# define IVRDEServer_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVRDEServer_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVRDEServer_Release(p) ((p)->lpVtbl->Release(p)) +# define IVRDEServer_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IVRDEServer_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IVRDEServer_put_Enabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IVRDEServer_SetEnabled(p, aEnabled) ((p)->lpVtbl->SetEnabled(p, aEnabled)) +# define IVRDEServer_get_AuthType(p, aAuthType) ((p)->lpVtbl->GetAuthType(p, aAuthType)) +# define IVRDEServer_GetAuthType(p, aAuthType) ((p)->lpVtbl->GetAuthType(p, aAuthType)) +# define IVRDEServer_put_AuthType(p, aAuthType) ((p)->lpVtbl->SetAuthType(p, aAuthType)) +# define IVRDEServer_SetAuthType(p, aAuthType) ((p)->lpVtbl->SetAuthType(p, aAuthType)) +# define IVRDEServer_get_AuthTimeout(p, aAuthTimeout) ((p)->lpVtbl->GetAuthTimeout(p, aAuthTimeout)) +# define IVRDEServer_GetAuthTimeout(p, aAuthTimeout) ((p)->lpVtbl->GetAuthTimeout(p, aAuthTimeout)) +# define IVRDEServer_put_AuthTimeout(p, aAuthTimeout) ((p)->lpVtbl->SetAuthTimeout(p, aAuthTimeout)) +# define IVRDEServer_SetAuthTimeout(p, aAuthTimeout) ((p)->lpVtbl->SetAuthTimeout(p, aAuthTimeout)) +# define IVRDEServer_get_AllowMultiConnection(p, aAllowMultiConnection) ((p)->lpVtbl->GetAllowMultiConnection(p, aAllowMultiConnection)) +# define IVRDEServer_GetAllowMultiConnection(p, aAllowMultiConnection) ((p)->lpVtbl->GetAllowMultiConnection(p, aAllowMultiConnection)) +# define IVRDEServer_put_AllowMultiConnection(p, aAllowMultiConnection) ((p)->lpVtbl->SetAllowMultiConnection(p, aAllowMultiConnection)) +# define IVRDEServer_SetAllowMultiConnection(p, aAllowMultiConnection) ((p)->lpVtbl->SetAllowMultiConnection(p, aAllowMultiConnection)) +# define IVRDEServer_get_ReuseSingleConnection(p, aReuseSingleConnection) ((p)->lpVtbl->GetReuseSingleConnection(p, aReuseSingleConnection)) +# define IVRDEServer_GetReuseSingleConnection(p, aReuseSingleConnection) ((p)->lpVtbl->GetReuseSingleConnection(p, aReuseSingleConnection)) +# define IVRDEServer_put_ReuseSingleConnection(p, aReuseSingleConnection) ((p)->lpVtbl->SetReuseSingleConnection(p, aReuseSingleConnection)) +# define IVRDEServer_SetReuseSingleConnection(p, aReuseSingleConnection) ((p)->lpVtbl->SetReuseSingleConnection(p, aReuseSingleConnection)) +# define IVRDEServer_get_VRDEExtPack(p, aVRDEExtPack) ((p)->lpVtbl->GetVRDEExtPack(p, aVRDEExtPack)) +# define IVRDEServer_GetVRDEExtPack(p, aVRDEExtPack) ((p)->lpVtbl->GetVRDEExtPack(p, aVRDEExtPack)) +# define IVRDEServer_put_VRDEExtPack(p, aVRDEExtPack) ((p)->lpVtbl->SetVRDEExtPack(p, aVRDEExtPack)) +# define IVRDEServer_SetVRDEExtPack(p, aVRDEExtPack) ((p)->lpVtbl->SetVRDEExtPack(p, aVRDEExtPack)) +# define IVRDEServer_get_AuthLibrary(p, aAuthLibrary) ((p)->lpVtbl->GetAuthLibrary(p, aAuthLibrary)) +# define IVRDEServer_GetAuthLibrary(p, aAuthLibrary) ((p)->lpVtbl->GetAuthLibrary(p, aAuthLibrary)) +# define IVRDEServer_put_AuthLibrary(p, aAuthLibrary) ((p)->lpVtbl->SetAuthLibrary(p, aAuthLibrary)) +# define IVRDEServer_SetAuthLibrary(p, aAuthLibrary) ((p)->lpVtbl->SetAuthLibrary(p, aAuthLibrary)) +# define IVRDEServer_get_VRDEProperties(p, aVRDEProperties) ((p)->lpVtbl->GetVRDEProperties(p, aVRDEProperties)) +# define IVRDEServer_GetVRDEProperties(p, aVRDEProperties) ((p)->lpVtbl->GetVRDEProperties(p, aVRDEProperties)) +# define IVRDEServer_SetVRDEProperty(p, aKey, aValue) ((p)->lpVtbl->SetVRDEProperty(p, aKey, aValue)) +# define IVRDEServer_GetVRDEProperty(p, aKey, aValue) ((p)->lpVtbl->GetVRDEProperty(p, aKey, aValue)) +# endif /* VBOX_WITH_GLUE */ + +interface IVRDEServer +{ +# ifndef VBOX_WITH_GLUE + struct IVRDEServer_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVRDEServerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVRDEServer declaration */ + + +/* Start of struct ISharedFolder declaration */ +# define ISHAREDFOLDER_IID_STR "9622225a-5409-414b-bd16-77df7ba3451e" +# define ISHAREDFOLDER_IID { \ + 0x9622225a, 0x5409, 0x414b, \ + { 0xbd, 0x16, 0x77, 0xdf, 0x7b, 0xa3, 0x45, 0x1e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISharedFolder); +# ifndef VBOX_WITH_GLUE +struct ISharedFolder_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(ISharedFolder *pThis, PRUnichar * *name); + + nsresult (*GetHostPath)(ISharedFolder *pThis, PRUnichar * *hostPath); + + nsresult (*GetAccessible)(ISharedFolder *pThis, PRBool *accessible); + + nsresult (*GetWritable)(ISharedFolder *pThis, PRBool *writable); + nsresult (*SetWritable)(ISharedFolder *pThis, PRBool writable); + + nsresult (*GetAutoMount)(ISharedFolder *pThis, PRBool *autoMount); + nsresult (*SetAutoMount)(ISharedFolder *pThis, PRBool autoMount); + + nsresult (*GetAutoMountPoint)(ISharedFolder *pThis, PRUnichar * *autoMountPoint); + nsresult (*SetAutoMountPoint)(ISharedFolder *pThis, PRUnichar * autoMountPoint); + + nsresult (*GetLastAccessError)(ISharedFolder *pThis, PRUnichar * *lastAccessError); + + nsresult (*GetInternalAndReservedAttribute1ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISharedFolderVtbl +{ + nsresult (*QueryInterface)(ISharedFolder *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISharedFolder *pThis); + nsrefcnt (*Release)(ISharedFolder *pThis); + nsresult (*GetName)(ISharedFolder *pThis, PRUnichar * *name); + + nsresult (*GetHostPath)(ISharedFolder *pThis, PRUnichar * *hostPath); + + nsresult (*GetAccessible)(ISharedFolder *pThis, PRBool *accessible); + + nsresult (*GetWritable)(ISharedFolder *pThis, PRBool *writable); + nsresult (*SetWritable)(ISharedFolder *pThis, PRBool writable); + + nsresult (*GetAutoMount)(ISharedFolder *pThis, PRBool *autoMount); + nsresult (*SetAutoMount)(ISharedFolder *pThis, PRBool autoMount); + + nsresult (*GetAutoMountPoint)(ISharedFolder *pThis, PRUnichar * *autoMountPoint); + nsresult (*SetAutoMountPoint)(ISharedFolder *pThis, PRUnichar * autoMountPoint); + + nsresult (*GetLastAccessError)(ISharedFolder *pThis, PRUnichar * *lastAccessError); + + nsresult (*GetInternalAndReservedAttribute1ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISharedFolder)(ISharedFolder *pThis, PRUint32 *reserved); + +}; +# define ISharedFolder_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISharedFolder_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISharedFolder_Release(p) ((p)->lpVtbl->Release(p)) +# define ISharedFolder_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ISharedFolder_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ISharedFolder_get_HostPath(p, aHostPath) ((p)->lpVtbl->GetHostPath(p, aHostPath)) +# define ISharedFolder_GetHostPath(p, aHostPath) ((p)->lpVtbl->GetHostPath(p, aHostPath)) +# define ISharedFolder_get_Accessible(p, aAccessible) ((p)->lpVtbl->GetAccessible(p, aAccessible)) +# define ISharedFolder_GetAccessible(p, aAccessible) ((p)->lpVtbl->GetAccessible(p, aAccessible)) +# define ISharedFolder_get_Writable(p, aWritable) ((p)->lpVtbl->GetWritable(p, aWritable)) +# define ISharedFolder_GetWritable(p, aWritable) ((p)->lpVtbl->GetWritable(p, aWritable)) +# define ISharedFolder_put_Writable(p, aWritable) ((p)->lpVtbl->SetWritable(p, aWritable)) +# define ISharedFolder_SetWritable(p, aWritable) ((p)->lpVtbl->SetWritable(p, aWritable)) +# define ISharedFolder_get_AutoMount(p, aAutoMount) ((p)->lpVtbl->GetAutoMount(p, aAutoMount)) +# define ISharedFolder_GetAutoMount(p, aAutoMount) ((p)->lpVtbl->GetAutoMount(p, aAutoMount)) +# define ISharedFolder_put_AutoMount(p, aAutoMount) ((p)->lpVtbl->SetAutoMount(p, aAutoMount)) +# define ISharedFolder_SetAutoMount(p, aAutoMount) ((p)->lpVtbl->SetAutoMount(p, aAutoMount)) +# define ISharedFolder_get_AutoMountPoint(p, aAutoMountPoint) ((p)->lpVtbl->GetAutoMountPoint(p, aAutoMountPoint)) +# define ISharedFolder_GetAutoMountPoint(p, aAutoMountPoint) ((p)->lpVtbl->GetAutoMountPoint(p, aAutoMountPoint)) +# define ISharedFolder_put_AutoMountPoint(p, aAutoMountPoint) ((p)->lpVtbl->SetAutoMountPoint(p, aAutoMountPoint)) +# define ISharedFolder_SetAutoMountPoint(p, aAutoMountPoint) ((p)->lpVtbl->SetAutoMountPoint(p, aAutoMountPoint)) +# define ISharedFolder_get_LastAccessError(p, aLastAccessError) ((p)->lpVtbl->GetLastAccessError(p, aLastAccessError)) +# define ISharedFolder_GetLastAccessError(p, aLastAccessError) ((p)->lpVtbl->GetLastAccessError(p, aLastAccessError)) +# endif /* VBOX_WITH_GLUE */ + +interface ISharedFolder +{ +# ifndef VBOX_WITH_GLUE + struct ISharedFolder_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISharedFolderVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISharedFolder declaration */ + + +/* Start of struct ISession declaration */ +# define ISESSION_IID_STR "c0447716-ff5a-4795-b57a-ecd5fffa18a4" +# define ISESSION_IID { \ + 0xc0447716, 0xff5a, 0x4795, \ + { 0xb5, 0x7a, 0xec, 0xd5, 0xff, 0xfa, 0x18, 0xa4 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISession); +# ifndef VBOX_WITH_GLUE +struct ISession_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetState)(ISession *pThis, PRUint32 *state); + + nsresult (*GetType)(ISession *pThis, PRUint32 *type); + + nsresult (*GetName)(ISession *pThis, PRUnichar * *name); + nsresult (*SetName)(ISession *pThis, PRUnichar * name); + + nsresult (*GetMachine)(ISession *pThis, IMachine * *machine); + + nsresult (*GetConsole)(ISession *pThis, IConsole * *console); + + nsresult (*GetInternalAndReservedAttribute1ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*UnlockMachine)(ISession *pThis ); + + nsresult (*InternalAndReservedMethod1ISession)(ISession *pThis); + + nsresult (*InternalAndReservedMethod2ISession)(ISession *pThis); + + nsresult (*InternalAndReservedMethod3ISession)(ISession *pThis); + + nsresult (*InternalAndReservedMethod4ISession)(ISession *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISessionVtbl +{ + nsresult (*QueryInterface)(ISession *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISession *pThis); + nsrefcnt (*Release)(ISession *pThis); + nsresult (*GetState)(ISession *pThis, PRUint32 *state); + + nsresult (*GetType)(ISession *pThis, PRUint32 *type); + + nsresult (*GetName)(ISession *pThis, PRUnichar * *name); + nsresult (*SetName)(ISession *pThis, PRUnichar * name); + + nsresult (*GetMachine)(ISession *pThis, IMachine * *machine); + + nsresult (*GetConsole)(ISession *pThis, IConsole * *console); + + nsresult (*GetInternalAndReservedAttribute1ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ISession)(ISession *pThis, PRUint32 *reserved); + + nsresult (*UnlockMachine)(ISession *pThis ); + + nsresult (*InternalAndReservedMethod1ISession)(ISession *pThis); + + nsresult (*InternalAndReservedMethod2ISession)(ISession *pThis); + + nsresult (*InternalAndReservedMethod3ISession)(ISession *pThis); + + nsresult (*InternalAndReservedMethod4ISession)(ISession *pThis); + +}; +# define ISession_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISession_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISession_Release(p) ((p)->lpVtbl->Release(p)) +# define ISession_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define ISession_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define ISession_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISession_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISession_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ISession_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ISession_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define ISession_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define ISession_get_Machine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define ISession_GetMachine(p, aMachine) ((p)->lpVtbl->GetMachine(p, aMachine)) +# define ISession_get_Console(p, aConsole) ((p)->lpVtbl->GetConsole(p, aConsole)) +# define ISession_GetConsole(p, aConsole) ((p)->lpVtbl->GetConsole(p, aConsole)) +# define ISession_UnlockMachine(p) ((p)->lpVtbl->UnlockMachine(p)) +# endif /* VBOX_WITH_GLUE */ + +interface ISession +{ +# ifndef VBOX_WITH_GLUE + struct ISession_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISessionVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISession declaration */ + + +/* Start of struct IStorageController declaration */ +# define ISTORAGECONTROLLER_IID_STR "ddca7247-bf98-47fb-ab2f-b5177533f493" +# define ISTORAGECONTROLLER_IID { \ + 0xddca7247, 0xbf98, 0x47fb, \ + { 0xab, 0x2f, 0xb5, 0x17, 0x75, 0x33, 0xf4, 0x93 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IStorageController); +# ifndef VBOX_WITH_GLUE +struct IStorageController_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IStorageController *pThis, PRUnichar * *name); + nsresult (*SetName)(IStorageController *pThis, PRUnichar * name); + + nsresult (*GetMaxDevicesPerPortCount)(IStorageController *pThis, PRUint32 *maxDevicesPerPortCount); + + nsresult (*GetMinPortCount)(IStorageController *pThis, PRUint32 *minPortCount); + + nsresult (*GetMaxPortCount)(IStorageController *pThis, PRUint32 *maxPortCount); + + nsresult (*GetInstance)(IStorageController *pThis, PRUint32 *instance); + nsresult (*SetInstance)(IStorageController *pThis, PRUint32 instance); + + nsresult (*GetPortCount)(IStorageController *pThis, PRUint32 *portCount); + nsresult (*SetPortCount)(IStorageController *pThis, PRUint32 portCount); + + nsresult (*GetBus)(IStorageController *pThis, PRUint32 *bus); + + nsresult (*GetControllerType)(IStorageController *pThis, PRUint32 *controllerType); + nsresult (*SetControllerType)(IStorageController *pThis, PRUint32 controllerType); + + nsresult (*GetUseHostIOCache)(IStorageController *pThis, PRBool *useHostIOCache); + nsresult (*SetUseHostIOCache)(IStorageController *pThis, PRBool useHostIOCache); + + nsresult (*GetBootable)(IStorageController *pThis, PRBool *bootable); + + nsresult (*GetInternalAndReservedAttribute1IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IStorageController)(IStorageController *pThis); + + nsresult (*InternalAndReservedMethod2IStorageController)(IStorageController *pThis); + + nsresult (*InternalAndReservedMethod3IStorageController)(IStorageController *pThis); + + nsresult (*InternalAndReservedMethod4IStorageController)(IStorageController *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IStorageControllerVtbl +{ + nsresult (*QueryInterface)(IStorageController *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IStorageController *pThis); + nsrefcnt (*Release)(IStorageController *pThis); + nsresult (*GetName)(IStorageController *pThis, PRUnichar * *name); + nsresult (*SetName)(IStorageController *pThis, PRUnichar * name); + + nsresult (*GetMaxDevicesPerPortCount)(IStorageController *pThis, PRUint32 *maxDevicesPerPortCount); + + nsresult (*GetMinPortCount)(IStorageController *pThis, PRUint32 *minPortCount); + + nsresult (*GetMaxPortCount)(IStorageController *pThis, PRUint32 *maxPortCount); + + nsresult (*GetInstance)(IStorageController *pThis, PRUint32 *instance); + nsresult (*SetInstance)(IStorageController *pThis, PRUint32 instance); + + nsresult (*GetPortCount)(IStorageController *pThis, PRUint32 *portCount); + nsresult (*SetPortCount)(IStorageController *pThis, PRUint32 portCount); + + nsresult (*GetBus)(IStorageController *pThis, PRUint32 *bus); + + nsresult (*GetControllerType)(IStorageController *pThis, PRUint32 *controllerType); + nsresult (*SetControllerType)(IStorageController *pThis, PRUint32 controllerType); + + nsresult (*GetUseHostIOCache)(IStorageController *pThis, PRBool *useHostIOCache); + nsresult (*SetUseHostIOCache)(IStorageController *pThis, PRBool useHostIOCache); + + nsresult (*GetBootable)(IStorageController *pThis, PRBool *bootable); + + nsresult (*GetInternalAndReservedAttribute1IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IStorageController)(IStorageController *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IStorageController)(IStorageController *pThis); + + nsresult (*InternalAndReservedMethod2IStorageController)(IStorageController *pThis); + + nsresult (*InternalAndReservedMethod3IStorageController)(IStorageController *pThis); + + nsresult (*InternalAndReservedMethod4IStorageController)(IStorageController *pThis); + +}; +# define IStorageController_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IStorageController_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IStorageController_Release(p) ((p)->lpVtbl->Release(p)) +# define IStorageController_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IStorageController_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IStorageController_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IStorageController_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define IStorageController_get_MaxDevicesPerPortCount(p, aMaxDevicesPerPortCount) ((p)->lpVtbl->GetMaxDevicesPerPortCount(p, aMaxDevicesPerPortCount)) +# define IStorageController_GetMaxDevicesPerPortCount(p, aMaxDevicesPerPortCount) ((p)->lpVtbl->GetMaxDevicesPerPortCount(p, aMaxDevicesPerPortCount)) +# define IStorageController_get_MinPortCount(p, aMinPortCount) ((p)->lpVtbl->GetMinPortCount(p, aMinPortCount)) +# define IStorageController_GetMinPortCount(p, aMinPortCount) ((p)->lpVtbl->GetMinPortCount(p, aMinPortCount)) +# define IStorageController_get_MaxPortCount(p, aMaxPortCount) ((p)->lpVtbl->GetMaxPortCount(p, aMaxPortCount)) +# define IStorageController_GetMaxPortCount(p, aMaxPortCount) ((p)->lpVtbl->GetMaxPortCount(p, aMaxPortCount)) +# define IStorageController_get_Instance(p, aInstance) ((p)->lpVtbl->GetInstance(p, aInstance)) +# define IStorageController_GetInstance(p, aInstance) ((p)->lpVtbl->GetInstance(p, aInstance)) +# define IStorageController_put_Instance(p, aInstance) ((p)->lpVtbl->SetInstance(p, aInstance)) +# define IStorageController_SetInstance(p, aInstance) ((p)->lpVtbl->SetInstance(p, aInstance)) +# define IStorageController_get_PortCount(p, aPortCount) ((p)->lpVtbl->GetPortCount(p, aPortCount)) +# define IStorageController_GetPortCount(p, aPortCount) ((p)->lpVtbl->GetPortCount(p, aPortCount)) +# define IStorageController_put_PortCount(p, aPortCount) ((p)->lpVtbl->SetPortCount(p, aPortCount)) +# define IStorageController_SetPortCount(p, aPortCount) ((p)->lpVtbl->SetPortCount(p, aPortCount)) +# define IStorageController_get_Bus(p, aBus) ((p)->lpVtbl->GetBus(p, aBus)) +# define IStorageController_GetBus(p, aBus) ((p)->lpVtbl->GetBus(p, aBus)) +# define IStorageController_get_ControllerType(p, aControllerType) ((p)->lpVtbl->GetControllerType(p, aControllerType)) +# define IStorageController_GetControllerType(p, aControllerType) ((p)->lpVtbl->GetControllerType(p, aControllerType)) +# define IStorageController_put_ControllerType(p, aControllerType) ((p)->lpVtbl->SetControllerType(p, aControllerType)) +# define IStorageController_SetControllerType(p, aControllerType) ((p)->lpVtbl->SetControllerType(p, aControllerType)) +# define IStorageController_get_UseHostIOCache(p, aUseHostIOCache) ((p)->lpVtbl->GetUseHostIOCache(p, aUseHostIOCache)) +# define IStorageController_GetUseHostIOCache(p, aUseHostIOCache) ((p)->lpVtbl->GetUseHostIOCache(p, aUseHostIOCache)) +# define IStorageController_put_UseHostIOCache(p, aUseHostIOCache) ((p)->lpVtbl->SetUseHostIOCache(p, aUseHostIOCache)) +# define IStorageController_SetUseHostIOCache(p, aUseHostIOCache) ((p)->lpVtbl->SetUseHostIOCache(p, aUseHostIOCache)) +# define IStorageController_get_Bootable(p, aBootable) ((p)->lpVtbl->GetBootable(p, aBootable)) +# define IStorageController_GetBootable(p, aBootable) ((p)->lpVtbl->GetBootable(p, aBootable)) +# endif /* VBOX_WITH_GLUE */ + +interface IStorageController +{ +# ifndef VBOX_WITH_GLUE + struct IStorageController_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IStorageControllerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IStorageController declaration */ + + +/* Start of struct IPerformanceMetric declaration */ +# define IPERFORMANCEMETRIC_IID_STR "81314d14-fd1c-411a-95c5-e9bb1414e632" +# define IPERFORMANCEMETRIC_IID { \ + 0x81314d14, 0xfd1c, 0x411a, \ + { 0x95, 0xc5, 0xe9, 0xbb, 0x14, 0x14, 0xe6, 0x32 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IPerformanceMetric); +# ifndef VBOX_WITH_GLUE +struct IPerformanceMetric_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMetricName)(IPerformanceMetric *pThis, PRUnichar * *metricName); + + nsresult (*GetObject)(IPerformanceMetric *pThis, nsISupports * *object); + + nsresult (*GetDescription)(IPerformanceMetric *pThis, PRUnichar * *description); + + nsresult (*GetPeriod)(IPerformanceMetric *pThis, PRUint32 *period); + + nsresult (*GetCount)(IPerformanceMetric *pThis, PRUint32 *count); + + nsresult (*GetUnit)(IPerformanceMetric *pThis, PRUnichar * *unit); + + nsresult (*GetMinimumValue)(IPerformanceMetric *pThis, PRInt32 *minimumValue); + + nsresult (*GetMaximumValue)(IPerformanceMetric *pThis, PRInt32 *maximumValue); + + nsresult (*GetInternalAndReservedAttribute1IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IPerformanceMetricVtbl +{ + nsresult (*QueryInterface)(IPerformanceMetric *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IPerformanceMetric *pThis); + nsrefcnt (*Release)(IPerformanceMetric *pThis); + nsresult (*GetMetricName)(IPerformanceMetric *pThis, PRUnichar * *metricName); + + nsresult (*GetObject)(IPerformanceMetric *pThis, nsISupports * *object); + + nsresult (*GetDescription)(IPerformanceMetric *pThis, PRUnichar * *description); + + nsresult (*GetPeriod)(IPerformanceMetric *pThis, PRUint32 *period); + + nsresult (*GetCount)(IPerformanceMetric *pThis, PRUint32 *count); + + nsresult (*GetUnit)(IPerformanceMetric *pThis, PRUnichar * *unit); + + nsresult (*GetMinimumValue)(IPerformanceMetric *pThis, PRInt32 *minimumValue); + + nsresult (*GetMaximumValue)(IPerformanceMetric *pThis, PRInt32 *maximumValue); + + nsresult (*GetInternalAndReservedAttribute1IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IPerformanceMetric)(IPerformanceMetric *pThis, PRUint32 *reserved); + +}; +# define IPerformanceMetric_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IPerformanceMetric_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IPerformanceMetric_Release(p) ((p)->lpVtbl->Release(p)) +# define IPerformanceMetric_get_MetricName(p, aMetricName) ((p)->lpVtbl->GetMetricName(p, aMetricName)) +# define IPerformanceMetric_GetMetricName(p, aMetricName) ((p)->lpVtbl->GetMetricName(p, aMetricName)) +# define IPerformanceMetric_get_Object(p, aObject) ((p)->lpVtbl->GetObject(p, aObject)) +# define IPerformanceMetric_GetObject(p, aObject) ((p)->lpVtbl->GetObject(p, aObject)) +# define IPerformanceMetric_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IPerformanceMetric_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IPerformanceMetric_get_Period(p, aPeriod) ((p)->lpVtbl->GetPeriod(p, aPeriod)) +# define IPerformanceMetric_GetPeriod(p, aPeriod) ((p)->lpVtbl->GetPeriod(p, aPeriod)) +# define IPerformanceMetric_get_Count(p, aCount) ((p)->lpVtbl->GetCount(p, aCount)) +# define IPerformanceMetric_GetCount(p, aCount) ((p)->lpVtbl->GetCount(p, aCount)) +# define IPerformanceMetric_get_Unit(p, aUnit) ((p)->lpVtbl->GetUnit(p, aUnit)) +# define IPerformanceMetric_GetUnit(p, aUnit) ((p)->lpVtbl->GetUnit(p, aUnit)) +# define IPerformanceMetric_get_MinimumValue(p, aMinimumValue) ((p)->lpVtbl->GetMinimumValue(p, aMinimumValue)) +# define IPerformanceMetric_GetMinimumValue(p, aMinimumValue) ((p)->lpVtbl->GetMinimumValue(p, aMinimumValue)) +# define IPerformanceMetric_get_MaximumValue(p, aMaximumValue) ((p)->lpVtbl->GetMaximumValue(p, aMaximumValue)) +# define IPerformanceMetric_GetMaximumValue(p, aMaximumValue) ((p)->lpVtbl->GetMaximumValue(p, aMaximumValue)) +# endif /* VBOX_WITH_GLUE */ + +interface IPerformanceMetric +{ +# ifndef VBOX_WITH_GLUE + struct IPerformanceMetric_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IPerformanceMetricVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IPerformanceMetric declaration */ + + +/* Start of struct IPerformanceCollector declaration */ +# define IPERFORMANCECOLLECTOR_IID_STR "b14290ad-cd54-400c-b858-797bcb82570e" +# define IPERFORMANCECOLLECTOR_IID { \ + 0xb14290ad, 0xcd54, 0x400c, \ + { 0xb8, 0x58, 0x79, 0x7b, 0xcb, 0x82, 0x57, 0x0e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IPerformanceCollector); +# ifndef VBOX_WITH_GLUE +struct IPerformanceCollector_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetMetricNames)(IPerformanceCollector *pThis, PRUint32 *metricNamesSize, PRUnichar * **metricNames); + + nsresult (*GetInternalAndReservedAttribute1IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *metricsSize, + IPerformanceMetric *** metrics + ); + + nsresult (*SetupMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 period, + PRUint32 count, + PRUint32 *affectedMetricsSize, + IPerformanceMetric *** affectedMetrics + ); + + nsresult (*EnableMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *affectedMetricsSize, + IPerformanceMetric *** affectedMetrics + ); + + nsresult (*DisableMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *affectedMetricsSize, + IPerformanceMetric *** affectedMetrics + ); + + nsresult (*QueryMetricsData)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *returnMetricNamesSize, + PRUnichar *** returnMetricNames, + PRUint32 *returnObjectsSize, + nsISupports *** returnObjects, + PRUint32 *returnUnitsSize, + PRUnichar *** returnUnits, + PRUint32 *returnScalesSize, + PRUint32** returnScales, + PRUint32 *returnSequenceNumbersSize, + PRUint32** returnSequenceNumbers, + PRUint32 *returnDataIndicesSize, + PRUint32** returnDataIndices, + PRUint32 *returnDataLengthsSize, + PRUint32** returnDataLengths, + PRUint32 *returnDataSize, + PRInt32** returnData + ); + + nsresult (*InternalAndReservedMethod1IPerformanceCollector)(IPerformanceCollector *pThis); + + nsresult (*InternalAndReservedMethod2IPerformanceCollector)(IPerformanceCollector *pThis); + + nsresult (*InternalAndReservedMethod3IPerformanceCollector)(IPerformanceCollector *pThis); + + nsresult (*InternalAndReservedMethod4IPerformanceCollector)(IPerformanceCollector *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IPerformanceCollectorVtbl +{ + nsresult (*QueryInterface)(IPerformanceCollector *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IPerformanceCollector *pThis); + nsrefcnt (*Release)(IPerformanceCollector *pThis); + nsresult (*GetMetricNames)(IPerformanceCollector *pThis, PRUint32 *metricNamesSize, PRUnichar * **metricNames); + + nsresult (*GetInternalAndReservedAttribute1IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IPerformanceCollector)(IPerformanceCollector *pThis, PRUint32 *reserved); + + nsresult (*GetMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *metricsSize, + IPerformanceMetric *** metrics + ); + + nsresult (*SetupMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 period, + PRUint32 count, + PRUint32 *affectedMetricsSize, + IPerformanceMetric *** affectedMetrics + ); + + nsresult (*EnableMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *affectedMetricsSize, + IPerformanceMetric *** affectedMetrics + ); + + nsresult (*DisableMetrics)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *affectedMetricsSize, + IPerformanceMetric *** affectedMetrics + ); + + nsresult (*QueryMetricsData)( + IPerformanceCollector *pThis, + PRUint32 metricNamesSize, + PRUnichar ** metricNames, + PRUint32 objectsSize, + nsISupports ** objects, + PRUint32 *returnMetricNamesSize, + PRUnichar *** returnMetricNames, + PRUint32 *returnObjectsSize, + nsISupports *** returnObjects, + PRUint32 *returnUnitsSize, + PRUnichar *** returnUnits, + PRUint32 *returnScalesSize, + PRUint32** returnScales, + PRUint32 *returnSequenceNumbersSize, + PRUint32** returnSequenceNumbers, + PRUint32 *returnDataIndicesSize, + PRUint32** returnDataIndices, + PRUint32 *returnDataLengthsSize, + PRUint32** returnDataLengths, + PRUint32 *returnDataSize, + PRInt32** returnData + ); + + nsresult (*InternalAndReservedMethod1IPerformanceCollector)(IPerformanceCollector *pThis); + + nsresult (*InternalAndReservedMethod2IPerformanceCollector)(IPerformanceCollector *pThis); + + nsresult (*InternalAndReservedMethod3IPerformanceCollector)(IPerformanceCollector *pThis); + + nsresult (*InternalAndReservedMethod4IPerformanceCollector)(IPerformanceCollector *pThis); + +}; +# define IPerformanceCollector_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IPerformanceCollector_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IPerformanceCollector_Release(p) ((p)->lpVtbl->Release(p)) +# define IPerformanceCollector_get_MetricNames(p, aMetricNames) ((p)->lpVtbl->GetMetricNames(p, aMetricNames)) +# define IPerformanceCollector_GetMetricNames(p, aMetricNames) ((p)->lpVtbl->GetMetricNames(p, aMetricNames)) +# define IPerformanceCollector_GetMetrics(p, aMetricNames, aObjects, aMetrics) ((p)->lpVtbl->GetMetrics(p, aMetricNames, aObjects, aMetrics)) +# define IPerformanceCollector_SetupMetrics(p, aMetricNames, aObjects, aPeriod, aCount, aAffectedMetrics) ((p)->lpVtbl->SetupMetrics(p, aMetricNames, aObjects, aPeriod, aCount, aAffectedMetrics)) +# define IPerformanceCollector_EnableMetrics(p, aMetricNames, aObjects, aAffectedMetrics) ((p)->lpVtbl->EnableMetrics(p, aMetricNames, aObjects, aAffectedMetrics)) +# define IPerformanceCollector_DisableMetrics(p, aMetricNames, aObjects, aAffectedMetrics) ((p)->lpVtbl->DisableMetrics(p, aMetricNames, aObjects, aAffectedMetrics)) +# define IPerformanceCollector_QueryMetricsData(p, aMetricNames, aObjects, aReturnMetricNames, aReturnObjects, aReturnUnits, aReturnScales, aReturnSequenceNumbers, aReturnDataIndices, aReturnDataLengths, aReturnData) ((p)->lpVtbl->QueryMetricsData(p, aMetricNames, aObjects, aReturnMetricNames, aReturnObjects, aReturnUnits, aReturnScales, aReturnSequenceNumbers, aReturnDataIndices, aReturnDataLengths, aReturnData)) +# endif /* VBOX_WITH_GLUE */ + +interface IPerformanceCollector +{ +# ifndef VBOX_WITH_GLUE + struct IPerformanceCollector_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IPerformanceCollectorVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IPerformanceCollector declaration */ + + +/* Start of struct INATEngine declaration */ +# define INATENGINE_IID_STR "8faef61e-6e15-4f71-a6a5-94e707fafbcc" +# define INATENGINE_IID { \ + 0x8faef61e, 0x6e15, 0x4f71, \ + { 0xa6, 0xa5, 0x94, 0xe7, 0x07, 0xfa, 0xfb, 0xcc } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATEngine); +# ifndef VBOX_WITH_GLUE +struct INATEngine_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetNetwork)(INATEngine *pThis, PRUnichar * *network); + nsresult (*SetNetwork)(INATEngine *pThis, PRUnichar * network); + + nsresult (*GetHostIP)(INATEngine *pThis, PRUnichar * *hostIP); + nsresult (*SetHostIP)(INATEngine *pThis, PRUnichar * hostIP); + + nsresult (*GetTFTPPrefix)(INATEngine *pThis, PRUnichar * *TFTPPrefix); + nsresult (*SetTFTPPrefix)(INATEngine *pThis, PRUnichar * TFTPPrefix); + + nsresult (*GetTFTPBootFile)(INATEngine *pThis, PRUnichar * *TFTPBootFile); + nsresult (*SetTFTPBootFile)(INATEngine *pThis, PRUnichar * TFTPBootFile); + + nsresult (*GetTFTPNextServer)(INATEngine *pThis, PRUnichar * *TFTPNextServer); + nsresult (*SetTFTPNextServer)(INATEngine *pThis, PRUnichar * TFTPNextServer); + + nsresult (*GetAliasMode)(INATEngine *pThis, PRUint32 *aliasMode); + nsresult (*SetAliasMode)(INATEngine *pThis, PRUint32 aliasMode); + + nsresult (*GetDNSPassDomain)(INATEngine *pThis, PRBool *DNSPassDomain); + nsresult (*SetDNSPassDomain)(INATEngine *pThis, PRBool DNSPassDomain); + + nsresult (*GetDNSProxy)(INATEngine *pThis, PRBool *DNSProxy); + nsresult (*SetDNSProxy)(INATEngine *pThis, PRBool DNSProxy); + + nsresult (*GetDNSUseHostResolver)(INATEngine *pThis, PRBool *DNSUseHostResolver); + nsresult (*SetDNSUseHostResolver)(INATEngine *pThis, PRBool DNSUseHostResolver); + + nsresult (*GetRedirects)(INATEngine *pThis, PRUint32 *redirectsSize, PRUnichar * **redirects); + + nsresult (*GetInternalAndReservedAttribute1INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*SetNetworkSettings)( + INATEngine *pThis, + PRUint32 mtu, + PRUint32 sockSnd, + PRUint32 sockRcv, + PRUint32 TcpWndSnd, + PRUint32 TcpWndRcv + ); + + nsresult (*GetNetworkSettings)( + INATEngine *pThis, + PRUint32 * mtu, + PRUint32 * sockSnd, + PRUint32 * sockRcv, + PRUint32 * TcpWndSnd, + PRUint32 * TcpWndRcv + ); + + nsresult (*AddRedirect)( + INATEngine *pThis, + PRUnichar * name, + PRUint32 proto, + PRUnichar * hostIP, + PRUint16 hostPort, + PRUnichar * guestIP, + PRUint16 guestPort + ); + + nsresult (*RemoveRedirect)( + INATEngine *pThis, + PRUnichar * name + ); + + nsresult (*InternalAndReservedMethod1INATEngine)(INATEngine *pThis); + + nsresult (*InternalAndReservedMethod2INATEngine)(INATEngine *pThis); + + nsresult (*InternalAndReservedMethod3INATEngine)(INATEngine *pThis); + + nsresult (*InternalAndReservedMethod4INATEngine)(INATEngine *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATEngineVtbl +{ + nsresult (*QueryInterface)(INATEngine *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATEngine *pThis); + nsrefcnt (*Release)(INATEngine *pThis); + nsresult (*GetNetwork)(INATEngine *pThis, PRUnichar * *network); + nsresult (*SetNetwork)(INATEngine *pThis, PRUnichar * network); + + nsresult (*GetHostIP)(INATEngine *pThis, PRUnichar * *hostIP); + nsresult (*SetHostIP)(INATEngine *pThis, PRUnichar * hostIP); + + nsresult (*GetTFTPPrefix)(INATEngine *pThis, PRUnichar * *TFTPPrefix); + nsresult (*SetTFTPPrefix)(INATEngine *pThis, PRUnichar * TFTPPrefix); + + nsresult (*GetTFTPBootFile)(INATEngine *pThis, PRUnichar * *TFTPBootFile); + nsresult (*SetTFTPBootFile)(INATEngine *pThis, PRUnichar * TFTPBootFile); + + nsresult (*GetTFTPNextServer)(INATEngine *pThis, PRUnichar * *TFTPNextServer); + nsresult (*SetTFTPNextServer)(INATEngine *pThis, PRUnichar * TFTPNextServer); + + nsresult (*GetAliasMode)(INATEngine *pThis, PRUint32 *aliasMode); + nsresult (*SetAliasMode)(INATEngine *pThis, PRUint32 aliasMode); + + nsresult (*GetDNSPassDomain)(INATEngine *pThis, PRBool *DNSPassDomain); + nsresult (*SetDNSPassDomain)(INATEngine *pThis, PRBool DNSPassDomain); + + nsresult (*GetDNSProxy)(INATEngine *pThis, PRBool *DNSProxy); + nsresult (*SetDNSProxy)(INATEngine *pThis, PRBool DNSProxy); + + nsresult (*GetDNSUseHostResolver)(INATEngine *pThis, PRBool *DNSUseHostResolver); + nsresult (*SetDNSUseHostResolver)(INATEngine *pThis, PRBool DNSUseHostResolver); + + nsresult (*GetRedirects)(INATEngine *pThis, PRUint32 *redirectsSize, PRUnichar * **redirects); + + nsresult (*GetInternalAndReservedAttribute1INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8INATEngine)(INATEngine *pThis, PRUint32 *reserved); + + nsresult (*SetNetworkSettings)( + INATEngine *pThis, + PRUint32 mtu, + PRUint32 sockSnd, + PRUint32 sockRcv, + PRUint32 TcpWndSnd, + PRUint32 TcpWndRcv + ); + + nsresult (*GetNetworkSettings)( + INATEngine *pThis, + PRUint32 * mtu, + PRUint32 * sockSnd, + PRUint32 * sockRcv, + PRUint32 * TcpWndSnd, + PRUint32 * TcpWndRcv + ); + + nsresult (*AddRedirect)( + INATEngine *pThis, + PRUnichar * name, + PRUint32 proto, + PRUnichar * hostIP, + PRUint16 hostPort, + PRUnichar * guestIP, + PRUint16 guestPort + ); + + nsresult (*RemoveRedirect)( + INATEngine *pThis, + PRUnichar * name + ); + + nsresult (*InternalAndReservedMethod1INATEngine)(INATEngine *pThis); + + nsresult (*InternalAndReservedMethod2INATEngine)(INATEngine *pThis); + + nsresult (*InternalAndReservedMethod3INATEngine)(INATEngine *pThis); + + nsresult (*InternalAndReservedMethod4INATEngine)(INATEngine *pThis); + +}; +# define INATEngine_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATEngine_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATEngine_Release(p) ((p)->lpVtbl->Release(p)) +# define INATEngine_get_Network(p, aNetwork) ((p)->lpVtbl->GetNetwork(p, aNetwork)) +# define INATEngine_GetNetwork(p, aNetwork) ((p)->lpVtbl->GetNetwork(p, aNetwork)) +# define INATEngine_put_Network(p, aNetwork) ((p)->lpVtbl->SetNetwork(p, aNetwork)) +# define INATEngine_SetNetwork(p, aNetwork) ((p)->lpVtbl->SetNetwork(p, aNetwork)) +# define INATEngine_get_HostIP(p, aHostIP) ((p)->lpVtbl->GetHostIP(p, aHostIP)) +# define INATEngine_GetHostIP(p, aHostIP) ((p)->lpVtbl->GetHostIP(p, aHostIP)) +# define INATEngine_put_HostIP(p, aHostIP) ((p)->lpVtbl->SetHostIP(p, aHostIP)) +# define INATEngine_SetHostIP(p, aHostIP) ((p)->lpVtbl->SetHostIP(p, aHostIP)) +# define INATEngine_get_TFTPPrefix(p, aTFTPPrefix) ((p)->lpVtbl->GetTFTPPrefix(p, aTFTPPrefix)) +# define INATEngine_GetTFTPPrefix(p, aTFTPPrefix) ((p)->lpVtbl->GetTFTPPrefix(p, aTFTPPrefix)) +# define INATEngine_put_TFTPPrefix(p, aTFTPPrefix) ((p)->lpVtbl->SetTFTPPrefix(p, aTFTPPrefix)) +# define INATEngine_SetTFTPPrefix(p, aTFTPPrefix) ((p)->lpVtbl->SetTFTPPrefix(p, aTFTPPrefix)) +# define INATEngine_get_TFTPBootFile(p, aTFTPBootFile) ((p)->lpVtbl->GetTFTPBootFile(p, aTFTPBootFile)) +# define INATEngine_GetTFTPBootFile(p, aTFTPBootFile) ((p)->lpVtbl->GetTFTPBootFile(p, aTFTPBootFile)) +# define INATEngine_put_TFTPBootFile(p, aTFTPBootFile) ((p)->lpVtbl->SetTFTPBootFile(p, aTFTPBootFile)) +# define INATEngine_SetTFTPBootFile(p, aTFTPBootFile) ((p)->lpVtbl->SetTFTPBootFile(p, aTFTPBootFile)) +# define INATEngine_get_TFTPNextServer(p, aTFTPNextServer) ((p)->lpVtbl->GetTFTPNextServer(p, aTFTPNextServer)) +# define INATEngine_GetTFTPNextServer(p, aTFTPNextServer) ((p)->lpVtbl->GetTFTPNextServer(p, aTFTPNextServer)) +# define INATEngine_put_TFTPNextServer(p, aTFTPNextServer) ((p)->lpVtbl->SetTFTPNextServer(p, aTFTPNextServer)) +# define INATEngine_SetTFTPNextServer(p, aTFTPNextServer) ((p)->lpVtbl->SetTFTPNextServer(p, aTFTPNextServer)) +# define INATEngine_get_AliasMode(p, aAliasMode) ((p)->lpVtbl->GetAliasMode(p, aAliasMode)) +# define INATEngine_GetAliasMode(p, aAliasMode) ((p)->lpVtbl->GetAliasMode(p, aAliasMode)) +# define INATEngine_put_AliasMode(p, aAliasMode) ((p)->lpVtbl->SetAliasMode(p, aAliasMode)) +# define INATEngine_SetAliasMode(p, aAliasMode) ((p)->lpVtbl->SetAliasMode(p, aAliasMode)) +# define INATEngine_get_DNSPassDomain(p, aDNSPassDomain) ((p)->lpVtbl->GetDNSPassDomain(p, aDNSPassDomain)) +# define INATEngine_GetDNSPassDomain(p, aDNSPassDomain) ((p)->lpVtbl->GetDNSPassDomain(p, aDNSPassDomain)) +# define INATEngine_put_DNSPassDomain(p, aDNSPassDomain) ((p)->lpVtbl->SetDNSPassDomain(p, aDNSPassDomain)) +# define INATEngine_SetDNSPassDomain(p, aDNSPassDomain) ((p)->lpVtbl->SetDNSPassDomain(p, aDNSPassDomain)) +# define INATEngine_get_DNSProxy(p, aDNSProxy) ((p)->lpVtbl->GetDNSProxy(p, aDNSProxy)) +# define INATEngine_GetDNSProxy(p, aDNSProxy) ((p)->lpVtbl->GetDNSProxy(p, aDNSProxy)) +# define INATEngine_put_DNSProxy(p, aDNSProxy) ((p)->lpVtbl->SetDNSProxy(p, aDNSProxy)) +# define INATEngine_SetDNSProxy(p, aDNSProxy) ((p)->lpVtbl->SetDNSProxy(p, aDNSProxy)) +# define INATEngine_get_DNSUseHostResolver(p, aDNSUseHostResolver) ((p)->lpVtbl->GetDNSUseHostResolver(p, aDNSUseHostResolver)) +# define INATEngine_GetDNSUseHostResolver(p, aDNSUseHostResolver) ((p)->lpVtbl->GetDNSUseHostResolver(p, aDNSUseHostResolver)) +# define INATEngine_put_DNSUseHostResolver(p, aDNSUseHostResolver) ((p)->lpVtbl->SetDNSUseHostResolver(p, aDNSUseHostResolver)) +# define INATEngine_SetDNSUseHostResolver(p, aDNSUseHostResolver) ((p)->lpVtbl->SetDNSUseHostResolver(p, aDNSUseHostResolver)) +# define INATEngine_get_Redirects(p, aRedirects) ((p)->lpVtbl->GetRedirects(p, aRedirects)) +# define INATEngine_GetRedirects(p, aRedirects) ((p)->lpVtbl->GetRedirects(p, aRedirects)) +# define INATEngine_SetNetworkSettings(p, aMtu, aSockSnd, aSockRcv, aTcpWndSnd, aTcpWndRcv) ((p)->lpVtbl->SetNetworkSettings(p, aMtu, aSockSnd, aSockRcv, aTcpWndSnd, aTcpWndRcv)) +# define INATEngine_GetNetworkSettings(p, aMtu, aSockSnd, aSockRcv, aTcpWndSnd, aTcpWndRcv) ((p)->lpVtbl->GetNetworkSettings(p, aMtu, aSockSnd, aSockRcv, aTcpWndSnd, aTcpWndRcv)) +# define INATEngine_AddRedirect(p, aName, aProto, aHostIP, aHostPort, aGuestIP, aGuestPort) ((p)->lpVtbl->AddRedirect(p, aName, aProto, aHostIP, aHostPort, aGuestIP, aGuestPort)) +# define INATEngine_RemoveRedirect(p, aName) ((p)->lpVtbl->RemoveRedirect(p, aName)) +# endif /* VBOX_WITH_GLUE */ + +interface INATEngine +{ +# ifndef VBOX_WITH_GLUE + struct INATEngine_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATEngineVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATEngine declaration */ + + +/* Start of struct IExtPackPlugIn declaration */ +# define IEXTPACKPLUGIN_IID_STR "78861431-d545-44aa-8013-181b8c288554" +# define IEXTPACKPLUGIN_IID { \ + 0x78861431, 0xd545, 0x44aa, \ + { 0x80, 0x13, 0x18, 0x1b, 0x8c, 0x28, 0x85, 0x54 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtPackPlugIn); +# ifndef VBOX_WITH_GLUE +struct IExtPackPlugIn_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IExtPackPlugIn *pThis, PRUnichar * *name); + + nsresult (*GetDescription)(IExtPackPlugIn *pThis, PRUnichar * *description); + + nsresult (*GetFrontend)(IExtPackPlugIn *pThis, PRUnichar * *frontend); + + nsresult (*GetModulePath)(IExtPackPlugIn *pThis, PRUnichar * *modulePath); + + nsresult (*GetInternalAndReservedAttribute1IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtPackPlugInVtbl +{ + nsresult (*QueryInterface)(IExtPackPlugIn *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtPackPlugIn *pThis); + nsrefcnt (*Release)(IExtPackPlugIn *pThis); + nsresult (*GetName)(IExtPackPlugIn *pThis, PRUnichar * *name); + + nsresult (*GetDescription)(IExtPackPlugIn *pThis, PRUnichar * *description); + + nsresult (*GetFrontend)(IExtPackPlugIn *pThis, PRUnichar * *frontend); + + nsresult (*GetModulePath)(IExtPackPlugIn *pThis, PRUnichar * *modulePath); + + nsresult (*GetInternalAndReservedAttribute1IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackPlugIn)(IExtPackPlugIn *pThis, PRUint32 *reserved); + +}; +# define IExtPackPlugIn_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtPackPlugIn_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtPackPlugIn_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtPackPlugIn_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPackPlugIn_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPackPlugIn_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPackPlugIn_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPackPlugIn_get_Frontend(p, aFrontend) ((p)->lpVtbl->GetFrontend(p, aFrontend)) +# define IExtPackPlugIn_GetFrontend(p, aFrontend) ((p)->lpVtbl->GetFrontend(p, aFrontend)) +# define IExtPackPlugIn_get_ModulePath(p, aModulePath) ((p)->lpVtbl->GetModulePath(p, aModulePath)) +# define IExtPackPlugIn_GetModulePath(p, aModulePath) ((p)->lpVtbl->GetModulePath(p, aModulePath)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtPackPlugIn +{ +# ifndef VBOX_WITH_GLUE + struct IExtPackPlugIn_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtPackPlugInVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtPackPlugIn declaration */ + + +/* Start of struct IExtPackBase declaration */ +# define IEXTPACKBASE_IID_STR "f25aca3d-0b79-4350-bdd9-a0376cd6e6e3" +# define IEXTPACKBASE_IID { \ + 0xf25aca3d, 0x0b79, 0x4350, \ + { 0xbd, 0xd9, 0xa0, 0x37, 0x6c, 0xd6, 0xe6, 0xe3 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtPackBase); +# ifndef VBOX_WITH_GLUE +struct IExtPackBase_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IExtPackBase *pThis, PRUnichar * *name); + + nsresult (*GetDescription)(IExtPackBase *pThis, PRUnichar * *description); + + nsresult (*GetVersion)(IExtPackBase *pThis, PRUnichar * *version); + + nsresult (*GetRevision)(IExtPackBase *pThis, PRUint32 *revision); + + nsresult (*GetEdition)(IExtPackBase *pThis, PRUnichar * *edition); + + nsresult (*GetVRDEModule)(IExtPackBase *pThis, PRUnichar * *VRDEModule); + + nsresult (*GetPlugIns)(IExtPackBase *pThis, PRUint32 *plugInsSize, IExtPackPlugIn * **plugIns); + + nsresult (*GetUsable)(IExtPackBase *pThis, PRBool *usable); + + nsresult (*GetWhyUnusable)(IExtPackBase *pThis, PRUnichar * *whyUnusable); + + nsresult (*GetShowLicense)(IExtPackBase *pThis, PRBool *showLicense); + + nsresult (*GetLicense)(IExtPackBase *pThis, PRUnichar * *license); + + nsresult (*GetInternalAndReservedAttribute1IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*QueryLicense)( + IExtPackBase *pThis, + PRUnichar * preferredLocale, + PRUnichar * preferredLanguage, + PRUnichar * format, + PRUnichar * * licenseText + ); + + nsresult (*InternalAndReservedMethod1IExtPackBase)(IExtPackBase *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackBase)(IExtPackBase *pThis); + + nsresult (*InternalAndReservedMethod3IExtPackBase)(IExtPackBase *pThis); + + nsresult (*InternalAndReservedMethod4IExtPackBase)(IExtPackBase *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtPackBaseVtbl +{ + nsresult (*QueryInterface)(IExtPackBase *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtPackBase *pThis); + nsrefcnt (*Release)(IExtPackBase *pThis); + nsresult (*GetName)(IExtPackBase *pThis, PRUnichar * *name); + + nsresult (*GetDescription)(IExtPackBase *pThis, PRUnichar * *description); + + nsresult (*GetVersion)(IExtPackBase *pThis, PRUnichar * *version); + + nsresult (*GetRevision)(IExtPackBase *pThis, PRUint32 *revision); + + nsresult (*GetEdition)(IExtPackBase *pThis, PRUnichar * *edition); + + nsresult (*GetVRDEModule)(IExtPackBase *pThis, PRUnichar * *VRDEModule); + + nsresult (*GetPlugIns)(IExtPackBase *pThis, PRUint32 *plugInsSize, IExtPackPlugIn * **plugIns); + + nsresult (*GetUsable)(IExtPackBase *pThis, PRBool *usable); + + nsresult (*GetWhyUnusable)(IExtPackBase *pThis, PRUnichar * *whyUnusable); + + nsresult (*GetShowLicense)(IExtPackBase *pThis, PRBool *showLicense); + + nsresult (*GetLicense)(IExtPackBase *pThis, PRUnichar * *license); + + nsresult (*GetInternalAndReservedAttribute1IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IExtPackBase)(IExtPackBase *pThis, PRUint32 *reserved); + + nsresult (*QueryLicense)( + IExtPackBase *pThis, + PRUnichar * preferredLocale, + PRUnichar * preferredLanguage, + PRUnichar * format, + PRUnichar * * licenseText + ); + + nsresult (*InternalAndReservedMethod1IExtPackBase)(IExtPackBase *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackBase)(IExtPackBase *pThis); + + nsresult (*InternalAndReservedMethod3IExtPackBase)(IExtPackBase *pThis); + + nsresult (*InternalAndReservedMethod4IExtPackBase)(IExtPackBase *pThis); + +}; +# define IExtPackBase_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtPackBase_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtPackBase_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtPackBase_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPackBase_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPackBase_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPackBase_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPackBase_get_Version(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IExtPackBase_GetVersion(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IExtPackBase_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IExtPackBase_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IExtPackBase_get_Edition(p, aEdition) ((p)->lpVtbl->GetEdition(p, aEdition)) +# define IExtPackBase_GetEdition(p, aEdition) ((p)->lpVtbl->GetEdition(p, aEdition)) +# define IExtPackBase_get_VRDEModule(p, aVRDEModule) ((p)->lpVtbl->GetVRDEModule(p, aVRDEModule)) +# define IExtPackBase_GetVRDEModule(p, aVRDEModule) ((p)->lpVtbl->GetVRDEModule(p, aVRDEModule)) +# define IExtPackBase_get_PlugIns(p, aPlugIns) ((p)->lpVtbl->GetPlugIns(p, aPlugIns)) +# define IExtPackBase_GetPlugIns(p, aPlugIns) ((p)->lpVtbl->GetPlugIns(p, aPlugIns)) +# define IExtPackBase_get_Usable(p, aUsable) ((p)->lpVtbl->GetUsable(p, aUsable)) +# define IExtPackBase_GetUsable(p, aUsable) ((p)->lpVtbl->GetUsable(p, aUsable)) +# define IExtPackBase_get_WhyUnusable(p, aWhyUnusable) ((p)->lpVtbl->GetWhyUnusable(p, aWhyUnusable)) +# define IExtPackBase_GetWhyUnusable(p, aWhyUnusable) ((p)->lpVtbl->GetWhyUnusable(p, aWhyUnusable)) +# define IExtPackBase_get_ShowLicense(p, aShowLicense) ((p)->lpVtbl->GetShowLicense(p, aShowLicense)) +# define IExtPackBase_GetShowLicense(p, aShowLicense) ((p)->lpVtbl->GetShowLicense(p, aShowLicense)) +# define IExtPackBase_get_License(p, aLicense) ((p)->lpVtbl->GetLicense(p, aLicense)) +# define IExtPackBase_GetLicense(p, aLicense) ((p)->lpVtbl->GetLicense(p, aLicense)) +# define IExtPackBase_QueryLicense(p, aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText) ((p)->lpVtbl->QueryLicense(p, aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtPackBase +{ +# ifndef VBOX_WITH_GLUE + struct IExtPackBase_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtPackBaseVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtPackBase declaration */ + + +/* Start of struct IExtPack declaration */ +# define IEXTPACK_IID_STR "431685da-3618-4ebc-b038-833ba829b4b2" +# define IEXTPACK_IID { \ + 0x431685da, 0x3618, 0x4ebc, \ + { 0xb0, 0x38, 0x83, 0x3b, 0xa8, 0x29, 0xb4, 0xb2 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtPack); +# ifndef VBOX_WITH_GLUE +struct IExtPack_vtbl +{ + struct IExtPackBase_vtbl iextpackbase; + + nsresult (*QueryObject)( + IExtPack *pThis, + PRUnichar * objUuid, + nsISupports * * returnInterface + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtPackVtbl +{ + nsresult (*QueryInterface)(IExtPack *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtPack *pThis); + nsrefcnt (*Release)(IExtPack *pThis); + nsresult (*GetName)(IExtPack *pThis, PRUnichar * *name); + + nsresult (*GetDescription)(IExtPack *pThis, PRUnichar * *description); + + nsresult (*GetVersion)(IExtPack *pThis, PRUnichar * *version); + + nsresult (*GetRevision)(IExtPack *pThis, PRUint32 *revision); + + nsresult (*GetEdition)(IExtPack *pThis, PRUnichar * *edition); + + nsresult (*GetVRDEModule)(IExtPack *pThis, PRUnichar * *VRDEModule); + + nsresult (*GetPlugIns)(IExtPack *pThis, PRUint32 *plugInsSize, IExtPackPlugIn * **plugIns); + + nsresult (*GetUsable)(IExtPack *pThis, PRBool *usable); + + nsresult (*GetWhyUnusable)(IExtPack *pThis, PRUnichar * *whyUnusable); + + nsresult (*GetShowLicense)(IExtPack *pThis, PRBool *showLicense); + + nsresult (*GetLicense)(IExtPack *pThis, PRUnichar * *license); + + nsresult (*GetInternalAndReservedAttribute1IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IExtPackBase)(IExtPack *pThis, PRUint32 *reserved); + + nsresult (*QueryLicense)( + IExtPack *pThis, + PRUnichar * preferredLocale, + PRUnichar * preferredLanguage, + PRUnichar * format, + PRUnichar * * licenseText + ); + + nsresult (*InternalAndReservedMethod1IExtPackBase)(IExtPack *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackBase)(IExtPack *pThis); + + nsresult (*InternalAndReservedMethod3IExtPackBase)(IExtPack *pThis); + + nsresult (*InternalAndReservedMethod4IExtPackBase)(IExtPack *pThis); + + nsresult (*QueryObject)( + IExtPack *pThis, + PRUnichar * objUuid, + nsISupports * * returnInterface + ); + +}; +# define IExtPack_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtPack_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtPack_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtPack_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPack_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPack_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPack_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPack_get_Version(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IExtPack_GetVersion(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IExtPack_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IExtPack_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IExtPack_get_Edition(p, aEdition) ((p)->lpVtbl->GetEdition(p, aEdition)) +# define IExtPack_GetEdition(p, aEdition) ((p)->lpVtbl->GetEdition(p, aEdition)) +# define IExtPack_get_VRDEModule(p, aVRDEModule) ((p)->lpVtbl->GetVRDEModule(p, aVRDEModule)) +# define IExtPack_GetVRDEModule(p, aVRDEModule) ((p)->lpVtbl->GetVRDEModule(p, aVRDEModule)) +# define IExtPack_get_PlugIns(p, aPlugIns) ((p)->lpVtbl->GetPlugIns(p, aPlugIns)) +# define IExtPack_GetPlugIns(p, aPlugIns) ((p)->lpVtbl->GetPlugIns(p, aPlugIns)) +# define IExtPack_get_Usable(p, aUsable) ((p)->lpVtbl->GetUsable(p, aUsable)) +# define IExtPack_GetUsable(p, aUsable) ((p)->lpVtbl->GetUsable(p, aUsable)) +# define IExtPack_get_WhyUnusable(p, aWhyUnusable) ((p)->lpVtbl->GetWhyUnusable(p, aWhyUnusable)) +# define IExtPack_GetWhyUnusable(p, aWhyUnusable) ((p)->lpVtbl->GetWhyUnusable(p, aWhyUnusable)) +# define IExtPack_get_ShowLicense(p, aShowLicense) ((p)->lpVtbl->GetShowLicense(p, aShowLicense)) +# define IExtPack_GetShowLicense(p, aShowLicense) ((p)->lpVtbl->GetShowLicense(p, aShowLicense)) +# define IExtPack_get_License(p, aLicense) ((p)->lpVtbl->GetLicense(p, aLicense)) +# define IExtPack_GetLicense(p, aLicense) ((p)->lpVtbl->GetLicense(p, aLicense)) +# define IExtPack_QueryLicense(p, aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText) ((p)->lpVtbl->QueryLicense(p, aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText)) +# define IExtPack_QueryObject(p, aObjUuid, aReturnInterface) ((p)->lpVtbl->QueryObject(p, aObjUuid, aReturnInterface)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtPack +{ +# ifndef VBOX_WITH_GLUE + struct IExtPack_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtPackVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtPack declaration */ + + +/* Start of struct IExtPackFile declaration */ +# define IEXTPACKFILE_IID_STR "41304f1b-7e72-4f34-b8f6-682785620c57" +# define IEXTPACKFILE_IID { \ + 0x41304f1b, 0x7e72, 0x4f34, \ + { 0xb8, 0xf6, 0x68, 0x27, 0x85, 0x62, 0x0c, 0x57 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtPackFile); +# ifndef VBOX_WITH_GLUE +struct IExtPackFile_vtbl +{ + struct IExtPackBase_vtbl iextpackbase; + + nsresult (*GetFilePath)(IExtPackFile *pThis, PRUnichar * *filePath); + + nsresult (*GetInternalAndReservedAttribute1IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*Install)( + IExtPackFile *pThis, + PRBool replace, + PRUnichar * displayInfo, + IProgress * * progess + ); + + nsresult (*InternalAndReservedMethod1IExtPackFile)(IExtPackFile *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackFile)(IExtPackFile *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtPackFileVtbl +{ + nsresult (*QueryInterface)(IExtPackFile *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtPackFile *pThis); + nsrefcnt (*Release)(IExtPackFile *pThis); + nsresult (*GetName)(IExtPackFile *pThis, PRUnichar * *name); + + nsresult (*GetDescription)(IExtPackFile *pThis, PRUnichar * *description); + + nsresult (*GetVersion)(IExtPackFile *pThis, PRUnichar * *version); + + nsresult (*GetRevision)(IExtPackFile *pThis, PRUint32 *revision); + + nsresult (*GetEdition)(IExtPackFile *pThis, PRUnichar * *edition); + + nsresult (*GetVRDEModule)(IExtPackFile *pThis, PRUnichar * *VRDEModule); + + nsresult (*GetPlugIns)(IExtPackFile *pThis, PRUint32 *plugInsSize, IExtPackPlugIn * **plugIns); + + nsresult (*GetUsable)(IExtPackFile *pThis, PRBool *usable); + + nsresult (*GetWhyUnusable)(IExtPackFile *pThis, PRUnichar * *whyUnusable); + + nsresult (*GetShowLicense)(IExtPackFile *pThis, PRBool *showLicense); + + nsresult (*GetLicense)(IExtPackFile *pThis, PRUnichar * *license); + + nsresult (*GetInternalAndReservedAttribute1IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IExtPackBase)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*QueryLicense)( + IExtPackFile *pThis, + PRUnichar * preferredLocale, + PRUnichar * preferredLanguage, + PRUnichar * format, + PRUnichar * * licenseText + ); + + nsresult (*InternalAndReservedMethod1IExtPackBase)(IExtPackFile *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackBase)(IExtPackFile *pThis); + + nsresult (*InternalAndReservedMethod3IExtPackBase)(IExtPackFile *pThis); + + nsresult (*InternalAndReservedMethod4IExtPackBase)(IExtPackFile *pThis); + + nsresult (*GetFilePath)(IExtPackFile *pThis, PRUnichar * *filePath); + + nsresult (*GetInternalAndReservedAttribute1IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackFile)(IExtPackFile *pThis, PRUint32 *reserved); + + nsresult (*Install)( + IExtPackFile *pThis, + PRBool replace, + PRUnichar * displayInfo, + IProgress * * progess + ); + + nsresult (*InternalAndReservedMethod1IExtPackFile)(IExtPackFile *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackFile)(IExtPackFile *pThis); + +}; +# define IExtPackFile_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtPackFile_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtPackFile_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtPackFile_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPackFile_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IExtPackFile_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPackFile_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IExtPackFile_get_Version(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IExtPackFile_GetVersion(p, aVersion) ((p)->lpVtbl->GetVersion(p, aVersion)) +# define IExtPackFile_get_Revision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IExtPackFile_GetRevision(p, aRevision) ((p)->lpVtbl->GetRevision(p, aRevision)) +# define IExtPackFile_get_Edition(p, aEdition) ((p)->lpVtbl->GetEdition(p, aEdition)) +# define IExtPackFile_GetEdition(p, aEdition) ((p)->lpVtbl->GetEdition(p, aEdition)) +# define IExtPackFile_get_VRDEModule(p, aVRDEModule) ((p)->lpVtbl->GetVRDEModule(p, aVRDEModule)) +# define IExtPackFile_GetVRDEModule(p, aVRDEModule) ((p)->lpVtbl->GetVRDEModule(p, aVRDEModule)) +# define IExtPackFile_get_PlugIns(p, aPlugIns) ((p)->lpVtbl->GetPlugIns(p, aPlugIns)) +# define IExtPackFile_GetPlugIns(p, aPlugIns) ((p)->lpVtbl->GetPlugIns(p, aPlugIns)) +# define IExtPackFile_get_Usable(p, aUsable) ((p)->lpVtbl->GetUsable(p, aUsable)) +# define IExtPackFile_GetUsable(p, aUsable) ((p)->lpVtbl->GetUsable(p, aUsable)) +# define IExtPackFile_get_WhyUnusable(p, aWhyUnusable) ((p)->lpVtbl->GetWhyUnusable(p, aWhyUnusable)) +# define IExtPackFile_GetWhyUnusable(p, aWhyUnusable) ((p)->lpVtbl->GetWhyUnusable(p, aWhyUnusable)) +# define IExtPackFile_get_ShowLicense(p, aShowLicense) ((p)->lpVtbl->GetShowLicense(p, aShowLicense)) +# define IExtPackFile_GetShowLicense(p, aShowLicense) ((p)->lpVtbl->GetShowLicense(p, aShowLicense)) +# define IExtPackFile_get_License(p, aLicense) ((p)->lpVtbl->GetLicense(p, aLicense)) +# define IExtPackFile_GetLicense(p, aLicense) ((p)->lpVtbl->GetLicense(p, aLicense)) +# define IExtPackFile_QueryLicense(p, aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText) ((p)->lpVtbl->QueryLicense(p, aPreferredLocale, aPreferredLanguage, aFormat, aLicenseText)) +# define IExtPackFile_get_FilePath(p, aFilePath) ((p)->lpVtbl->GetFilePath(p, aFilePath)) +# define IExtPackFile_GetFilePath(p, aFilePath) ((p)->lpVtbl->GetFilePath(p, aFilePath)) +# define IExtPackFile_Install(p, aReplace, aDisplayInfo, aProgess) ((p)->lpVtbl->Install(p, aReplace, aDisplayInfo, aProgess)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtPackFile +{ +# ifndef VBOX_WITH_GLUE + struct IExtPackFile_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtPackFileVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtPackFile declaration */ + + +/* Start of struct IExtPackManager declaration */ +# define IEXTPACKMANAGER_IID_STR "70401eef-c8e9-466b-9660-45cb3e9979e4" +# define IEXTPACKMANAGER_IID { \ + 0x70401eef, 0xc8e9, 0x466b, \ + { 0x96, 0x60, 0x45, 0xcb, 0x3e, 0x99, 0x79, 0xe4 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtPackManager); +# ifndef VBOX_WITH_GLUE +struct IExtPackManager_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetInstalledExtPacks)(IExtPackManager *pThis, PRUint32 *installedExtPacksSize, IExtPack * **installedExtPacks); + + nsresult (*GetInternalAndReservedAttribute1IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*Find)( + IExtPackManager *pThis, + PRUnichar * name, + IExtPack * * returnData + ); + + nsresult (*OpenExtPackFile)( + IExtPackManager *pThis, + PRUnichar * path, + IExtPackFile * * file + ); + + nsresult (*Uninstall)( + IExtPackManager *pThis, + PRUnichar * name, + PRBool forcedRemoval, + PRUnichar * displayInfo, + IProgress * * progess + ); + + nsresult (*Cleanup)(IExtPackManager *pThis ); + + nsresult (*QueryAllPlugInsForFrontend)( + IExtPackManager *pThis, + PRUnichar * frontendName, + PRUint32 *plugInModulesSize, + PRUnichar *** plugInModules + ); + + nsresult (*IsExtPackUsable)( + IExtPackManager *pThis, + PRUnichar * name, + PRBool * usable + ); + + nsresult (*InternalAndReservedMethod1IExtPackManager)(IExtPackManager *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackManager)(IExtPackManager *pThis); + + nsresult (*InternalAndReservedMethod3IExtPackManager)(IExtPackManager *pThis); + + nsresult (*InternalAndReservedMethod4IExtPackManager)(IExtPackManager *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtPackManagerVtbl +{ + nsresult (*QueryInterface)(IExtPackManager *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtPackManager *pThis); + nsrefcnt (*Release)(IExtPackManager *pThis); + nsresult (*GetInstalledExtPacks)(IExtPackManager *pThis, PRUint32 *installedExtPacksSize, IExtPack * **installedExtPacks); + + nsresult (*GetInternalAndReservedAttribute1IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IExtPackManager)(IExtPackManager *pThis, PRUint32 *reserved); + + nsresult (*Find)( + IExtPackManager *pThis, + PRUnichar * name, + IExtPack * * returnData + ); + + nsresult (*OpenExtPackFile)( + IExtPackManager *pThis, + PRUnichar * path, + IExtPackFile * * file + ); + + nsresult (*Uninstall)( + IExtPackManager *pThis, + PRUnichar * name, + PRBool forcedRemoval, + PRUnichar * displayInfo, + IProgress * * progess + ); + + nsresult (*Cleanup)(IExtPackManager *pThis ); + + nsresult (*QueryAllPlugInsForFrontend)( + IExtPackManager *pThis, + PRUnichar * frontendName, + PRUint32 *plugInModulesSize, + PRUnichar *** plugInModules + ); + + nsresult (*IsExtPackUsable)( + IExtPackManager *pThis, + PRUnichar * name, + PRBool * usable + ); + + nsresult (*InternalAndReservedMethod1IExtPackManager)(IExtPackManager *pThis); + + nsresult (*InternalAndReservedMethod2IExtPackManager)(IExtPackManager *pThis); + + nsresult (*InternalAndReservedMethod3IExtPackManager)(IExtPackManager *pThis); + + nsresult (*InternalAndReservedMethod4IExtPackManager)(IExtPackManager *pThis); + +}; +# define IExtPackManager_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtPackManager_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtPackManager_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtPackManager_get_InstalledExtPacks(p, aInstalledExtPacks) ((p)->lpVtbl->GetInstalledExtPacks(p, aInstalledExtPacks)) +# define IExtPackManager_GetInstalledExtPacks(p, aInstalledExtPacks) ((p)->lpVtbl->GetInstalledExtPacks(p, aInstalledExtPacks)) +# define IExtPackManager_Find(p, aName, aReturnData) ((p)->lpVtbl->Find(p, aName, aReturnData)) +# define IExtPackManager_OpenExtPackFile(p, aPath, aFile) ((p)->lpVtbl->OpenExtPackFile(p, aPath, aFile)) +# define IExtPackManager_Uninstall(p, aName, aForcedRemoval, aDisplayInfo, aProgess) ((p)->lpVtbl->Uninstall(p, aName, aForcedRemoval, aDisplayInfo, aProgess)) +# define IExtPackManager_Cleanup(p) ((p)->lpVtbl->Cleanup(p)) +# define IExtPackManager_QueryAllPlugInsForFrontend(p, aFrontendName, aPlugInModules) ((p)->lpVtbl->QueryAllPlugInsForFrontend(p, aFrontendName, aPlugInModules)) +# define IExtPackManager_IsExtPackUsable(p, aName, aUsable) ((p)->lpVtbl->IsExtPackUsable(p, aName, aUsable)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtPackManager +{ +# ifndef VBOX_WITH_GLUE + struct IExtPackManager_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtPackManagerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtPackManager declaration */ + + +/* Start of struct IBandwidthGroup declaration */ +# define IBANDWIDTHGROUP_IID_STR "31587f93-2d12-4d7c-ba6d-ce51d0d5b265" +# define IBANDWIDTHGROUP_IID { \ + 0x31587f93, 0x2d12, 0x4d7c, \ + { 0xba, 0x6d, 0xce, 0x51, 0xd0, 0xd5, 0xb2, 0x65 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IBandwidthGroup); +# ifndef VBOX_WITH_GLUE +struct IBandwidthGroup_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(IBandwidthGroup *pThis, PRUnichar * *name); + + nsresult (*GetType)(IBandwidthGroup *pThis, PRUint32 *type); + + nsresult (*GetReference)(IBandwidthGroup *pThis, PRUint32 *reference); + + nsresult (*GetMaxBytesPerSec)(IBandwidthGroup *pThis, PRInt64 *maxBytesPerSec); + nsresult (*SetMaxBytesPerSec)(IBandwidthGroup *pThis, PRInt64 maxBytesPerSec); + + nsresult (*GetInternalAndReservedAttribute1IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct IBandwidthGroupVtbl +{ + nsresult (*QueryInterface)(IBandwidthGroup *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IBandwidthGroup *pThis); + nsrefcnt (*Release)(IBandwidthGroup *pThis); + nsresult (*GetName)(IBandwidthGroup *pThis, PRUnichar * *name); + + nsresult (*GetType)(IBandwidthGroup *pThis, PRUint32 *type); + + nsresult (*GetReference)(IBandwidthGroup *pThis, PRUint32 *reference); + + nsresult (*GetMaxBytesPerSec)(IBandwidthGroup *pThis, PRInt64 *maxBytesPerSec); + nsresult (*SetMaxBytesPerSec)(IBandwidthGroup *pThis, PRInt64 maxBytesPerSec); + + nsresult (*GetInternalAndReservedAttribute1IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IBandwidthGroup)(IBandwidthGroup *pThis, PRUint32 *reserved); + +}; +# define IBandwidthGroup_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IBandwidthGroup_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IBandwidthGroup_Release(p) ((p)->lpVtbl->Release(p)) +# define IBandwidthGroup_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IBandwidthGroup_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IBandwidthGroup_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IBandwidthGroup_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IBandwidthGroup_get_Reference(p, aReference) ((p)->lpVtbl->GetReference(p, aReference)) +# define IBandwidthGroup_GetReference(p, aReference) ((p)->lpVtbl->GetReference(p, aReference)) +# define IBandwidthGroup_get_MaxBytesPerSec(p, aMaxBytesPerSec) ((p)->lpVtbl->GetMaxBytesPerSec(p, aMaxBytesPerSec)) +# define IBandwidthGroup_GetMaxBytesPerSec(p, aMaxBytesPerSec) ((p)->lpVtbl->GetMaxBytesPerSec(p, aMaxBytesPerSec)) +# define IBandwidthGroup_put_MaxBytesPerSec(p, aMaxBytesPerSec) ((p)->lpVtbl->SetMaxBytesPerSec(p, aMaxBytesPerSec)) +# define IBandwidthGroup_SetMaxBytesPerSec(p, aMaxBytesPerSec) ((p)->lpVtbl->SetMaxBytesPerSec(p, aMaxBytesPerSec)) +# endif /* VBOX_WITH_GLUE */ + +interface IBandwidthGroup +{ +# ifndef VBOX_WITH_GLUE + struct IBandwidthGroup_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IBandwidthGroupVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IBandwidthGroup declaration */ + + +/* Start of struct IBandwidthControl declaration */ +# define IBANDWIDTHCONTROL_IID_STR "48c7f4c0-c9d6-4742-957c-a6fd52e8c4ae" +# define IBANDWIDTHCONTROL_IID { \ + 0x48c7f4c0, 0xc9d6, 0x4742, \ + { 0x95, 0x7c, 0xa6, 0xfd, 0x52, 0xe8, 0xc4, 0xae } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IBandwidthControl); +# ifndef VBOX_WITH_GLUE +struct IBandwidthControl_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetNumGroups)(IBandwidthControl *pThis, PRUint32 *numGroups); + + nsresult (*GetInternalAndReservedAttribute1IBandwidthControl)(IBandwidthControl *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBandwidthControl)(IBandwidthControl *pThis, PRUint32 *reserved); + + nsresult (*CreateBandwidthGroup)( + IBandwidthControl *pThis, + PRUnichar * name, + PRUint32 type, + PRInt64 maxBytesPerSec + ); + + nsresult (*DeleteBandwidthGroup)( + IBandwidthControl *pThis, + PRUnichar * name + ); + + nsresult (*GetBandwidthGroup)( + IBandwidthControl *pThis, + PRUnichar * name, + IBandwidthGroup * * bandwidthGroup + ); + + nsresult (*GetAllBandwidthGroups)( + IBandwidthControl *pThis, + PRUint32 *bandwidthGroupsSize, + IBandwidthGroup *** bandwidthGroups + ); + + nsresult (*InternalAndReservedMethod1IBandwidthControl)(IBandwidthControl *pThis); + + nsresult (*InternalAndReservedMethod2IBandwidthControl)(IBandwidthControl *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IBandwidthControlVtbl +{ + nsresult (*QueryInterface)(IBandwidthControl *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IBandwidthControl *pThis); + nsrefcnt (*Release)(IBandwidthControl *pThis); + nsresult (*GetNumGroups)(IBandwidthControl *pThis, PRUint32 *numGroups); + + nsresult (*GetInternalAndReservedAttribute1IBandwidthControl)(IBandwidthControl *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBandwidthControl)(IBandwidthControl *pThis, PRUint32 *reserved); + + nsresult (*CreateBandwidthGroup)( + IBandwidthControl *pThis, + PRUnichar * name, + PRUint32 type, + PRInt64 maxBytesPerSec + ); + + nsresult (*DeleteBandwidthGroup)( + IBandwidthControl *pThis, + PRUnichar * name + ); + + nsresult (*GetBandwidthGroup)( + IBandwidthControl *pThis, + PRUnichar * name, + IBandwidthGroup * * bandwidthGroup + ); + + nsresult (*GetAllBandwidthGroups)( + IBandwidthControl *pThis, + PRUint32 *bandwidthGroupsSize, + IBandwidthGroup *** bandwidthGroups + ); + + nsresult (*InternalAndReservedMethod1IBandwidthControl)(IBandwidthControl *pThis); + + nsresult (*InternalAndReservedMethod2IBandwidthControl)(IBandwidthControl *pThis); + +}; +# define IBandwidthControl_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IBandwidthControl_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IBandwidthControl_Release(p) ((p)->lpVtbl->Release(p)) +# define IBandwidthControl_get_NumGroups(p, aNumGroups) ((p)->lpVtbl->GetNumGroups(p, aNumGroups)) +# define IBandwidthControl_GetNumGroups(p, aNumGroups) ((p)->lpVtbl->GetNumGroups(p, aNumGroups)) +# define IBandwidthControl_CreateBandwidthGroup(p, aName, aType, aMaxBytesPerSec) ((p)->lpVtbl->CreateBandwidthGroup(p, aName, aType, aMaxBytesPerSec)) +# define IBandwidthControl_DeleteBandwidthGroup(p, aName) ((p)->lpVtbl->DeleteBandwidthGroup(p, aName)) +# define IBandwidthControl_GetBandwidthGroup(p, aName, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aName, aBandwidthGroup)) +# define IBandwidthControl_GetAllBandwidthGroups(p, aBandwidthGroups) ((p)->lpVtbl->GetAllBandwidthGroups(p, aBandwidthGroups)) +# endif /* VBOX_WITH_GLUE */ + +interface IBandwidthControl +{ +# ifndef VBOX_WITH_GLUE + struct IBandwidthControl_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IBandwidthControlVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IBandwidthControl declaration */ + + +/* Start of struct IVirtualBoxClient declaration */ +# define IVIRTUALBOXCLIENT_IID_STR "d2937a8e-cb8d-4382-90ba-b7da78a74573" +# define IVIRTUALBOXCLIENT_IID { \ + 0xd2937a8e, 0xcb8d, 0x4382, \ + { 0x90, 0xba, 0xb7, 0xda, 0x78, 0xa7, 0x45, 0x73 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVirtualBoxClient); +# ifndef VBOX_WITH_GLUE +struct IVirtualBoxClient_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetVirtualBox)(IVirtualBoxClient *pThis, IVirtualBox * *virtualBox); + + nsresult (*GetSession)(IVirtualBoxClient *pThis, ISession * *session); + + nsresult (*GetEventSource)(IVirtualBoxClient *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*CheckMachineError)( + IVirtualBoxClient *pThis, + IMachine * machine + ); + + nsresult (*InternalAndReservedMethod1IVirtualBoxClient)(IVirtualBoxClient *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualBoxClient)(IVirtualBoxClient *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualBoxClient)(IVirtualBoxClient *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualBoxClient)(IVirtualBoxClient *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVirtualBoxClientVtbl +{ + nsresult (*QueryInterface)(IVirtualBoxClient *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVirtualBoxClient *pThis); + nsrefcnt (*Release)(IVirtualBoxClient *pThis); + nsresult (*GetVirtualBox)(IVirtualBoxClient *pThis, IVirtualBox * *virtualBox); + + nsresult (*GetSession)(IVirtualBoxClient *pThis, ISession * *session); + + nsresult (*GetEventSource)(IVirtualBoxClient *pThis, IEventSource * *eventSource); + + nsresult (*GetInternalAndReservedAttribute1IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualBoxClient)(IVirtualBoxClient *pThis, PRUint32 *reserved); + + nsresult (*CheckMachineError)( + IVirtualBoxClient *pThis, + IMachine * machine + ); + + nsresult (*InternalAndReservedMethod1IVirtualBoxClient)(IVirtualBoxClient *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualBoxClient)(IVirtualBoxClient *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualBoxClient)(IVirtualBoxClient *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualBoxClient)(IVirtualBoxClient *pThis); + +}; +# define IVirtualBoxClient_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVirtualBoxClient_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVirtualBoxClient_Release(p) ((p)->lpVtbl->Release(p)) +# define IVirtualBoxClient_get_VirtualBox(p, aVirtualBox) ((p)->lpVtbl->GetVirtualBox(p, aVirtualBox)) +# define IVirtualBoxClient_GetVirtualBox(p, aVirtualBox) ((p)->lpVtbl->GetVirtualBox(p, aVirtualBox)) +# define IVirtualBoxClient_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IVirtualBoxClient_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IVirtualBoxClient_get_EventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IVirtualBoxClient_GetEventSource(p, aEventSource) ((p)->lpVtbl->GetEventSource(p, aEventSource)) +# define IVirtualBoxClient_CheckMachineError(p, aMachine) ((p)->lpVtbl->CheckMachineError(p, aMachine)) +# endif /* VBOX_WITH_GLUE */ + +interface IVirtualBoxClient +{ +# ifndef VBOX_WITH_GLUE + struct IVirtualBoxClient_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVirtualBoxClientVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVirtualBoxClient declaration */ + + +/* Start of struct IEventSource declaration */ +# define IEVENTSOURCE_IID_STR "9b6e1aee-35f3-4f4d-b5bb-ed0ecefd8538" +# define IEVENTSOURCE_IID { \ + 0x9b6e1aee, 0x35f3, 0x4f4d, \ + { 0xb5, 0xbb, 0xed, 0x0e, 0xce, 0xfd, 0x85, 0x38 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IEventSource); +# ifndef VBOX_WITH_GLUE +struct IEventSource_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*CreateListener)( + IEventSource *pThis, + IEventListener * * listener + ); + + nsresult (*CreateAggregator)( + IEventSource *pThis, + PRUint32 subordinatesSize, + IEventSource ** subordinates, + IEventSource * * result + ); + + nsresult (*RegisterListener)( + IEventSource *pThis, + IEventListener * listener, + PRUint32 interestingSize, + PRUint32* interesting, + PRBool active + ); + + nsresult (*UnregisterListener)( + IEventSource *pThis, + IEventListener * listener + ); + + nsresult (*FireEvent)( + IEventSource *pThis, + IEvent * event, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetEvent)( + IEventSource *pThis, + IEventListener * listener, + PRInt32 timeout, + IEvent * * event + ); + + nsresult (*EventProcessed)( + IEventSource *pThis, + IEventListener * listener, + IEvent * event + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IEventSourceVtbl +{ + nsresult (*QueryInterface)(IEventSource *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IEventSource *pThis); + nsrefcnt (*Release)(IEventSource *pThis); + nsresult (*CreateListener)( + IEventSource *pThis, + IEventListener * * listener + ); + + nsresult (*CreateAggregator)( + IEventSource *pThis, + PRUint32 subordinatesSize, + IEventSource ** subordinates, + IEventSource * * result + ); + + nsresult (*RegisterListener)( + IEventSource *pThis, + IEventListener * listener, + PRUint32 interestingSize, + PRUint32* interesting, + PRBool active + ); + + nsresult (*UnregisterListener)( + IEventSource *pThis, + IEventListener * listener + ); + + nsresult (*FireEvent)( + IEventSource *pThis, + IEvent * event, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetEvent)( + IEventSource *pThis, + IEventListener * listener, + PRInt32 timeout, + IEvent * * event + ); + + nsresult (*EventProcessed)( + IEventSource *pThis, + IEventListener * listener, + IEvent * event + ); + +}; +# define IEventSource_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IEventSource_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IEventSource_Release(p) ((p)->lpVtbl->Release(p)) +# define IEventSource_CreateListener(p, aListener) ((p)->lpVtbl->CreateListener(p, aListener)) +# define IEventSource_CreateAggregator(p, aSubordinates, aResult) ((p)->lpVtbl->CreateAggregator(p, aSubordinates, aResult)) +# define IEventSource_RegisterListener(p, aListener, aInteresting, aActive) ((p)->lpVtbl->RegisterListener(p, aListener, aInteresting, aActive)) +# define IEventSource_UnregisterListener(p, aListener) ((p)->lpVtbl->UnregisterListener(p, aListener)) +# define IEventSource_FireEvent(p, aEvent, aTimeout, aResult) ((p)->lpVtbl->FireEvent(p, aEvent, aTimeout, aResult)) +# define IEventSource_GetEvent(p, aListener, aTimeout, aEvent) ((p)->lpVtbl->GetEvent(p, aListener, aTimeout, aEvent)) +# define IEventSource_EventProcessed(p, aListener, aEvent) ((p)->lpVtbl->EventProcessed(p, aListener, aEvent)) +# endif /* VBOX_WITH_GLUE */ + +interface IEventSource +{ +# ifndef VBOX_WITH_GLUE + struct IEventSource_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IEventSourceVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IEventSource declaration */ + + +/* Start of struct IEventListener declaration */ +# define IEVENTLISTENER_IID_STR "67099191-32e7-4f6c-85ee-422304c71b90" +# define IEVENTLISTENER_IID { \ + 0x67099191, 0x32e7, 0x4f6c, \ + { 0x85, 0xee, 0x42, 0x23, 0x04, 0xc7, 0x1b, 0x90 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IEventListener); +# ifndef VBOX_WITH_GLUE +struct IEventListener_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*HandleEvent)( + IEventListener *pThis, + IEvent * event + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IEventListenerVtbl +{ + nsresult (*QueryInterface)(IEventListener *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IEventListener *pThis); + nsrefcnt (*Release)(IEventListener *pThis); + nsresult (*HandleEvent)( + IEventListener *pThis, + IEvent * event + ); + +}; +# define IEventListener_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IEventListener_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IEventListener_Release(p) ((p)->lpVtbl->Release(p)) +# define IEventListener_HandleEvent(p, aEvent) ((p)->lpVtbl->HandleEvent(p, aEvent)) +# endif /* VBOX_WITH_GLUE */ + +interface IEventListener +{ +# ifndef VBOX_WITH_GLUE + struct IEventListener_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IEventListenerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IEventListener declaration */ + + +/* Start of struct IEvent declaration */ +# define IEVENT_IID_STR "0ca2adba-8f30-401b-a8cd-fe31dbe839c0" +# define IEVENT_IID { \ + 0x0ca2adba, 0x8f30, 0x401b, \ + { 0xa8, 0xcd, 0xfe, 0x31, 0xdb, 0xe8, 0x39, 0xc0 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IEvent); +# ifndef VBOX_WITH_GLUE +struct IEvent_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetType)(IEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IEvent *pThis ); + + nsresult (*WaitProcessed)( + IEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IEventVtbl +{ + nsresult (*QueryInterface)(IEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IEvent *pThis); + nsrefcnt (*Release)(IEvent *pThis); + nsresult (*GetType)(IEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IEvent *pThis ); + + nsresult (*WaitProcessed)( + IEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + +}; +# define IEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# endif /* VBOX_WITH_GLUE */ + +interface IEvent +{ +# ifndef VBOX_WITH_GLUE + struct IEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IEvent declaration */ + + +/* Start of struct IReusableEvent declaration */ +# define IREUSABLEEVENT_IID_STR "69bfb134-80f6-4266-8e20-16371f68fa25" +# define IREUSABLEEVENT_IID { \ + 0x69bfb134, 0x80f6, 0x4266, \ + { 0x8e, 0x20, 0x16, 0x37, 0x1f, 0x68, 0xfa, 0x25 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IReusableEvent); +# ifndef VBOX_WITH_GLUE +struct IReusableEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetGeneration)(IReusableEvent *pThis, PRUint32 *generation); + + nsresult (*Reuse)(IReusableEvent *pThis ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IReusableEventVtbl +{ + nsresult (*QueryInterface)(IReusableEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IReusableEvent *pThis); + nsrefcnt (*Release)(IReusableEvent *pThis); + nsresult (*GetType)(IReusableEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IReusableEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IReusableEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IReusableEvent *pThis ); + + nsresult (*WaitProcessed)( + IReusableEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetGeneration)(IReusableEvent *pThis, PRUint32 *generation); + + nsresult (*Reuse)(IReusableEvent *pThis ); + +}; +# define IReusableEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IReusableEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IReusableEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IReusableEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IReusableEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IReusableEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IReusableEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IReusableEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IReusableEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IReusableEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IReusableEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IReusableEvent_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IReusableEvent_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IReusableEvent_Reuse(p) ((p)->lpVtbl->Reuse(p)) +# endif /* VBOX_WITH_GLUE */ + +interface IReusableEvent +{ +# ifndef VBOX_WITH_GLUE + struct IReusableEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IReusableEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IReusableEvent declaration */ + + +/* Start of struct IMachineEvent declaration */ +# define IMACHINEEVENT_IID_STR "92ed7b1a-0d96-40ed-ae46-a564d484325e" +# define IMACHINEEVENT_IID { \ + 0x92ed7b1a, 0x0d96, 0x40ed, \ + { 0xae, 0x46, 0xa5, 0x64, 0xd4, 0x84, 0x32, 0x5e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMachineEvent); +# ifndef VBOX_WITH_GLUE +struct IMachineEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMachineId)(IMachineEvent *pThis, PRUnichar * *machineId); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMachineEventVtbl +{ + nsresult (*QueryInterface)(IMachineEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMachineEvent *pThis); + nsrefcnt (*Release)(IMachineEvent *pThis); + nsresult (*GetType)(IMachineEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMachineEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMachineEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMachineEvent *pThis ); + + nsresult (*WaitProcessed)( + IMachineEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IMachineEvent *pThis, PRUnichar * *machineId); + +}; +# define IMachineEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMachineEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMachineEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMachineEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMachineEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMachineEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# endif /* VBOX_WITH_GLUE */ + +interface IMachineEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMachineEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMachineEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMachineEvent declaration */ + + +/* Start of struct IMachineStateChangedEvent declaration */ +# define IMACHINESTATECHANGEDEVENT_IID_STR "5748F794-48DF-438D-85EB-98FFD70D18C9" +# define IMACHINESTATECHANGEDEVENT_IID { \ + 0x5748F794, 0x48DF, 0x438D, \ + { 0x85, 0xEB, 0x98, 0xFF, 0xD7, 0x0D, 0x18, 0xC9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMachineStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IMachineStateChangedEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetState)(IMachineStateChangedEvent *pThis, PRUint32 *state); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMachineStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IMachineStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMachineStateChangedEvent *pThis); + nsrefcnt (*Release)(IMachineStateChangedEvent *pThis); + nsresult (*GetType)(IMachineStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMachineStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMachineStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMachineStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IMachineStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IMachineStateChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetState)(IMachineStateChangedEvent *pThis, PRUint32 *state); + +}; +# define IMachineStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMachineStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMachineStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMachineStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMachineStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMachineStateChangedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineStateChangedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineStateChangedEvent_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IMachineStateChangedEvent_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# endif /* VBOX_WITH_GLUE */ + +interface IMachineStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMachineStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMachineStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMachineStateChangedEvent declaration */ + + +/* Start of struct IMachineDataChangedEvent declaration */ +# define IMACHINEDATACHANGEDEVENT_IID_STR "abe94809-2e88-4436-83d7-50f3e64d0503" +# define IMACHINEDATACHANGEDEVENT_IID { \ + 0xabe94809, 0x2e88, 0x4436, \ + { 0x83, 0xd7, 0x50, 0xf3, 0xe6, 0x4d, 0x05, 0x03 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMachineDataChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IMachineDataChangedEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetTemporary)(IMachineDataChangedEvent *pThis, PRBool *temporary); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMachineDataChangedEventVtbl +{ + nsresult (*QueryInterface)(IMachineDataChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMachineDataChangedEvent *pThis); + nsrefcnt (*Release)(IMachineDataChangedEvent *pThis); + nsresult (*GetType)(IMachineDataChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMachineDataChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMachineDataChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMachineDataChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IMachineDataChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IMachineDataChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetTemporary)(IMachineDataChangedEvent *pThis, PRBool *temporary); + +}; +# define IMachineDataChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMachineDataChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMachineDataChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMachineDataChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineDataChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineDataChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineDataChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineDataChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineDataChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineDataChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMachineDataChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMachineDataChangedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineDataChangedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineDataChangedEvent_get_Temporary(p, aTemporary) ((p)->lpVtbl->GetTemporary(p, aTemporary)) +# define IMachineDataChangedEvent_GetTemporary(p, aTemporary) ((p)->lpVtbl->GetTemporary(p, aTemporary)) +# endif /* VBOX_WITH_GLUE */ + +interface IMachineDataChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMachineDataChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMachineDataChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMachineDataChangedEvent declaration */ + + +/* Start of struct IMediumRegisteredEvent declaration */ +# define IMEDIUMREGISTEREDEVENT_IID_STR "53fac49a-b7f1-4a5a-a4ef-a11dd9c2a458" +# define IMEDIUMREGISTEREDEVENT_IID { \ + 0x53fac49a, 0xb7f1, 0x4a5a, \ + { 0xa4, 0xef, 0xa1, 0x1d, 0xd9, 0xc2, 0xa4, 0x58 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMediumRegisteredEvent); +# ifndef VBOX_WITH_GLUE +struct IMediumRegisteredEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMediumId)(IMediumRegisteredEvent *pThis, PRUnichar * *mediumId); + + nsresult (*GetMediumType)(IMediumRegisteredEvent *pThis, PRUint32 *mediumType); + + nsresult (*GetRegistered)(IMediumRegisteredEvent *pThis, PRBool *registered); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumRegisteredEventVtbl +{ + nsresult (*QueryInterface)(IMediumRegisteredEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMediumRegisteredEvent *pThis); + nsrefcnt (*Release)(IMediumRegisteredEvent *pThis); + nsresult (*GetType)(IMediumRegisteredEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMediumRegisteredEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMediumRegisteredEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMediumRegisteredEvent *pThis ); + + nsresult (*WaitProcessed)( + IMediumRegisteredEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMediumId)(IMediumRegisteredEvent *pThis, PRUnichar * *mediumId); + + nsresult (*GetMediumType)(IMediumRegisteredEvent *pThis, PRUint32 *mediumType); + + nsresult (*GetRegistered)(IMediumRegisteredEvent *pThis, PRBool *registered); + +}; +# define IMediumRegisteredEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMediumRegisteredEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMediumRegisteredEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMediumRegisteredEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumRegisteredEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumRegisteredEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMediumRegisteredEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMediumRegisteredEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMediumRegisteredEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMediumRegisteredEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMediumRegisteredEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMediumRegisteredEvent_get_MediumId(p, aMediumId) ((p)->lpVtbl->GetMediumId(p, aMediumId)) +# define IMediumRegisteredEvent_GetMediumId(p, aMediumId) ((p)->lpVtbl->GetMediumId(p, aMediumId)) +# define IMediumRegisteredEvent_get_MediumType(p, aMediumType) ((p)->lpVtbl->GetMediumType(p, aMediumType)) +# define IMediumRegisteredEvent_GetMediumType(p, aMediumType) ((p)->lpVtbl->GetMediumType(p, aMediumType)) +# define IMediumRegisteredEvent_get_Registered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# define IMediumRegisteredEvent_GetRegistered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# endif /* VBOX_WITH_GLUE */ + +interface IMediumRegisteredEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMediumRegisteredEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumRegisteredEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMediumRegisteredEvent declaration */ + + +/* Start of struct IMediumConfigChangedEvent declaration */ +# define IMEDIUMCONFIGCHANGEDEVENT_IID_STR "dd3e2654-a161-41f1-b583-4892f4a9d5d5" +# define IMEDIUMCONFIGCHANGEDEVENT_IID { \ + 0xdd3e2654, 0xa161, 0x41f1, \ + { 0xb5, 0x83, 0x48, 0x92, 0xf4, 0xa9, 0xd5, 0xd5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMediumConfigChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IMediumConfigChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMedium)(IMediumConfigChangedEvent *pThis, IMedium * *medium); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumConfigChangedEventVtbl +{ + nsresult (*QueryInterface)(IMediumConfigChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMediumConfigChangedEvent *pThis); + nsrefcnt (*Release)(IMediumConfigChangedEvent *pThis); + nsresult (*GetType)(IMediumConfigChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMediumConfigChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMediumConfigChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMediumConfigChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IMediumConfigChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMedium)(IMediumConfigChangedEvent *pThis, IMedium * *medium); + +}; +# define IMediumConfigChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMediumConfigChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMediumConfigChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMediumConfigChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumConfigChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumConfigChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMediumConfigChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMediumConfigChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMediumConfigChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMediumConfigChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMediumConfigChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMediumConfigChangedEvent_get_Medium(p, aMedium) ((p)->lpVtbl->GetMedium(p, aMedium)) +# define IMediumConfigChangedEvent_GetMedium(p, aMedium) ((p)->lpVtbl->GetMedium(p, aMedium)) +# endif /* VBOX_WITH_GLUE */ + +interface IMediumConfigChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMediumConfigChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumConfigChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMediumConfigChangedEvent declaration */ + + +/* Start of struct IMachineRegisteredEvent declaration */ +# define IMACHINEREGISTEREDEVENT_IID_STR "c354a762-3ff2-4f2e-8f09-07382ee25088" +# define IMACHINEREGISTEREDEVENT_IID { \ + 0xc354a762, 0x3ff2, 0x4f2e, \ + { 0x8f, 0x09, 0x07, 0x38, 0x2e, 0xe2, 0x50, 0x88 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMachineRegisteredEvent); +# ifndef VBOX_WITH_GLUE +struct IMachineRegisteredEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetRegistered)(IMachineRegisteredEvent *pThis, PRBool *registered); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMachineRegisteredEventVtbl +{ + nsresult (*QueryInterface)(IMachineRegisteredEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMachineRegisteredEvent *pThis); + nsrefcnt (*Release)(IMachineRegisteredEvent *pThis); + nsresult (*GetType)(IMachineRegisteredEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMachineRegisteredEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMachineRegisteredEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMachineRegisteredEvent *pThis ); + + nsresult (*WaitProcessed)( + IMachineRegisteredEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IMachineRegisteredEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetRegistered)(IMachineRegisteredEvent *pThis, PRBool *registered); + +}; +# define IMachineRegisteredEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMachineRegisteredEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMachineRegisteredEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMachineRegisteredEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineRegisteredEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMachineRegisteredEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineRegisteredEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMachineRegisteredEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineRegisteredEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMachineRegisteredEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMachineRegisteredEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMachineRegisteredEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineRegisteredEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IMachineRegisteredEvent_get_Registered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# define IMachineRegisteredEvent_GetRegistered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# endif /* VBOX_WITH_GLUE */ + +interface IMachineRegisteredEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMachineRegisteredEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMachineRegisteredEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMachineRegisteredEvent declaration */ + + +/* Start of struct ISessionStateChangedEvent declaration */ +# define ISESSIONSTATECHANGEDEVENT_IID_STR "714a3eef-799a-4489-86cd-fe8e45b2ff8e" +# define ISESSIONSTATECHANGEDEVENT_IID { \ + 0x714a3eef, 0x799a, 0x4489, \ + { 0x86, 0xcd, 0xfe, 0x8e, 0x45, 0xb2, 0xff, 0x8e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISessionStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ISessionStateChangedEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetState)(ISessionStateChangedEvent *pThis, PRUint32 *state); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISessionStateChangedEventVtbl +{ + nsresult (*QueryInterface)(ISessionStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISessionStateChangedEvent *pThis); + nsrefcnt (*Release)(ISessionStateChangedEvent *pThis); + nsresult (*GetType)(ISessionStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISessionStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISessionStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISessionStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ISessionStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(ISessionStateChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetState)(ISessionStateChangedEvent *pThis, PRUint32 *state); + +}; +# define ISessionStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISessionStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISessionStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISessionStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISessionStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISessionStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISessionStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISessionStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISessionStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISessionStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISessionStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISessionStateChangedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISessionStateChangedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISessionStateChangedEvent_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define ISessionStateChangedEvent_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# endif /* VBOX_WITH_GLUE */ + +interface ISessionStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISessionStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISessionStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISessionStateChangedEvent declaration */ + + +/* Start of struct IGuestPropertyChangedEvent declaration */ +# define IGUESTPROPERTYCHANGEDEVENT_IID_STR "3f63597a-26f1-4edb-8dd2-6bddd0912368" +# define IGUESTPROPERTYCHANGEDEVENT_IID { \ + 0x3f63597a, 0x26f1, 0x4edb, \ + { 0x8d, 0xd2, 0x6b, 0xdd, 0xd0, 0x91, 0x23, 0x68 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestPropertyChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestPropertyChangedEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetName)(IGuestPropertyChangedEvent *pThis, PRUnichar * *name); + + nsresult (*GetValue)(IGuestPropertyChangedEvent *pThis, PRUnichar * *value); + + nsresult (*GetFlags)(IGuestPropertyChangedEvent *pThis, PRUnichar * *flags); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestPropertyChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestPropertyChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestPropertyChangedEvent *pThis); + nsrefcnt (*Release)(IGuestPropertyChangedEvent *pThis); + nsresult (*GetType)(IGuestPropertyChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestPropertyChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestPropertyChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestPropertyChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestPropertyChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IGuestPropertyChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetName)(IGuestPropertyChangedEvent *pThis, PRUnichar * *name); + + nsresult (*GetValue)(IGuestPropertyChangedEvent *pThis, PRUnichar * *value); + + nsresult (*GetFlags)(IGuestPropertyChangedEvent *pThis, PRUnichar * *flags); + +}; +# define IGuestPropertyChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestPropertyChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestPropertyChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestPropertyChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestPropertyChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestPropertyChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestPropertyChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestPropertyChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestPropertyChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestPropertyChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestPropertyChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestPropertyChangedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IGuestPropertyChangedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IGuestPropertyChangedEvent_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestPropertyChangedEvent_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestPropertyChangedEvent_get_Value(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# define IGuestPropertyChangedEvent_GetValue(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# define IGuestPropertyChangedEvent_get_Flags(p, aFlags) ((p)->lpVtbl->GetFlags(p, aFlags)) +# define IGuestPropertyChangedEvent_GetFlags(p, aFlags) ((p)->lpVtbl->GetFlags(p, aFlags)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestPropertyChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestPropertyChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestPropertyChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestPropertyChangedEvent declaration */ + + +/* Start of struct ISnapshotEvent declaration */ +# define ISNAPSHOTEVENT_IID_STR "21637b0e-34b8-42d3-acfb-7e96daf77c22" +# define ISNAPSHOTEVENT_IID { \ + 0x21637b0e, 0x34b8, 0x42d3, \ + { 0xac, 0xfb, 0x7e, 0x96, 0xda, 0xf7, 0x7c, 0x22 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISnapshotEvent); +# ifndef VBOX_WITH_GLUE +struct ISnapshotEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetSnapshotId)(ISnapshotEvent *pThis, PRUnichar * *snapshotId); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISnapshotEventVtbl +{ + nsresult (*QueryInterface)(ISnapshotEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISnapshotEvent *pThis); + nsrefcnt (*Release)(ISnapshotEvent *pThis); + nsresult (*GetType)(ISnapshotEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISnapshotEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISnapshotEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISnapshotEvent *pThis ); + + nsresult (*WaitProcessed)( + ISnapshotEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(ISnapshotEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetSnapshotId)(ISnapshotEvent *pThis, PRUnichar * *snapshotId); + +}; +# define ISnapshotEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISnapshotEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISnapshotEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISnapshotEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISnapshotEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISnapshotEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotEvent_get_SnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotEvent_GetSnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# endif /* VBOX_WITH_GLUE */ + +interface ISnapshotEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISnapshotEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISnapshotEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISnapshotEvent declaration */ + + +/* Start of struct ISnapshotTakenEvent declaration */ +# define ISNAPSHOTTAKENEVENT_IID_STR "d27c0b3d-6038-422c-b45e-6d4a0503d9f1" +# define ISNAPSHOTTAKENEVENT_IID { \ + 0xd27c0b3d, 0x6038, 0x422c, \ + { 0xb4, 0x5e, 0x6d, 0x4a, 0x05, 0x03, 0xd9, 0xf1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISnapshotTakenEvent); +# ifndef VBOX_WITH_GLUE +struct ISnapshotTakenEvent_vtbl +{ + struct ISnapshotEvent_vtbl isnapshotevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotTakenEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISnapshotTakenEventVtbl +{ + nsresult (*QueryInterface)(ISnapshotTakenEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISnapshotTakenEvent *pThis); + nsrefcnt (*Release)(ISnapshotTakenEvent *pThis); + nsresult (*GetType)(ISnapshotTakenEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISnapshotTakenEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISnapshotTakenEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISnapshotTakenEvent *pThis ); + + nsresult (*WaitProcessed)( + ISnapshotTakenEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(ISnapshotTakenEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetSnapshotId)(ISnapshotTakenEvent *pThis, PRUnichar * *snapshotId); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotTakenEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define ISnapshotTakenEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISnapshotTakenEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISnapshotTakenEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISnapshotTakenEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotTakenEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotTakenEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotTakenEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotTakenEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotTakenEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotTakenEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISnapshotTakenEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISnapshotTakenEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotTakenEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotTakenEvent_get_SnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotTakenEvent_GetSnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotTakenEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define ISnapshotTakenEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface ISnapshotTakenEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISnapshotTakenEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISnapshotTakenEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISnapshotTakenEvent declaration */ + + +/* Start of struct ISnapshotDeletedEvent declaration */ +# define ISNAPSHOTDELETEDEVENT_IID_STR "c48f3401-4a9e-43f4-b7a7-54bd285e22f4" +# define ISNAPSHOTDELETEDEVENT_IID { \ + 0xc48f3401, 0x4a9e, 0x43f4, \ + { 0xb7, 0xa7, 0x54, 0xbd, 0x28, 0x5e, 0x22, 0xf4 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISnapshotDeletedEvent); +# ifndef VBOX_WITH_GLUE +struct ISnapshotDeletedEvent_vtbl +{ + struct ISnapshotEvent_vtbl isnapshotevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotDeletedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISnapshotDeletedEventVtbl +{ + nsresult (*QueryInterface)(ISnapshotDeletedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISnapshotDeletedEvent *pThis); + nsrefcnt (*Release)(ISnapshotDeletedEvent *pThis); + nsresult (*GetType)(ISnapshotDeletedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISnapshotDeletedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISnapshotDeletedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISnapshotDeletedEvent *pThis ); + + nsresult (*WaitProcessed)( + ISnapshotDeletedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(ISnapshotDeletedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetSnapshotId)(ISnapshotDeletedEvent *pThis, PRUnichar * *snapshotId); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotDeletedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define ISnapshotDeletedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISnapshotDeletedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISnapshotDeletedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISnapshotDeletedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotDeletedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotDeletedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotDeletedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotDeletedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotDeletedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotDeletedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISnapshotDeletedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISnapshotDeletedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotDeletedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotDeletedEvent_get_SnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotDeletedEvent_GetSnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotDeletedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define ISnapshotDeletedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface ISnapshotDeletedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISnapshotDeletedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISnapshotDeletedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISnapshotDeletedEvent declaration */ + + +/* Start of struct ISnapshotRestoredEvent declaration */ +# define ISNAPSHOTRESTOREDEVENT_IID_STR "f4d803b4-9b2d-4377-bfe6-9702e881516b" +# define ISNAPSHOTRESTOREDEVENT_IID { \ + 0xf4d803b4, 0x9b2d, 0x4377, \ + { 0xbf, 0xe6, 0x97, 0x02, 0xe8, 0x81, 0x51, 0x6b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISnapshotRestoredEvent); +# ifndef VBOX_WITH_GLUE +struct ISnapshotRestoredEvent_vtbl +{ + struct ISnapshotEvent_vtbl isnapshotevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotRestoredEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISnapshotRestoredEventVtbl +{ + nsresult (*QueryInterface)(ISnapshotRestoredEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISnapshotRestoredEvent *pThis); + nsrefcnt (*Release)(ISnapshotRestoredEvent *pThis); + nsresult (*GetType)(ISnapshotRestoredEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISnapshotRestoredEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISnapshotRestoredEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISnapshotRestoredEvent *pThis ); + + nsresult (*WaitProcessed)( + ISnapshotRestoredEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(ISnapshotRestoredEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetSnapshotId)(ISnapshotRestoredEvent *pThis, PRUnichar * *snapshotId); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotRestoredEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define ISnapshotRestoredEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISnapshotRestoredEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISnapshotRestoredEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISnapshotRestoredEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotRestoredEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotRestoredEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotRestoredEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotRestoredEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotRestoredEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotRestoredEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISnapshotRestoredEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISnapshotRestoredEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotRestoredEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotRestoredEvent_get_SnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotRestoredEvent_GetSnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotRestoredEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define ISnapshotRestoredEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface ISnapshotRestoredEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISnapshotRestoredEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISnapshotRestoredEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISnapshotRestoredEvent declaration */ + + +/* Start of struct ISnapshotChangedEvent declaration */ +# define ISNAPSHOTCHANGEDEVENT_IID_STR "07541941-8079-447a-a33e-47a69c7980db" +# define ISNAPSHOTCHANGEDEVENT_IID { \ + 0x07541941, 0x8079, 0x447a, \ + { 0xa3, 0x3e, 0x47, 0xa6, 0x9c, 0x79, 0x80, 0xdb } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISnapshotChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ISnapshotChangedEvent_vtbl +{ + struct ISnapshotEvent_vtbl isnapshotevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISnapshotChangedEventVtbl +{ + nsresult (*QueryInterface)(ISnapshotChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISnapshotChangedEvent *pThis); + nsrefcnt (*Release)(ISnapshotChangedEvent *pThis); + nsresult (*GetType)(ISnapshotChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISnapshotChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISnapshotChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISnapshotChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ISnapshotChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(ISnapshotChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetSnapshotId)(ISnapshotChangedEvent *pThis, PRUnichar * *snapshotId); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ISnapshotChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define ISnapshotChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISnapshotChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISnapshotChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISnapshotChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISnapshotChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISnapshotChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISnapshotChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISnapshotChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISnapshotChangedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotChangedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define ISnapshotChangedEvent_get_SnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotChangedEvent_GetSnapshotId(p, aSnapshotId) ((p)->lpVtbl->GetSnapshotId(p, aSnapshotId)) +# define ISnapshotChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define ISnapshotChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface ISnapshotChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISnapshotChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISnapshotChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISnapshotChangedEvent declaration */ + + +/* Start of struct IMousePointerShapeChangedEvent declaration */ +# define IMOUSEPOINTERSHAPECHANGEDEVENT_IID_STR "a6dcf6e8-416b-4181-8c4a-45ec95177aef" +# define IMOUSEPOINTERSHAPECHANGEDEVENT_IID { \ + 0xa6dcf6e8, 0x416b, 0x4181, \ + { 0x8c, 0x4a, 0x45, 0xec, 0x95, 0x17, 0x7a, 0xef } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMousePointerShapeChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IMousePointerShapeChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetVisible)(IMousePointerShapeChangedEvent *pThis, PRBool *visible); + + nsresult (*GetAlpha)(IMousePointerShapeChangedEvent *pThis, PRBool *alpha); + + nsresult (*GetXhot)(IMousePointerShapeChangedEvent *pThis, PRUint32 *xhot); + + nsresult (*GetYhot)(IMousePointerShapeChangedEvent *pThis, PRUint32 *yhot); + + nsresult (*GetWidth)(IMousePointerShapeChangedEvent *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IMousePointerShapeChangedEvent *pThis, PRUint32 *height); + + nsresult (*GetShape)(IMousePointerShapeChangedEvent *pThis, PRUint32 *shapeSize, PRUint8 **shape); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMousePointerShapeChangedEventVtbl +{ + nsresult (*QueryInterface)(IMousePointerShapeChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMousePointerShapeChangedEvent *pThis); + nsrefcnt (*Release)(IMousePointerShapeChangedEvent *pThis); + nsresult (*GetType)(IMousePointerShapeChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMousePointerShapeChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMousePointerShapeChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMousePointerShapeChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IMousePointerShapeChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetVisible)(IMousePointerShapeChangedEvent *pThis, PRBool *visible); + + nsresult (*GetAlpha)(IMousePointerShapeChangedEvent *pThis, PRBool *alpha); + + nsresult (*GetXhot)(IMousePointerShapeChangedEvent *pThis, PRUint32 *xhot); + + nsresult (*GetYhot)(IMousePointerShapeChangedEvent *pThis, PRUint32 *yhot); + + nsresult (*GetWidth)(IMousePointerShapeChangedEvent *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IMousePointerShapeChangedEvent *pThis, PRUint32 *height); + + nsresult (*GetShape)(IMousePointerShapeChangedEvent *pThis, PRUint32 *shapeSize, PRUint8 **shape); + +}; +# define IMousePointerShapeChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMousePointerShapeChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMousePointerShapeChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMousePointerShapeChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMousePointerShapeChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMousePointerShapeChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMousePointerShapeChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMousePointerShapeChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMousePointerShapeChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMousePointerShapeChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMousePointerShapeChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMousePointerShapeChangedEvent_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IMousePointerShapeChangedEvent_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IMousePointerShapeChangedEvent_get_Alpha(p, aAlpha) ((p)->lpVtbl->GetAlpha(p, aAlpha)) +# define IMousePointerShapeChangedEvent_GetAlpha(p, aAlpha) ((p)->lpVtbl->GetAlpha(p, aAlpha)) +# define IMousePointerShapeChangedEvent_get_Xhot(p, aXhot) ((p)->lpVtbl->GetXhot(p, aXhot)) +# define IMousePointerShapeChangedEvent_GetXhot(p, aXhot) ((p)->lpVtbl->GetXhot(p, aXhot)) +# define IMousePointerShapeChangedEvent_get_Yhot(p, aYhot) ((p)->lpVtbl->GetYhot(p, aYhot)) +# define IMousePointerShapeChangedEvent_GetYhot(p, aYhot) ((p)->lpVtbl->GetYhot(p, aYhot)) +# define IMousePointerShapeChangedEvent_get_Width(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IMousePointerShapeChangedEvent_GetWidth(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IMousePointerShapeChangedEvent_get_Height(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IMousePointerShapeChangedEvent_GetHeight(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IMousePointerShapeChangedEvent_get_Shape(p, aShape) ((p)->lpVtbl->GetShape(p, aShape)) +# define IMousePointerShapeChangedEvent_GetShape(p, aShape) ((p)->lpVtbl->GetShape(p, aShape)) +# endif /* VBOX_WITH_GLUE */ + +interface IMousePointerShapeChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMousePointerShapeChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMousePointerShapeChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMousePointerShapeChangedEvent declaration */ + + +/* Start of struct IMouseCapabilityChangedEvent declaration */ +# define IMOUSECAPABILITYCHANGEDEVENT_IID_STR "70e7779a-e64a-4908-804e-371cad23a756" +# define IMOUSECAPABILITYCHANGEDEVENT_IID { \ + 0x70e7779a, 0xe64a, 0x4908, \ + { 0x80, 0x4e, 0x37, 0x1c, 0xad, 0x23, 0xa7, 0x56 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMouseCapabilityChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IMouseCapabilityChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetSupportsAbsolute)(IMouseCapabilityChangedEvent *pThis, PRBool *supportsAbsolute); + + nsresult (*GetSupportsRelative)(IMouseCapabilityChangedEvent *pThis, PRBool *supportsRelative); + + nsresult (*GetSupportsMultiTouch)(IMouseCapabilityChangedEvent *pThis, PRBool *supportsMultiTouch); + + nsresult (*GetNeedsHostCursor)(IMouseCapabilityChangedEvent *pThis, PRBool *needsHostCursor); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMouseCapabilityChangedEventVtbl +{ + nsresult (*QueryInterface)(IMouseCapabilityChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMouseCapabilityChangedEvent *pThis); + nsrefcnt (*Release)(IMouseCapabilityChangedEvent *pThis); + nsresult (*GetType)(IMouseCapabilityChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMouseCapabilityChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMouseCapabilityChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMouseCapabilityChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IMouseCapabilityChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSupportsAbsolute)(IMouseCapabilityChangedEvent *pThis, PRBool *supportsAbsolute); + + nsresult (*GetSupportsRelative)(IMouseCapabilityChangedEvent *pThis, PRBool *supportsRelative); + + nsresult (*GetSupportsMultiTouch)(IMouseCapabilityChangedEvent *pThis, PRBool *supportsMultiTouch); + + nsresult (*GetNeedsHostCursor)(IMouseCapabilityChangedEvent *pThis, PRBool *needsHostCursor); + +}; +# define IMouseCapabilityChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMouseCapabilityChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMouseCapabilityChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMouseCapabilityChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMouseCapabilityChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMouseCapabilityChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMouseCapabilityChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMouseCapabilityChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMouseCapabilityChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMouseCapabilityChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMouseCapabilityChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMouseCapabilityChangedEvent_get_SupportsAbsolute(p, aSupportsAbsolute) ((p)->lpVtbl->GetSupportsAbsolute(p, aSupportsAbsolute)) +# define IMouseCapabilityChangedEvent_GetSupportsAbsolute(p, aSupportsAbsolute) ((p)->lpVtbl->GetSupportsAbsolute(p, aSupportsAbsolute)) +# define IMouseCapabilityChangedEvent_get_SupportsRelative(p, aSupportsRelative) ((p)->lpVtbl->GetSupportsRelative(p, aSupportsRelative)) +# define IMouseCapabilityChangedEvent_GetSupportsRelative(p, aSupportsRelative) ((p)->lpVtbl->GetSupportsRelative(p, aSupportsRelative)) +# define IMouseCapabilityChangedEvent_get_SupportsMultiTouch(p, aSupportsMultiTouch) ((p)->lpVtbl->GetSupportsMultiTouch(p, aSupportsMultiTouch)) +# define IMouseCapabilityChangedEvent_GetSupportsMultiTouch(p, aSupportsMultiTouch) ((p)->lpVtbl->GetSupportsMultiTouch(p, aSupportsMultiTouch)) +# define IMouseCapabilityChangedEvent_get_NeedsHostCursor(p, aNeedsHostCursor) ((p)->lpVtbl->GetNeedsHostCursor(p, aNeedsHostCursor)) +# define IMouseCapabilityChangedEvent_GetNeedsHostCursor(p, aNeedsHostCursor) ((p)->lpVtbl->GetNeedsHostCursor(p, aNeedsHostCursor)) +# endif /* VBOX_WITH_GLUE */ + +interface IMouseCapabilityChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMouseCapabilityChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMouseCapabilityChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMouseCapabilityChangedEvent declaration */ + + +/* Start of struct IKeyboardLedsChangedEvent declaration */ +# define IKEYBOARDLEDSCHANGEDEVENT_IID_STR "6DDEF35E-4737-457B-99FC-BC52C851A44F" +# define IKEYBOARDLEDSCHANGEDEVENT_IID { \ + 0x6DDEF35E, 0x4737, 0x457B, \ + { 0x99, 0xFC, 0xBC, 0x52, 0xC8, 0x51, 0xA4, 0x4F } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IKeyboardLedsChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IKeyboardLedsChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetNumLock)(IKeyboardLedsChangedEvent *pThis, PRBool *numLock); + + nsresult (*GetCapsLock)(IKeyboardLedsChangedEvent *pThis, PRBool *capsLock); + + nsresult (*GetScrollLock)(IKeyboardLedsChangedEvent *pThis, PRBool *scrollLock); + +}; +# else /* VBOX_WITH_GLUE */ +struct IKeyboardLedsChangedEventVtbl +{ + nsresult (*QueryInterface)(IKeyboardLedsChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IKeyboardLedsChangedEvent *pThis); + nsrefcnt (*Release)(IKeyboardLedsChangedEvent *pThis); + nsresult (*GetType)(IKeyboardLedsChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IKeyboardLedsChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IKeyboardLedsChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IKeyboardLedsChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IKeyboardLedsChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNumLock)(IKeyboardLedsChangedEvent *pThis, PRBool *numLock); + + nsresult (*GetCapsLock)(IKeyboardLedsChangedEvent *pThis, PRBool *capsLock); + + nsresult (*GetScrollLock)(IKeyboardLedsChangedEvent *pThis, PRBool *scrollLock); + +}; +# define IKeyboardLedsChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IKeyboardLedsChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IKeyboardLedsChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IKeyboardLedsChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IKeyboardLedsChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IKeyboardLedsChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IKeyboardLedsChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IKeyboardLedsChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IKeyboardLedsChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IKeyboardLedsChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IKeyboardLedsChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IKeyboardLedsChangedEvent_get_NumLock(p, aNumLock) ((p)->lpVtbl->GetNumLock(p, aNumLock)) +# define IKeyboardLedsChangedEvent_GetNumLock(p, aNumLock) ((p)->lpVtbl->GetNumLock(p, aNumLock)) +# define IKeyboardLedsChangedEvent_get_CapsLock(p, aCapsLock) ((p)->lpVtbl->GetCapsLock(p, aCapsLock)) +# define IKeyboardLedsChangedEvent_GetCapsLock(p, aCapsLock) ((p)->lpVtbl->GetCapsLock(p, aCapsLock)) +# define IKeyboardLedsChangedEvent_get_ScrollLock(p, aScrollLock) ((p)->lpVtbl->GetScrollLock(p, aScrollLock)) +# define IKeyboardLedsChangedEvent_GetScrollLock(p, aScrollLock) ((p)->lpVtbl->GetScrollLock(p, aScrollLock)) +# endif /* VBOX_WITH_GLUE */ + +interface IKeyboardLedsChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IKeyboardLedsChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IKeyboardLedsChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IKeyboardLedsChangedEvent declaration */ + + +/* Start of struct IStateChangedEvent declaration */ +# define ISTATECHANGEDEVENT_IID_STR "4376693C-CF37-453B-9289-3B0F521CAF27" +# define ISTATECHANGEDEVENT_IID { \ + 0x4376693C, 0xCF37, 0x453B, \ + { 0x92, 0x89, 0x3B, 0x0F, 0x52, 0x1C, 0xAF, 0x27 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IStateChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetState)(IStateChangedEvent *pThis, PRUint32 *state); + +}; +# else /* VBOX_WITH_GLUE */ +struct IStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IStateChangedEvent *pThis); + nsrefcnt (*Release)(IStateChangedEvent *pThis); + nsresult (*GetType)(IStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetState)(IStateChangedEvent *pThis, PRUint32 *state); + +}; +# define IStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IStateChangedEvent_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IStateChangedEvent_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# endif /* VBOX_WITH_GLUE */ + +interface IStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IStateChangedEvent declaration */ + + +/* Start of struct IAdditionsStateChangedEvent declaration */ +# define IADDITIONSSTATECHANGEDEVENT_IID_STR "D70F7915-DA7C-44C8-A7AC-9F173490446A" +# define IADDITIONSSTATECHANGEDEVENT_IID { \ + 0xD70F7915, 0xDA7C, 0x44C8, \ + { 0xA7, 0xAC, 0x9F, 0x17, 0x34, 0x90, 0x44, 0x6A } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IAdditionsStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IAdditionsStateChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IAdditionsStateChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IAdditionsStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IAdditionsStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IAdditionsStateChangedEvent *pThis); + nsrefcnt (*Release)(IAdditionsStateChangedEvent *pThis); + nsresult (*GetType)(IAdditionsStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IAdditionsStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IAdditionsStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IAdditionsStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IAdditionsStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IAdditionsStateChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IAdditionsStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IAdditionsStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IAdditionsStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IAdditionsStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IAdditionsStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IAdditionsStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IAdditionsStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IAdditionsStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IAdditionsStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IAdditionsStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IAdditionsStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IAdditionsStateChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IAdditionsStateChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IAdditionsStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IAdditionsStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IAdditionsStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IAdditionsStateChangedEvent declaration */ + + +/* Start of struct INetworkAdapterChangedEvent declaration */ +# define INETWORKADAPTERCHANGEDEVENT_IID_STR "08889892-1EC6-4883-801D-77F56CFD0103" +# define INETWORKADAPTERCHANGEDEVENT_IID { \ + 0x08889892, 0x1EC6, 0x4883, \ + { 0x80, 0x1D, 0x77, 0xF5, 0x6C, 0xFD, 0x01, 0x03 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INetworkAdapterChangedEvent); +# ifndef VBOX_WITH_GLUE +struct INetworkAdapterChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetNetworkAdapter)(INetworkAdapterChangedEvent *pThis, INetworkAdapter * *networkAdapter); + +}; +# else /* VBOX_WITH_GLUE */ +struct INetworkAdapterChangedEventVtbl +{ + nsresult (*QueryInterface)(INetworkAdapterChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INetworkAdapterChangedEvent *pThis); + nsrefcnt (*Release)(INetworkAdapterChangedEvent *pThis); + nsresult (*GetType)(INetworkAdapterChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INetworkAdapterChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INetworkAdapterChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INetworkAdapterChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + INetworkAdapterChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkAdapter)(INetworkAdapterChangedEvent *pThis, INetworkAdapter * *networkAdapter); + +}; +# define INetworkAdapterChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INetworkAdapterChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INetworkAdapterChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INetworkAdapterChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INetworkAdapterChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INetworkAdapterChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INetworkAdapterChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INetworkAdapterChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INetworkAdapterChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INetworkAdapterChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INetworkAdapterChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INetworkAdapterChangedEvent_get_NetworkAdapter(p, aNetworkAdapter) ((p)->lpVtbl->GetNetworkAdapter(p, aNetworkAdapter)) +# define INetworkAdapterChangedEvent_GetNetworkAdapter(p, aNetworkAdapter) ((p)->lpVtbl->GetNetworkAdapter(p, aNetworkAdapter)) +# endif /* VBOX_WITH_GLUE */ + +interface INetworkAdapterChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct INetworkAdapterChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INetworkAdapterChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INetworkAdapterChangedEvent declaration */ + + +/* Start of struct IAudioAdapterChangedEvent declaration */ +# define IAUDIOADAPTERCHANGEDEVENT_IID_STR "D5ABC823-04D0-4DB6-8D66-DC2F033120E1" +# define IAUDIOADAPTERCHANGEDEVENT_IID { \ + 0xD5ABC823, 0x04D0, 0x4DB6, \ + { 0x8D, 0x66, 0xDC, 0x2F, 0x03, 0x31, 0x20, 0xE1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IAudioAdapterChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IAudioAdapterChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetAudioAdapter)(IAudioAdapterChangedEvent *pThis, IAudioAdapter * *audioAdapter); + +}; +# else /* VBOX_WITH_GLUE */ +struct IAudioAdapterChangedEventVtbl +{ + nsresult (*QueryInterface)(IAudioAdapterChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IAudioAdapterChangedEvent *pThis); + nsrefcnt (*Release)(IAudioAdapterChangedEvent *pThis); + nsresult (*GetType)(IAudioAdapterChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IAudioAdapterChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IAudioAdapterChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IAudioAdapterChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IAudioAdapterChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetAudioAdapter)(IAudioAdapterChangedEvent *pThis, IAudioAdapter * *audioAdapter); + +}; +# define IAudioAdapterChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IAudioAdapterChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IAudioAdapterChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IAudioAdapterChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IAudioAdapterChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IAudioAdapterChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IAudioAdapterChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IAudioAdapterChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IAudioAdapterChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IAudioAdapterChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IAudioAdapterChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IAudioAdapterChangedEvent_get_AudioAdapter(p, aAudioAdapter) ((p)->lpVtbl->GetAudioAdapter(p, aAudioAdapter)) +# define IAudioAdapterChangedEvent_GetAudioAdapter(p, aAudioAdapter) ((p)->lpVtbl->GetAudioAdapter(p, aAudioAdapter)) +# endif /* VBOX_WITH_GLUE */ + +interface IAudioAdapterChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IAudioAdapterChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IAudioAdapterChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IAudioAdapterChangedEvent declaration */ + + +/* Start of struct ISerialPortChangedEvent declaration */ +# define ISERIALPORTCHANGEDEVENT_IID_STR "3BA329DC-659C-488B-835C-4ECA7AE71C6C" +# define ISERIALPORTCHANGEDEVENT_IID { \ + 0x3BA329DC, 0x659C, 0x488B, \ + { 0x83, 0x5C, 0x4E, 0xCA, 0x7A, 0xE7, 0x1C, 0x6C } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISerialPortChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ISerialPortChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetSerialPort)(ISerialPortChangedEvent *pThis, ISerialPort * *serialPort); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISerialPortChangedEventVtbl +{ + nsresult (*QueryInterface)(ISerialPortChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISerialPortChangedEvent *pThis); + nsrefcnt (*Release)(ISerialPortChangedEvent *pThis); + nsresult (*GetType)(ISerialPortChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISerialPortChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISerialPortChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISerialPortChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ISerialPortChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSerialPort)(ISerialPortChangedEvent *pThis, ISerialPort * *serialPort); + +}; +# define ISerialPortChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISerialPortChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISerialPortChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISerialPortChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISerialPortChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISerialPortChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISerialPortChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISerialPortChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISerialPortChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISerialPortChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISerialPortChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISerialPortChangedEvent_get_SerialPort(p, aSerialPort) ((p)->lpVtbl->GetSerialPort(p, aSerialPort)) +# define ISerialPortChangedEvent_GetSerialPort(p, aSerialPort) ((p)->lpVtbl->GetSerialPort(p, aSerialPort)) +# endif /* VBOX_WITH_GLUE */ + +interface ISerialPortChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISerialPortChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISerialPortChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISerialPortChangedEvent declaration */ + + +/* Start of struct IParallelPortChangedEvent declaration */ +# define IPARALLELPORTCHANGEDEVENT_IID_STR "813C99FC-9849-4F47-813E-24A75DC85615" +# define IPARALLELPORTCHANGEDEVENT_IID { \ + 0x813C99FC, 0x9849, 0x4F47, \ + { 0x81, 0x3E, 0x24, 0xA7, 0x5D, 0xC8, 0x56, 0x15 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IParallelPortChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IParallelPortChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetParallelPort)(IParallelPortChangedEvent *pThis, IParallelPort * *parallelPort); + +}; +# else /* VBOX_WITH_GLUE */ +struct IParallelPortChangedEventVtbl +{ + nsresult (*QueryInterface)(IParallelPortChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IParallelPortChangedEvent *pThis); + nsrefcnt (*Release)(IParallelPortChangedEvent *pThis); + nsresult (*GetType)(IParallelPortChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IParallelPortChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IParallelPortChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IParallelPortChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IParallelPortChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetParallelPort)(IParallelPortChangedEvent *pThis, IParallelPort * *parallelPort); + +}; +# define IParallelPortChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IParallelPortChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IParallelPortChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IParallelPortChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IParallelPortChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IParallelPortChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IParallelPortChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IParallelPortChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IParallelPortChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IParallelPortChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IParallelPortChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IParallelPortChangedEvent_get_ParallelPort(p, aParallelPort) ((p)->lpVtbl->GetParallelPort(p, aParallelPort)) +# define IParallelPortChangedEvent_GetParallelPort(p, aParallelPort) ((p)->lpVtbl->GetParallelPort(p, aParallelPort)) +# endif /* VBOX_WITH_GLUE */ + +interface IParallelPortChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IParallelPortChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IParallelPortChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IParallelPortChangedEvent declaration */ + + +/* Start of struct IStorageControllerChangedEvent declaration */ +# define ISTORAGECONTROLLERCHANGEDEVENT_IID_STR "6BB335CC-1C58-440C-BB7B-3A1397284C7B" +# define ISTORAGECONTROLLERCHANGEDEVENT_IID { \ + 0x6BB335CC, 0x1C58, 0x440C, \ + { 0xBB, 0x7B, 0x3A, 0x13, 0x97, 0x28, 0x4C, 0x7B } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IStorageControllerChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IStorageControllerChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMachinId)(IStorageControllerChangedEvent *pThis, PRUnichar * *machinId); + + nsresult (*GetControllerName)(IStorageControllerChangedEvent *pThis, PRUnichar * *controllerName); + +}; +# else /* VBOX_WITH_GLUE */ +struct IStorageControllerChangedEventVtbl +{ + nsresult (*QueryInterface)(IStorageControllerChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IStorageControllerChangedEvent *pThis); + nsrefcnt (*Release)(IStorageControllerChangedEvent *pThis); + nsresult (*GetType)(IStorageControllerChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IStorageControllerChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IStorageControllerChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IStorageControllerChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IStorageControllerChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachinId)(IStorageControllerChangedEvent *pThis, PRUnichar * *machinId); + + nsresult (*GetControllerName)(IStorageControllerChangedEvent *pThis, PRUnichar * *controllerName); + +}; +# define IStorageControllerChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IStorageControllerChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IStorageControllerChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IStorageControllerChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStorageControllerChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStorageControllerChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IStorageControllerChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IStorageControllerChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IStorageControllerChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IStorageControllerChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IStorageControllerChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IStorageControllerChangedEvent_get_MachinId(p, aMachinId) ((p)->lpVtbl->GetMachinId(p, aMachinId)) +# define IStorageControllerChangedEvent_GetMachinId(p, aMachinId) ((p)->lpVtbl->GetMachinId(p, aMachinId)) +# define IStorageControllerChangedEvent_get_ControllerName(p, aControllerName) ((p)->lpVtbl->GetControllerName(p, aControllerName)) +# define IStorageControllerChangedEvent_GetControllerName(p, aControllerName) ((p)->lpVtbl->GetControllerName(p, aControllerName)) +# endif /* VBOX_WITH_GLUE */ + +interface IStorageControllerChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IStorageControllerChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IStorageControllerChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IStorageControllerChangedEvent declaration */ + + +/* Start of struct IMediumChangedEvent declaration */ +# define IMEDIUMCHANGEDEVENT_IID_STR "0FE2DA40-5637-472A-9736-72019EABD7DE" +# define IMEDIUMCHANGEDEVENT_IID { \ + 0x0FE2DA40, 0x5637, 0x472A, \ + { 0x97, 0x36, 0x72, 0x01, 0x9E, 0xAB, 0xD7, 0xDE } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IMediumChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IMediumChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMediumAttachment)(IMediumChangedEvent *pThis, IMediumAttachment * *mediumAttachment); + +}; +# else /* VBOX_WITH_GLUE */ +struct IMediumChangedEventVtbl +{ + nsresult (*QueryInterface)(IMediumChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IMediumChangedEvent *pThis); + nsrefcnt (*Release)(IMediumChangedEvent *pThis); + nsresult (*GetType)(IMediumChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IMediumChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IMediumChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IMediumChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IMediumChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMediumAttachment)(IMediumChangedEvent *pThis, IMediumAttachment * *mediumAttachment); + +}; +# define IMediumChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IMediumChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IMediumChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IMediumChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IMediumChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMediumChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IMediumChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMediumChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IMediumChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IMediumChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IMediumChangedEvent_get_MediumAttachment(p, aMediumAttachment) ((p)->lpVtbl->GetMediumAttachment(p, aMediumAttachment)) +# define IMediumChangedEvent_GetMediumAttachment(p, aMediumAttachment) ((p)->lpVtbl->GetMediumAttachment(p, aMediumAttachment)) +# endif /* VBOX_WITH_GLUE */ + +interface IMediumChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IMediumChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IMediumChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IMediumChangedEvent declaration */ + + +/* Start of struct IClipboardModeChangedEvent declaration */ +# define ICLIPBOARDMODECHANGEDEVENT_IID_STR "cac21692-7997-4595-a731-3a509db604e5" +# define ICLIPBOARDMODECHANGEDEVENT_IID { \ + 0xcac21692, 0x7997, 0x4595, \ + { 0xa7, 0x31, 0x3a, 0x50, 0x9d, 0xb6, 0x04, 0xe5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IClipboardModeChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IClipboardModeChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetClipboardMode)(IClipboardModeChangedEvent *pThis, PRUint32 *clipboardMode); + +}; +# else /* VBOX_WITH_GLUE */ +struct IClipboardModeChangedEventVtbl +{ + nsresult (*QueryInterface)(IClipboardModeChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IClipboardModeChangedEvent *pThis); + nsrefcnt (*Release)(IClipboardModeChangedEvent *pThis); + nsresult (*GetType)(IClipboardModeChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IClipboardModeChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IClipboardModeChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IClipboardModeChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IClipboardModeChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetClipboardMode)(IClipboardModeChangedEvent *pThis, PRUint32 *clipboardMode); + +}; +# define IClipboardModeChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IClipboardModeChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IClipboardModeChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IClipboardModeChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IClipboardModeChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IClipboardModeChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IClipboardModeChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IClipboardModeChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IClipboardModeChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IClipboardModeChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IClipboardModeChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IClipboardModeChangedEvent_get_ClipboardMode(p, aClipboardMode) ((p)->lpVtbl->GetClipboardMode(p, aClipboardMode)) +# define IClipboardModeChangedEvent_GetClipboardMode(p, aClipboardMode) ((p)->lpVtbl->GetClipboardMode(p, aClipboardMode)) +# endif /* VBOX_WITH_GLUE */ + +interface IClipboardModeChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IClipboardModeChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IClipboardModeChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IClipboardModeChangedEvent declaration */ + + +/* Start of struct IClipboardFileTransferModeChangedEvent declaration */ +# define ICLIPBOARDFILETRANSFERMODECHANGEDEVENT_IID_STR "00391758-00B1-4E9D-0000-11FA00F9D583" +# define ICLIPBOARDFILETRANSFERMODECHANGEDEVENT_IID { \ + 0x00391758, 0x00B1, 0x4E9D, \ + { 0x00, 0x00, 0x11, 0xFA, 0x00, 0xF9, 0xD5, 0x83 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IClipboardFileTransferModeChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IClipboardFileTransferModeChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetEnabled)(IClipboardFileTransferModeChangedEvent *pThis, PRBool *enabled); + +}; +# else /* VBOX_WITH_GLUE */ +struct IClipboardFileTransferModeChangedEventVtbl +{ + nsresult (*QueryInterface)(IClipboardFileTransferModeChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IClipboardFileTransferModeChangedEvent *pThis); + nsrefcnt (*Release)(IClipboardFileTransferModeChangedEvent *pThis); + nsresult (*GetType)(IClipboardFileTransferModeChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IClipboardFileTransferModeChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IClipboardFileTransferModeChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IClipboardFileTransferModeChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IClipboardFileTransferModeChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetEnabled)(IClipboardFileTransferModeChangedEvent *pThis, PRBool *enabled); + +}; +# define IClipboardFileTransferModeChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IClipboardFileTransferModeChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IClipboardFileTransferModeChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IClipboardFileTransferModeChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IClipboardFileTransferModeChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IClipboardFileTransferModeChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IClipboardFileTransferModeChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IClipboardFileTransferModeChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IClipboardFileTransferModeChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IClipboardFileTransferModeChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IClipboardFileTransferModeChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IClipboardFileTransferModeChangedEvent_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IClipboardFileTransferModeChangedEvent_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# endif /* VBOX_WITH_GLUE */ + +interface IClipboardFileTransferModeChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IClipboardFileTransferModeChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IClipboardFileTransferModeChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IClipboardFileTransferModeChangedEvent declaration */ + + +/* Start of struct IDnDModeChangedEvent declaration */ +# define IDNDMODECHANGEDEVENT_IID_STR "b55cf856-1f8b-4692-abb4-462429fae5e9" +# define IDNDMODECHANGEDEVENT_IID { \ + 0xb55cf856, 0x1f8b, 0x4692, \ + { 0xab, 0xb4, 0x46, 0x24, 0x29, 0xfa, 0xe5, 0xe9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IDnDModeChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IDnDModeChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetDndMode)(IDnDModeChangedEvent *pThis, PRUint32 *dndMode); + +}; +# else /* VBOX_WITH_GLUE */ +struct IDnDModeChangedEventVtbl +{ + nsresult (*QueryInterface)(IDnDModeChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IDnDModeChangedEvent *pThis); + nsrefcnt (*Release)(IDnDModeChangedEvent *pThis); + nsresult (*GetType)(IDnDModeChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IDnDModeChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IDnDModeChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IDnDModeChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IDnDModeChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetDndMode)(IDnDModeChangedEvent *pThis, PRUint32 *dndMode); + +}; +# define IDnDModeChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IDnDModeChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IDnDModeChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IDnDModeChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IDnDModeChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IDnDModeChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IDnDModeChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IDnDModeChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IDnDModeChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IDnDModeChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IDnDModeChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IDnDModeChangedEvent_get_DndMode(p, aDndMode) ((p)->lpVtbl->GetDndMode(p, aDndMode)) +# define IDnDModeChangedEvent_GetDndMode(p, aDndMode) ((p)->lpVtbl->GetDndMode(p, aDndMode)) +# endif /* VBOX_WITH_GLUE */ + +interface IDnDModeChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IDnDModeChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IDnDModeChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IDnDModeChangedEvent declaration */ + + +/* Start of struct ICPUChangedEvent declaration */ +# define ICPUCHANGEDEVENT_IID_STR "4da2dec7-71b2-4817-9a64-4ed12c17388e" +# define ICPUCHANGEDEVENT_IID { \ + 0x4da2dec7, 0x71b2, 0x4817, \ + { 0x9a, 0x64, 0x4e, 0xd1, 0x2c, 0x17, 0x38, 0x8e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICPUChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ICPUChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetCPU)(ICPUChangedEvent *pThis, PRUint32 *CPU); + + nsresult (*GetAdd)(ICPUChangedEvent *pThis, PRBool *add); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICPUChangedEventVtbl +{ + nsresult (*QueryInterface)(ICPUChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICPUChangedEvent *pThis); + nsrefcnt (*Release)(ICPUChangedEvent *pThis); + nsresult (*GetType)(ICPUChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ICPUChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ICPUChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ICPUChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ICPUChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetCPU)(ICPUChangedEvent *pThis, PRUint32 *CPU); + + nsresult (*GetAdd)(ICPUChangedEvent *pThis, PRBool *add); + +}; +# define ICPUChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICPUChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICPUChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ICPUChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICPUChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICPUChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICPUChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICPUChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICPUChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICPUChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ICPUChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ICPUChangedEvent_get_CPU(p, aCPU) ((p)->lpVtbl->GetCPU(p, aCPU)) +# define ICPUChangedEvent_GetCPU(p, aCPU) ((p)->lpVtbl->GetCPU(p, aCPU)) +# define ICPUChangedEvent_get_Add(p, aAdd) ((p)->lpVtbl->GetAdd(p, aAdd)) +# define ICPUChangedEvent_GetAdd(p, aAdd) ((p)->lpVtbl->GetAdd(p, aAdd)) +# endif /* VBOX_WITH_GLUE */ + +interface ICPUChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ICPUChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICPUChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICPUChangedEvent declaration */ + + +/* Start of struct ICPUExecutionCapChangedEvent declaration */ +# define ICPUEXECUTIONCAPCHANGEDEVENT_IID_STR "dfa7e4f5-b4a4-44ce-85a8-127ac5eb59dc" +# define ICPUEXECUTIONCAPCHANGEDEVENT_IID { \ + 0xdfa7e4f5, 0xb4a4, 0x44ce, \ + { 0x85, 0xa8, 0x12, 0x7a, 0xc5, 0xeb, 0x59, 0xdc } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICPUExecutionCapChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ICPUExecutionCapChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetExecutionCap)(ICPUExecutionCapChangedEvent *pThis, PRUint32 *executionCap); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICPUExecutionCapChangedEventVtbl +{ + nsresult (*QueryInterface)(ICPUExecutionCapChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICPUExecutionCapChangedEvent *pThis); + nsrefcnt (*Release)(ICPUExecutionCapChangedEvent *pThis); + nsresult (*GetType)(ICPUExecutionCapChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ICPUExecutionCapChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ICPUExecutionCapChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ICPUExecutionCapChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ICPUExecutionCapChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetExecutionCap)(ICPUExecutionCapChangedEvent *pThis, PRUint32 *executionCap); + +}; +# define ICPUExecutionCapChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICPUExecutionCapChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICPUExecutionCapChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ICPUExecutionCapChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICPUExecutionCapChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICPUExecutionCapChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICPUExecutionCapChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICPUExecutionCapChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICPUExecutionCapChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICPUExecutionCapChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ICPUExecutionCapChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ICPUExecutionCapChangedEvent_get_ExecutionCap(p, aExecutionCap) ((p)->lpVtbl->GetExecutionCap(p, aExecutionCap)) +# define ICPUExecutionCapChangedEvent_GetExecutionCap(p, aExecutionCap) ((p)->lpVtbl->GetExecutionCap(p, aExecutionCap)) +# endif /* VBOX_WITH_GLUE */ + +interface ICPUExecutionCapChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ICPUExecutionCapChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICPUExecutionCapChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICPUExecutionCapChangedEvent declaration */ + + +/* Start of struct IGuestKeyboardEvent declaration */ +# define IGUESTKEYBOARDEVENT_IID_STR "88394258-7006-40d4-b339-472ee3801844" +# define IGUESTKEYBOARDEVENT_IID { \ + 0x88394258, 0x7006, 0x40d4, \ + { 0xb3, 0x39, 0x47, 0x2e, 0xe3, 0x80, 0x18, 0x44 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestKeyboardEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestKeyboardEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetScancodes)(IGuestKeyboardEvent *pThis, PRUint32 *scancodesSize, PRInt32 **scancodes); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestKeyboardEventVtbl +{ + nsresult (*QueryInterface)(IGuestKeyboardEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestKeyboardEvent *pThis); + nsrefcnt (*Release)(IGuestKeyboardEvent *pThis); + nsresult (*GetType)(IGuestKeyboardEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestKeyboardEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestKeyboardEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestKeyboardEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestKeyboardEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetScancodes)(IGuestKeyboardEvent *pThis, PRUint32 *scancodesSize, PRInt32 **scancodes); + +}; +# define IGuestKeyboardEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestKeyboardEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestKeyboardEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestKeyboardEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestKeyboardEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestKeyboardEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestKeyboardEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestKeyboardEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestKeyboardEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestKeyboardEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestKeyboardEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestKeyboardEvent_get_Scancodes(p, aScancodes) ((p)->lpVtbl->GetScancodes(p, aScancodes)) +# define IGuestKeyboardEvent_GetScancodes(p, aScancodes) ((p)->lpVtbl->GetScancodes(p, aScancodes)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestKeyboardEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestKeyboardEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestKeyboardEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestKeyboardEvent declaration */ + + +/* Start of struct IGuestMouseEvent declaration */ +# define IGUESTMOUSEEVENT_IID_STR "179f8647-319c-4e7e-8150-c5837bd265f6" +# define IGUESTMOUSEEVENT_IID { \ + 0x179f8647, 0x319c, 0x4e7e, \ + { 0x81, 0x50, 0xc5, 0x83, 0x7b, 0xd2, 0x65, 0xf6 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestMouseEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestMouseEvent_vtbl +{ + struct IReusableEvent_vtbl ireusableevent; + + nsresult (*GetMode)(IGuestMouseEvent *pThis, PRUint32 *mode); + + nsresult (*GetX)(IGuestMouseEvent *pThis, PRInt32 *x); + + nsresult (*GetY)(IGuestMouseEvent *pThis, PRInt32 *y); + + nsresult (*GetZ)(IGuestMouseEvent *pThis, PRInt32 *z); + + nsresult (*GetW)(IGuestMouseEvent *pThis, PRInt32 *w); + + nsresult (*GetButtons)(IGuestMouseEvent *pThis, PRInt32 *buttons); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestMouseEventVtbl +{ + nsresult (*QueryInterface)(IGuestMouseEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestMouseEvent *pThis); + nsrefcnt (*Release)(IGuestMouseEvent *pThis); + nsresult (*GetType)(IGuestMouseEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestMouseEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestMouseEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestMouseEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestMouseEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetGeneration)(IGuestMouseEvent *pThis, PRUint32 *generation); + + nsresult (*Reuse)(IGuestMouseEvent *pThis ); + + nsresult (*GetMode)(IGuestMouseEvent *pThis, PRUint32 *mode); + + nsresult (*GetX)(IGuestMouseEvent *pThis, PRInt32 *x); + + nsresult (*GetY)(IGuestMouseEvent *pThis, PRInt32 *y); + + nsresult (*GetZ)(IGuestMouseEvent *pThis, PRInt32 *z); + + nsresult (*GetW)(IGuestMouseEvent *pThis, PRInt32 *w); + + nsresult (*GetButtons)(IGuestMouseEvent *pThis, PRInt32 *buttons); + +}; +# define IGuestMouseEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestMouseEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestMouseEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestMouseEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMouseEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMouseEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMouseEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMouseEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMouseEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMouseEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestMouseEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestMouseEvent_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IGuestMouseEvent_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IGuestMouseEvent_Reuse(p) ((p)->lpVtbl->Reuse(p)) +# define IGuestMouseEvent_get_Mode(p, aMode) ((p)->lpVtbl->GetMode(p, aMode)) +# define IGuestMouseEvent_GetMode(p, aMode) ((p)->lpVtbl->GetMode(p, aMode)) +# define IGuestMouseEvent_get_X(p, aX) ((p)->lpVtbl->GetX(p, aX)) +# define IGuestMouseEvent_GetX(p, aX) ((p)->lpVtbl->GetX(p, aX)) +# define IGuestMouseEvent_get_Y(p, aY) ((p)->lpVtbl->GetY(p, aY)) +# define IGuestMouseEvent_GetY(p, aY) ((p)->lpVtbl->GetY(p, aY)) +# define IGuestMouseEvent_get_Z(p, aZ) ((p)->lpVtbl->GetZ(p, aZ)) +# define IGuestMouseEvent_GetZ(p, aZ) ((p)->lpVtbl->GetZ(p, aZ)) +# define IGuestMouseEvent_get_W(p, aW) ((p)->lpVtbl->GetW(p, aW)) +# define IGuestMouseEvent_GetW(p, aW) ((p)->lpVtbl->GetW(p, aW)) +# define IGuestMouseEvent_get_Buttons(p, aButtons) ((p)->lpVtbl->GetButtons(p, aButtons)) +# define IGuestMouseEvent_GetButtons(p, aButtons) ((p)->lpVtbl->GetButtons(p, aButtons)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestMouseEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestMouseEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestMouseEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestMouseEvent declaration */ + + +/* Start of struct IGuestMultiTouchEvent declaration */ +# define IGUESTMULTITOUCHEVENT_IID_STR "be8a0eb5-f4f4-4dd0-9d30-c89b873247ec" +# define IGUESTMULTITOUCHEVENT_IID { \ + 0xbe8a0eb5, 0xf4f4, 0x4dd0, \ + { 0x9d, 0x30, 0xc8, 0x9b, 0x87, 0x32, 0x47, 0xec } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestMultiTouchEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestMultiTouchEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetContactCount)(IGuestMultiTouchEvent *pThis, PRInt32 *contactCount); + + nsresult (*GetXPositions)(IGuestMultiTouchEvent *pThis, PRUint32 *xPositionsSize, PRInt16 **xPositions); + + nsresult (*GetYPositions)(IGuestMultiTouchEvent *pThis, PRUint32 *yPositionsSize, PRInt16 **yPositions); + + nsresult (*GetContactIds)(IGuestMultiTouchEvent *pThis, PRUint32 *contactIdsSize, PRUint16 **contactIds); + + nsresult (*GetContactFlags)(IGuestMultiTouchEvent *pThis, PRUint32 *contactFlagsSize, PRUint16 **contactFlags); + + nsresult (*GetScanTime)(IGuestMultiTouchEvent *pThis, PRUint32 *scanTime); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestMultiTouchEventVtbl +{ + nsresult (*QueryInterface)(IGuestMultiTouchEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestMultiTouchEvent *pThis); + nsrefcnt (*Release)(IGuestMultiTouchEvent *pThis); + nsresult (*GetType)(IGuestMultiTouchEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestMultiTouchEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestMultiTouchEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestMultiTouchEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestMultiTouchEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetContactCount)(IGuestMultiTouchEvent *pThis, PRInt32 *contactCount); + + nsresult (*GetXPositions)(IGuestMultiTouchEvent *pThis, PRUint32 *xPositionsSize, PRInt16 **xPositions); + + nsresult (*GetYPositions)(IGuestMultiTouchEvent *pThis, PRUint32 *yPositionsSize, PRInt16 **yPositions); + + nsresult (*GetContactIds)(IGuestMultiTouchEvent *pThis, PRUint32 *contactIdsSize, PRUint16 **contactIds); + + nsresult (*GetContactFlags)(IGuestMultiTouchEvent *pThis, PRUint32 *contactFlagsSize, PRUint16 **contactFlags); + + nsresult (*GetScanTime)(IGuestMultiTouchEvent *pThis, PRUint32 *scanTime); + +}; +# define IGuestMultiTouchEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestMultiTouchEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestMultiTouchEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestMultiTouchEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMultiTouchEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMultiTouchEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMultiTouchEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMultiTouchEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMultiTouchEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMultiTouchEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestMultiTouchEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestMultiTouchEvent_get_ContactCount(p, aContactCount) ((p)->lpVtbl->GetContactCount(p, aContactCount)) +# define IGuestMultiTouchEvent_GetContactCount(p, aContactCount) ((p)->lpVtbl->GetContactCount(p, aContactCount)) +# define IGuestMultiTouchEvent_get_XPositions(p, aXPositions) ((p)->lpVtbl->GetXPositions(p, aXPositions)) +# define IGuestMultiTouchEvent_GetXPositions(p, aXPositions) ((p)->lpVtbl->GetXPositions(p, aXPositions)) +# define IGuestMultiTouchEvent_get_YPositions(p, aYPositions) ((p)->lpVtbl->GetYPositions(p, aYPositions)) +# define IGuestMultiTouchEvent_GetYPositions(p, aYPositions) ((p)->lpVtbl->GetYPositions(p, aYPositions)) +# define IGuestMultiTouchEvent_get_ContactIds(p, aContactIds) ((p)->lpVtbl->GetContactIds(p, aContactIds)) +# define IGuestMultiTouchEvent_GetContactIds(p, aContactIds) ((p)->lpVtbl->GetContactIds(p, aContactIds)) +# define IGuestMultiTouchEvent_get_ContactFlags(p, aContactFlags) ((p)->lpVtbl->GetContactFlags(p, aContactFlags)) +# define IGuestMultiTouchEvent_GetContactFlags(p, aContactFlags) ((p)->lpVtbl->GetContactFlags(p, aContactFlags)) +# define IGuestMultiTouchEvent_get_ScanTime(p, aScanTime) ((p)->lpVtbl->GetScanTime(p, aScanTime)) +# define IGuestMultiTouchEvent_GetScanTime(p, aScanTime) ((p)->lpVtbl->GetScanTime(p, aScanTime)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestMultiTouchEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestMultiTouchEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestMultiTouchEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestMultiTouchEvent declaration */ + + +/* Start of struct IGuestSessionEvent declaration */ +# define IGUESTSESSIONEVENT_IID_STR "b9acd33f-647d-45ac-8fe9-f49b3183ba37" +# define IGUESTSESSIONEVENT_IID { \ + 0xb9acd33f, 0x647d, 0x45ac, \ + { 0x8f, 0xe9, 0xf4, 0x9b, 0x31, 0x83, 0xba, 0x37 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestSessionEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestSessionEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetSession)(IGuestSessionEvent *pThis, IGuestSession * *session); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestSessionEventVtbl +{ + nsresult (*QueryInterface)(IGuestSessionEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestSessionEvent *pThis); + nsrefcnt (*Release)(IGuestSessionEvent *pThis); + nsresult (*GetType)(IGuestSessionEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestSessionEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestSessionEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestSessionEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestSessionEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestSessionEvent *pThis, IGuestSession * *session); + +}; +# define IGuestSessionEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestSessionEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestSessionEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestSessionEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestSessionEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestSessionEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestSessionEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestSessionEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestSessionEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestSessionEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestSessionEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestSessionEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestSessionEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestSessionEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestSessionEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestSessionEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestSessionEvent declaration */ + + +/* Start of struct IGuestSessionStateChangedEvent declaration */ +# define IGUESTSESSIONSTATECHANGEDEVENT_IID_STR "327e3c00-ee61-462f-aed3-0dff6cbf9904" +# define IGUESTSESSIONSTATECHANGEDEVENT_IID { \ + 0x327e3c00, 0xee61, 0x462f, \ + { 0xae, 0xd3, 0x0d, 0xff, 0x6c, 0xbf, 0x99, 0x04 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestSessionStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestSessionStateChangedEvent_vtbl +{ + struct IGuestSessionEvent_vtbl iguestsessionevent; + + nsresult (*GetId)(IGuestSessionStateChangedEvent *pThis, PRUint32 *id); + + nsresult (*GetStatus)(IGuestSessionStateChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetError)(IGuestSessionStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestSessionStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestSessionStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestSessionStateChangedEvent *pThis); + nsrefcnt (*Release)(IGuestSessionStateChangedEvent *pThis); + nsresult (*GetType)(IGuestSessionStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestSessionStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestSessionStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestSessionStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestSessionStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestSessionStateChangedEvent *pThis, IGuestSession * *session); + + nsresult (*GetId)(IGuestSessionStateChangedEvent *pThis, PRUint32 *id); + + nsresult (*GetStatus)(IGuestSessionStateChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetError)(IGuestSessionStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# define IGuestSessionStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestSessionStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestSessionStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestSessionStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestSessionStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestSessionStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestSessionStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestSessionStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestSessionStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestSessionStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestSessionStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestSessionStateChangedEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestSessionStateChangedEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestSessionStateChangedEvent_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestSessionStateChangedEvent_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IGuestSessionStateChangedEvent_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestSessionStateChangedEvent_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestSessionStateChangedEvent_get_Error(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# define IGuestSessionStateChangedEvent_GetError(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestSessionStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestSessionStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestSessionStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestSessionStateChangedEvent declaration */ + + +/* Start of struct IGuestSessionRegisteredEvent declaration */ +# define IGUESTSESSIONREGISTEREDEVENT_IID_STR "b79de686-eabd-4fa6-960a-f1756c99ea1c" +# define IGUESTSESSIONREGISTEREDEVENT_IID { \ + 0xb79de686, 0xeabd, 0x4fa6, \ + { 0x96, 0x0a, 0xf1, 0x75, 0x6c, 0x99, 0xea, 0x1c } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestSessionRegisteredEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestSessionRegisteredEvent_vtbl +{ + struct IGuestSessionEvent_vtbl iguestsessionevent; + + nsresult (*GetRegistered)(IGuestSessionRegisteredEvent *pThis, PRBool *registered); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestSessionRegisteredEventVtbl +{ + nsresult (*QueryInterface)(IGuestSessionRegisteredEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestSessionRegisteredEvent *pThis); + nsrefcnt (*Release)(IGuestSessionRegisteredEvent *pThis); + nsresult (*GetType)(IGuestSessionRegisteredEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestSessionRegisteredEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestSessionRegisteredEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestSessionRegisteredEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestSessionRegisteredEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestSessionRegisteredEvent *pThis, IGuestSession * *session); + + nsresult (*GetRegistered)(IGuestSessionRegisteredEvent *pThis, PRBool *registered); + +}; +# define IGuestSessionRegisteredEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestSessionRegisteredEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestSessionRegisteredEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestSessionRegisteredEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestSessionRegisteredEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestSessionRegisteredEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestSessionRegisteredEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestSessionRegisteredEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestSessionRegisteredEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestSessionRegisteredEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestSessionRegisteredEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestSessionRegisteredEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestSessionRegisteredEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestSessionRegisteredEvent_get_Registered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# define IGuestSessionRegisteredEvent_GetRegistered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestSessionRegisteredEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestSessionRegisteredEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestSessionRegisteredEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestSessionRegisteredEvent declaration */ + + +/* Start of struct IGuestProcessEvent declaration */ +# define IGUESTPROCESSEVENT_IID_STR "2405f0e5-6588-40a3-9b0a-68c05ba52c4b" +# define IGUESTPROCESSEVENT_IID { \ + 0x2405f0e5, 0x6588, 0x40a3, \ + { 0x9b, 0x0a, 0x68, 0xc0, 0x5b, 0xa5, 0x2c, 0x4b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcessEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestProcessEvent_vtbl +{ + struct IGuestSessionEvent_vtbl iguestsessionevent; + + nsresult (*GetProcess)(IGuestProcessEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessEvent *pThis, PRUint32 *pid); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessEventVtbl +{ + nsresult (*QueryInterface)(IGuestProcessEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcessEvent *pThis); + nsrefcnt (*Release)(IGuestProcessEvent *pThis); + nsresult (*GetType)(IGuestProcessEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestProcessEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestProcessEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestProcessEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestProcessEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestProcessEvent *pThis, IGuestSession * *session); + + nsresult (*GetProcess)(IGuestProcessEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessEvent *pThis, PRUint32 *pid); + +}; +# define IGuestProcessEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcessEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcessEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcessEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestProcessEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestProcessEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessEvent_get_Process(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessEvent_GetProcess(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessEvent_get_Pid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessEvent_GetPid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcessEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcessEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcessEvent declaration */ + + +/* Start of struct IGuestProcessRegisteredEvent declaration */ +# define IGUESTPROCESSREGISTEREDEVENT_IID_STR "1d89e2b3-c6ea-45b6-9d43-dc6f70cc9f02" +# define IGUESTPROCESSREGISTEREDEVENT_IID { \ + 0x1d89e2b3, 0xc6ea, 0x45b6, \ + { 0x9d, 0x43, 0xdc, 0x6f, 0x70, 0xcc, 0x9f, 0x02 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcessRegisteredEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestProcessRegisteredEvent_vtbl +{ + struct IGuestProcessEvent_vtbl iguestprocessevent; + + nsresult (*GetRegistered)(IGuestProcessRegisteredEvent *pThis, PRBool *registered); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessRegisteredEventVtbl +{ + nsresult (*QueryInterface)(IGuestProcessRegisteredEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcessRegisteredEvent *pThis); + nsrefcnt (*Release)(IGuestProcessRegisteredEvent *pThis); + nsresult (*GetType)(IGuestProcessRegisteredEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestProcessRegisteredEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestProcessRegisteredEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestProcessRegisteredEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestProcessRegisteredEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestProcessRegisteredEvent *pThis, IGuestSession * *session); + + nsresult (*GetProcess)(IGuestProcessRegisteredEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessRegisteredEvent *pThis, PRUint32 *pid); + + nsresult (*GetRegistered)(IGuestProcessRegisteredEvent *pThis, PRBool *registered); + +}; +# define IGuestProcessRegisteredEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcessRegisteredEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcessRegisteredEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcessRegisteredEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessRegisteredEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessRegisteredEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessRegisteredEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessRegisteredEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessRegisteredEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessRegisteredEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestProcessRegisteredEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestProcessRegisteredEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessRegisteredEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessRegisteredEvent_get_Process(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessRegisteredEvent_GetProcess(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessRegisteredEvent_get_Pid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessRegisteredEvent_GetPid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessRegisteredEvent_get_Registered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# define IGuestProcessRegisteredEvent_GetRegistered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcessRegisteredEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcessRegisteredEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessRegisteredEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcessRegisteredEvent declaration */ + + +/* Start of struct IGuestProcessStateChangedEvent declaration */ +# define IGUESTPROCESSSTATECHANGEDEVENT_IID_STR "c365fb7b-4430-499f-92c8-8bed814a567a" +# define IGUESTPROCESSSTATECHANGEDEVENT_IID { \ + 0xc365fb7b, 0x4430, 0x499f, \ + { 0x92, 0xc8, 0x8b, 0xed, 0x81, 0x4a, 0x56, 0x7a } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcessStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestProcessStateChangedEvent_vtbl +{ + struct IGuestProcessEvent_vtbl iguestprocessevent; + + nsresult (*GetStatus)(IGuestProcessStateChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetError)(IGuestProcessStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestProcessStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcessStateChangedEvent *pThis); + nsrefcnt (*Release)(IGuestProcessStateChangedEvent *pThis); + nsresult (*GetType)(IGuestProcessStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestProcessStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestProcessStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestProcessStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestProcessStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestProcessStateChangedEvent *pThis, IGuestSession * *session); + + nsresult (*GetProcess)(IGuestProcessStateChangedEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessStateChangedEvent *pThis, PRUint32 *pid); + + nsresult (*GetStatus)(IGuestProcessStateChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetError)(IGuestProcessStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# define IGuestProcessStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcessStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcessStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcessStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestProcessStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestProcessStateChangedEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessStateChangedEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessStateChangedEvent_get_Process(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessStateChangedEvent_GetProcess(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessStateChangedEvent_get_Pid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessStateChangedEvent_GetPid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessStateChangedEvent_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestProcessStateChangedEvent_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestProcessStateChangedEvent_get_Error(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# define IGuestProcessStateChangedEvent_GetError(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcessStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcessStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcessStateChangedEvent declaration */ + + +/* Start of struct IGuestProcessIOEvent declaration */ +# define IGUESTPROCESSIOEVENT_IID_STR "9ea9227c-e9bb-49b3-bfc7-c5171e93ef38" +# define IGUESTPROCESSIOEVENT_IID { \ + 0x9ea9227c, 0xe9bb, 0x49b3, \ + { 0xbf, 0xc7, 0xc5, 0x17, 0x1e, 0x93, 0xef, 0x38 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcessIOEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestProcessIOEvent_vtbl +{ + struct IGuestProcessEvent_vtbl iguestprocessevent; + + nsresult (*GetHandle)(IGuestProcessIOEvent *pThis, PRUint32 *handle); + + nsresult (*GetProcessed)(IGuestProcessIOEvent *pThis, PRUint32 *processed); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessIOEventVtbl +{ + nsresult (*QueryInterface)(IGuestProcessIOEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcessIOEvent *pThis); + nsrefcnt (*Release)(IGuestProcessIOEvent *pThis); + nsresult (*GetType)(IGuestProcessIOEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestProcessIOEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestProcessIOEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestProcessIOEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestProcessIOEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestProcessIOEvent *pThis, IGuestSession * *session); + + nsresult (*GetProcess)(IGuestProcessIOEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessIOEvent *pThis, PRUint32 *pid); + + nsresult (*GetHandle)(IGuestProcessIOEvent *pThis, PRUint32 *handle); + + nsresult (*GetProcessed)(IGuestProcessIOEvent *pThis, PRUint32 *processed); + +}; +# define IGuestProcessIOEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcessIOEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcessIOEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcessIOEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessIOEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessIOEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessIOEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessIOEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessIOEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessIOEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestProcessIOEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestProcessIOEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessIOEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessIOEvent_get_Process(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessIOEvent_GetProcess(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessIOEvent_get_Pid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessIOEvent_GetPid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessIOEvent_get_Handle(p, aHandle) ((p)->lpVtbl->GetHandle(p, aHandle)) +# define IGuestProcessIOEvent_GetHandle(p, aHandle) ((p)->lpVtbl->GetHandle(p, aHandle)) +# define IGuestProcessIOEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestProcessIOEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcessIOEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcessIOEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessIOEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcessIOEvent declaration */ + + +/* Start of struct IGuestProcessInputNotifyEvent declaration */ +# define IGUESTPROCESSINPUTNOTIFYEVENT_IID_STR "0de887f2-b7db-4616-aac6-cfb94d89ba78" +# define IGUESTPROCESSINPUTNOTIFYEVENT_IID { \ + 0x0de887f2, 0xb7db, 0x4616, \ + { 0xaa, 0xc6, 0xcf, 0xb9, 0x4d, 0x89, 0xba, 0x78 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcessInputNotifyEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestProcessInputNotifyEvent_vtbl +{ + struct IGuestProcessIOEvent_vtbl iguestprocessioevent; + + nsresult (*GetStatus)(IGuestProcessInputNotifyEvent *pThis, PRUint32 *status); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessInputNotifyEventVtbl +{ + nsresult (*QueryInterface)(IGuestProcessInputNotifyEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcessInputNotifyEvent *pThis); + nsrefcnt (*Release)(IGuestProcessInputNotifyEvent *pThis); + nsresult (*GetType)(IGuestProcessInputNotifyEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestProcessInputNotifyEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestProcessInputNotifyEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestProcessInputNotifyEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestProcessInputNotifyEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestProcessInputNotifyEvent *pThis, IGuestSession * *session); + + nsresult (*GetProcess)(IGuestProcessInputNotifyEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessInputNotifyEvent *pThis, PRUint32 *pid); + + nsresult (*GetHandle)(IGuestProcessInputNotifyEvent *pThis, PRUint32 *handle); + + nsresult (*GetProcessed)(IGuestProcessInputNotifyEvent *pThis, PRUint32 *processed); + + nsresult (*GetStatus)(IGuestProcessInputNotifyEvent *pThis, PRUint32 *status); + +}; +# define IGuestProcessInputNotifyEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcessInputNotifyEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcessInputNotifyEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcessInputNotifyEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessInputNotifyEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessInputNotifyEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessInputNotifyEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessInputNotifyEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessInputNotifyEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessInputNotifyEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestProcessInputNotifyEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestProcessInputNotifyEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessInputNotifyEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessInputNotifyEvent_get_Process(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessInputNotifyEvent_GetProcess(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessInputNotifyEvent_get_Pid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessInputNotifyEvent_GetPid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessInputNotifyEvent_get_Handle(p, aHandle) ((p)->lpVtbl->GetHandle(p, aHandle)) +# define IGuestProcessInputNotifyEvent_GetHandle(p, aHandle) ((p)->lpVtbl->GetHandle(p, aHandle)) +# define IGuestProcessInputNotifyEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestProcessInputNotifyEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestProcessInputNotifyEvent_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestProcessInputNotifyEvent_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcessInputNotifyEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcessInputNotifyEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessInputNotifyEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcessInputNotifyEvent declaration */ + + +/* Start of struct IGuestProcessOutputEvent declaration */ +# define IGUESTPROCESSOUTPUTEVENT_IID_STR "d3d5f1ee-bcb2-4905-a7ab-cc85448a742b" +# define IGUESTPROCESSOUTPUTEVENT_IID { \ + 0xd3d5f1ee, 0xbcb2, 0x4905, \ + { 0xa7, 0xab, 0xcc, 0x85, 0x44, 0x8a, 0x74, 0x2b } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestProcessOutputEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestProcessOutputEvent_vtbl +{ + struct IGuestProcessIOEvent_vtbl iguestprocessioevent; + + nsresult (*GetData)(IGuestProcessOutputEvent *pThis, PRUint32 *dataSize, PRUint8 **data); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestProcessOutputEventVtbl +{ + nsresult (*QueryInterface)(IGuestProcessOutputEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestProcessOutputEvent *pThis); + nsrefcnt (*Release)(IGuestProcessOutputEvent *pThis); + nsresult (*GetType)(IGuestProcessOutputEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestProcessOutputEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestProcessOutputEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestProcessOutputEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestProcessOutputEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestProcessOutputEvent *pThis, IGuestSession * *session); + + nsresult (*GetProcess)(IGuestProcessOutputEvent *pThis, IGuestProcess * *process); + + nsresult (*GetPid)(IGuestProcessOutputEvent *pThis, PRUint32 *pid); + + nsresult (*GetHandle)(IGuestProcessOutputEvent *pThis, PRUint32 *handle); + + nsresult (*GetProcessed)(IGuestProcessOutputEvent *pThis, PRUint32 *processed); + + nsresult (*GetData)(IGuestProcessOutputEvent *pThis, PRUint32 *dataSize, PRUint8 **data); + +}; +# define IGuestProcessOutputEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestProcessOutputEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestProcessOutputEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestProcessOutputEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessOutputEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestProcessOutputEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessOutputEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestProcessOutputEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessOutputEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestProcessOutputEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestProcessOutputEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestProcessOutputEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessOutputEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestProcessOutputEvent_get_Process(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessOutputEvent_GetProcess(p, aProcess) ((p)->lpVtbl->GetProcess(p, aProcess)) +# define IGuestProcessOutputEvent_get_Pid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessOutputEvent_GetPid(p, aPid) ((p)->lpVtbl->GetPid(p, aPid)) +# define IGuestProcessOutputEvent_get_Handle(p, aHandle) ((p)->lpVtbl->GetHandle(p, aHandle)) +# define IGuestProcessOutputEvent_GetHandle(p, aHandle) ((p)->lpVtbl->GetHandle(p, aHandle)) +# define IGuestProcessOutputEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestProcessOutputEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestProcessOutputEvent_get_Data(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define IGuestProcessOutputEvent_GetData(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestProcessOutputEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestProcessOutputEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestProcessOutputEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestProcessOutputEvent declaration */ + + +/* Start of struct IGuestFileEvent declaration */ +# define IGUESTFILEEVENT_IID_STR "c8adb7b0-057d-4391-b928-f14b06b710c5" +# define IGUESTFILEEVENT_IID { \ + 0xc8adb7b0, 0x057d, 0x4391, \ + { 0xb9, 0x28, 0xf1, 0x4b, 0x06, 0xb7, 0x10, 0xc5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileEvent_vtbl +{ + struct IGuestSessionEvent_vtbl iguestsessionevent; + + nsresult (*GetFile)(IGuestFileEvent *pThis, IGuestFile * *file); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileEvent *pThis); + nsrefcnt (*Release)(IGuestFileEvent *pThis); + nsresult (*GetType)(IGuestFileEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileEvent *pThis, IGuestFile * *file); + +}; +# define IGuestFileEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileEvent declaration */ + + +/* Start of struct IGuestFileRegisteredEvent declaration */ +# define IGUESTFILEREGISTEREDEVENT_IID_STR "d0d93830-70a2-487e-895e-d3fc9679f7b3" +# define IGUESTFILEREGISTEREDEVENT_IID { \ + 0xd0d93830, 0x70a2, 0x487e, \ + { 0x89, 0x5e, 0xd3, 0xfc, 0x96, 0x79, 0xf7, 0xb3 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileRegisteredEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileRegisteredEvent_vtbl +{ + struct IGuestFileEvent_vtbl iguestfileevent; + + nsresult (*GetRegistered)(IGuestFileRegisteredEvent *pThis, PRBool *registered); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileRegisteredEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileRegisteredEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileRegisteredEvent *pThis); + nsrefcnt (*Release)(IGuestFileRegisteredEvent *pThis); + nsresult (*GetType)(IGuestFileRegisteredEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileRegisteredEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileRegisteredEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileRegisteredEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileRegisteredEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileRegisteredEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileRegisteredEvent *pThis, IGuestFile * *file); + + nsresult (*GetRegistered)(IGuestFileRegisteredEvent *pThis, PRBool *registered); + +}; +# define IGuestFileRegisteredEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileRegisteredEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileRegisteredEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileRegisteredEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileRegisteredEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileRegisteredEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileRegisteredEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileRegisteredEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileRegisteredEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileRegisteredEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileRegisteredEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileRegisteredEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileRegisteredEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileRegisteredEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileRegisteredEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileRegisteredEvent_get_Registered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# define IGuestFileRegisteredEvent_GetRegistered(p, aRegistered) ((p)->lpVtbl->GetRegistered(p, aRegistered)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileRegisteredEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileRegisteredEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileRegisteredEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileRegisteredEvent declaration */ + + +/* Start of struct IGuestFileStateChangedEvent declaration */ +# define IGUESTFILESTATECHANGEDEVENT_IID_STR "d37fe88f-0979-486c-baa1-3abb144dc82d" +# define IGUESTFILESTATECHANGEDEVENT_IID { \ + 0xd37fe88f, 0x0979, 0x486c, \ + { 0xba, 0xa1, 0x3a, 0xbb, 0x14, 0x4d, 0xc8, 0x2d } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileStateChangedEvent_vtbl +{ + struct IGuestFileEvent_vtbl iguestfileevent; + + nsresult (*GetStatus)(IGuestFileStateChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetError)(IGuestFileStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileStateChangedEvent *pThis); + nsrefcnt (*Release)(IGuestFileStateChangedEvent *pThis); + nsresult (*GetType)(IGuestFileStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileStateChangedEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileStateChangedEvent *pThis, IGuestFile * *file); + + nsresult (*GetStatus)(IGuestFileStateChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetError)(IGuestFileStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# define IGuestFileStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileStateChangedEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileStateChangedEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileStateChangedEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileStateChangedEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileStateChangedEvent_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestFileStateChangedEvent_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestFileStateChangedEvent_get_Error(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# define IGuestFileStateChangedEvent_GetError(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileStateChangedEvent declaration */ + + +/* Start of struct IGuestFileIOEvent declaration */ +# define IGUESTFILEIOEVENT_IID_STR "b5191a7c-9536-4ef8-820e-3b0e17e5bbc8" +# define IGUESTFILEIOEVENT_IID { \ + 0xb5191a7c, 0x9536, 0x4ef8, \ + { 0x82, 0x0e, 0x3b, 0x0e, 0x17, 0xe5, 0xbb, 0xc8 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileIOEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileIOEvent_vtbl +{ + struct IGuestFileEvent_vtbl iguestfileevent; + + nsresult (*GetOffset)(IGuestFileIOEvent *pThis, PRInt64 *offset); + + nsresult (*GetProcessed)(IGuestFileIOEvent *pThis, PRUint32 *processed); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileIOEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileIOEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileIOEvent *pThis); + nsrefcnt (*Release)(IGuestFileIOEvent *pThis); + nsresult (*GetType)(IGuestFileIOEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileIOEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileIOEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileIOEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileIOEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileIOEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileIOEvent *pThis, IGuestFile * *file); + + nsresult (*GetOffset)(IGuestFileIOEvent *pThis, PRInt64 *offset); + + nsresult (*GetProcessed)(IGuestFileIOEvent *pThis, PRUint32 *processed); + +}; +# define IGuestFileIOEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileIOEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileIOEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileIOEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileIOEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileIOEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileIOEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileIOEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileIOEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileIOEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileIOEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileIOEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileIOEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileIOEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileIOEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileIOEvent_get_Offset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileIOEvent_GetOffset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileIOEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileIOEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileIOEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileIOEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileIOEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileIOEvent declaration */ + + +/* Start of struct IGuestFileOffsetChangedEvent declaration */ +# define IGUESTFILEOFFSETCHANGEDEVENT_IID_STR "e8f79a21-1207-4179-94cf-ca250036308f" +# define IGUESTFILEOFFSETCHANGEDEVENT_IID { \ + 0xe8f79a21, 0x1207, 0x4179, \ + { 0x94, 0xcf, 0xca, 0x25, 0x00, 0x36, 0x30, 0x8f } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileOffsetChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileOffsetChangedEvent_vtbl +{ + struct IGuestFileIOEvent_vtbl iguestfileioevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFileOffsetChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileOffsetChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileOffsetChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileOffsetChangedEvent *pThis); + nsrefcnt (*Release)(IGuestFileOffsetChangedEvent *pThis); + nsresult (*GetType)(IGuestFileOffsetChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileOffsetChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileOffsetChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileOffsetChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileOffsetChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileOffsetChangedEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileOffsetChangedEvent *pThis, IGuestFile * *file); + + nsresult (*GetOffset)(IGuestFileOffsetChangedEvent *pThis, PRInt64 *offset); + + nsresult (*GetProcessed)(IGuestFileOffsetChangedEvent *pThis, PRUint32 *processed); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFileOffsetChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestFileOffsetChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileOffsetChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileOffsetChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileOffsetChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileOffsetChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileOffsetChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileOffsetChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileOffsetChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileOffsetChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileOffsetChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileOffsetChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileOffsetChangedEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileOffsetChangedEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileOffsetChangedEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileOffsetChangedEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileOffsetChangedEvent_get_Offset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileOffsetChangedEvent_GetOffset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileOffsetChangedEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileOffsetChangedEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileOffsetChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestFileOffsetChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileOffsetChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileOffsetChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileOffsetChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileOffsetChangedEvent declaration */ + + +/* Start of struct IGuestFileSizeChangedEvent declaration */ +# define IGUESTFILESIZECHANGEDEVENT_IID_STR "d78374e9-486e-472f-481b-969746af2480" +# define IGUESTFILESIZECHANGEDEVENT_IID { \ + 0xd78374e9, 0x486e, 0x472f, \ + { 0x48, 0x1b, 0x96, 0x97, 0x46, 0xaf, 0x24, 0x80 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileSizeChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileSizeChangedEvent_vtbl +{ + struct IGuestFileEvent_vtbl iguestfileevent; + + nsresult (*GetNewSize)(IGuestFileSizeChangedEvent *pThis, PRInt64 *newSize); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileSizeChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileSizeChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileSizeChangedEvent *pThis); + nsrefcnt (*Release)(IGuestFileSizeChangedEvent *pThis); + nsresult (*GetType)(IGuestFileSizeChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileSizeChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileSizeChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileSizeChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileSizeChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileSizeChangedEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileSizeChangedEvent *pThis, IGuestFile * *file); + + nsresult (*GetNewSize)(IGuestFileSizeChangedEvent *pThis, PRInt64 *newSize); + +}; +# define IGuestFileSizeChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileSizeChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileSizeChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileSizeChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileSizeChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileSizeChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileSizeChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileSizeChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileSizeChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileSizeChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileSizeChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileSizeChangedEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileSizeChangedEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileSizeChangedEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileSizeChangedEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileSizeChangedEvent_get_NewSize(p, aNewSize) ((p)->lpVtbl->GetNewSize(p, aNewSize)) +# define IGuestFileSizeChangedEvent_GetNewSize(p, aNewSize) ((p)->lpVtbl->GetNewSize(p, aNewSize)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileSizeChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileSizeChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileSizeChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileSizeChangedEvent declaration */ + + +/* Start of struct IGuestFileReadEvent declaration */ +# define IGUESTFILEREADEVENT_IID_STR "4ee3cbcb-486f-40db-9150-deee3fd24189" +# define IGUESTFILEREADEVENT_IID { \ + 0x4ee3cbcb, 0x486f, 0x40db, \ + { 0x91, 0x50, 0xde, 0xee, 0x3f, 0xd2, 0x41, 0x89 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileReadEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileReadEvent_vtbl +{ + struct IGuestFileIOEvent_vtbl iguestfileioevent; + + nsresult (*GetData)(IGuestFileReadEvent *pThis, PRUint32 *dataSize, PRUint8 **data); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileReadEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileReadEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileReadEvent *pThis); + nsrefcnt (*Release)(IGuestFileReadEvent *pThis); + nsresult (*GetType)(IGuestFileReadEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileReadEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileReadEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileReadEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileReadEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileReadEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileReadEvent *pThis, IGuestFile * *file); + + nsresult (*GetOffset)(IGuestFileReadEvent *pThis, PRInt64 *offset); + + nsresult (*GetProcessed)(IGuestFileReadEvent *pThis, PRUint32 *processed); + + nsresult (*GetData)(IGuestFileReadEvent *pThis, PRUint32 *dataSize, PRUint8 **data); + +}; +# define IGuestFileReadEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileReadEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileReadEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileReadEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileReadEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileReadEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileReadEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileReadEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileReadEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileReadEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileReadEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileReadEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileReadEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileReadEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileReadEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileReadEvent_get_Offset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileReadEvent_GetOffset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileReadEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileReadEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileReadEvent_get_Data(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# define IGuestFileReadEvent_GetData(p, aData) ((p)->lpVtbl->GetData(p, aData)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileReadEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileReadEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileReadEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileReadEvent declaration */ + + +/* Start of struct IGuestFileWriteEvent declaration */ +# define IGUESTFILEWRITEEVENT_IID_STR "e062a915-3cf5-4c0a-bc90-9b8d4cc94d89" +# define IGUESTFILEWRITEEVENT_IID { \ + 0xe062a915, 0x3cf5, 0x4c0a, \ + { 0xbc, 0x90, 0x9b, 0x8d, 0x4c, 0xc9, 0x4d, 0x89 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestFileWriteEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestFileWriteEvent_vtbl +{ + struct IGuestFileIOEvent_vtbl iguestfileioevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFileWriteEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestFileWriteEventVtbl +{ + nsresult (*QueryInterface)(IGuestFileWriteEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestFileWriteEvent *pThis); + nsrefcnt (*Release)(IGuestFileWriteEvent *pThis); + nsresult (*GetType)(IGuestFileWriteEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestFileWriteEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestFileWriteEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestFileWriteEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestFileWriteEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetSession)(IGuestFileWriteEvent *pThis, IGuestSession * *session); + + nsresult (*GetFile)(IGuestFileWriteEvent *pThis, IGuestFile * *file); + + nsresult (*GetOffset)(IGuestFileWriteEvent *pThis, PRInt64 *offset); + + nsresult (*GetProcessed)(IGuestFileWriteEvent *pThis, PRUint32 *processed); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IGuestFileWriteEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IGuestFileWriteEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestFileWriteEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestFileWriteEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestFileWriteEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileWriteEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestFileWriteEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileWriteEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestFileWriteEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileWriteEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestFileWriteEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestFileWriteEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestFileWriteEvent_get_Session(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileWriteEvent_GetSession(p, aSession) ((p)->lpVtbl->GetSession(p, aSession)) +# define IGuestFileWriteEvent_get_File(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileWriteEvent_GetFile(p, aFile) ((p)->lpVtbl->GetFile(p, aFile)) +# define IGuestFileWriteEvent_get_Offset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileWriteEvent_GetOffset(p, aOffset) ((p)->lpVtbl->GetOffset(p, aOffset)) +# define IGuestFileWriteEvent_get_Processed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileWriteEvent_GetProcessed(p, aProcessed) ((p)->lpVtbl->GetProcessed(p, aProcessed)) +# define IGuestFileWriteEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IGuestFileWriteEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestFileWriteEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestFileWriteEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestFileWriteEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestFileWriteEvent declaration */ + + +/* Start of struct IVRDEServerChangedEvent declaration */ +# define IVRDESERVERCHANGEDEVENT_IID_STR "a06fd66a-3188-4c8c-8756-1395e8cb691c" +# define IVRDESERVERCHANGEDEVENT_IID { \ + 0xa06fd66a, 0x3188, 0x4c8c, \ + { 0x87, 0x56, 0x13, 0x95, 0xe8, 0xcb, 0x69, 0x1c } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVRDEServerChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IVRDEServerChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IVRDEServerChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVRDEServerChangedEventVtbl +{ + nsresult (*QueryInterface)(IVRDEServerChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVRDEServerChangedEvent *pThis); + nsrefcnt (*Release)(IVRDEServerChangedEvent *pThis); + nsresult (*GetType)(IVRDEServerChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IVRDEServerChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IVRDEServerChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IVRDEServerChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IVRDEServerChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IVRDEServerChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IVRDEServerChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVRDEServerChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVRDEServerChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IVRDEServerChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVRDEServerChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVRDEServerChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVRDEServerChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVRDEServerChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVRDEServerChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVRDEServerChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IVRDEServerChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IVRDEServerChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IVRDEServerChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IVRDEServerChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IVRDEServerChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVRDEServerChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVRDEServerChangedEvent declaration */ + + +/* Start of struct IVRDEServerInfoChangedEvent declaration */ +# define IVRDESERVERINFOCHANGEDEVENT_IID_STR "dd6a1080-e1b7-4339-a549-f0878115596e" +# define IVRDESERVERINFOCHANGEDEVENT_IID { \ + 0xdd6a1080, 0xe1b7, 0x4339, \ + { 0xa5, 0x49, 0xf0, 0x87, 0x81, 0x15, 0x59, 0x6e } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVRDEServerInfoChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IVRDEServerInfoChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IVRDEServerInfoChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVRDEServerInfoChangedEventVtbl +{ + nsresult (*QueryInterface)(IVRDEServerInfoChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVRDEServerInfoChangedEvent *pThis); + nsrefcnt (*Release)(IVRDEServerInfoChangedEvent *pThis); + nsresult (*GetType)(IVRDEServerInfoChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IVRDEServerInfoChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IVRDEServerInfoChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IVRDEServerInfoChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IVRDEServerInfoChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IVRDEServerInfoChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IVRDEServerInfoChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVRDEServerInfoChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVRDEServerInfoChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IVRDEServerInfoChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVRDEServerInfoChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVRDEServerInfoChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVRDEServerInfoChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVRDEServerInfoChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVRDEServerInfoChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVRDEServerInfoChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IVRDEServerInfoChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IVRDEServerInfoChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IVRDEServerInfoChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IVRDEServerInfoChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IVRDEServerInfoChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVRDEServerInfoChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVRDEServerInfoChangedEvent declaration */ + + +/* Start of struct IRecordingChangedEvent declaration */ +# define IRECORDINGCHANGEDEVENT_IID_STR "B5DDB370-08A7-4C8F-910D-47AABD67253A" +# define IRECORDINGCHANGEDEVENT_IID { \ + 0xB5DDB370, 0x08A7, 0x4C8F, \ + { 0x91, 0x0D, 0x47, 0xAA, 0xBD, 0x67, 0x25, 0x3A } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IRecordingChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IRecordingChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IRecordingChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IRecordingChangedEventVtbl +{ + nsresult (*QueryInterface)(IRecordingChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IRecordingChangedEvent *pThis); + nsrefcnt (*Release)(IRecordingChangedEvent *pThis); + nsresult (*GetType)(IRecordingChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IRecordingChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IRecordingChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IRecordingChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IRecordingChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IRecordingChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IRecordingChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IRecordingChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IRecordingChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IRecordingChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IRecordingChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IRecordingChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IRecordingChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IRecordingChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IRecordingChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IRecordingChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IRecordingChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IRecordingChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IRecordingChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IRecordingChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IRecordingChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IRecordingChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IRecordingChangedEvent declaration */ + + +/* Start of struct IUSBControllerChangedEvent declaration */ +# define IUSBCONTROLLERCHANGEDEVENT_IID_STR "93BADC0C-61D9-4940-A084-E6BB29AF3D83" +# define IUSBCONTROLLERCHANGEDEVENT_IID { \ + 0x93BADC0C, 0x61D9, 0x4940, \ + { 0xA0, 0x84, 0xE6, 0xBB, 0x29, 0xAF, 0x3D, 0x83 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBControllerChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IUSBControllerChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IUSBControllerChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBControllerChangedEventVtbl +{ + nsresult (*QueryInterface)(IUSBControllerChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBControllerChangedEvent *pThis); + nsrefcnt (*Release)(IUSBControllerChangedEvent *pThis); + nsresult (*GetType)(IUSBControllerChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IUSBControllerChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IUSBControllerChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IUSBControllerChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IUSBControllerChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IUSBControllerChangedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IUSBControllerChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBControllerChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBControllerChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBControllerChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBControllerChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBControllerChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IUSBControllerChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IUSBControllerChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IUSBControllerChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IUSBControllerChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IUSBControllerChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IUSBControllerChangedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IUSBControllerChangedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBControllerChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IUSBControllerChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBControllerChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBControllerChangedEvent declaration */ + + +/* Start of struct IUSBDeviceStateChangedEvent declaration */ +# define IUSBDEVICESTATECHANGEDEVENT_IID_STR "806da61b-6679-422a-b629-51b06b0c6d93" +# define IUSBDEVICESTATECHANGEDEVENT_IID { \ + 0x806da61b, 0x6679, 0x422a, \ + { 0xb6, 0x29, 0x51, 0xb0, 0x6b, 0x0c, 0x6d, 0x93 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IUSBDeviceStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IUSBDeviceStateChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetDevice)(IUSBDeviceStateChangedEvent *pThis, IUSBDevice * *device); + + nsresult (*GetAttached)(IUSBDeviceStateChangedEvent *pThis, PRBool *attached); + + nsresult (*GetError)(IUSBDeviceStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# else /* VBOX_WITH_GLUE */ +struct IUSBDeviceStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IUSBDeviceStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IUSBDeviceStateChangedEvent *pThis); + nsrefcnt (*Release)(IUSBDeviceStateChangedEvent *pThis); + nsresult (*GetType)(IUSBDeviceStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IUSBDeviceStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IUSBDeviceStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IUSBDeviceStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IUSBDeviceStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetDevice)(IUSBDeviceStateChangedEvent *pThis, IUSBDevice * *device); + + nsresult (*GetAttached)(IUSBDeviceStateChangedEvent *pThis, PRBool *attached); + + nsresult (*GetError)(IUSBDeviceStateChangedEvent *pThis, IVirtualBoxErrorInfo * *error); + +}; +# define IUSBDeviceStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IUSBDeviceStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IUSBDeviceStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IUSBDeviceStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBDeviceStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IUSBDeviceStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IUSBDeviceStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IUSBDeviceStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IUSBDeviceStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IUSBDeviceStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IUSBDeviceStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IUSBDeviceStateChangedEvent_get_Device(p, aDevice) ((p)->lpVtbl->GetDevice(p, aDevice)) +# define IUSBDeviceStateChangedEvent_GetDevice(p, aDevice) ((p)->lpVtbl->GetDevice(p, aDevice)) +# define IUSBDeviceStateChangedEvent_get_Attached(p, aAttached) ((p)->lpVtbl->GetAttached(p, aAttached)) +# define IUSBDeviceStateChangedEvent_GetAttached(p, aAttached) ((p)->lpVtbl->GetAttached(p, aAttached)) +# define IUSBDeviceStateChangedEvent_get_Error(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# define IUSBDeviceStateChangedEvent_GetError(p, aError) ((p)->lpVtbl->GetError(p, aError)) +# endif /* VBOX_WITH_GLUE */ + +interface IUSBDeviceStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IUSBDeviceStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IUSBDeviceStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IUSBDeviceStateChangedEvent declaration */ + + +/* Start of struct ISharedFolderChangedEvent declaration */ +# define ISHAREDFOLDERCHANGEDEVENT_IID_STR "B66349B5-3534-4239-B2DE-8E1535D94C0B" +# define ISHAREDFOLDERCHANGEDEVENT_IID { \ + 0xB66349B5, 0x3534, 0x4239, \ + { 0xB2, 0xDE, 0x8E, 0x15, 0x35, 0xD9, 0x4C, 0x0B } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ISharedFolderChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ISharedFolderChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetScope)(ISharedFolderChangedEvent *pThis, PRUint32 *scope); + +}; +# else /* VBOX_WITH_GLUE */ +struct ISharedFolderChangedEventVtbl +{ + nsresult (*QueryInterface)(ISharedFolderChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ISharedFolderChangedEvent *pThis); + nsrefcnt (*Release)(ISharedFolderChangedEvent *pThis); + nsresult (*GetType)(ISharedFolderChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ISharedFolderChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ISharedFolderChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ISharedFolderChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ISharedFolderChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetScope)(ISharedFolderChangedEvent *pThis, PRUint32 *scope); + +}; +# define ISharedFolderChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ISharedFolderChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ISharedFolderChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ISharedFolderChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISharedFolderChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ISharedFolderChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISharedFolderChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ISharedFolderChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISharedFolderChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ISharedFolderChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ISharedFolderChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ISharedFolderChangedEvent_get_Scope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# define ISharedFolderChangedEvent_GetScope(p, aScope) ((p)->lpVtbl->GetScope(p, aScope)) +# endif /* VBOX_WITH_GLUE */ + +interface ISharedFolderChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ISharedFolderChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ISharedFolderChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ISharedFolderChangedEvent declaration */ + + +/* Start of struct IRuntimeErrorEvent declaration */ +# define IRUNTIMEERROREVENT_IID_STR "883DD18B-0721-4CDE-867C-1A82ABAF914C" +# define IRUNTIMEERROREVENT_IID { \ + 0x883DD18B, 0x0721, 0x4CDE, \ + { 0x86, 0x7C, 0x1A, 0x82, 0xAB, 0xAF, 0x91, 0x4C } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IRuntimeErrorEvent); +# ifndef VBOX_WITH_GLUE +struct IRuntimeErrorEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetFatal)(IRuntimeErrorEvent *pThis, PRBool *fatal); + + nsresult (*GetId)(IRuntimeErrorEvent *pThis, PRUnichar * *id); + + nsresult (*GetMessage)(IRuntimeErrorEvent *pThis, PRUnichar * *message); + +}; +# else /* VBOX_WITH_GLUE */ +struct IRuntimeErrorEventVtbl +{ + nsresult (*QueryInterface)(IRuntimeErrorEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IRuntimeErrorEvent *pThis); + nsrefcnt (*Release)(IRuntimeErrorEvent *pThis); + nsresult (*GetType)(IRuntimeErrorEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IRuntimeErrorEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IRuntimeErrorEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IRuntimeErrorEvent *pThis ); + + nsresult (*WaitProcessed)( + IRuntimeErrorEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetFatal)(IRuntimeErrorEvent *pThis, PRBool *fatal); + + nsresult (*GetId)(IRuntimeErrorEvent *pThis, PRUnichar * *id); + + nsresult (*GetMessage)(IRuntimeErrorEvent *pThis, PRUnichar * *message); + +}; +# define IRuntimeErrorEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IRuntimeErrorEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IRuntimeErrorEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IRuntimeErrorEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IRuntimeErrorEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IRuntimeErrorEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IRuntimeErrorEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IRuntimeErrorEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IRuntimeErrorEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IRuntimeErrorEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IRuntimeErrorEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IRuntimeErrorEvent_get_Fatal(p, aFatal) ((p)->lpVtbl->GetFatal(p, aFatal)) +# define IRuntimeErrorEvent_GetFatal(p, aFatal) ((p)->lpVtbl->GetFatal(p, aFatal)) +# define IRuntimeErrorEvent_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IRuntimeErrorEvent_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define IRuntimeErrorEvent_get_Message(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define IRuntimeErrorEvent_GetMessage(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# endif /* VBOX_WITH_GLUE */ + +interface IRuntimeErrorEvent +{ +# ifndef VBOX_WITH_GLUE + struct IRuntimeErrorEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IRuntimeErrorEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IRuntimeErrorEvent declaration */ + + +/* Start of struct IEventSourceChangedEvent declaration */ +# define IEVENTSOURCECHANGEDEVENT_IID_STR "e7932cb8-f6d4-4ab6-9cbf-558eb8959a6a" +# define IEVENTSOURCECHANGEDEVENT_IID { \ + 0xe7932cb8, 0xf6d4, 0x4ab6, \ + { 0x9c, 0xbf, 0x55, 0x8e, 0xb8, 0x95, 0x9a, 0x6a } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IEventSourceChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IEventSourceChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetListener)(IEventSourceChangedEvent *pThis, IEventListener * *listener); + + nsresult (*GetAdd)(IEventSourceChangedEvent *pThis, PRBool *add); + +}; +# else /* VBOX_WITH_GLUE */ +struct IEventSourceChangedEventVtbl +{ + nsresult (*QueryInterface)(IEventSourceChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IEventSourceChangedEvent *pThis); + nsrefcnt (*Release)(IEventSourceChangedEvent *pThis); + nsresult (*GetType)(IEventSourceChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IEventSourceChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IEventSourceChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IEventSourceChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IEventSourceChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetListener)(IEventSourceChangedEvent *pThis, IEventListener * *listener); + + nsresult (*GetAdd)(IEventSourceChangedEvent *pThis, PRBool *add); + +}; +# define IEventSourceChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IEventSourceChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IEventSourceChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IEventSourceChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IEventSourceChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IEventSourceChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IEventSourceChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IEventSourceChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IEventSourceChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IEventSourceChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IEventSourceChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IEventSourceChangedEvent_get_Listener(p, aListener) ((p)->lpVtbl->GetListener(p, aListener)) +# define IEventSourceChangedEvent_GetListener(p, aListener) ((p)->lpVtbl->GetListener(p, aListener)) +# define IEventSourceChangedEvent_get_Add(p, aAdd) ((p)->lpVtbl->GetAdd(p, aAdd)) +# define IEventSourceChangedEvent_GetAdd(p, aAdd) ((p)->lpVtbl->GetAdd(p, aAdd)) +# endif /* VBOX_WITH_GLUE */ + +interface IEventSourceChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IEventSourceChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IEventSourceChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IEventSourceChangedEvent declaration */ + + +/* Start of struct IExtraDataChangedEvent declaration */ +# define IEXTRADATACHANGEDEVENT_IID_STR "024F00CE-6E0B-492A-A8D0-968472A94DC7" +# define IEXTRADATACHANGEDEVENT_IID { \ + 0x024F00CE, 0x6E0B, 0x492A, \ + { 0xA8, 0xD0, 0x96, 0x84, 0x72, 0xA9, 0x4D, 0xC7 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtraDataChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IExtraDataChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMachineId)(IExtraDataChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetKey)(IExtraDataChangedEvent *pThis, PRUnichar * *key); + + nsresult (*GetValue)(IExtraDataChangedEvent *pThis, PRUnichar * *value); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtraDataChangedEventVtbl +{ + nsresult (*QueryInterface)(IExtraDataChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtraDataChangedEvent *pThis); + nsrefcnt (*Release)(IExtraDataChangedEvent *pThis); + nsresult (*GetType)(IExtraDataChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IExtraDataChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IExtraDataChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IExtraDataChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IExtraDataChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IExtraDataChangedEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetKey)(IExtraDataChangedEvent *pThis, PRUnichar * *key); + + nsresult (*GetValue)(IExtraDataChangedEvent *pThis, PRUnichar * *value); + +}; +# define IExtraDataChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtraDataChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtraDataChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtraDataChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IExtraDataChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IExtraDataChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IExtraDataChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IExtraDataChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IExtraDataChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IExtraDataChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IExtraDataChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IExtraDataChangedEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IExtraDataChangedEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IExtraDataChangedEvent_get_Key(p, aKey) ((p)->lpVtbl->GetKey(p, aKey)) +# define IExtraDataChangedEvent_GetKey(p, aKey) ((p)->lpVtbl->GetKey(p, aKey)) +# define IExtraDataChangedEvent_get_Value(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# define IExtraDataChangedEvent_GetValue(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtraDataChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IExtraDataChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtraDataChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtraDataChangedEvent declaration */ + + +/* Start of struct IVetoEvent declaration */ +# define IVETOEVENT_IID_STR "7c5e945f-2354-4267-883f-2f417d216519" +# define IVETOEVENT_IID { \ + 0x7c5e945f, 0x2354, 0x4267, \ + { 0x88, 0x3f, 0x2f, 0x41, 0x7d, 0x21, 0x65, 0x19 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVetoEvent); +# ifndef VBOX_WITH_GLUE +struct IVetoEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*AddVeto)( + IVetoEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsVetoed)( + IVetoEvent *pThis, + PRBool * result + ); + + nsresult (*GetVetos)( + IVetoEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + + nsresult (*AddApproval)( + IVetoEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsApproved)( + IVetoEvent *pThis, + PRBool * result + ); + + nsresult (*GetApprovals)( + IVetoEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVetoEventVtbl +{ + nsresult (*QueryInterface)(IVetoEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVetoEvent *pThis); + nsrefcnt (*Release)(IVetoEvent *pThis); + nsresult (*GetType)(IVetoEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IVetoEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IVetoEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IVetoEvent *pThis ); + + nsresult (*WaitProcessed)( + IVetoEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*AddVeto)( + IVetoEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsVetoed)( + IVetoEvent *pThis, + PRBool * result + ); + + nsresult (*GetVetos)( + IVetoEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + + nsresult (*AddApproval)( + IVetoEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsApproved)( + IVetoEvent *pThis, + PRBool * result + ); + + nsresult (*GetApprovals)( + IVetoEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + +}; +# define IVetoEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVetoEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVetoEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IVetoEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVetoEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVetoEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVetoEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVetoEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVetoEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVetoEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IVetoEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IVetoEvent_AddVeto(p, aReason) ((p)->lpVtbl->AddVeto(p, aReason)) +# define IVetoEvent_IsVetoed(p, aResult) ((p)->lpVtbl->IsVetoed(p, aResult)) +# define IVetoEvent_GetVetos(p, aResult) ((p)->lpVtbl->GetVetos(p, aResult)) +# define IVetoEvent_AddApproval(p, aReason) ((p)->lpVtbl->AddApproval(p, aReason)) +# define IVetoEvent_IsApproved(p, aResult) ((p)->lpVtbl->IsApproved(p, aResult)) +# define IVetoEvent_GetApprovals(p, aResult) ((p)->lpVtbl->GetApprovals(p, aResult)) +# endif /* VBOX_WITH_GLUE */ + +interface IVetoEvent +{ +# ifndef VBOX_WITH_GLUE + struct IVetoEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVetoEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVetoEvent declaration */ + + +/* Start of struct IExtraDataCanChangeEvent declaration */ +# define IEXTRADATACANCHANGEEVENT_IID_STR "245d88bd-800a-40f8-87a6-170d02249a55" +# define IEXTRADATACANCHANGEEVENT_IID { \ + 0x245d88bd, 0x800a, 0x40f8, \ + { 0x87, 0xa6, 0x17, 0x0d, 0x02, 0x24, 0x9a, 0x55 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IExtraDataCanChangeEvent); +# ifndef VBOX_WITH_GLUE +struct IExtraDataCanChangeEvent_vtbl +{ + struct IVetoEvent_vtbl ivetoevent; + + nsresult (*GetMachineId)(IExtraDataCanChangeEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetKey)(IExtraDataCanChangeEvent *pThis, PRUnichar * *key); + + nsresult (*GetValue)(IExtraDataCanChangeEvent *pThis, PRUnichar * *value); + +}; +# else /* VBOX_WITH_GLUE */ +struct IExtraDataCanChangeEventVtbl +{ + nsresult (*QueryInterface)(IExtraDataCanChangeEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IExtraDataCanChangeEvent *pThis); + nsrefcnt (*Release)(IExtraDataCanChangeEvent *pThis); + nsresult (*GetType)(IExtraDataCanChangeEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IExtraDataCanChangeEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IExtraDataCanChangeEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IExtraDataCanChangeEvent *pThis ); + + nsresult (*WaitProcessed)( + IExtraDataCanChangeEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*AddVeto)( + IExtraDataCanChangeEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsVetoed)( + IExtraDataCanChangeEvent *pThis, + PRBool * result + ); + + nsresult (*GetVetos)( + IExtraDataCanChangeEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + + nsresult (*AddApproval)( + IExtraDataCanChangeEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsApproved)( + IExtraDataCanChangeEvent *pThis, + PRBool * result + ); + + nsresult (*GetApprovals)( + IExtraDataCanChangeEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + + nsresult (*GetMachineId)(IExtraDataCanChangeEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetKey)(IExtraDataCanChangeEvent *pThis, PRUnichar * *key); + + nsresult (*GetValue)(IExtraDataCanChangeEvent *pThis, PRUnichar * *value); + +}; +# define IExtraDataCanChangeEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IExtraDataCanChangeEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IExtraDataCanChangeEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IExtraDataCanChangeEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IExtraDataCanChangeEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IExtraDataCanChangeEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IExtraDataCanChangeEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IExtraDataCanChangeEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IExtraDataCanChangeEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IExtraDataCanChangeEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IExtraDataCanChangeEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IExtraDataCanChangeEvent_AddVeto(p, aReason) ((p)->lpVtbl->AddVeto(p, aReason)) +# define IExtraDataCanChangeEvent_IsVetoed(p, aResult) ((p)->lpVtbl->IsVetoed(p, aResult)) +# define IExtraDataCanChangeEvent_GetVetos(p, aResult) ((p)->lpVtbl->GetVetos(p, aResult)) +# define IExtraDataCanChangeEvent_AddApproval(p, aReason) ((p)->lpVtbl->AddApproval(p, aReason)) +# define IExtraDataCanChangeEvent_IsApproved(p, aResult) ((p)->lpVtbl->IsApproved(p, aResult)) +# define IExtraDataCanChangeEvent_GetApprovals(p, aResult) ((p)->lpVtbl->GetApprovals(p, aResult)) +# define IExtraDataCanChangeEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IExtraDataCanChangeEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IExtraDataCanChangeEvent_get_Key(p, aKey) ((p)->lpVtbl->GetKey(p, aKey)) +# define IExtraDataCanChangeEvent_GetKey(p, aKey) ((p)->lpVtbl->GetKey(p, aKey)) +# define IExtraDataCanChangeEvent_get_Value(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# define IExtraDataCanChangeEvent_GetValue(p, aValue) ((p)->lpVtbl->GetValue(p, aValue)) +# endif /* VBOX_WITH_GLUE */ + +interface IExtraDataCanChangeEvent +{ +# ifndef VBOX_WITH_GLUE + struct IExtraDataCanChangeEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IExtraDataCanChangeEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IExtraDataCanChangeEvent declaration */ + + +/* Start of struct ICanShowWindowEvent declaration */ +# define ICANSHOWWINDOWEVENT_IID_STR "adf292b0-92c9-4a77-9d35-e058b39fe0b9" +# define ICANSHOWWINDOWEVENT_IID { \ + 0xadf292b0, 0x92c9, 0x4a77, \ + { 0x9d, 0x35, 0xe0, 0x58, 0xb3, 0x9f, 0xe0, 0xb9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICanShowWindowEvent); +# ifndef VBOX_WITH_GLUE +struct ICanShowWindowEvent_vtbl +{ + struct IVetoEvent_vtbl ivetoevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ICanShowWindowEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICanShowWindowEventVtbl +{ + nsresult (*QueryInterface)(ICanShowWindowEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICanShowWindowEvent *pThis); + nsrefcnt (*Release)(ICanShowWindowEvent *pThis); + nsresult (*GetType)(ICanShowWindowEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ICanShowWindowEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ICanShowWindowEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ICanShowWindowEvent *pThis ); + + nsresult (*WaitProcessed)( + ICanShowWindowEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*AddVeto)( + ICanShowWindowEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsVetoed)( + ICanShowWindowEvent *pThis, + PRBool * result + ); + + nsresult (*GetVetos)( + ICanShowWindowEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + + nsresult (*AddApproval)( + ICanShowWindowEvent *pThis, + PRUnichar * reason + ); + + nsresult (*IsApproved)( + ICanShowWindowEvent *pThis, + PRBool * result + ); + + nsresult (*GetApprovals)( + ICanShowWindowEvent *pThis, + PRUint32 *resultSize, + PRUnichar *** result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(ICanShowWindowEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define ICanShowWindowEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICanShowWindowEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICanShowWindowEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ICanShowWindowEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICanShowWindowEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICanShowWindowEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICanShowWindowEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICanShowWindowEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICanShowWindowEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICanShowWindowEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ICanShowWindowEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ICanShowWindowEvent_AddVeto(p, aReason) ((p)->lpVtbl->AddVeto(p, aReason)) +# define ICanShowWindowEvent_IsVetoed(p, aResult) ((p)->lpVtbl->IsVetoed(p, aResult)) +# define ICanShowWindowEvent_GetVetos(p, aResult) ((p)->lpVtbl->GetVetos(p, aResult)) +# define ICanShowWindowEvent_AddApproval(p, aReason) ((p)->lpVtbl->AddApproval(p, aReason)) +# define ICanShowWindowEvent_IsApproved(p, aResult) ((p)->lpVtbl->IsApproved(p, aResult)) +# define ICanShowWindowEvent_GetApprovals(p, aResult) ((p)->lpVtbl->GetApprovals(p, aResult)) +# define ICanShowWindowEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define ICanShowWindowEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface ICanShowWindowEvent +{ +# ifndef VBOX_WITH_GLUE + struct ICanShowWindowEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICanShowWindowEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICanShowWindowEvent declaration */ + + +/* Start of struct IShowWindowEvent declaration */ +# define ISHOWWINDOWEVENT_IID_STR "B0A0904D-2F05-4D28-855F-488F96BAD2B2" +# define ISHOWWINDOWEVENT_IID { \ + 0xB0A0904D, 0x2F05, 0x4D28, \ + { 0x85, 0x5F, 0x48, 0x8F, 0x96, 0xBA, 0xD2, 0xB2 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IShowWindowEvent); +# ifndef VBOX_WITH_GLUE +struct IShowWindowEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetWinId)(IShowWindowEvent *pThis, PRInt64 *winId); + nsresult (*SetWinId)(IShowWindowEvent *pThis, PRInt64 winId); + +}; +# else /* VBOX_WITH_GLUE */ +struct IShowWindowEventVtbl +{ + nsresult (*QueryInterface)(IShowWindowEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IShowWindowEvent *pThis); + nsrefcnt (*Release)(IShowWindowEvent *pThis); + nsresult (*GetType)(IShowWindowEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IShowWindowEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IShowWindowEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IShowWindowEvent *pThis ); + + nsresult (*WaitProcessed)( + IShowWindowEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetWinId)(IShowWindowEvent *pThis, PRInt64 *winId); + nsresult (*SetWinId)(IShowWindowEvent *pThis, PRInt64 winId); + +}; +# define IShowWindowEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IShowWindowEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IShowWindowEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IShowWindowEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IShowWindowEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IShowWindowEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IShowWindowEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IShowWindowEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IShowWindowEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IShowWindowEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IShowWindowEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IShowWindowEvent_get_WinId(p, aWinId) ((p)->lpVtbl->GetWinId(p, aWinId)) +# define IShowWindowEvent_GetWinId(p, aWinId) ((p)->lpVtbl->GetWinId(p, aWinId)) +# define IShowWindowEvent_put_WinId(p, aWinId) ((p)->lpVtbl->SetWinId(p, aWinId)) +# define IShowWindowEvent_SetWinId(p, aWinId) ((p)->lpVtbl->SetWinId(p, aWinId)) +# endif /* VBOX_WITH_GLUE */ + +interface IShowWindowEvent +{ +# ifndef VBOX_WITH_GLUE + struct IShowWindowEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IShowWindowEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IShowWindowEvent declaration */ + + +/* Start of struct INATRedirectEvent declaration */ +# define INATREDIRECTEVENT_IID_STR "24eef068-c380-4510-bc7c-19314a7352f1" +# define INATREDIRECTEVENT_IID { \ + 0x24eef068, 0xc380, 0x4510, \ + { 0xbc, 0x7c, 0x19, 0x31, 0x4a, 0x73, 0x52, 0xf1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATRedirectEvent); +# ifndef VBOX_WITH_GLUE +struct INATRedirectEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetSlot)(INATRedirectEvent *pThis, PRUint32 *slot); + + nsresult (*GetRemove)(INATRedirectEvent *pThis, PRBool *remove); + + nsresult (*GetName)(INATRedirectEvent *pThis, PRUnichar * *name); + + nsresult (*GetProto)(INATRedirectEvent *pThis, PRUint32 *proto); + + nsresult (*GetHostIP)(INATRedirectEvent *pThis, PRUnichar * *hostIP); + + nsresult (*GetHostPort)(INATRedirectEvent *pThis, PRInt32 *hostPort); + + nsresult (*GetGuestIP)(INATRedirectEvent *pThis, PRUnichar * *guestIP); + + nsresult (*GetGuestPort)(INATRedirectEvent *pThis, PRInt32 *guestPort); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATRedirectEventVtbl +{ + nsresult (*QueryInterface)(INATRedirectEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATRedirectEvent *pThis); + nsrefcnt (*Release)(INATRedirectEvent *pThis); + nsresult (*GetType)(INATRedirectEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATRedirectEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATRedirectEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATRedirectEvent *pThis ); + + nsresult (*WaitProcessed)( + INATRedirectEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(INATRedirectEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetSlot)(INATRedirectEvent *pThis, PRUint32 *slot); + + nsresult (*GetRemove)(INATRedirectEvent *pThis, PRBool *remove); + + nsresult (*GetName)(INATRedirectEvent *pThis, PRUnichar * *name); + + nsresult (*GetProto)(INATRedirectEvent *pThis, PRUint32 *proto); + + nsresult (*GetHostIP)(INATRedirectEvent *pThis, PRUnichar * *hostIP); + + nsresult (*GetHostPort)(INATRedirectEvent *pThis, PRInt32 *hostPort); + + nsresult (*GetGuestIP)(INATRedirectEvent *pThis, PRUnichar * *guestIP); + + nsresult (*GetGuestPort)(INATRedirectEvent *pThis, PRInt32 *guestPort); + +}; +# define INATRedirectEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATRedirectEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATRedirectEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATRedirectEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATRedirectEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATRedirectEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATRedirectEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATRedirectEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATRedirectEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATRedirectEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATRedirectEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATRedirectEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define INATRedirectEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define INATRedirectEvent_get_Slot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define INATRedirectEvent_GetSlot(p, aSlot) ((p)->lpVtbl->GetSlot(p, aSlot)) +# define INATRedirectEvent_get_Remove(p, aRemove) ((p)->lpVtbl->GetRemove(p, aRemove)) +# define INATRedirectEvent_GetRemove(p, aRemove) ((p)->lpVtbl->GetRemove(p, aRemove)) +# define INATRedirectEvent_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define INATRedirectEvent_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define INATRedirectEvent_get_Proto(p, aProto) ((p)->lpVtbl->GetProto(p, aProto)) +# define INATRedirectEvent_GetProto(p, aProto) ((p)->lpVtbl->GetProto(p, aProto)) +# define INATRedirectEvent_get_HostIP(p, aHostIP) ((p)->lpVtbl->GetHostIP(p, aHostIP)) +# define INATRedirectEvent_GetHostIP(p, aHostIP) ((p)->lpVtbl->GetHostIP(p, aHostIP)) +# define INATRedirectEvent_get_HostPort(p, aHostPort) ((p)->lpVtbl->GetHostPort(p, aHostPort)) +# define INATRedirectEvent_GetHostPort(p, aHostPort) ((p)->lpVtbl->GetHostPort(p, aHostPort)) +# define INATRedirectEvent_get_GuestIP(p, aGuestIP) ((p)->lpVtbl->GetGuestIP(p, aGuestIP)) +# define INATRedirectEvent_GetGuestIP(p, aGuestIP) ((p)->lpVtbl->GetGuestIP(p, aGuestIP)) +# define INATRedirectEvent_get_GuestPort(p, aGuestPort) ((p)->lpVtbl->GetGuestPort(p, aGuestPort)) +# define INATRedirectEvent_GetGuestPort(p, aGuestPort) ((p)->lpVtbl->GetGuestPort(p, aGuestPort)) +# endif /* VBOX_WITH_GLUE */ + +interface INATRedirectEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATRedirectEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATRedirectEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATRedirectEvent declaration */ + + +/* Start of struct IHostPCIDevicePlugEvent declaration */ +# define IHOSTPCIDEVICEPLUGEVENT_IID_STR "a0bad6df-d612-47d3-89d4-db3992533948" +# define IHOSTPCIDEVICEPLUGEVENT_IID { \ + 0xa0bad6df, 0xd612, 0x47d3, \ + { 0x89, 0xd4, 0xdb, 0x39, 0x92, 0x53, 0x39, 0x48 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostPCIDevicePlugEvent); +# ifndef VBOX_WITH_GLUE +struct IHostPCIDevicePlugEvent_vtbl +{ + struct IMachineEvent_vtbl imachineevent; + + nsresult (*GetPlugged)(IHostPCIDevicePlugEvent *pThis, PRBool *plugged); + + nsresult (*GetSuccess)(IHostPCIDevicePlugEvent *pThis, PRBool *success); + + nsresult (*GetAttachment)(IHostPCIDevicePlugEvent *pThis, IPCIDeviceAttachment * *attachment); + + nsresult (*GetMessage)(IHostPCIDevicePlugEvent *pThis, PRUnichar * *message); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostPCIDevicePlugEventVtbl +{ + nsresult (*QueryInterface)(IHostPCIDevicePlugEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostPCIDevicePlugEvent *pThis); + nsrefcnt (*Release)(IHostPCIDevicePlugEvent *pThis); + nsresult (*GetType)(IHostPCIDevicePlugEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IHostPCIDevicePlugEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IHostPCIDevicePlugEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IHostPCIDevicePlugEvent *pThis ); + + nsresult (*WaitProcessed)( + IHostPCIDevicePlugEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMachineId)(IHostPCIDevicePlugEvent *pThis, PRUnichar * *machineId); + + nsresult (*GetPlugged)(IHostPCIDevicePlugEvent *pThis, PRBool *plugged); + + nsresult (*GetSuccess)(IHostPCIDevicePlugEvent *pThis, PRBool *success); + + nsresult (*GetAttachment)(IHostPCIDevicePlugEvent *pThis, IPCIDeviceAttachment * *attachment); + + nsresult (*GetMessage)(IHostPCIDevicePlugEvent *pThis, PRUnichar * *message); + +}; +# define IHostPCIDevicePlugEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostPCIDevicePlugEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostPCIDevicePlugEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IHostPCIDevicePlugEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IHostPCIDevicePlugEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IHostPCIDevicePlugEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IHostPCIDevicePlugEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IHostPCIDevicePlugEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IHostPCIDevicePlugEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IHostPCIDevicePlugEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IHostPCIDevicePlugEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IHostPCIDevicePlugEvent_get_MachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IHostPCIDevicePlugEvent_GetMachineId(p, aMachineId) ((p)->lpVtbl->GetMachineId(p, aMachineId)) +# define IHostPCIDevicePlugEvent_get_Plugged(p, aPlugged) ((p)->lpVtbl->GetPlugged(p, aPlugged)) +# define IHostPCIDevicePlugEvent_GetPlugged(p, aPlugged) ((p)->lpVtbl->GetPlugged(p, aPlugged)) +# define IHostPCIDevicePlugEvent_get_Success(p, aSuccess) ((p)->lpVtbl->GetSuccess(p, aSuccess)) +# define IHostPCIDevicePlugEvent_GetSuccess(p, aSuccess) ((p)->lpVtbl->GetSuccess(p, aSuccess)) +# define IHostPCIDevicePlugEvent_get_Attachment(p, aAttachment) ((p)->lpVtbl->GetAttachment(p, aAttachment)) +# define IHostPCIDevicePlugEvent_GetAttachment(p, aAttachment) ((p)->lpVtbl->GetAttachment(p, aAttachment)) +# define IHostPCIDevicePlugEvent_get_Message(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# define IHostPCIDevicePlugEvent_GetMessage(p, aMessage) ((p)->lpVtbl->GetMessage(p, aMessage)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostPCIDevicePlugEvent +{ +# ifndef VBOX_WITH_GLUE + struct IHostPCIDevicePlugEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostPCIDevicePlugEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostPCIDevicePlugEvent declaration */ + + +/* Start of struct IVBoxSVCAvailabilityChangedEvent declaration */ +# define IVBOXSVCAVAILABILITYCHANGEDEVENT_IID_STR "97c78fcd-d4fc-485f-8613-5af88bfcfcdc" +# define IVBOXSVCAVAILABILITYCHANGEDEVENT_IID { \ + 0x97c78fcd, 0xd4fc, 0x485f, \ + { 0x86, 0x13, 0x5a, 0xf8, 0x8b, 0xfc, 0xfc, 0xdc } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVBoxSVCAvailabilityChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IVBoxSVCAvailabilityChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetAvailable)(IVBoxSVCAvailabilityChangedEvent *pThis, PRBool *available); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVBoxSVCAvailabilityChangedEventVtbl +{ + nsresult (*QueryInterface)(IVBoxSVCAvailabilityChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVBoxSVCAvailabilityChangedEvent *pThis); + nsrefcnt (*Release)(IVBoxSVCAvailabilityChangedEvent *pThis); + nsresult (*GetType)(IVBoxSVCAvailabilityChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IVBoxSVCAvailabilityChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IVBoxSVCAvailabilityChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IVBoxSVCAvailabilityChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IVBoxSVCAvailabilityChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetAvailable)(IVBoxSVCAvailabilityChangedEvent *pThis, PRBool *available); + +}; +# define IVBoxSVCAvailabilityChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVBoxSVCAvailabilityChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVBoxSVCAvailabilityChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IVBoxSVCAvailabilityChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVBoxSVCAvailabilityChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IVBoxSVCAvailabilityChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVBoxSVCAvailabilityChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IVBoxSVCAvailabilityChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVBoxSVCAvailabilityChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IVBoxSVCAvailabilityChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IVBoxSVCAvailabilityChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IVBoxSVCAvailabilityChangedEvent_get_Available(p, aAvailable) ((p)->lpVtbl->GetAvailable(p, aAvailable)) +# define IVBoxSVCAvailabilityChangedEvent_GetAvailable(p, aAvailable) ((p)->lpVtbl->GetAvailable(p, aAvailable)) +# endif /* VBOX_WITH_GLUE */ + +interface IVBoxSVCAvailabilityChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IVBoxSVCAvailabilityChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVBoxSVCAvailabilityChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVBoxSVCAvailabilityChangedEvent declaration */ + + +/* Start of struct IBandwidthGroupChangedEvent declaration */ +# define IBANDWIDTHGROUPCHANGEDEVENT_IID_STR "334df94a-7556-4cbc-8c04-043096b02d82" +# define IBANDWIDTHGROUPCHANGEDEVENT_IID { \ + 0x334df94a, 0x7556, 0x4cbc, \ + { 0x8c, 0x04, 0x04, 0x30, 0x96, 0xb0, 0x2d, 0x82 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IBandwidthGroupChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IBandwidthGroupChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetBandwidthGroup)(IBandwidthGroupChangedEvent *pThis, IBandwidthGroup * *bandwidthGroup); + +}; +# else /* VBOX_WITH_GLUE */ +struct IBandwidthGroupChangedEventVtbl +{ + nsresult (*QueryInterface)(IBandwidthGroupChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IBandwidthGroupChangedEvent *pThis); + nsrefcnt (*Release)(IBandwidthGroupChangedEvent *pThis); + nsresult (*GetType)(IBandwidthGroupChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IBandwidthGroupChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IBandwidthGroupChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IBandwidthGroupChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IBandwidthGroupChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetBandwidthGroup)(IBandwidthGroupChangedEvent *pThis, IBandwidthGroup * *bandwidthGroup); + +}; +# define IBandwidthGroupChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IBandwidthGroupChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IBandwidthGroupChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IBandwidthGroupChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IBandwidthGroupChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IBandwidthGroupChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IBandwidthGroupChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IBandwidthGroupChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IBandwidthGroupChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IBandwidthGroupChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IBandwidthGroupChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IBandwidthGroupChangedEvent_get_BandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aBandwidthGroup)) +# define IBandwidthGroupChangedEvent_GetBandwidthGroup(p, aBandwidthGroup) ((p)->lpVtbl->GetBandwidthGroup(p, aBandwidthGroup)) +# endif /* VBOX_WITH_GLUE */ + +interface IBandwidthGroupChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IBandwidthGroupChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IBandwidthGroupChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IBandwidthGroupChangedEvent declaration */ + + +/* Start of struct IGuestMonitorChangedEvent declaration */ +# define IGUESTMONITORCHANGEDEVENT_IID_STR "0f7b8a22-c71f-4a36-8e5f-a77d01d76090" +# define IGUESTMONITORCHANGEDEVENT_IID { \ + 0x0f7b8a22, 0xc71f, 0x4a36, \ + { 0x8e, 0x5f, 0xa7, 0x7d, 0x01, 0xd7, 0x60, 0x90 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestMonitorChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestMonitorChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetChangeType)(IGuestMonitorChangedEvent *pThis, PRUint32 *changeType); + + nsresult (*GetScreenId)(IGuestMonitorChangedEvent *pThis, PRUint32 *screenId); + + nsresult (*GetOriginX)(IGuestMonitorChangedEvent *pThis, PRUint32 *originX); + + nsresult (*GetOriginY)(IGuestMonitorChangedEvent *pThis, PRUint32 *originY); + + nsresult (*GetWidth)(IGuestMonitorChangedEvent *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IGuestMonitorChangedEvent *pThis, PRUint32 *height); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestMonitorChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestMonitorChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestMonitorChangedEvent *pThis); + nsrefcnt (*Release)(IGuestMonitorChangedEvent *pThis); + nsresult (*GetType)(IGuestMonitorChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestMonitorChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestMonitorChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestMonitorChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestMonitorChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetChangeType)(IGuestMonitorChangedEvent *pThis, PRUint32 *changeType); + + nsresult (*GetScreenId)(IGuestMonitorChangedEvent *pThis, PRUint32 *screenId); + + nsresult (*GetOriginX)(IGuestMonitorChangedEvent *pThis, PRUint32 *originX); + + nsresult (*GetOriginY)(IGuestMonitorChangedEvent *pThis, PRUint32 *originY); + + nsresult (*GetWidth)(IGuestMonitorChangedEvent *pThis, PRUint32 *width); + + nsresult (*GetHeight)(IGuestMonitorChangedEvent *pThis, PRUint32 *height); + +}; +# define IGuestMonitorChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestMonitorChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestMonitorChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestMonitorChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMonitorChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMonitorChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMonitorChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMonitorChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMonitorChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMonitorChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestMonitorChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestMonitorChangedEvent_get_ChangeType(p, aChangeType) ((p)->lpVtbl->GetChangeType(p, aChangeType)) +# define IGuestMonitorChangedEvent_GetChangeType(p, aChangeType) ((p)->lpVtbl->GetChangeType(p, aChangeType)) +# define IGuestMonitorChangedEvent_get_ScreenId(p, aScreenId) ((p)->lpVtbl->GetScreenId(p, aScreenId)) +# define IGuestMonitorChangedEvent_GetScreenId(p, aScreenId) ((p)->lpVtbl->GetScreenId(p, aScreenId)) +# define IGuestMonitorChangedEvent_get_OriginX(p, aOriginX) ((p)->lpVtbl->GetOriginX(p, aOriginX)) +# define IGuestMonitorChangedEvent_GetOriginX(p, aOriginX) ((p)->lpVtbl->GetOriginX(p, aOriginX)) +# define IGuestMonitorChangedEvent_get_OriginY(p, aOriginY) ((p)->lpVtbl->GetOriginY(p, aOriginY)) +# define IGuestMonitorChangedEvent_GetOriginY(p, aOriginY) ((p)->lpVtbl->GetOriginY(p, aOriginY)) +# define IGuestMonitorChangedEvent_get_Width(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IGuestMonitorChangedEvent_GetWidth(p, aWidth) ((p)->lpVtbl->GetWidth(p, aWidth)) +# define IGuestMonitorChangedEvent_get_Height(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# define IGuestMonitorChangedEvent_GetHeight(p, aHeight) ((p)->lpVtbl->GetHeight(p, aHeight)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestMonitorChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestMonitorChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestMonitorChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestMonitorChangedEvent declaration */ + + +/* Start of struct IGuestUserStateChangedEvent declaration */ +# define IGUESTUSERSTATECHANGEDEVENT_IID_STR "39b4e759-1ec0-4c0f-857f-fbe2a737a256" +# define IGUESTUSERSTATECHANGEDEVENT_IID { \ + 0x39b4e759, 0x1ec0, 0x4c0f, \ + { 0x85, 0x7f, 0xfb, 0xe2, 0xa7, 0x37, 0xa2, 0x56 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestUserStateChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestUserStateChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetName)(IGuestUserStateChangedEvent *pThis, PRUnichar * *name); + + nsresult (*GetDomain)(IGuestUserStateChangedEvent *pThis, PRUnichar * *domain); + + nsresult (*GetState)(IGuestUserStateChangedEvent *pThis, PRUint32 *state); + + nsresult (*GetStateDetails)(IGuestUserStateChangedEvent *pThis, PRUnichar * *stateDetails); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestUserStateChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestUserStateChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestUserStateChangedEvent *pThis); + nsrefcnt (*Release)(IGuestUserStateChangedEvent *pThis); + nsresult (*GetType)(IGuestUserStateChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestUserStateChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestUserStateChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestUserStateChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestUserStateChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetName)(IGuestUserStateChangedEvent *pThis, PRUnichar * *name); + + nsresult (*GetDomain)(IGuestUserStateChangedEvent *pThis, PRUnichar * *domain); + + nsresult (*GetState)(IGuestUserStateChangedEvent *pThis, PRUint32 *state); + + nsresult (*GetStateDetails)(IGuestUserStateChangedEvent *pThis, PRUnichar * *stateDetails); + +}; +# define IGuestUserStateChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestUserStateChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestUserStateChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestUserStateChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestUserStateChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestUserStateChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestUserStateChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestUserStateChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestUserStateChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestUserStateChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestUserStateChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestUserStateChangedEvent_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestUserStateChangedEvent_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define IGuestUserStateChangedEvent_get_Domain(p, aDomain) ((p)->lpVtbl->GetDomain(p, aDomain)) +# define IGuestUserStateChangedEvent_GetDomain(p, aDomain) ((p)->lpVtbl->GetDomain(p, aDomain)) +# define IGuestUserStateChangedEvent_get_State(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IGuestUserStateChangedEvent_GetState(p, aState) ((p)->lpVtbl->GetState(p, aState)) +# define IGuestUserStateChangedEvent_get_StateDetails(p, aStateDetails) ((p)->lpVtbl->GetStateDetails(p, aStateDetails)) +# define IGuestUserStateChangedEvent_GetStateDetails(p, aStateDetails) ((p)->lpVtbl->GetStateDetails(p, aStateDetails)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestUserStateChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestUserStateChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestUserStateChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestUserStateChangedEvent declaration */ + + +/* Start of struct IStorageDeviceChangedEvent declaration */ +# define ISTORAGEDEVICECHANGEDEVENT_IID_STR "232e9151-ae84-4b8e-b0f3-5c20c35caac9" +# define ISTORAGEDEVICECHANGEDEVENT_IID { \ + 0x232e9151, 0xae84, 0x4b8e, \ + { 0xb0, 0xf3, 0x5c, 0x20, 0xc3, 0x5c, 0xaa, 0xc9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IStorageDeviceChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IStorageDeviceChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetStorageDevice)(IStorageDeviceChangedEvent *pThis, IMediumAttachment * *storageDevice); + + nsresult (*GetRemoved)(IStorageDeviceChangedEvent *pThis, PRBool *removed); + + nsresult (*GetSilent)(IStorageDeviceChangedEvent *pThis, PRBool *silent); + +}; +# else /* VBOX_WITH_GLUE */ +struct IStorageDeviceChangedEventVtbl +{ + nsresult (*QueryInterface)(IStorageDeviceChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IStorageDeviceChangedEvent *pThis); + nsrefcnt (*Release)(IStorageDeviceChangedEvent *pThis); + nsresult (*GetType)(IStorageDeviceChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IStorageDeviceChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IStorageDeviceChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IStorageDeviceChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IStorageDeviceChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetStorageDevice)(IStorageDeviceChangedEvent *pThis, IMediumAttachment * *storageDevice); + + nsresult (*GetRemoved)(IStorageDeviceChangedEvent *pThis, PRBool *removed); + + nsresult (*GetSilent)(IStorageDeviceChangedEvent *pThis, PRBool *silent); + +}; +# define IStorageDeviceChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IStorageDeviceChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IStorageDeviceChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IStorageDeviceChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStorageDeviceChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStorageDeviceChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IStorageDeviceChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IStorageDeviceChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IStorageDeviceChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IStorageDeviceChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IStorageDeviceChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IStorageDeviceChangedEvent_get_StorageDevice(p, aStorageDevice) ((p)->lpVtbl->GetStorageDevice(p, aStorageDevice)) +# define IStorageDeviceChangedEvent_GetStorageDevice(p, aStorageDevice) ((p)->lpVtbl->GetStorageDevice(p, aStorageDevice)) +# define IStorageDeviceChangedEvent_get_Removed(p, aRemoved) ((p)->lpVtbl->GetRemoved(p, aRemoved)) +# define IStorageDeviceChangedEvent_GetRemoved(p, aRemoved) ((p)->lpVtbl->GetRemoved(p, aRemoved)) +# define IStorageDeviceChangedEvent_get_Silent(p, aSilent) ((p)->lpVtbl->GetSilent(p, aSilent)) +# define IStorageDeviceChangedEvent_GetSilent(p, aSilent) ((p)->lpVtbl->GetSilent(p, aSilent)) +# endif /* VBOX_WITH_GLUE */ + +interface IStorageDeviceChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IStorageDeviceChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IStorageDeviceChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IStorageDeviceChangedEvent declaration */ + + +/* Start of struct INATNetworkChangedEvent declaration */ +# define INATNETWORKCHANGEDEVENT_IID_STR "101ae042-1a29-4a19-92cf-02285773f3b5" +# define INATNETWORKCHANGEDEVENT_IID { \ + 0x101ae042, 0x1a29, 0x4a19, \ + { 0x92, 0xcf, 0x02, 0x28, 0x57, 0x73, 0xf3, 0xb5 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetworkChangedEvent); +# ifndef VBOX_WITH_GLUE +struct INATNetworkChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetNetworkName)(INATNetworkChangedEvent *pThis, PRUnichar * *networkName); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkChangedEventVtbl +{ + nsresult (*QueryInterface)(INATNetworkChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetworkChangedEvent *pThis); + nsrefcnt (*Release)(INATNetworkChangedEvent *pThis); + nsresult (*GetType)(INATNetworkChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATNetworkChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATNetworkChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATNetworkChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + INATNetworkChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkName)(INATNetworkChangedEvent *pThis, PRUnichar * *networkName); + +}; +# define INATNetworkChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetworkChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetworkChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetworkChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATNetworkChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATNetworkChangedEvent_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkChangedEvent_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetworkChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATNetworkChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetworkChangedEvent declaration */ + + +/* Start of struct INATNetworkStartStopEvent declaration */ +# define INATNETWORKSTARTSTOPEVENT_IID_STR "269d8f6b-fa1e-4cee-91c7-6d8496bea3c1" +# define INATNETWORKSTARTSTOPEVENT_IID { \ + 0x269d8f6b, 0xfa1e, 0x4cee, \ + { 0x91, 0xc7, 0x6d, 0x84, 0x96, 0xbe, 0xa3, 0xc1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetworkStartStopEvent); +# ifndef VBOX_WITH_GLUE +struct INATNetworkStartStopEvent_vtbl +{ + struct INATNetworkChangedEvent_vtbl inatnetworkchangedevent; + + nsresult (*GetStartEvent)(INATNetworkStartStopEvent *pThis, PRBool *startEvent); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkStartStopEventVtbl +{ + nsresult (*QueryInterface)(INATNetworkStartStopEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetworkStartStopEvent *pThis); + nsrefcnt (*Release)(INATNetworkStartStopEvent *pThis); + nsresult (*GetType)(INATNetworkStartStopEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATNetworkStartStopEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATNetworkStartStopEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATNetworkStartStopEvent *pThis ); + + nsresult (*WaitProcessed)( + INATNetworkStartStopEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkName)(INATNetworkStartStopEvent *pThis, PRUnichar * *networkName); + + nsresult (*GetStartEvent)(INATNetworkStartStopEvent *pThis, PRBool *startEvent); + +}; +# define INATNetworkStartStopEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetworkStartStopEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetworkStartStopEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetworkStartStopEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkStartStopEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkStartStopEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkStartStopEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkStartStopEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkStartStopEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkStartStopEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATNetworkStartStopEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATNetworkStartStopEvent_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkStartStopEvent_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkStartStopEvent_get_StartEvent(p, aStartEvent) ((p)->lpVtbl->GetStartEvent(p, aStartEvent)) +# define INATNetworkStartStopEvent_GetStartEvent(p, aStartEvent) ((p)->lpVtbl->GetStartEvent(p, aStartEvent)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetworkStartStopEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATNetworkStartStopEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkStartStopEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetworkStartStopEvent declaration */ + + +/* Start of struct INATNetworkAlterEvent declaration */ +# define INATNETWORKALTEREVENT_IID_STR "d947adf5-4022-dc80-5535-6fb116815604" +# define INATNETWORKALTEREVENT_IID { \ + 0xd947adf5, 0x4022, 0xdc80, \ + { 0x55, 0x35, 0x6f, 0xb1, 0x16, 0x81, 0x56, 0x04 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetworkAlterEvent); +# ifndef VBOX_WITH_GLUE +struct INATNetworkAlterEvent_vtbl +{ + struct INATNetworkChangedEvent_vtbl inatnetworkchangedevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(INATNetworkAlterEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkAlterEventVtbl +{ + nsresult (*QueryInterface)(INATNetworkAlterEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetworkAlterEvent *pThis); + nsrefcnt (*Release)(INATNetworkAlterEvent *pThis); + nsresult (*GetType)(INATNetworkAlterEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATNetworkAlterEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATNetworkAlterEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATNetworkAlterEvent *pThis ); + + nsresult (*WaitProcessed)( + INATNetworkAlterEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkName)(INATNetworkAlterEvent *pThis, PRUnichar * *networkName); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(INATNetworkAlterEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define INATNetworkAlterEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetworkAlterEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetworkAlterEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetworkAlterEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkAlterEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkAlterEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkAlterEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkAlterEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkAlterEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkAlterEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATNetworkAlterEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATNetworkAlterEvent_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkAlterEvent_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkAlterEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkAlterEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetworkAlterEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATNetworkAlterEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkAlterEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetworkAlterEvent declaration */ + + +/* Start of struct INATNetworkCreationDeletionEvent declaration */ +# define INATNETWORKCREATIONDELETIONEVENT_IID_STR "8d984a7e-b855-40b8-ab0c-44d3515b4528" +# define INATNETWORKCREATIONDELETIONEVENT_IID { \ + 0x8d984a7e, 0xb855, 0x40b8, \ + { 0xab, 0x0c, 0x44, 0xd3, 0x51, 0x5b, 0x45, 0x28 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetworkCreationDeletionEvent); +# ifndef VBOX_WITH_GLUE +struct INATNetworkCreationDeletionEvent_vtbl +{ + struct INATNetworkAlterEvent_vtbl inatnetworkalterevent; + + nsresult (*GetCreationEvent)(INATNetworkCreationDeletionEvent *pThis, PRBool *creationEvent); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkCreationDeletionEventVtbl +{ + nsresult (*QueryInterface)(INATNetworkCreationDeletionEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetworkCreationDeletionEvent *pThis); + nsrefcnt (*Release)(INATNetworkCreationDeletionEvent *pThis); + nsresult (*GetType)(INATNetworkCreationDeletionEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATNetworkCreationDeletionEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATNetworkCreationDeletionEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATNetworkCreationDeletionEvent *pThis ); + + nsresult (*WaitProcessed)( + INATNetworkCreationDeletionEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkName)(INATNetworkCreationDeletionEvent *pThis, PRUnichar * *networkName); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(INATNetworkCreationDeletionEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + + nsresult (*GetCreationEvent)(INATNetworkCreationDeletionEvent *pThis, PRBool *creationEvent); + +}; +# define INATNetworkCreationDeletionEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetworkCreationDeletionEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetworkCreationDeletionEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetworkCreationDeletionEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkCreationDeletionEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkCreationDeletionEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkCreationDeletionEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkCreationDeletionEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkCreationDeletionEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkCreationDeletionEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATNetworkCreationDeletionEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATNetworkCreationDeletionEvent_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkCreationDeletionEvent_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkCreationDeletionEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkCreationDeletionEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkCreationDeletionEvent_get_CreationEvent(p, aCreationEvent) ((p)->lpVtbl->GetCreationEvent(p, aCreationEvent)) +# define INATNetworkCreationDeletionEvent_GetCreationEvent(p, aCreationEvent) ((p)->lpVtbl->GetCreationEvent(p, aCreationEvent)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetworkCreationDeletionEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATNetworkCreationDeletionEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkCreationDeletionEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetworkCreationDeletionEvent declaration */ + + +/* Start of struct INATNetworkSettingEvent declaration */ +# define INATNETWORKSETTINGEVENT_IID_STR "9db3a9e6-7f29-4aae-a627-5a282c83092c" +# define INATNETWORKSETTINGEVENT_IID { \ + 0x9db3a9e6, 0x7f29, 0x4aae, \ + { 0xa6, 0x27, 0x5a, 0x28, 0x2c, 0x83, 0x09, 0x2c } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetworkSettingEvent); +# ifndef VBOX_WITH_GLUE +struct INATNetworkSettingEvent_vtbl +{ + struct INATNetworkAlterEvent_vtbl inatnetworkalterevent; + + nsresult (*GetEnabled)(INATNetworkSettingEvent *pThis, PRBool *enabled); + + nsresult (*GetNetwork)(INATNetworkSettingEvent *pThis, PRUnichar * *network); + + nsresult (*GetGateway)(INATNetworkSettingEvent *pThis, PRUnichar * *gateway); + + nsresult (*GetAdvertiseDefaultIPv6RouteEnabled)(INATNetworkSettingEvent *pThis, PRBool *advertiseDefaultIPv6RouteEnabled); + + nsresult (*GetNeedDhcpServer)(INATNetworkSettingEvent *pThis, PRBool *needDhcpServer); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkSettingEventVtbl +{ + nsresult (*QueryInterface)(INATNetworkSettingEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetworkSettingEvent *pThis); + nsrefcnt (*Release)(INATNetworkSettingEvent *pThis); + nsresult (*GetType)(INATNetworkSettingEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATNetworkSettingEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATNetworkSettingEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATNetworkSettingEvent *pThis ); + + nsresult (*WaitProcessed)( + INATNetworkSettingEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkName)(INATNetworkSettingEvent *pThis, PRUnichar * *networkName); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(INATNetworkSettingEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + + nsresult (*GetEnabled)(INATNetworkSettingEvent *pThis, PRBool *enabled); + + nsresult (*GetNetwork)(INATNetworkSettingEvent *pThis, PRUnichar * *network); + + nsresult (*GetGateway)(INATNetworkSettingEvent *pThis, PRUnichar * *gateway); + + nsresult (*GetAdvertiseDefaultIPv6RouteEnabled)(INATNetworkSettingEvent *pThis, PRBool *advertiseDefaultIPv6RouteEnabled); + + nsresult (*GetNeedDhcpServer)(INATNetworkSettingEvent *pThis, PRBool *needDhcpServer); + +}; +# define INATNetworkSettingEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetworkSettingEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetworkSettingEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetworkSettingEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkSettingEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkSettingEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkSettingEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkSettingEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkSettingEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkSettingEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATNetworkSettingEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATNetworkSettingEvent_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkSettingEvent_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkSettingEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkSettingEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkSettingEvent_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define INATNetworkSettingEvent_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define INATNetworkSettingEvent_get_Network(p, aNetwork) ((p)->lpVtbl->GetNetwork(p, aNetwork)) +# define INATNetworkSettingEvent_GetNetwork(p, aNetwork) ((p)->lpVtbl->GetNetwork(p, aNetwork)) +# define INATNetworkSettingEvent_get_Gateway(p, aGateway) ((p)->lpVtbl->GetGateway(p, aGateway)) +# define INATNetworkSettingEvent_GetGateway(p, aGateway) ((p)->lpVtbl->GetGateway(p, aGateway)) +# define INATNetworkSettingEvent_get_AdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled) ((p)->lpVtbl->GetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled)) +# define INATNetworkSettingEvent_GetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled) ((p)->lpVtbl->GetAdvertiseDefaultIPv6RouteEnabled(p, aAdvertiseDefaultIPv6RouteEnabled)) +# define INATNetworkSettingEvent_get_NeedDhcpServer(p, aNeedDhcpServer) ((p)->lpVtbl->GetNeedDhcpServer(p, aNeedDhcpServer)) +# define INATNetworkSettingEvent_GetNeedDhcpServer(p, aNeedDhcpServer) ((p)->lpVtbl->GetNeedDhcpServer(p, aNeedDhcpServer)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetworkSettingEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATNetworkSettingEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkSettingEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetworkSettingEvent declaration */ + + +/* Start of struct INATNetworkPortForwardEvent declaration */ +# define INATNETWORKPORTFORWARDEVENT_IID_STR "2514881b-23d0-430a-a7ff-7ed7f05534bc" +# define INATNETWORKPORTFORWARDEVENT_IID { \ + 0x2514881b, 0x23d0, 0x430a, \ + { 0xa7, 0xff, 0x7e, 0xd7, 0xf0, 0x55, 0x34, 0xbc } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_INATNetworkPortForwardEvent); +# ifndef VBOX_WITH_GLUE +struct INATNetworkPortForwardEvent_vtbl +{ + struct INATNetworkAlterEvent_vtbl inatnetworkalterevent; + + nsresult (*GetCreate)(INATNetworkPortForwardEvent *pThis, PRBool *create); + + nsresult (*GetIpv6)(INATNetworkPortForwardEvent *pThis, PRBool *ipv6); + + nsresult (*GetName)(INATNetworkPortForwardEvent *pThis, PRUnichar * *name); + + nsresult (*GetProto)(INATNetworkPortForwardEvent *pThis, PRUint32 *proto); + + nsresult (*GetHostIp)(INATNetworkPortForwardEvent *pThis, PRUnichar * *hostIp); + + nsresult (*GetHostPort)(INATNetworkPortForwardEvent *pThis, PRInt32 *hostPort); + + nsresult (*GetGuestIp)(INATNetworkPortForwardEvent *pThis, PRUnichar * *guestIp); + + nsresult (*GetGuestPort)(INATNetworkPortForwardEvent *pThis, PRInt32 *guestPort); + +}; +# else /* VBOX_WITH_GLUE */ +struct INATNetworkPortForwardEventVtbl +{ + nsresult (*QueryInterface)(INATNetworkPortForwardEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(INATNetworkPortForwardEvent *pThis); + nsrefcnt (*Release)(INATNetworkPortForwardEvent *pThis); + nsresult (*GetType)(INATNetworkPortForwardEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(INATNetworkPortForwardEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(INATNetworkPortForwardEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(INATNetworkPortForwardEvent *pThis ); + + nsresult (*WaitProcessed)( + INATNetworkPortForwardEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetNetworkName)(INATNetworkPortForwardEvent *pThis, PRUnichar * *networkName); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(INATNetworkPortForwardEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + + nsresult (*GetCreate)(INATNetworkPortForwardEvent *pThis, PRBool *create); + + nsresult (*GetIpv6)(INATNetworkPortForwardEvent *pThis, PRBool *ipv6); + + nsresult (*GetName)(INATNetworkPortForwardEvent *pThis, PRUnichar * *name); + + nsresult (*GetProto)(INATNetworkPortForwardEvent *pThis, PRUint32 *proto); + + nsresult (*GetHostIp)(INATNetworkPortForwardEvent *pThis, PRUnichar * *hostIp); + + nsresult (*GetHostPort)(INATNetworkPortForwardEvent *pThis, PRInt32 *hostPort); + + nsresult (*GetGuestIp)(INATNetworkPortForwardEvent *pThis, PRUnichar * *guestIp); + + nsresult (*GetGuestPort)(INATNetworkPortForwardEvent *pThis, PRInt32 *guestPort); + +}; +# define INATNetworkPortForwardEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define INATNetworkPortForwardEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define INATNetworkPortForwardEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define INATNetworkPortForwardEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkPortForwardEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define INATNetworkPortForwardEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkPortForwardEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define INATNetworkPortForwardEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkPortForwardEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define INATNetworkPortForwardEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define INATNetworkPortForwardEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define INATNetworkPortForwardEvent_get_NetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkPortForwardEvent_GetNetworkName(p, aNetworkName) ((p)->lpVtbl->GetNetworkName(p, aNetworkName)) +# define INATNetworkPortForwardEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkPortForwardEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define INATNetworkPortForwardEvent_get_Create(p, aCreate) ((p)->lpVtbl->GetCreate(p, aCreate)) +# define INATNetworkPortForwardEvent_GetCreate(p, aCreate) ((p)->lpVtbl->GetCreate(p, aCreate)) +# define INATNetworkPortForwardEvent_get_Ipv6(p, aIpv6) ((p)->lpVtbl->GetIpv6(p, aIpv6)) +# define INATNetworkPortForwardEvent_GetIpv6(p, aIpv6) ((p)->lpVtbl->GetIpv6(p, aIpv6)) +# define INATNetworkPortForwardEvent_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define INATNetworkPortForwardEvent_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define INATNetworkPortForwardEvent_get_Proto(p, aProto) ((p)->lpVtbl->GetProto(p, aProto)) +# define INATNetworkPortForwardEvent_GetProto(p, aProto) ((p)->lpVtbl->GetProto(p, aProto)) +# define INATNetworkPortForwardEvent_get_HostIp(p, aHostIp) ((p)->lpVtbl->GetHostIp(p, aHostIp)) +# define INATNetworkPortForwardEvent_GetHostIp(p, aHostIp) ((p)->lpVtbl->GetHostIp(p, aHostIp)) +# define INATNetworkPortForwardEvent_get_HostPort(p, aHostPort) ((p)->lpVtbl->GetHostPort(p, aHostPort)) +# define INATNetworkPortForwardEvent_GetHostPort(p, aHostPort) ((p)->lpVtbl->GetHostPort(p, aHostPort)) +# define INATNetworkPortForwardEvent_get_GuestIp(p, aGuestIp) ((p)->lpVtbl->GetGuestIp(p, aGuestIp)) +# define INATNetworkPortForwardEvent_GetGuestIp(p, aGuestIp) ((p)->lpVtbl->GetGuestIp(p, aGuestIp)) +# define INATNetworkPortForwardEvent_get_GuestPort(p, aGuestPort) ((p)->lpVtbl->GetGuestPort(p, aGuestPort)) +# define INATNetworkPortForwardEvent_GetGuestPort(p, aGuestPort) ((p)->lpVtbl->GetGuestPort(p, aGuestPort)) +# endif /* VBOX_WITH_GLUE */ + +interface INATNetworkPortForwardEvent +{ +# ifndef VBOX_WITH_GLUE + struct INATNetworkPortForwardEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct INATNetworkPortForwardEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct INATNetworkPortForwardEvent declaration */ + + +/* Start of struct IHostNameResolutionConfigurationChangeEvent declaration */ +# define IHOSTNAMERESOLUTIONCONFIGURATIONCHANGEEVENT_IID_STR "f9b9e1cf-cb63-47a1-84fb-02c4894b89a9" +# define IHOSTNAMERESOLUTIONCONFIGURATIONCHANGEEVENT_IID { \ + 0xf9b9e1cf, 0xcb63, 0x47a1, \ + { 0x84, 0xfb, 0x02, 0xc4, 0x89, 0x4b, 0x89, 0xa9 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IHostNameResolutionConfigurationChangeEvent); +# ifndef VBOX_WITH_GLUE +struct IHostNameResolutionConfigurationChangeEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IHostNameResolutionConfigurationChangeEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IHostNameResolutionConfigurationChangeEventVtbl +{ + nsresult (*QueryInterface)(IHostNameResolutionConfigurationChangeEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IHostNameResolutionConfigurationChangeEvent *pThis); + nsrefcnt (*Release)(IHostNameResolutionConfigurationChangeEvent *pThis); + nsresult (*GetType)(IHostNameResolutionConfigurationChangeEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IHostNameResolutionConfigurationChangeEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IHostNameResolutionConfigurationChangeEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IHostNameResolutionConfigurationChangeEvent *pThis ); + + nsresult (*WaitProcessed)( + IHostNameResolutionConfigurationChangeEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IHostNameResolutionConfigurationChangeEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IHostNameResolutionConfigurationChangeEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IHostNameResolutionConfigurationChangeEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IHostNameResolutionConfigurationChangeEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IHostNameResolutionConfigurationChangeEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IHostNameResolutionConfigurationChangeEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IHostNameResolutionConfigurationChangeEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IHostNameResolutionConfigurationChangeEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IHostNameResolutionConfigurationChangeEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IHostNameResolutionConfigurationChangeEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IHostNameResolutionConfigurationChangeEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IHostNameResolutionConfigurationChangeEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IHostNameResolutionConfigurationChangeEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IHostNameResolutionConfigurationChangeEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IHostNameResolutionConfigurationChangeEvent +{ +# ifndef VBOX_WITH_GLUE + struct IHostNameResolutionConfigurationChangeEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IHostNameResolutionConfigurationChangeEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IHostNameResolutionConfigurationChangeEvent declaration */ + + +/* Start of struct IProgressEvent declaration */ +# define IPROGRESSEVENT_IID_STR "daaf9016-1f04-4191-aa2f-1fac9646ae4c" +# define IPROGRESSEVENT_IID { \ + 0xdaaf9016, 0x1f04, 0x4191, \ + { 0xaa, 0x2f, 0x1f, 0xac, 0x96, 0x46, 0xae, 0x4c } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IProgressEvent); +# ifndef VBOX_WITH_GLUE +struct IProgressEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetProgressId)(IProgressEvent *pThis, PRUnichar * *progressId); + +}; +# else /* VBOX_WITH_GLUE */ +struct IProgressEventVtbl +{ + nsresult (*QueryInterface)(IProgressEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IProgressEvent *pThis); + nsrefcnt (*Release)(IProgressEvent *pThis); + nsresult (*GetType)(IProgressEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IProgressEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IProgressEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IProgressEvent *pThis ); + + nsresult (*WaitProcessed)( + IProgressEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetProgressId)(IProgressEvent *pThis, PRUnichar * *progressId); + +}; +# define IProgressEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IProgressEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IProgressEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IProgressEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IProgressEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IProgressEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IProgressEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IProgressEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IProgressEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IProgressEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IProgressEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IProgressEvent_get_ProgressId(p, aProgressId) ((p)->lpVtbl->GetProgressId(p, aProgressId)) +# define IProgressEvent_GetProgressId(p, aProgressId) ((p)->lpVtbl->GetProgressId(p, aProgressId)) +# endif /* VBOX_WITH_GLUE */ + +interface IProgressEvent +{ +# ifndef VBOX_WITH_GLUE + struct IProgressEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IProgressEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IProgressEvent declaration */ + + +/* Start of struct IProgressPercentageChangedEvent declaration */ +# define IPROGRESSPERCENTAGECHANGEDEVENT_IID_STR "f05d7e60-1bcf-4218-9807-04e036cc70f1" +# define IPROGRESSPERCENTAGECHANGEDEVENT_IID { \ + 0xf05d7e60, 0x1bcf, 0x4218, \ + { 0x98, 0x07, 0x04, 0xe0, 0x36, 0xcc, 0x70, 0xf1 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IProgressPercentageChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IProgressPercentageChangedEvent_vtbl +{ + struct IProgressEvent_vtbl iprogressevent; + + nsresult (*GetPercent)(IProgressPercentageChangedEvent *pThis, PRInt32 *percent); + +}; +# else /* VBOX_WITH_GLUE */ +struct IProgressPercentageChangedEventVtbl +{ + nsresult (*QueryInterface)(IProgressPercentageChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IProgressPercentageChangedEvent *pThis); + nsrefcnt (*Release)(IProgressPercentageChangedEvent *pThis); + nsresult (*GetType)(IProgressPercentageChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IProgressPercentageChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IProgressPercentageChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IProgressPercentageChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IProgressPercentageChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetProgressId)(IProgressPercentageChangedEvent *pThis, PRUnichar * *progressId); + + nsresult (*GetPercent)(IProgressPercentageChangedEvent *pThis, PRInt32 *percent); + +}; +# define IProgressPercentageChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IProgressPercentageChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IProgressPercentageChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IProgressPercentageChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IProgressPercentageChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IProgressPercentageChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IProgressPercentageChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IProgressPercentageChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IProgressPercentageChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IProgressPercentageChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IProgressPercentageChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IProgressPercentageChangedEvent_get_ProgressId(p, aProgressId) ((p)->lpVtbl->GetProgressId(p, aProgressId)) +# define IProgressPercentageChangedEvent_GetProgressId(p, aProgressId) ((p)->lpVtbl->GetProgressId(p, aProgressId)) +# define IProgressPercentageChangedEvent_get_Percent(p, aPercent) ((p)->lpVtbl->GetPercent(p, aPercent)) +# define IProgressPercentageChangedEvent_GetPercent(p, aPercent) ((p)->lpVtbl->GetPercent(p, aPercent)) +# endif /* VBOX_WITH_GLUE */ + +interface IProgressPercentageChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IProgressPercentageChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IProgressPercentageChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IProgressPercentageChangedEvent declaration */ + + +/* Start of struct IProgressTaskCompletedEvent declaration */ +# define IPROGRESSTASKCOMPLETEDEVENT_IID_STR "a5bbdb7d-8ce7-469f-a4c2-6476f581ff72" +# define IPROGRESSTASKCOMPLETEDEVENT_IID { \ + 0xa5bbdb7d, 0x8ce7, 0x469f, \ + { 0xa4, 0xc2, 0x64, 0x76, 0xf5, 0x81, 0xff, 0x72 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IProgressTaskCompletedEvent); +# ifndef VBOX_WITH_GLUE +struct IProgressTaskCompletedEvent_vtbl +{ + struct IProgressEvent_vtbl iprogressevent; + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IProgressTaskCompletedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# else /* VBOX_WITH_GLUE */ +struct IProgressTaskCompletedEventVtbl +{ + nsresult (*QueryInterface)(IProgressTaskCompletedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IProgressTaskCompletedEvent *pThis); + nsrefcnt (*Release)(IProgressTaskCompletedEvent *pThis); + nsresult (*GetType)(IProgressTaskCompletedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IProgressTaskCompletedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IProgressTaskCompletedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IProgressTaskCompletedEvent *pThis ); + + nsresult (*WaitProcessed)( + IProgressTaskCompletedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetProgressId)(IProgressTaskCompletedEvent *pThis, PRUnichar * *progressId); + + nsresult (*GetMidlDoesNotLikeEmptyInterfaces)(IProgressTaskCompletedEvent *pThis, PRBool *midlDoesNotLikeEmptyInterfaces); + +}; +# define IProgressTaskCompletedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IProgressTaskCompletedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IProgressTaskCompletedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IProgressTaskCompletedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IProgressTaskCompletedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IProgressTaskCompletedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IProgressTaskCompletedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IProgressTaskCompletedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IProgressTaskCompletedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IProgressTaskCompletedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IProgressTaskCompletedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IProgressTaskCompletedEvent_get_ProgressId(p, aProgressId) ((p)->lpVtbl->GetProgressId(p, aProgressId)) +# define IProgressTaskCompletedEvent_GetProgressId(p, aProgressId) ((p)->lpVtbl->GetProgressId(p, aProgressId)) +# define IProgressTaskCompletedEvent_get_MidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# define IProgressTaskCompletedEvent_GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces) ((p)->lpVtbl->GetMidlDoesNotLikeEmptyInterfaces(p, aMidlDoesNotLikeEmptyInterfaces)) +# endif /* VBOX_WITH_GLUE */ + +interface IProgressTaskCompletedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IProgressTaskCompletedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IProgressTaskCompletedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IProgressTaskCompletedEvent declaration */ + + +/* Start of struct ICursorPositionChangedEvent declaration */ +# define ICURSORPOSITIONCHANGEDEVENT_IID_STR "6f302674-c927-11e7-b788-33c248e71fc7" +# define ICURSORPOSITIONCHANGEDEVENT_IID { \ + 0x6f302674, 0xc927, 0x11e7, \ + { 0xb7, 0x88, 0x33, 0xc2, 0x48, 0xe7, 0x1f, 0xc7 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICursorPositionChangedEvent); +# ifndef VBOX_WITH_GLUE +struct ICursorPositionChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetHasData)(ICursorPositionChangedEvent *pThis, PRBool *hasData); + + nsresult (*GetX)(ICursorPositionChangedEvent *pThis, PRUint32 *x); + + nsresult (*GetY)(ICursorPositionChangedEvent *pThis, PRUint32 *y); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICursorPositionChangedEventVtbl +{ + nsresult (*QueryInterface)(ICursorPositionChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICursorPositionChangedEvent *pThis); + nsrefcnt (*Release)(ICursorPositionChangedEvent *pThis); + nsresult (*GetType)(ICursorPositionChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(ICursorPositionChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(ICursorPositionChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(ICursorPositionChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + ICursorPositionChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetHasData)(ICursorPositionChangedEvent *pThis, PRBool *hasData); + + nsresult (*GetX)(ICursorPositionChangedEvent *pThis, PRUint32 *x); + + nsresult (*GetY)(ICursorPositionChangedEvent *pThis, PRUint32 *y); + +}; +# define ICursorPositionChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICursorPositionChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICursorPositionChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define ICursorPositionChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICursorPositionChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define ICursorPositionChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICursorPositionChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define ICursorPositionChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICursorPositionChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define ICursorPositionChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define ICursorPositionChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define ICursorPositionChangedEvent_get_HasData(p, aHasData) ((p)->lpVtbl->GetHasData(p, aHasData)) +# define ICursorPositionChangedEvent_GetHasData(p, aHasData) ((p)->lpVtbl->GetHasData(p, aHasData)) +# define ICursorPositionChangedEvent_get_X(p, aX) ((p)->lpVtbl->GetX(p, aX)) +# define ICursorPositionChangedEvent_GetX(p, aX) ((p)->lpVtbl->GetX(p, aX)) +# define ICursorPositionChangedEvent_get_Y(p, aY) ((p)->lpVtbl->GetY(p, aY)) +# define ICursorPositionChangedEvent_GetY(p, aY) ((p)->lpVtbl->GetY(p, aY)) +# endif /* VBOX_WITH_GLUE */ + +interface ICursorPositionChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct ICursorPositionChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICursorPositionChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICursorPositionChangedEvent declaration */ + + +/* Start of struct IGuestAdditionsStatusChangedEvent declaration */ +# define IGUESTADDITIONSSTATUSCHANGEDEVENT_IID_STR "a443da5b-aa82-4720-bc84-bd097b2b13b8" +# define IGUESTADDITIONSSTATUSCHANGEDEVENT_IID { \ + 0xa443da5b, 0xaa82, 0x4720, \ + { 0xbc, 0x84, 0xbd, 0x09, 0x7b, 0x2b, 0x13, 0xb8 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestAdditionsStatusChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestAdditionsStatusChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetFacility)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *facility); + + nsresult (*GetStatus)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetRunLevel)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *runLevel); + + nsresult (*GetTimestamp)(IGuestAdditionsStatusChangedEvent *pThis, PRInt64 *timestamp); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestAdditionsStatusChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestAdditionsStatusChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestAdditionsStatusChangedEvent *pThis); + nsrefcnt (*Release)(IGuestAdditionsStatusChangedEvent *pThis); + nsresult (*GetType)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestAdditionsStatusChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestAdditionsStatusChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestAdditionsStatusChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestAdditionsStatusChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetFacility)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *facility); + + nsresult (*GetStatus)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *status); + + nsresult (*GetRunLevel)(IGuestAdditionsStatusChangedEvent *pThis, PRUint32 *runLevel); + + nsresult (*GetTimestamp)(IGuestAdditionsStatusChangedEvent *pThis, PRInt64 *timestamp); + +}; +# define IGuestAdditionsStatusChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestAdditionsStatusChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestAdditionsStatusChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestAdditionsStatusChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestAdditionsStatusChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestAdditionsStatusChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestAdditionsStatusChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestAdditionsStatusChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestAdditionsStatusChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestAdditionsStatusChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestAdditionsStatusChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestAdditionsStatusChangedEvent_get_Facility(p, aFacility) ((p)->lpVtbl->GetFacility(p, aFacility)) +# define IGuestAdditionsStatusChangedEvent_GetFacility(p, aFacility) ((p)->lpVtbl->GetFacility(p, aFacility)) +# define IGuestAdditionsStatusChangedEvent_get_Status(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestAdditionsStatusChangedEvent_GetStatus(p, aStatus) ((p)->lpVtbl->GetStatus(p, aStatus)) +# define IGuestAdditionsStatusChangedEvent_get_RunLevel(p, aRunLevel) ((p)->lpVtbl->GetRunLevel(p, aRunLevel)) +# define IGuestAdditionsStatusChangedEvent_GetRunLevel(p, aRunLevel) ((p)->lpVtbl->GetRunLevel(p, aRunLevel)) +# define IGuestAdditionsStatusChangedEvent_get_Timestamp(p, aTimestamp) ((p)->lpVtbl->GetTimestamp(p, aTimestamp)) +# define IGuestAdditionsStatusChangedEvent_GetTimestamp(p, aTimestamp) ((p)->lpVtbl->GetTimestamp(p, aTimestamp)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestAdditionsStatusChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestAdditionsStatusChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestAdditionsStatusChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestAdditionsStatusChangedEvent declaration */ + + +/* Start of struct IGuestMonitorInfoChangedEvent declaration */ +# define IGUESTMONITORINFOCHANGEDEVENT_IID_STR "0b3cdeb2-808e-11e9-b773-133d9330f849" +# define IGUESTMONITORINFOCHANGEDEVENT_IID { \ + 0x0b3cdeb2, 0x808e, 0x11e9, \ + { 0xb7, 0x73, 0x13, 0x3d, 0x93, 0x30, 0xf8, 0x49 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IGuestMonitorInfoChangedEvent); +# ifndef VBOX_WITH_GLUE +struct IGuestMonitorInfoChangedEvent_vtbl +{ + struct IEvent_vtbl ievent; + + nsresult (*GetOutput)(IGuestMonitorInfoChangedEvent *pThis, PRUint32 *output); + +}; +# else /* VBOX_WITH_GLUE */ +struct IGuestMonitorInfoChangedEventVtbl +{ + nsresult (*QueryInterface)(IGuestMonitorInfoChangedEvent *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IGuestMonitorInfoChangedEvent *pThis); + nsrefcnt (*Release)(IGuestMonitorInfoChangedEvent *pThis); + nsresult (*GetType)(IGuestMonitorInfoChangedEvent *pThis, PRUint32 *type); + + nsresult (*GetSource)(IGuestMonitorInfoChangedEvent *pThis, IEventSource * *source); + + nsresult (*GetWaitable)(IGuestMonitorInfoChangedEvent *pThis, PRBool *waitable); + + nsresult (*SetProcessed)(IGuestMonitorInfoChangedEvent *pThis ); + + nsresult (*WaitProcessed)( + IGuestMonitorInfoChangedEvent *pThis, + PRInt32 timeout, + PRBool * result + ); + + nsresult (*GetOutput)(IGuestMonitorInfoChangedEvent *pThis, PRUint32 *output); + +}; +# define IGuestMonitorInfoChangedEvent_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IGuestMonitorInfoChangedEvent_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IGuestMonitorInfoChangedEvent_Release(p) ((p)->lpVtbl->Release(p)) +# define IGuestMonitorInfoChangedEvent_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMonitorInfoChangedEvent_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IGuestMonitorInfoChangedEvent_get_Source(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMonitorInfoChangedEvent_GetSource(p, aSource) ((p)->lpVtbl->GetSource(p, aSource)) +# define IGuestMonitorInfoChangedEvent_get_Waitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMonitorInfoChangedEvent_GetWaitable(p, aWaitable) ((p)->lpVtbl->GetWaitable(p, aWaitable)) +# define IGuestMonitorInfoChangedEvent_SetProcessed(p) ((p)->lpVtbl->SetProcessed(p)) +# define IGuestMonitorInfoChangedEvent_WaitProcessed(p, aTimeout, aResult) ((p)->lpVtbl->WaitProcessed(p, aTimeout, aResult)) +# define IGuestMonitorInfoChangedEvent_get_Output(p, aOutput) ((p)->lpVtbl->GetOutput(p, aOutput)) +# define IGuestMonitorInfoChangedEvent_GetOutput(p, aOutput) ((p)->lpVtbl->GetOutput(p, aOutput)) +# endif /* VBOX_WITH_GLUE */ + +interface IGuestMonitorInfoChangedEvent +{ +# ifndef VBOX_WITH_GLUE + struct IGuestMonitorInfoChangedEvent_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IGuestMonitorInfoChangedEventVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IGuestMonitorInfoChangedEvent declaration */ + + +/* Start of struct IStringArray declaration */ +# define ISTRINGARRAY_IID_STR "3890b2c8-604d-11e9-92d3-53cb473db9fb" +# define ISTRINGARRAY_IID { \ + 0x3890b2c8, 0x604d, 0x11e9, \ + { 0x92, 0xd3, 0x53, 0xcb, 0x47, 0x3d, 0xb9, 0xfb } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IStringArray); +# ifndef VBOX_WITH_GLUE +struct IStringArray_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetValues)(IStringArray *pThis, PRUint32 *valuesSize, PRUnichar * **values); + + nsresult (*InternalAndReservedMethod1IStringArray)(IStringArray *pThis); + + nsresult (*InternalAndReservedMethod2IStringArray)(IStringArray *pThis); + + nsresult (*InternalAndReservedMethod3IStringArray)(IStringArray *pThis); + + nsresult (*InternalAndReservedMethod4IStringArray)(IStringArray *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IStringArrayVtbl +{ + nsresult (*QueryInterface)(IStringArray *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IStringArray *pThis); + nsrefcnt (*Release)(IStringArray *pThis); + nsresult (*GetValues)(IStringArray *pThis, PRUint32 *valuesSize, PRUnichar * **values); + + nsresult (*InternalAndReservedMethod1IStringArray)(IStringArray *pThis); + + nsresult (*InternalAndReservedMethod2IStringArray)(IStringArray *pThis); + + nsresult (*InternalAndReservedMethod3IStringArray)(IStringArray *pThis); + + nsresult (*InternalAndReservedMethod4IStringArray)(IStringArray *pThis); + +}; +# define IStringArray_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IStringArray_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IStringArray_Release(p) ((p)->lpVtbl->Release(p)) +# define IStringArray_get_Values(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# define IStringArray_GetValues(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# endif /* VBOX_WITH_GLUE */ + +interface IStringArray +{ +# ifndef VBOX_WITH_GLUE + struct IStringArray_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IStringArrayVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IStringArray declaration */ + + +/* Start of struct IFormValue declaration */ +# define IFORMVALUE_IID_STR "67c50afe-3e78-11e9-b25e-7768f80c0e07" +# define IFORMVALUE_IID { \ + 0x67c50afe, 0x3e78, 0x11e9, \ + { 0xb2, 0x5e, 0x77, 0x68, 0xf8, 0x0c, 0x0e, 0x07 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IFormValue); +# ifndef VBOX_WITH_GLUE +struct IFormValue_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetType)(IFormValue *pThis, PRUint32 *type); + + nsresult (*GetGeneration)(IFormValue *pThis, PRInt32 *generation); + + nsresult (*GetEnabled)(IFormValue *pThis, PRBool *enabled); + + nsresult (*GetVisible)(IFormValue *pThis, PRBool *visible); + + nsresult (*GetLabel)(IFormValue *pThis, PRUnichar * *label); + + nsresult (*GetDescription)(IFormValue *pThis, PRUnichar * *description); + + nsresult (*GetHelp)(IFormValue *pThis, PRUnichar * *help); + + nsresult (*GetInternalAndReservedAttribute1IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IFormValue)(IFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IFormValue)(IFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IFormValue)(IFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IFormValue)(IFormValue *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IFormValueVtbl +{ + nsresult (*QueryInterface)(IFormValue *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IFormValue *pThis); + nsrefcnt (*Release)(IFormValue *pThis); + nsresult (*GetType)(IFormValue *pThis, PRUint32 *type); + + nsresult (*GetGeneration)(IFormValue *pThis, PRInt32 *generation); + + nsresult (*GetEnabled)(IFormValue *pThis, PRBool *enabled); + + nsresult (*GetVisible)(IFormValue *pThis, PRBool *visible); + + nsresult (*GetLabel)(IFormValue *pThis, PRUnichar * *label); + + nsresult (*GetDescription)(IFormValue *pThis, PRUnichar * *description); + + nsresult (*GetHelp)(IFormValue *pThis, PRUnichar * *help); + + nsresult (*GetInternalAndReservedAttribute1IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFormValue)(IFormValue *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IFormValue)(IFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IFormValue)(IFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IFormValue)(IFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IFormValue)(IFormValue *pThis); + +}; +# define IFormValue_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IFormValue_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IFormValue_Release(p) ((p)->lpVtbl->Release(p)) +# define IFormValue_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IFormValue_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IFormValue_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IFormValue_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IFormValue_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IFormValue_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IFormValue_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IFormValue_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IFormValue_get_Label(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IFormValue_GetLabel(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IFormValue_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IFormValue_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IFormValue_get_Help(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IFormValue_GetHelp(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# endif /* VBOX_WITH_GLUE */ + +interface IFormValue +{ +# ifndef VBOX_WITH_GLUE + struct IFormValue_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IFormValueVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IFormValue declaration */ + + +/* Start of struct IBooleanFormValue declaration */ +# define IBOOLEANFORMVALUE_IID_STR "4f4adcf6-3e87-11e9-8af2-576e84223953" +# define IBOOLEANFORMVALUE_IID { \ + 0x4f4adcf6, 0x3e87, 0x11e9, \ + { 0x8a, 0xf2, 0x57, 0x6e, 0x84, 0x22, 0x39, 0x53 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IBooleanFormValue); +# ifndef VBOX_WITH_GLUE +struct IBooleanFormValue_vtbl +{ + struct IFormValue_vtbl iformvalue; + + nsresult (*GetInternalAndReservedAttribute1IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetSelected)( + IBooleanFormValue *pThis, + PRBool * selected + ); + + nsresult (*SetSelected)( + IBooleanFormValue *pThis, + PRBool selected, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IBooleanFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IBooleanFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IBooleanFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IBooleanFormValue)(IBooleanFormValue *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IBooleanFormValueVtbl +{ + nsresult (*QueryInterface)(IBooleanFormValue *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IBooleanFormValue *pThis); + nsrefcnt (*Release)(IBooleanFormValue *pThis); + nsresult (*GetType)(IBooleanFormValue *pThis, PRUint32 *type); + + nsresult (*GetGeneration)(IBooleanFormValue *pThis, PRInt32 *generation); + + nsresult (*GetEnabled)(IBooleanFormValue *pThis, PRBool *enabled); + + nsresult (*GetVisible)(IBooleanFormValue *pThis, PRBool *visible); + + nsresult (*GetLabel)(IBooleanFormValue *pThis, PRUnichar * *label); + + nsresult (*GetDescription)(IBooleanFormValue *pThis, PRUnichar * *description); + + nsresult (*GetHelp)(IBooleanFormValue *pThis, PRUnichar * *help); + + nsresult (*GetInternalAndReservedAttribute1IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IFormValue)(IBooleanFormValue *pThis); + + nsresult (*GetInternalAndReservedAttribute1IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IBooleanFormValue)(IBooleanFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetSelected)( + IBooleanFormValue *pThis, + PRBool * selected + ); + + nsresult (*SetSelected)( + IBooleanFormValue *pThis, + PRBool selected, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IBooleanFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IBooleanFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IBooleanFormValue)(IBooleanFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IBooleanFormValue)(IBooleanFormValue *pThis); + +}; +# define IBooleanFormValue_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IBooleanFormValue_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IBooleanFormValue_Release(p) ((p)->lpVtbl->Release(p)) +# define IBooleanFormValue_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IBooleanFormValue_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IBooleanFormValue_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IBooleanFormValue_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IBooleanFormValue_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IBooleanFormValue_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IBooleanFormValue_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IBooleanFormValue_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IBooleanFormValue_get_Label(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IBooleanFormValue_GetLabel(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IBooleanFormValue_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IBooleanFormValue_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IBooleanFormValue_get_Help(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IBooleanFormValue_GetHelp(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IBooleanFormValue_GetSelected(p, aSelected) ((p)->lpVtbl->GetSelected(p, aSelected)) +# define IBooleanFormValue_SetSelected(p, aSelected, aProgress) ((p)->lpVtbl->SetSelected(p, aSelected, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface IBooleanFormValue +{ +# ifndef VBOX_WITH_GLUE + struct IBooleanFormValue_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IBooleanFormValueVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IBooleanFormValue declaration */ + + +/* Start of struct IRangedIntegerFormValue declaration */ +# define IRANGEDINTEGERFORMVALUE_IID_STR "b31c4052-7bdc-11e9-8bc2-8ffdb8b19219" +# define IRANGEDINTEGERFORMVALUE_IID { \ + 0xb31c4052, 0x7bdc, 0x11e9, \ + { 0x8b, 0xc2, 0x8f, 0xfd, 0xb8, 0xb1, 0x92, 0x19 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IRangedIntegerFormValue); +# ifndef VBOX_WITH_GLUE +struct IRangedIntegerFormValue_vtbl +{ + struct IFormValue_vtbl iformvalue; + + nsresult (*GetSuffix)(IRangedIntegerFormValue *pThis, PRUnichar * *suffix); + + nsresult (*GetMinimum)(IRangedIntegerFormValue *pThis, PRInt32 *minimum); + + nsresult (*GetMaximum)(IRangedIntegerFormValue *pThis, PRInt32 *maximum); + + nsresult (*GetInternalAndReservedAttribute1IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInteger)( + IRangedIntegerFormValue *pThis, + PRInt32 * value + ); + + nsresult (*SetInteger)( + IRangedIntegerFormValue *pThis, + PRInt32 value, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IRangedIntegerFormValueVtbl +{ + nsresult (*QueryInterface)(IRangedIntegerFormValue *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IRangedIntegerFormValue *pThis); + nsrefcnt (*Release)(IRangedIntegerFormValue *pThis); + nsresult (*GetType)(IRangedIntegerFormValue *pThis, PRUint32 *type); + + nsresult (*GetGeneration)(IRangedIntegerFormValue *pThis, PRInt32 *generation); + + nsresult (*GetEnabled)(IRangedIntegerFormValue *pThis, PRBool *enabled); + + nsresult (*GetVisible)(IRangedIntegerFormValue *pThis, PRBool *visible); + + nsresult (*GetLabel)(IRangedIntegerFormValue *pThis, PRUnichar * *label); + + nsresult (*GetDescription)(IRangedIntegerFormValue *pThis, PRUnichar * *description); + + nsresult (*GetHelp)(IRangedIntegerFormValue *pThis, PRUnichar * *help); + + nsresult (*GetInternalAndReservedAttribute1IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*GetSuffix)(IRangedIntegerFormValue *pThis, PRUnichar * *suffix); + + nsresult (*GetMinimum)(IRangedIntegerFormValue *pThis, PRInt32 *minimum); + + nsresult (*GetMaximum)(IRangedIntegerFormValue *pThis, PRInt32 *maximum); + + nsresult (*GetInternalAndReservedAttribute1IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInteger)( + IRangedIntegerFormValue *pThis, + PRInt32 * value + ); + + nsresult (*SetInteger)( + IRangedIntegerFormValue *pThis, + PRInt32 value, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IRangedIntegerFormValue)(IRangedIntegerFormValue *pThis); + +}; +# define IRangedIntegerFormValue_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IRangedIntegerFormValue_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IRangedIntegerFormValue_Release(p) ((p)->lpVtbl->Release(p)) +# define IRangedIntegerFormValue_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IRangedIntegerFormValue_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IRangedIntegerFormValue_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IRangedIntegerFormValue_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IRangedIntegerFormValue_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IRangedIntegerFormValue_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IRangedIntegerFormValue_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IRangedIntegerFormValue_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IRangedIntegerFormValue_get_Label(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IRangedIntegerFormValue_GetLabel(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IRangedIntegerFormValue_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IRangedIntegerFormValue_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IRangedIntegerFormValue_get_Help(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IRangedIntegerFormValue_GetHelp(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IRangedIntegerFormValue_get_Suffix(p, aSuffix) ((p)->lpVtbl->GetSuffix(p, aSuffix)) +# define IRangedIntegerFormValue_GetSuffix(p, aSuffix) ((p)->lpVtbl->GetSuffix(p, aSuffix)) +# define IRangedIntegerFormValue_get_Minimum(p, aMinimum) ((p)->lpVtbl->GetMinimum(p, aMinimum)) +# define IRangedIntegerFormValue_GetMinimum(p, aMinimum) ((p)->lpVtbl->GetMinimum(p, aMinimum)) +# define IRangedIntegerFormValue_get_Maximum(p, aMaximum) ((p)->lpVtbl->GetMaximum(p, aMaximum)) +# define IRangedIntegerFormValue_GetMaximum(p, aMaximum) ((p)->lpVtbl->GetMaximum(p, aMaximum)) +# define IRangedIntegerFormValue_GetInteger(p, aValue) ((p)->lpVtbl->GetInteger(p, aValue)) +# define IRangedIntegerFormValue_SetInteger(p, aValue, aProgress) ((p)->lpVtbl->SetInteger(p, aValue, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface IRangedIntegerFormValue +{ +# ifndef VBOX_WITH_GLUE + struct IRangedIntegerFormValue_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IRangedIntegerFormValueVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IRangedIntegerFormValue declaration */ + + +/* Start of struct IStringFormValue declaration */ +# define ISTRINGFORMVALUE_IID_STR "cb6f0f2c-8384-11e9-921d-8b984e28a686" +# define ISTRINGFORMVALUE_IID { \ + 0xcb6f0f2c, 0x8384, 0x11e9, \ + { 0x92, 0x1d, 0x8b, 0x98, 0x4e, 0x28, 0xa6, 0x86 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IStringFormValue); +# ifndef VBOX_WITH_GLUE +struct IStringFormValue_vtbl +{ + struct IFormValue_vtbl iformvalue; + + nsresult (*GetMultiline)(IStringFormValue *pThis, PRBool *multiline); + + nsresult (*GetInternalAndReservedAttribute1IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetString)( + IStringFormValue *pThis, + PRUnichar * * text + ); + + nsresult (*SetString)( + IStringFormValue *pThis, + PRUnichar * text, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IStringFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IStringFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IStringFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IStringFormValue)(IStringFormValue *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IStringFormValueVtbl +{ + nsresult (*QueryInterface)(IStringFormValue *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IStringFormValue *pThis); + nsrefcnt (*Release)(IStringFormValue *pThis); + nsresult (*GetType)(IStringFormValue *pThis, PRUint32 *type); + + nsresult (*GetGeneration)(IStringFormValue *pThis, PRInt32 *generation); + + nsresult (*GetEnabled)(IStringFormValue *pThis, PRBool *enabled); + + nsresult (*GetVisible)(IStringFormValue *pThis, PRBool *visible); + + nsresult (*GetLabel)(IStringFormValue *pThis, PRUnichar * *label); + + nsresult (*GetDescription)(IStringFormValue *pThis, PRUnichar * *description); + + nsresult (*GetHelp)(IStringFormValue *pThis, PRUnichar * *help); + + nsresult (*GetInternalAndReservedAttribute1IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IFormValue)(IStringFormValue *pThis); + + nsresult (*GetMultiline)(IStringFormValue *pThis, PRBool *multiline); + + nsresult (*GetInternalAndReservedAttribute1IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IStringFormValue)(IStringFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetString)( + IStringFormValue *pThis, + PRUnichar * * text + ); + + nsresult (*SetString)( + IStringFormValue *pThis, + PRUnichar * text, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IStringFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IStringFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IStringFormValue)(IStringFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IStringFormValue)(IStringFormValue *pThis); + +}; +# define IStringFormValue_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IStringFormValue_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IStringFormValue_Release(p) ((p)->lpVtbl->Release(p)) +# define IStringFormValue_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStringFormValue_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IStringFormValue_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IStringFormValue_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IStringFormValue_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IStringFormValue_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IStringFormValue_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IStringFormValue_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IStringFormValue_get_Label(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IStringFormValue_GetLabel(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IStringFormValue_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IStringFormValue_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IStringFormValue_get_Help(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IStringFormValue_GetHelp(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IStringFormValue_get_Multiline(p, aMultiline) ((p)->lpVtbl->GetMultiline(p, aMultiline)) +# define IStringFormValue_GetMultiline(p, aMultiline) ((p)->lpVtbl->GetMultiline(p, aMultiline)) +# define IStringFormValue_GetString(p, aText) ((p)->lpVtbl->GetString(p, aText)) +# define IStringFormValue_SetString(p, aText, aProgress) ((p)->lpVtbl->SetString(p, aText, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface IStringFormValue +{ +# ifndef VBOX_WITH_GLUE + struct IStringFormValue_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IStringFormValueVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IStringFormValue declaration */ + + +/* Start of struct IChoiceFormValue declaration */ +# define ICHOICEFORMVALUE_IID_STR "7191cf38-3e8a-11e9-825c-ab7b2cabce23" +# define ICHOICEFORMVALUE_IID { \ + 0x7191cf38, 0x3e8a, 0x11e9, \ + { 0x82, 0x5c, 0xab, 0x7b, 0x2c, 0xab, 0xce, 0x23 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IChoiceFormValue); +# ifndef VBOX_WITH_GLUE +struct IChoiceFormValue_vtbl +{ + struct IFormValue_vtbl iformvalue; + + nsresult (*GetValues)(IChoiceFormValue *pThis, PRUint32 *valuesSize, PRUnichar * **values); + + nsresult (*GetInternalAndReservedAttribute1IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetSelectedIndex)( + IChoiceFormValue *pThis, + PRInt32 * index + ); + + nsresult (*SetSelectedIndex)( + IChoiceFormValue *pThis, + PRInt32 index, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IChoiceFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IChoiceFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IChoiceFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IChoiceFormValue)(IChoiceFormValue *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IChoiceFormValueVtbl +{ + nsresult (*QueryInterface)(IChoiceFormValue *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IChoiceFormValue *pThis); + nsrefcnt (*Release)(IChoiceFormValue *pThis); + nsresult (*GetType)(IChoiceFormValue *pThis, PRUint32 *type); + + nsresult (*GetGeneration)(IChoiceFormValue *pThis, PRInt32 *generation); + + nsresult (*GetEnabled)(IChoiceFormValue *pThis, PRBool *enabled); + + nsresult (*GetVisible)(IChoiceFormValue *pThis, PRBool *visible); + + nsresult (*GetLabel)(IChoiceFormValue *pThis, PRUnichar * *label); + + nsresult (*GetDescription)(IChoiceFormValue *pThis, PRUnichar * *description); + + nsresult (*GetHelp)(IChoiceFormValue *pThis, PRUnichar * *help); + + nsresult (*GetInternalAndReservedAttribute1IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8IFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IFormValue)(IChoiceFormValue *pThis); + + nsresult (*GetValues)(IChoiceFormValue *pThis, PRUint32 *valuesSize, PRUnichar * **values); + + nsresult (*GetInternalAndReservedAttribute1IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IChoiceFormValue)(IChoiceFormValue *pThis, PRUint32 *reserved); + + nsresult (*GetSelectedIndex)( + IChoiceFormValue *pThis, + PRInt32 * index + ); + + nsresult (*SetSelectedIndex)( + IChoiceFormValue *pThis, + PRInt32 index, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1IChoiceFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod2IChoiceFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod3IChoiceFormValue)(IChoiceFormValue *pThis); + + nsresult (*InternalAndReservedMethod4IChoiceFormValue)(IChoiceFormValue *pThis); + +}; +# define IChoiceFormValue_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IChoiceFormValue_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IChoiceFormValue_Release(p) ((p)->lpVtbl->Release(p)) +# define IChoiceFormValue_get_Type(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IChoiceFormValue_GetType(p, aType) ((p)->lpVtbl->GetType(p, aType)) +# define IChoiceFormValue_get_Generation(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IChoiceFormValue_GetGeneration(p, aGeneration) ((p)->lpVtbl->GetGeneration(p, aGeneration)) +# define IChoiceFormValue_get_Enabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IChoiceFormValue_GetEnabled(p, aEnabled) ((p)->lpVtbl->GetEnabled(p, aEnabled)) +# define IChoiceFormValue_get_Visible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IChoiceFormValue_GetVisible(p, aVisible) ((p)->lpVtbl->GetVisible(p, aVisible)) +# define IChoiceFormValue_get_Label(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IChoiceFormValue_GetLabel(p, aLabel) ((p)->lpVtbl->GetLabel(p, aLabel)) +# define IChoiceFormValue_get_Description(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IChoiceFormValue_GetDescription(p, aDescription) ((p)->lpVtbl->GetDescription(p, aDescription)) +# define IChoiceFormValue_get_Help(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IChoiceFormValue_GetHelp(p, aHelp) ((p)->lpVtbl->GetHelp(p, aHelp)) +# define IChoiceFormValue_get_Values(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# define IChoiceFormValue_GetValues(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# define IChoiceFormValue_GetSelectedIndex(p, aIndex) ((p)->lpVtbl->GetSelectedIndex(p, aIndex)) +# define IChoiceFormValue_SetSelectedIndex(p, aIndex, aProgress) ((p)->lpVtbl->SetSelectedIndex(p, aIndex, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface IChoiceFormValue +{ +# ifndef VBOX_WITH_GLUE + struct IChoiceFormValue_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IChoiceFormValueVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IChoiceFormValue declaration */ + + +/* Start of struct IForm declaration */ +# define IFORM_IID_STR "d05c91e2-3e8a-11e9-8082-db8ae479ef87" +# define IFORM_IID { \ + 0xd05c91e2, 0x3e8a, 0x11e9, \ + { 0x80, 0x82, 0xdb, 0x8a, 0xe4, 0x79, 0xef, 0x87 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IForm); +# ifndef VBOX_WITH_GLUE +struct IForm_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetValues)(IForm *pThis, PRUint32 *valuesSize, IFormValue * **values); + + nsresult (*GetInternalAndReservedAttribute1IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IForm)(IForm *pThis); + + nsresult (*InternalAndReservedMethod2IForm)(IForm *pThis); + + nsresult (*InternalAndReservedMethod3IForm)(IForm *pThis); + + nsresult (*InternalAndReservedMethod4IForm)(IForm *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IFormVtbl +{ + nsresult (*QueryInterface)(IForm *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IForm *pThis); + nsrefcnt (*Release)(IForm *pThis); + nsresult (*GetValues)(IForm *pThis, PRUint32 *valuesSize, IFormValue * **values); + + nsresult (*GetInternalAndReservedAttribute1IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IForm)(IForm *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IForm)(IForm *pThis); + + nsresult (*InternalAndReservedMethod2IForm)(IForm *pThis); + + nsresult (*InternalAndReservedMethod3IForm)(IForm *pThis); + + nsresult (*InternalAndReservedMethod4IForm)(IForm *pThis); + +}; +# define IForm_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IForm_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IForm_Release(p) ((p)->lpVtbl->Release(p)) +# define IForm_get_Values(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# define IForm_GetValues(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# endif /* VBOX_WITH_GLUE */ + +interface IForm +{ +# ifndef VBOX_WITH_GLUE + struct IForm_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IFormVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IForm declaration */ + + +/* Start of struct IVirtualSystemDescriptionForm declaration */ +# define IVIRTUALSYSTEMDESCRIPTIONFORM_IID_STR "14c2db8a-3ee4-11e9-b872-cb9447aad965" +# define IVIRTUALSYSTEMDESCRIPTIONFORM_IID { \ + 0x14c2db8a, 0x3ee4, 0x11e9, \ + { 0xb8, 0x72, 0xcb, 0x94, 0x47, 0xaa, 0xd9, 0x65 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_IVirtualSystemDescriptionForm); +# ifndef VBOX_WITH_GLUE +struct IVirtualSystemDescriptionForm_vtbl +{ + struct IForm_vtbl iform; + + nsresult (*GetInternalAndReservedAttribute1IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetVirtualSystemDescription)( + IVirtualSystemDescriptionForm *pThis, + IVirtualSystemDescription * * description + ); + + nsresult (*InternalAndReservedMethod1IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct IVirtualSystemDescriptionFormVtbl +{ + nsresult (*QueryInterface)(IVirtualSystemDescriptionForm *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(IVirtualSystemDescriptionForm *pThis); + nsrefcnt (*Release)(IVirtualSystemDescriptionForm *pThis); + nsresult (*GetValues)(IVirtualSystemDescriptionForm *pThis, PRUint32 *valuesSize, IFormValue * **values); + + nsresult (*GetInternalAndReservedAttribute1IForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*InternalAndReservedMethod1IForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod2IForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod3IForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod4IForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*GetInternalAndReservedAttribute1IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis, PRUint32 *reserved); + + nsresult (*GetVirtualSystemDescription)( + IVirtualSystemDescriptionForm *pThis, + IVirtualSystemDescription * * description + ); + + nsresult (*InternalAndReservedMethod1IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod2IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod3IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + + nsresult (*InternalAndReservedMethod4IVirtualSystemDescriptionForm)(IVirtualSystemDescriptionForm *pThis); + +}; +# define IVirtualSystemDescriptionForm_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define IVirtualSystemDescriptionForm_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define IVirtualSystemDescriptionForm_Release(p) ((p)->lpVtbl->Release(p)) +# define IVirtualSystemDescriptionForm_get_Values(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# define IVirtualSystemDescriptionForm_GetValues(p, aValues) ((p)->lpVtbl->GetValues(p, aValues)) +# define IVirtualSystemDescriptionForm_GetVirtualSystemDescription(p, aDescription) ((p)->lpVtbl->GetVirtualSystemDescription(p, aDescription)) +# endif /* VBOX_WITH_GLUE */ + +interface IVirtualSystemDescriptionForm +{ +# ifndef VBOX_WITH_GLUE + struct IVirtualSystemDescriptionForm_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct IVirtualSystemDescriptionFormVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct IVirtualSystemDescriptionForm declaration */ + + +/* Start of struct ICloudNetworkGatewayInfo declaration */ +# define ICLOUDNETWORKGATEWAYINFO_IID_STR "89a63ace-0c65-11ea-ad23-0ff257c71a7f" +# define ICLOUDNETWORKGATEWAYINFO_IID { \ + 0x89a63ace, 0x0c65, 0x11ea, \ + { 0xad, 0x23, 0x0f, 0xf2, 0x57, 0xc7, 0x1a, 0x7f } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICloudNetworkGatewayInfo); +# ifndef VBOX_WITH_GLUE +struct ICloudNetworkGatewayInfo_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetPublicIP)(ICloudNetworkGatewayInfo *pThis, PRUnichar * *publicIP); + + nsresult (*GetInternalAndReservedAttribute1ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICloudNetworkGatewayInfoVtbl +{ + nsresult (*QueryInterface)(ICloudNetworkGatewayInfo *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICloudNetworkGatewayInfo *pThis); + nsrefcnt (*Release)(ICloudNetworkGatewayInfo *pThis); + nsresult (*GetPublicIP)(ICloudNetworkGatewayInfo *pThis, PRUnichar * *publicIP); + + nsresult (*GetInternalAndReservedAttribute1ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudNetworkGatewayInfo)(ICloudNetworkGatewayInfo *pThis, PRUint32 *reserved); + +}; +# define ICloudNetworkGatewayInfo_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICloudNetworkGatewayInfo_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICloudNetworkGatewayInfo_Release(p) ((p)->lpVtbl->Release(p)) +# define ICloudNetworkGatewayInfo_get_PublicIP(p, aPublicIP) ((p)->lpVtbl->GetPublicIP(p, aPublicIP)) +# define ICloudNetworkGatewayInfo_GetPublicIP(p, aPublicIP) ((p)->lpVtbl->GetPublicIP(p, aPublicIP)) +# endif /* VBOX_WITH_GLUE */ + +interface ICloudNetworkGatewayInfo +{ +# ifndef VBOX_WITH_GLUE + struct ICloudNetworkGatewayInfo_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICloudNetworkGatewayInfoVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICloudNetworkGatewayInfo declaration */ + + +/* Start of struct ICloudClient declaration */ +# define ICLOUDCLIENT_IID_STR "435b66a2-0c60-11ea-a0ea-07eb0d1c4ead" +# define ICLOUDCLIENT_IID { \ + 0x435b66a2, 0x0c60, 0x11ea, \ + { 0xa0, 0xea, 0x07, 0xeb, 0x0d, 0x1c, 0x4e, 0xad } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICloudClient); +# ifndef VBOX_WITH_GLUE +struct ICloudClient_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetInternalAndReservedAttribute1ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetExportDescriptionForm)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IVirtualSystemDescriptionForm * * form, + IProgress * * progress + ); + + nsresult (*ExportVM)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IProgress * progress + ); + + nsresult (*GetLaunchDescriptionForm)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IVirtualSystemDescriptionForm * * form, + IProgress * * progress + ); + + nsresult (*LaunchVM)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IProgress * * progress + ); + + nsresult (*GetImportDescriptionForm)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IVirtualSystemDescriptionForm * * form, + IProgress * * progress + ); + + nsresult (*ImportInstance)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IProgress * progress + ); + + nsresult (*ListInstances)( + ICloudClient *pThis, + PRUint32 machineStateSize, + PRUint32* machineState, + IStringArray * * returnNames, + IStringArray * * returnIds, + IProgress * * progress + ); + + nsresult (*ListImages)( + ICloudClient *pThis, + PRUint32 imageStateSize, + PRUint32* imageState, + IStringArray * * returnNames, + IStringArray * * returnIds, + IProgress * * progress + ); + + nsresult (*GetInstanceInfo)( + ICloudClient *pThis, + PRUnichar * uid, + IVirtualSystemDescription * description, + IProgress * * progress + ); + + nsresult (*StartInstance)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*PauseInstance)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*TerminateInstance)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*CreateImage)( + ICloudClient *pThis, + PRUint32 parametersSize, + PRUnichar ** parameters, + IProgress * * progress + ); + + nsresult (*ExportImage)( + ICloudClient *pThis, + IMedium * image, + PRUint32 parametersSize, + PRUnichar ** parameters, + IProgress * * progress + ); + + nsresult (*ImportImage)( + ICloudClient *pThis, + PRUnichar * uid, + PRUint32 parametersSize, + PRUnichar ** parameters, + IProgress * * progress + ); + + nsresult (*DeleteImage)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*GetImageInfo)( + ICloudClient *pThis, + PRUnichar * uid, + IStringArray * * infoArray, + IProgress * * progress + ); + + nsresult (*StartCloudNetworkGateway)( + ICloudClient *pThis, + ICloudNetwork * network, + PRUnichar * sshPublicKey, + ICloudNetworkGatewayInfo * * gatewayInfo, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod2ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod3ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod4ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod5ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod6ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod7ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod8ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod9ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod10ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod11ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod12ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod13ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod14ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod15ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod16ICloudClient)(ICloudClient *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICloudClientVtbl +{ + nsresult (*QueryInterface)(ICloudClient *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICloudClient *pThis); + nsrefcnt (*Release)(ICloudClient *pThis); + nsresult (*GetInternalAndReservedAttribute1ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudClient)(ICloudClient *pThis, PRUint32 *reserved); + + nsresult (*GetExportDescriptionForm)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IVirtualSystemDescriptionForm * * form, + IProgress * * progress + ); + + nsresult (*ExportVM)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IProgress * progress + ); + + nsresult (*GetLaunchDescriptionForm)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IVirtualSystemDescriptionForm * * form, + IProgress * * progress + ); + + nsresult (*LaunchVM)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IProgress * * progress + ); + + nsresult (*GetImportDescriptionForm)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IVirtualSystemDescriptionForm * * form, + IProgress * * progress + ); + + nsresult (*ImportInstance)( + ICloudClient *pThis, + IVirtualSystemDescription * description, + IProgress * progress + ); + + nsresult (*ListInstances)( + ICloudClient *pThis, + PRUint32 machineStateSize, + PRUint32* machineState, + IStringArray * * returnNames, + IStringArray * * returnIds, + IProgress * * progress + ); + + nsresult (*ListImages)( + ICloudClient *pThis, + PRUint32 imageStateSize, + PRUint32* imageState, + IStringArray * * returnNames, + IStringArray * * returnIds, + IProgress * * progress + ); + + nsresult (*GetInstanceInfo)( + ICloudClient *pThis, + PRUnichar * uid, + IVirtualSystemDescription * description, + IProgress * * progress + ); + + nsresult (*StartInstance)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*PauseInstance)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*TerminateInstance)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*CreateImage)( + ICloudClient *pThis, + PRUint32 parametersSize, + PRUnichar ** parameters, + IProgress * * progress + ); + + nsresult (*ExportImage)( + ICloudClient *pThis, + IMedium * image, + PRUint32 parametersSize, + PRUnichar ** parameters, + IProgress * * progress + ); + + nsresult (*ImportImage)( + ICloudClient *pThis, + PRUnichar * uid, + PRUint32 parametersSize, + PRUnichar ** parameters, + IProgress * * progress + ); + + nsresult (*DeleteImage)( + ICloudClient *pThis, + PRUnichar * uid, + IProgress * * progress + ); + + nsresult (*GetImageInfo)( + ICloudClient *pThis, + PRUnichar * uid, + IStringArray * * infoArray, + IProgress * * progress + ); + + nsresult (*StartCloudNetworkGateway)( + ICloudClient *pThis, + ICloudNetwork * network, + PRUnichar * sshPublicKey, + ICloudNetworkGatewayInfo * * gatewayInfo, + IProgress * * progress + ); + + nsresult (*InternalAndReservedMethod1ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod2ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod3ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod4ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod5ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod6ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod7ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod8ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod9ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod10ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod11ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod12ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod13ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod14ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod15ICloudClient)(ICloudClient *pThis); + + nsresult (*InternalAndReservedMethod16ICloudClient)(ICloudClient *pThis); + +}; +# define ICloudClient_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICloudClient_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICloudClient_Release(p) ((p)->lpVtbl->Release(p)) +# define ICloudClient_GetExportDescriptionForm(p, aDescription, aForm, aProgress) ((p)->lpVtbl->GetExportDescriptionForm(p, aDescription, aForm, aProgress)) +# define ICloudClient_ExportVM(p, aDescription, aProgress) ((p)->lpVtbl->ExportVM(p, aDescription, aProgress)) +# define ICloudClient_GetLaunchDescriptionForm(p, aDescription, aForm, aProgress) ((p)->lpVtbl->GetLaunchDescriptionForm(p, aDescription, aForm, aProgress)) +# define ICloudClient_LaunchVM(p, aDescription, aProgress) ((p)->lpVtbl->LaunchVM(p, aDescription, aProgress)) +# define ICloudClient_GetImportDescriptionForm(p, aDescription, aForm, aProgress) ((p)->lpVtbl->GetImportDescriptionForm(p, aDescription, aForm, aProgress)) +# define ICloudClient_ImportInstance(p, aDescription, aProgress) ((p)->lpVtbl->ImportInstance(p, aDescription, aProgress)) +# define ICloudClient_ListInstances(p, aMachineState, aReturnNames, aReturnIds, aProgress) ((p)->lpVtbl->ListInstances(p, aMachineState, aReturnNames, aReturnIds, aProgress)) +# define ICloudClient_ListImages(p, aImageState, aReturnNames, aReturnIds, aProgress) ((p)->lpVtbl->ListImages(p, aImageState, aReturnNames, aReturnIds, aProgress)) +# define ICloudClient_GetInstanceInfo(p, aUid, aDescription, aProgress) ((p)->lpVtbl->GetInstanceInfo(p, aUid, aDescription, aProgress)) +# define ICloudClient_StartInstance(p, aUid, aProgress) ((p)->lpVtbl->StartInstance(p, aUid, aProgress)) +# define ICloudClient_PauseInstance(p, aUid, aProgress) ((p)->lpVtbl->PauseInstance(p, aUid, aProgress)) +# define ICloudClient_TerminateInstance(p, aUid, aProgress) ((p)->lpVtbl->TerminateInstance(p, aUid, aProgress)) +# define ICloudClient_CreateImage(p, aParameters, aProgress) ((p)->lpVtbl->CreateImage(p, aParameters, aProgress)) +# define ICloudClient_ExportImage(p, aImage, aParameters, aProgress) ((p)->lpVtbl->ExportImage(p, aImage, aParameters, aProgress)) +# define ICloudClient_ImportImage(p, aUid, aParameters, aProgress) ((p)->lpVtbl->ImportImage(p, aUid, aParameters, aProgress)) +# define ICloudClient_DeleteImage(p, aUid, aProgress) ((p)->lpVtbl->DeleteImage(p, aUid, aProgress)) +# define ICloudClient_GetImageInfo(p, aUid, aInfoArray, aProgress) ((p)->lpVtbl->GetImageInfo(p, aUid, aInfoArray, aProgress)) +# define ICloudClient_StartCloudNetworkGateway(p, aNetwork, aSshPublicKey, aGatewayInfo, aProgress) ((p)->lpVtbl->StartCloudNetworkGateway(p, aNetwork, aSshPublicKey, aGatewayInfo, aProgress)) +# endif /* VBOX_WITH_GLUE */ + +interface ICloudClient +{ +# ifndef VBOX_WITH_GLUE + struct ICloudClient_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICloudClientVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICloudClient declaration */ + + +/* Start of struct ICloudProfile declaration */ +# define ICLOUDPROFILE_IID_STR "b1d978b8-f7b7-4b05-900e-2a9253c00f51" +# define ICLOUDPROFILE_IID { \ + 0xb1d978b8, 0xf7b7, 0x4b05, \ + { 0x90, 0x0e, 0x2a, 0x92, 0x53, 0xc0, 0x0f, 0x51 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICloudProfile); +# ifndef VBOX_WITH_GLUE +struct ICloudProfile_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(ICloudProfile *pThis, PRUnichar * *name); + nsresult (*SetName)(ICloudProfile *pThis, PRUnichar * name); + + nsresult (*GetProviderId)(ICloudProfile *pThis, PRUnichar * *providerId); + + nsresult (*GetInternalAndReservedAttribute1ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetProperty)( + ICloudProfile *pThis, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*SetProperty)( + ICloudProfile *pThis, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*GetProperties)( + ICloudProfile *pThis, + PRUnichar * names, + PRUint32 *returnNamesSize, + PRUnichar *** returnNames, + PRUint32 *returnValuesSize, + PRUnichar *** returnValues + ); + + nsresult (*SetProperties)( + ICloudProfile *pThis, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*Remove)(ICloudProfile *pThis ); + + nsresult (*CreateCloudClient)( + ICloudProfile *pThis, + ICloudClient * * cloudClient + ); + + nsresult (*InternalAndReservedMethod1ICloudProfile)(ICloudProfile *pThis); + + nsresult (*InternalAndReservedMethod2ICloudProfile)(ICloudProfile *pThis); + + nsresult (*InternalAndReservedMethod3ICloudProfile)(ICloudProfile *pThis); + + nsresult (*InternalAndReservedMethod4ICloudProfile)(ICloudProfile *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICloudProfileVtbl +{ + nsresult (*QueryInterface)(ICloudProfile *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICloudProfile *pThis); + nsrefcnt (*Release)(ICloudProfile *pThis); + nsresult (*GetName)(ICloudProfile *pThis, PRUnichar * *name); + nsresult (*SetName)(ICloudProfile *pThis, PRUnichar * name); + + nsresult (*GetProviderId)(ICloudProfile *pThis, PRUnichar * *providerId); + + nsresult (*GetInternalAndReservedAttribute1ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudProfile)(ICloudProfile *pThis, PRUint32 *reserved); + + nsresult (*GetProperty)( + ICloudProfile *pThis, + PRUnichar * name, + PRUnichar * * value + ); + + nsresult (*SetProperty)( + ICloudProfile *pThis, + PRUnichar * name, + PRUnichar * value + ); + + nsresult (*GetProperties)( + ICloudProfile *pThis, + PRUnichar * names, + PRUint32 *returnNamesSize, + PRUnichar *** returnNames, + PRUint32 *returnValuesSize, + PRUnichar *** returnValues + ); + + nsresult (*SetProperties)( + ICloudProfile *pThis, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*Remove)(ICloudProfile *pThis ); + + nsresult (*CreateCloudClient)( + ICloudProfile *pThis, + ICloudClient * * cloudClient + ); + + nsresult (*InternalAndReservedMethod1ICloudProfile)(ICloudProfile *pThis); + + nsresult (*InternalAndReservedMethod2ICloudProfile)(ICloudProfile *pThis); + + nsresult (*InternalAndReservedMethod3ICloudProfile)(ICloudProfile *pThis); + + nsresult (*InternalAndReservedMethod4ICloudProfile)(ICloudProfile *pThis); + +}; +# define ICloudProfile_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICloudProfile_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICloudProfile_Release(p) ((p)->lpVtbl->Release(p)) +# define ICloudProfile_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ICloudProfile_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ICloudProfile_put_Name(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define ICloudProfile_SetName(p, aName) ((p)->lpVtbl->SetName(p, aName)) +# define ICloudProfile_get_ProviderId(p, aProviderId) ((p)->lpVtbl->GetProviderId(p, aProviderId)) +# define ICloudProfile_GetProviderId(p, aProviderId) ((p)->lpVtbl->GetProviderId(p, aProviderId)) +# define ICloudProfile_GetProperty(p, aName, aValue) ((p)->lpVtbl->GetProperty(p, aName, aValue)) +# define ICloudProfile_SetProperty(p, aName, aValue) ((p)->lpVtbl->SetProperty(p, aName, aValue)) +# define ICloudProfile_GetProperties(p, aNames, aReturnNames, aReturnValues) ((p)->lpVtbl->GetProperties(p, aNames, aReturnNames, aReturnValues)) +# define ICloudProfile_SetProperties(p, aNames, aValues) ((p)->lpVtbl->SetProperties(p, aNames, aValues)) +# define ICloudProfile_Remove(p) ((p)->lpVtbl->Remove(p)) +# define ICloudProfile_CreateCloudClient(p, aCloudClient) ((p)->lpVtbl->CreateCloudClient(p, aCloudClient)) +# endif /* VBOX_WITH_GLUE */ + +interface ICloudProfile +{ +# ifndef VBOX_WITH_GLUE + struct ICloudProfile_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICloudProfileVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICloudProfile declaration */ + + +/* Start of struct ICloudProvider declaration */ +# define ICLOUDPROVIDER_IID_STR "22363cfc-07da-41ec-ac4a-3dd99db35594" +# define ICLOUDPROVIDER_IID { \ + 0x22363cfc, 0x07da, 0x41ec, \ + { 0xac, 0x4a, 0x3d, 0xd9, 0x9d, 0xb3, 0x55, 0x94 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICloudProvider); +# ifndef VBOX_WITH_GLUE +struct ICloudProvider_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetName)(ICloudProvider *pThis, PRUnichar * *name); + + nsresult (*GetShortName)(ICloudProvider *pThis, PRUnichar * *shortName); + + nsresult (*GetId)(ICloudProvider *pThis, PRUnichar * *id); + + nsresult (*GetProfiles)(ICloudProvider *pThis, PRUint32 *profilesSize, ICloudProfile * **profiles); + + nsresult (*GetProfileNames)(ICloudProvider *pThis, PRUint32 *profileNamesSize, PRUnichar * **profileNames); + + nsresult (*GetSupportedPropertyNames)(ICloudProvider *pThis, PRUint32 *supportedPropertyNamesSize, PRUnichar * **supportedPropertyNames); + + nsresult (*GetInternalAndReservedAttribute1ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetPropertyDescription)( + ICloudProvider *pThis, + PRUnichar * name, + PRUnichar * * description + ); + + nsresult (*CreateProfile)( + ICloudProvider *pThis, + PRUnichar * profileName, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*ImportProfiles)(ICloudProvider *pThis ); + + nsresult (*RestoreProfiles)(ICloudProvider *pThis ); + + nsresult (*SaveProfiles)(ICloudProvider *pThis ); + + nsresult (*GetProfileByName)( + ICloudProvider *pThis, + PRUnichar * profileName, + ICloudProfile * * profile + ); + + nsresult (*PrepareUninstall)(ICloudProvider *pThis ); + + nsresult (*InternalAndReservedMethod1ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod2ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod3ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod4ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod5ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod6ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod7ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod8ICloudProvider)(ICloudProvider *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICloudProviderVtbl +{ + nsresult (*QueryInterface)(ICloudProvider *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICloudProvider *pThis); + nsrefcnt (*Release)(ICloudProvider *pThis); + nsresult (*GetName)(ICloudProvider *pThis, PRUnichar * *name); + + nsresult (*GetShortName)(ICloudProvider *pThis, PRUnichar * *shortName); + + nsresult (*GetId)(ICloudProvider *pThis, PRUnichar * *id); + + nsresult (*GetProfiles)(ICloudProvider *pThis, PRUint32 *profilesSize, ICloudProfile * **profiles); + + nsresult (*GetProfileNames)(ICloudProvider *pThis, PRUint32 *profileNamesSize, PRUnichar * **profileNames); + + nsresult (*GetSupportedPropertyNames)(ICloudProvider *pThis, PRUint32 *supportedPropertyNamesSize, PRUnichar * **supportedPropertyNames); + + nsresult (*GetInternalAndReservedAttribute1ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute9ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute10ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute11ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute12ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute13ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute14ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute15ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute16ICloudProvider)(ICloudProvider *pThis, PRUint32 *reserved); + + nsresult (*GetPropertyDescription)( + ICloudProvider *pThis, + PRUnichar * name, + PRUnichar * * description + ); + + nsresult (*CreateProfile)( + ICloudProvider *pThis, + PRUnichar * profileName, + PRUint32 namesSize, + PRUnichar ** names, + PRUint32 valuesSize, + PRUnichar ** values + ); + + nsresult (*ImportProfiles)(ICloudProvider *pThis ); + + nsresult (*RestoreProfiles)(ICloudProvider *pThis ); + + nsresult (*SaveProfiles)(ICloudProvider *pThis ); + + nsresult (*GetProfileByName)( + ICloudProvider *pThis, + PRUnichar * profileName, + ICloudProfile * * profile + ); + + nsresult (*PrepareUninstall)(ICloudProvider *pThis ); + + nsresult (*InternalAndReservedMethod1ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod2ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod3ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod4ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod5ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod6ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod7ICloudProvider)(ICloudProvider *pThis); + + nsresult (*InternalAndReservedMethod8ICloudProvider)(ICloudProvider *pThis); + +}; +# define ICloudProvider_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICloudProvider_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICloudProvider_Release(p) ((p)->lpVtbl->Release(p)) +# define ICloudProvider_get_Name(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ICloudProvider_GetName(p, aName) ((p)->lpVtbl->GetName(p, aName)) +# define ICloudProvider_get_ShortName(p, aShortName) ((p)->lpVtbl->GetShortName(p, aShortName)) +# define ICloudProvider_GetShortName(p, aShortName) ((p)->lpVtbl->GetShortName(p, aShortName)) +# define ICloudProvider_get_Id(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define ICloudProvider_GetId(p, aId) ((p)->lpVtbl->GetId(p, aId)) +# define ICloudProvider_get_Profiles(p, aProfiles) ((p)->lpVtbl->GetProfiles(p, aProfiles)) +# define ICloudProvider_GetProfiles(p, aProfiles) ((p)->lpVtbl->GetProfiles(p, aProfiles)) +# define ICloudProvider_get_ProfileNames(p, aProfileNames) ((p)->lpVtbl->GetProfileNames(p, aProfileNames)) +# define ICloudProvider_GetProfileNames(p, aProfileNames) ((p)->lpVtbl->GetProfileNames(p, aProfileNames)) +# define ICloudProvider_get_SupportedPropertyNames(p, aSupportedPropertyNames) ((p)->lpVtbl->GetSupportedPropertyNames(p, aSupportedPropertyNames)) +# define ICloudProvider_GetSupportedPropertyNames(p, aSupportedPropertyNames) ((p)->lpVtbl->GetSupportedPropertyNames(p, aSupportedPropertyNames)) +# define ICloudProvider_GetPropertyDescription(p, aName, aDescription) ((p)->lpVtbl->GetPropertyDescription(p, aName, aDescription)) +# define ICloudProvider_CreateProfile(p, aProfileName, aNames, aValues) ((p)->lpVtbl->CreateProfile(p, aProfileName, aNames, aValues)) +# define ICloudProvider_ImportProfiles(p) ((p)->lpVtbl->ImportProfiles(p)) +# define ICloudProvider_RestoreProfiles(p) ((p)->lpVtbl->RestoreProfiles(p)) +# define ICloudProvider_SaveProfiles(p) ((p)->lpVtbl->SaveProfiles(p)) +# define ICloudProvider_GetProfileByName(p, aProfileName, aProfile) ((p)->lpVtbl->GetProfileByName(p, aProfileName, aProfile)) +# define ICloudProvider_PrepareUninstall(p) ((p)->lpVtbl->PrepareUninstall(p)) +# endif /* VBOX_WITH_GLUE */ + +interface ICloudProvider +{ +# ifndef VBOX_WITH_GLUE + struct ICloudProvider_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICloudProviderVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICloudProvider declaration */ + + +/* Start of struct ICloudProviderManager declaration */ +# define ICLOUDPROVIDERMANAGER_IID_STR "9128800f-762e-4120-871c-a2014234a607" +# define ICLOUDPROVIDERMANAGER_IID { \ + 0x9128800f, 0x762e, 0x4120, \ + { 0x87, 0x1c, 0xa2, 0x01, 0x42, 0x34, 0xa6, 0x07 } \ +} +/* COM compatibility */ +VBOX_EXTERN_CONST(nsIID, IID_ICloudProviderManager); +# ifndef VBOX_WITH_GLUE +struct ICloudProviderManager_vtbl +{ + struct nsISupports_vtbl nsisupports; + + nsresult (*GetProviders)(ICloudProviderManager *pThis, PRUint32 *providersSize, ICloudProvider * **providers); + + nsresult (*GetInternalAndReservedAttribute1ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetProviderById)( + ICloudProviderManager *pThis, + PRUnichar * providerId, + ICloudProvider * * provider + ); + + nsresult (*GetProviderByShortName)( + ICloudProviderManager *pThis, + PRUnichar * providerName, + ICloudProvider * * provider + ); + + nsresult (*GetProviderByName)( + ICloudProviderManager *pThis, + PRUnichar * providerName, + ICloudProvider * * provider + ); + + nsresult (*InternalAndReservedMethod1ICloudProviderManager)(ICloudProviderManager *pThis); + + nsresult (*InternalAndReservedMethod2ICloudProviderManager)(ICloudProviderManager *pThis); + + nsresult (*InternalAndReservedMethod3ICloudProviderManager)(ICloudProviderManager *pThis); + + nsresult (*InternalAndReservedMethod4ICloudProviderManager)(ICloudProviderManager *pThis); + +}; +# else /* VBOX_WITH_GLUE */ +struct ICloudProviderManagerVtbl +{ + nsresult (*QueryInterface)(ICloudProviderManager *pThis, const nsID *iid, void **resultp); + nsrefcnt (*AddRef)(ICloudProviderManager *pThis); + nsrefcnt (*Release)(ICloudProviderManager *pThis); + nsresult (*GetProviders)(ICloudProviderManager *pThis, PRUint32 *providersSize, ICloudProvider * **providers); + + nsresult (*GetInternalAndReservedAttribute1ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute2ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute3ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute4ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute5ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute6ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute7ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetInternalAndReservedAttribute8ICloudProviderManager)(ICloudProviderManager *pThis, PRUint32 *reserved); + + nsresult (*GetProviderById)( + ICloudProviderManager *pThis, + PRUnichar * providerId, + ICloudProvider * * provider + ); + + nsresult (*GetProviderByShortName)( + ICloudProviderManager *pThis, + PRUnichar * providerName, + ICloudProvider * * provider + ); + + nsresult (*GetProviderByName)( + ICloudProviderManager *pThis, + PRUnichar * providerName, + ICloudProvider * * provider + ); + + nsresult (*InternalAndReservedMethod1ICloudProviderManager)(ICloudProviderManager *pThis); + + nsresult (*InternalAndReservedMethod2ICloudProviderManager)(ICloudProviderManager *pThis); + + nsresult (*InternalAndReservedMethod3ICloudProviderManager)(ICloudProviderManager *pThis); + + nsresult (*InternalAndReservedMethod4ICloudProviderManager)(ICloudProviderManager *pThis); + +}; +# define ICloudProviderManager_QueryInterface(p, iid, resultp) ((p)->lpVtbl->QueryInterface(p, iid, resultp)) +# define ICloudProviderManager_AddRef(p) ((p)->lpVtbl->AddRef(p)) +# define ICloudProviderManager_Release(p) ((p)->lpVtbl->Release(p)) +# define ICloudProviderManager_get_Providers(p, aProviders) ((p)->lpVtbl->GetProviders(p, aProviders)) +# define ICloudProviderManager_GetProviders(p, aProviders) ((p)->lpVtbl->GetProviders(p, aProviders)) +# define ICloudProviderManager_GetProviderById(p, aProviderId, aProvider) ((p)->lpVtbl->GetProviderById(p, aProviderId, aProvider)) +# define ICloudProviderManager_GetProviderByShortName(p, aProviderName, aProvider) ((p)->lpVtbl->GetProviderByShortName(p, aProviderName, aProvider)) +# define ICloudProviderManager_GetProviderByName(p, aProviderName, aProvider) ((p)->lpVtbl->GetProviderByName(p, aProviderName, aProvider)) +# endif /* VBOX_WITH_GLUE */ + +interface ICloudProviderManager +{ +# ifndef VBOX_WITH_GLUE + struct ICloudProviderManager_vtbl *vtbl; +# else /* VBOX_WITH_GLUE */ + CONST_VTBL struct ICloudProviderManagerVtbl *lpVtbl; +# endif /* VBOX_WITH_GLUE */ +}; +/* End of struct ICloudProviderManager declaration */ + + + +# define NS_VIRTUALBOX_CID { \ + 0xB1A7A4F2, 0x47B9, 0x4A1E, \ + { 0x82, 0xB2, 0x07, 0xCC, 0xD5, 0x32, 0x3C, 0x3F } \ +} +# define NS_VIRTUALBOX_CONTRACTID "@virtualbox.org/VirtualBox;1" +/* COM compatibility */ +VBOX_EXTERN_CONST(nsCID, CLSID_VirtualBox); + + + +# define NS_VIRTUALBOXCLIENT_CID { \ + 0xdd3fc71d, 0x26c0, 0x4fe1, \ + { 0xbf, 0x6f, 0x67, 0xf6, 0x33, 0x26, 0x5b, 0xba } \ +} +# define NS_VIRTUALBOXCLIENT_CONTRACTID "@virtualbox.org/VirtualBoxClient;1" +/* COM compatibility */ +VBOX_EXTERN_CONST(nsCID, CLSID_VirtualBoxClient); + + + +# define NS_SESSION_CID { \ + 0x3C02F46D, 0xC9D2, 0x4F11, \ + { 0xA3, 0x84, 0x53, 0xF0, 0xCF, 0x91, 0x72, 0x14 } \ +} +# define NS_SESSION_CONTRACTID "@virtualbox.org/Session;1" +/* COM compatibility */ +VBOX_EXTERN_CONST(nsCID, CLSID_Session); + + + + +# endif /* __cplusplus */ + +# endif /* !WIN32 */ + +# ifdef __cplusplus +extern "C" +{ +# endif /* __cplusplus */ + + +/** + * Function table for dynamic linking. + * Use VBoxGetCAPIFunctions() to obtain the pointer to it. + */ +typedef struct VBOXCAPI +{ + /** The size of the structure. */ + unsigned cb; + /** The structure version. */ + unsigned uVersion; + + /** Gets the VirtualBox version, major * 1000000 + minor * 1000 + patch. */ + unsigned int (*pfnGetVersion)(void); + + /** Gets the VirtualBox API version, major * 1000 + minor, e.g. 4003. */ + unsigned int (*pfnGetAPIVersion)(void); + + /** + * New and preferred way to initialize the C bindings for an API client. + * + * This way is much more flexible, as it can easily handle multiple + * sessions (important with more complicated API clients, including + * multithreaded ones), and even VBoxSVC crashes can be detected and + * processed appropriately by listening for events from the associated + * event source in VirtualBoxClient. It is completely up to the client + * to decide what to do (terminate or continue after getting new + * object references to server-side objects). Must be called in the + * primary thread of the client, later API use can be done in any + * thread. + * + * Note that the returned reference is owned by the caller, and thus it's + * the caller's responsibility to handle the reference count appropriately. + * + * @param pszVirtualBoxClientIID pass IVIRTUALBOXCLIENT_IID_STR + * @param ppVirtualBoxClient output parameter for VirtualBoxClient + * reference, handled as usual with COM/XPCOM. + * @returns COM/XPCOM error code + */ + HRESULT (*pfnClientInitialize)(const char *pszVirtualBoxClientIID, + IVirtualBoxClient **ppVirtualBoxClient); + /** + * Initialize the use of the C bindings in a non-primary thread. + * + * Must be called on any newly created thread which wants to use the + * VirtualBox API. + * + * @returns COM/XPCOM error code + */ + HRESULT (*pfnClientThreadInitialize)(void); + /** + * Uninitialize the use of the C bindings in a non-primary thread. + * + * Should be called before terminating the thread which initialized the + * C bindings using pfnClientThreadInitialize. + * + * @returns COM/XPCOM error code + */ + HRESULT (*pfnClientThreadUninitialize)(void); + /** + * Uninitialize the C bindings for an API client. + * + * Should be called when the API client is about to terminate and does + * not want to use the C bindings any more. It will invalidate all + * object references. It is possible, however, to change one's mind, + * and call pfnClientInitialize again to continue using the API, as long + * as none of the object references from before the re-initialization + * are used. Must be called from the primary thread of the client. + */ + void (*pfnClientUninitialize)(void); + + /** + * Deprecated way to initialize the C bindings and getting important + * object references. Kept for backwards compatibility. + * + * If any returned reference is NULL then the initialization failed. + * Note that the returned references are owned by the C bindings. The + * number of calls to Release in the client code must match the number + * of calls to AddRef, and additionally at no point in time there can + * be more Release calls than AddRef calls. + * + * @param pszVirtualBoxIID pass IVIRTUALBOX_IID_STR + * @param ppVirtualBox output parameter for VirtualBox reference, + * owned by C bindings + * @param pszSessionIID pass ISESSION_IID_STR + * @param ppSession output parameter for Session reference, + * owned by C bindings + */ + void (*pfnComInitialize)(const char *pszVirtualBoxIID, + IVirtualBox **ppVirtualBox, + const char *pszSessionIID, + ISession **ppSession); + /** + * Deprecated way to uninitialize the C bindings for an API client. + * Kept for backwards compatibility and must be used if the C bindings + * were initialized using pfnComInitialize. */ + void (*pfnComUninitialize)(void); + + /** + * Free string managed by COM/XPCOM. + * + * @param pwsz pointer to string to be freed + */ + void (*pfnComUnallocString)(BSTR pwsz); +# ifndef WIN32 + /** Legacy function, was always for freeing strings only. */ +# define pfnComUnallocMem(pv) pfnComUnallocString((BSTR)(pv)) +# endif /* !WIN32 */ + + /** + * Convert string from UTF-16 encoding to UTF-8 encoding. + * + * @param pwszString input string + * @param ppszString output string + * @returns IPRT status code + */ + int (*pfnUtf16ToUtf8)(CBSTR pwszString, char **ppszString); + /** + * Convert string from UTF-8 encoding to UTF-16 encoding. + * + * @param pszString input string + * @param ppwszString output string + * @returns IPRT status code + */ + int (*pfnUtf8ToUtf16)(const char *pszString, BSTR *ppwszString); + /** + * Free memory returned by pfnUtf16ToUtf8. Do not use for anything else. + * + * @param pszString string to be freed. + */ + void (*pfnUtf8Free)(char *pszString); + /** + * Free memory returned by pfnUtf8ToUtf16. Do not use for anything else. + * + * @param pwszString string to be freed. + */ + void (*pfnUtf16Free)(BSTR pwszString); + + /** + * Create a safearray (used for passing arrays to COM/XPCOM) + * + * Must be freed by pfnSafeArrayDestroy. + * + * @param vt variant type, defines the size of the elements + * @param lLbound lower bound of the index, should be 0 + * @param cElements number of elements + * @returns pointer to safearray + */ + SAFEARRAY *(*pfnSafeArrayCreateVector)(VARTYPE vt, LONG lLbound, ULONG cElements); + /** + * Pre-allocate a safearray to be used by an out safearray parameter + * + * Must be freed by pfnSafeArrayDestroy. + * + * @returns pointer to safearray (system dependent, may be NULL if + * there is no need to pre-allocate a safearray) + */ + SAFEARRAY *(*pfnSafeArrayOutParamAlloc)(void); + /** + * Copy a C array into a safearray (for passing as an input parameter) + * + * @param psa pointer to already created safearray. + * @param pv pointer to memory block to copy into safearray. + * @param cb number of bytes to copy. + * @returns COM/XPCOM error code + */ + HRESULT (*pfnSafeArrayCopyInParamHelper)(SAFEARRAY *psa, const void *pv, ULONG cb); + /** + * Copy a safearray into a C array (for getting an output parameter) + * + * @param ppv output pointer to newly created array, which has to + * be freed with pfnArrayOutFree. + * @param pcb number of bytes in the output buffer. + * @param vt variant type, defines the size of the elements + * @param psa pointer to safearray for getting the data + * @returns COM/XPCOM error code + */ + HRESULT (*pfnSafeArrayCopyOutParamHelper)(void **ppv, ULONG *pcb, VARTYPE vt, SAFEARRAY *psa); + /** + * Copy a safearray into a C array (special variant for interface pointers) + * + * @param ppaObj output pointer to newly created array, which has + * to be freed with pfnArrayOutFree. Note that it's the caller's + * responsibility to call Release() on each non-NULL interface + * pointer before freeing. + * @param pcObj number of pointers in the output buffer. + * @param psa pointer to safearray for getting the data + * @returns COM/XPCOM error code + */ + HRESULT (*pfnSafeArrayCopyOutIfaceParamHelper)(IUnknown ***ppaObj, ULONG *pcObj, SAFEARRAY *psa); + /** + * Free a safearray + * + * @param psa pointer to safearray + * @returns COM/XPCOM error code + */ + HRESULT (*pfnSafeArrayDestroy)(SAFEARRAY *psa); + /** + * Free an out array created by pfnSafeArrayCopyOutParamHelper or + * pdnSafeArrayCopyOutIfaceParamHelper. + * + * @param psa pointer to memory block + * @returns COM/XPCOM error code + */ + HRESULT (*pfnArrayOutFree)(void *pv); + +# ifndef WIN32 + /** + * Get XPCOM event queue. Deprecated! + * + * @param ppEventQueue output parameter for nsIEventQueue reference, + * owned by C bindings. + */ + void (*pfnGetEventQueue)(nsIEventQueue **ppEventQueue); +# endif /* !WIN32 */ + + /** + * Get current COM/XPCOM exception. + * + * @param ppException output parameter for exception info reference, + * may be @c NULL if no exception object has been created by + * a previous COM/XPCOM call. + * @returns COM/XPCOM error code + */ + HRESULT (*pfnGetException)(IErrorInfo **ppException); + /** + * Clears current COM/XPCOM exception. + * + * @returns COM/XPCOM error code + */ + HRESULT (*pfnClearException)(void); + + /** + * Process the event queue for a given amount of time. + * + * Must be called on the primary thread. Typical timeouts are from 200 to + * 5000 msecs, to allow for checking a volatile variable if the event queue + * processing should be terminated (, + * or 0 if only the pending events should be processed, without waiting. + * + * @param iTimeoutMS how long to process the event queue, -1 means + * infinitely long + * @returns status code + * @retval 0 if at least one event has been processed + * @retval 1 if any signal interrupted the native system call (or returned + * otherwise) + * @retval 2 if the event queue was explicitly interrupted + * @retval 3 if the timeout expired + * @retval 4 if the function was called from the wrong thread + * @retval 5 for all other (unexpected) errors + */ + int (*pfnProcessEventQueue)(LONG64 iTimeoutMS); + /** + * Interrupt event queue processing. + * + * Can be called on any thread. Note that this function is not async-signal + * safe, so never use it in such a context, instead use a volatile global + * variable and a sensible timeout. + * @returns 0 if successful, 1 otherwise. + */ + int (*pfnInterruptEventQueueProcessing)(void); + + /** + * Clear memory used by a UTF-8 string. Must be zero terminated. + * Can be used for any UTF-8 or ASCII/ANSI string. + * + * @param pszString input/output string + */ + void (*pfnUtf8Clear)(char *pszString); + /** + * Clear memory used by a UTF-16 string. Must be zero terminated. + * Can be used for any UTF-16 or UCS-2 string. + * + * @param pwszString input/output string + */ + void (*pfnUtf16Clear)(BSTR pwszString); + + /** Tail version, same as uVersion. + * + * This should only be accessed if for some reason an API client needs + * exactly the version it requested, or if cb is used to calculate the + * address of this field. It may move as the structure before this is + * allowed to grow as long as all the data from earlier minor versions + * remains at the same place. + */ + unsigned uEndVersion; +} VBOXCAPI; +/** Pointer to a const VBOXCAPI function table. */ +typedef VBOXCAPI const *PCVBOXCAPI; +# ifndef WIN32 +/** Backwards compatibility: Pointer to a const VBOXCAPI function table. + * Use PCVBOXCAPI instead. */ +typedef VBOXCAPI const *PCVBOXXPCOM; +# endif /* !WIN32 */ + +# ifndef WIN32 +/** Backwards compatibility: make sure old code using VBOXXPCOMC still compiles. + * Use VBOXCAPI instead. */ +# define VBOXXPCOMC VBOXCAPI +# endif /* !WIN32 */ + +/** Extract the C API style major version. + * Useful for comparing the interface version in VBOXCAPI::uVersion. */ +# define VBOX_CAPI_MAJOR(x) (((x) & 0xffff0000U) >> 16) + +/** Extract the C API style major version. + * Useful for comparing the interface version in VBOXCAPI::uVersion. */ +# define VBOX_CAPI_MINOR(x) ((x) & 0x0000ffffU) + +/** The current interface version. + * For use with VBoxGetCAPIFunctions and to be found in VBOXCAPI::uVersion. */ +# define VBOX_CAPI_VERSION 0x00040001U + +# ifndef WIN32 +/** Backwards compatibility: The current interface version. + * Use VBOX_CAPI_VERSION instead. */ +# define VBOX_XPCOMC_VERSION VBOX_CAPI_VERSION +# endif /* !WIN32 */ + +/** VBoxGetCAPIFunctions. */ +VBOXCAPI_DECL(PCVBOXCAPI) VBoxGetCAPIFunctions(unsigned uVersion); +# ifndef WIN32 +/** Backwards compatibility: VBoxGetXPCOMCFunctions. + * Use VBoxGetCAPIFunctions instead. */ +VBOXCAPI_DECL(PCVBOXCAPI) VBoxGetXPCOMCFunctions(unsigned uVersion); +# endif /* !WIN32 */ + +/** Typedef for VBoxGetCAPIFunctions. */ +typedef PCVBOXCAPI (*PFNVBOXGETCAPIFUNCTIONS)(unsigned uVersion); +# ifndef WIN32 +/** Backwards compatibility: Typedef for VBoxGetXPCOMCFunctions. + * Use PFNVBOXGETCAPIFUNCTIONS instead. */ +typedef PCVBOXCAPI (*PFNVBOXGETXPCOMCFUNCTIONS)(unsigned uVersion); +# endif /* !WIN32 */ + +/** The symbol name of VBoxGetCAPIFunctions. */ +# ifdef __OS2__ +# define VBOX_GET_CAPI_FUNCTIONS_SYMBOL_NAME "_VBoxGetCAPIFunctions" +# else /* !__OS2__ */ +# define VBOX_GET_CAPI_FUNCTIONS_SYMBOL_NAME "VBoxGetCAPIFunctions" +# endif /* !__OS2__ */ +# ifndef WIN32 +/** Backwards compatibility: The symbol name of VBoxGetXPCOMCFunctions. + * Use VBOX_GET_CAPI_FUNCTIONS_SYMBOL_NAME instead. */ +# ifdef __OS2__ +# define VBOX_GET_XPCOMC_FUNCTIONS_SYMBOL_NAME "_VBoxGetXPCOMCFunctions" +# else /* !__OS2__ */ +# define VBOX_GET_XPCOMC_FUNCTIONS_SYMBOL_NAME "VBoxGetXPCOMCFunctions" +# endif /* !__OS2__ */ +# endif /* !WIN32 */ + + +# ifdef __cplusplus +} +# endif /* __cplusplus */ + +#endif /* !___VirtualBox_CXPCOM_h */ -- 2.25.2