/* * DO NOT EDIT! This is a generated file. * * XPCOM IDL (XPIDL) definition for VirtualBox Main API (COM interfaces) * generated from XIDL (XML interface definition). * * Source : src/VBox/Main/idl/VirtualBox.xidl * Generator : src/VBox/Main/idl/xpidl.xsl */ #include "nsISupports.idl" #include "nsIException.idl" %{C++ /** * For escaping compound expression so they don't cause trouble when -pedantic * is used. * @internal */ #if defined(__cplusplus) && defined(__GNUC__) # define VBOX_GCC_EXTENSION __extension__ #endif #ifndef VBOX_GCC_EXTENSION # define VBOX_GCC_EXTENSION #endif %} [ptr] native booleanPtr (PRBool); [ptr] native octetPtr (PRUint8); [ptr] native shortPtr (PRInt16); [ptr] native ushortPtr (PRUint16); [ptr] native longPtr (PRInt32); [ptr] native llongPtr (PRInt64); [ptr] native ulongPtr (PRUint32); [ptr] native ullongPtr (PRUint64); [ptr] native stringPtr (string); [ptr] native wcharPtr (wchar); [ptr] native wstringPtr (wstring); %{C++ %} %{C++ %} @if attributes are not currently allowed because xpidl lacks support for #ifdef and stuff. #if #endif %{C++ %} interface ; [ uuid(), scriptable ] interface : nsISupports nsISupports nsIException { }; /* interface */ /* Interface implementation forwarder macro */ %{C++ #define COM_FORWARD_ _TO(smth) NS_FORWARD_ (smth) #define COM_FORWARD_ _TO_OBJ(obj) COM_FORWARD_ _TO ((obj)->) #define COM_FORWARD_ _TO_BASE(base) COM_FORWARD_ _TO (base::) %} [noscript] void get ( out unsigned long Size, [array, size_is( Size), retval] out ); void set ( in unsigned long Size, [array, size_is( Size)] in ); readonly attribute ; #define COM_FORWARD_ _GETTER_ _TO(smth) NS_IMETHOD Get ( PRUint32 * a Size, * * a ) { return smth Get ( a Size, a ); } #define COM_FORWARD_ _GETTER_ _TO_OBJ(obj) COM_FORWARD_ _GETTER_ _TO ((obj)->) #define COM_FORWARD_ _GETTER_ _TO_BASE(base) COM_FORWARD_ _GETTER_ _TO (base::) #define COM_FORWARD_ _SETTER_ _TO(smth) NS_IMETHOD Set ( PRUint32 a Size, const * a ) { return smth Set (a ); } #define COM_FORWARD_ _SETTER_ _TO_OBJ(obj) COM_FORWARD_ _SETTER_ _TO ((obj)->) #define COM_FORWARD_ _SETTER_ _TO_BASE(base) COM_FORWARD_ _SETTER_ _TO (base::) [noscript] void ( , ); (); #define COM_FORWARD_ _ _TO(smth) NS_IMETHOD ( , ) { return smth ( a Size+++, a , a Size, a ); } () { return smth (); } #define COM_FORWARD_ _ _TO_OBJ(obj) COM_FORWARD_ _ _TO ((obj)->) #define COM_FORWARD_ _ _TO_BASE(base) COM_FORWARD_ _ _TO (base::) %{C++ #define NS_ _CID { \ 0x , 0x , 0x , \ { 0x , 0x , 0x , 0x , 0x , 0x , 0x , 0x } \ } #define NS_ _CONTRACTID "@ / ;1" // for compatibility with Win32 #define CLSID_ VBOX_GCC_EXTENSION (nsCID) NS_ _CID %} [ uuid(), scriptable ] interface { const PRUint32 = ; }; %{C++ %} %{C++ %} in out out in unsigned long Size, [array, size_is( Size) ] in ] out , retval] out ] in in out [retval] out in PRUint32 * a Size, * * a booleanPtr octetPtr shortPtr ushortPtr longPtr llongPtr ulongPtr ullongPtr attribute 'mod= ' cannot be used with type wstring attribute 'mod= ' cannot be used with type of attribute 'mod' is invalid! nsresult boolean octet short unsigned short long long long unsigned long unsigned long long char wchar string wstring nsIDPtr : Non-readonly uuid attributes are not supported! nsIDRef nsIDPtr nsISupports PRUint32 Unknown parameter type: PRBool * PRUint8 * PRInt16 * PRUint16 * PRInt32 * PRInt64 * PRUint32 * PRUint64 * char * attribute 'mod= ' cannot be used with type PRUnichar * attribute 'mod= ' cannot be used with type nsresult PRBool PRUint8 PRInt16 PRUint16 PRInt32 PRInt64 PRUint32 PRUint64 char PRUnichar char * PRUnichar * nsID * const nsID & nsID * nsISupports * PRUint32 *