From aae3cb61cd53911b0312ba1d02efb9b48f4e6d6a Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Fri, 11 Apr 2003 00:31:02 +0000 Subject: [PATCH] Simplified COM interface declarations, removing the need to define both an xxx_METHODS and an xxx_IMETHODS macro. --- dlls/dplayx/dplaysp.h | 6 +- dlls/dplayx/lobbysp.h | 6 +- dlls/ole32/ifs.h | 10 +- dlls/shell32/shellfolder.h | 4 +- include/commctrl.h | 4 +- include/d3d.h | 80 +- include/d3d8.h | 107 +- include/d3dx8core.h | 14 +- include/ddraw.h | 52 +- include/dinput.h | 36 +- include/dmplugin.h | 31 +- include/dmusicc.h | 80 +- include/dmusici.h | 152 +-- include/dmusics.h | 22 +- include/docobj.h | 28 +- include/dplay.h | 17 +- include/dplobby.h | 13 +- include/dsdriver.h | 24 +- include/dsound.h | 51 +- include/oaidl.h | 690 ++++++------ include/objbase.h | 33 +- include/objidl.h | 1422 +++++++++++++------------ include/oledlg.h | 24 +- include/servprov.h | 4 +- include/shlobj.h | 4 +- include/shlwapi.h | 10 +- include/unknwn.h | 57 +- include/unknwn.idl | 25 +- include/urlmon.h | 20 +- include/vfw.h | 18 +- include/wine/obj_cache.h | 12 +- include/wine/obj_comcat.h | 12 +- include/wine/obj_commdlgbrowser.h | 4 +- include/wine/obj_connection.h | 16 +- include/wine/obj_contextmenu.h | 4 +- include/wine/obj_control.h | 36 +- include/wine/obj_dockingwindowframe.h | 4 +- include/wine/obj_dragdrop.h | 8 +- include/wine/obj_dragdrophelper.h | 8 +- include/wine/obj_enumguid.h | 4 +- include/wine/obj_enumidlist.h | 4 +- include/wine/obj_extracticon.h | 8 +- include/wine/obj_inplace.h | 44 +- include/wine/obj_olefont.h | 10 +- include/wine/obj_oleobj.h | 12 +- include/wine/obj_oleundo.h | 28 +- include/wine/obj_oleview.h | 8 +- include/wine/obj_picture.h | 10 +- include/wine/obj_property.h | 58 +- include/wine/obj_serviceprovider.h | 4 +- include/wine/obj_shellbrowser.h | 4 +- include/wine/obj_shellextinit.h | 4 +- include/wine/obj_shellfolder.h | 27 +- include/wine/obj_shelllink.h | 8 +- include/wine/obj_shellview.h | 4 +- include/wine/obj_webbrowser.h | 9 +- tools/widl/header.c | 21 +- 57 files changed, 1401 insertions(+), 2014 deletions(-) diff --git a/dlls/dplayx/dplaysp.h b/dlls/dplayx/dplaysp.h index cb4b057cafc..2995b606d52 100644 --- a/dlls/dplayx/dplaysp.h +++ b/dlls/dplayx/dplaysp.h @@ -53,6 +53,7 @@ typedef BOOL (CALLBACK *LPENUMMRUCALLBACK)( LPCVOID lpData, /* Define the COM interface */ #define INTERFACE IDirectPlaySP #define IDirectPlaySP_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddMRUEntry)(THIS_ LPCWSTR lpSection, LPCWSTR lpKey, LPCVOID lpData, DWORD dwDataSize, DWORD dwMaxEntries ) PURE; \ STDMETHOD(CreateAddress)(THIS_ REFGUID guidSP, REFGUID guidDataType, LPCVOID lpData, DWORD dwDataSize, LPVOID lpAddress,LPDWORD lpdwAddressSize) PURE; \ STDMETHOD(EnumAddress)(THIS_ LPDPENUMADDRESSCALLBACK lpEnumAddressCallback, LPCVOID lpAddress, DWORD dwAddressSize, LPVOID lpContext ) PURE; \ @@ -65,11 +66,6 @@ typedef BOOL (CALLBACK *LPENUMMRUCALLBACK)( LPCVOID lpData, STDMETHOD(GetSPData)(THIS_ LPVOID *lplpData, LPDWORD dwDataSize, DWORD dwFlags ) PURE; \ STDMETHOD(SetSPData)(THIS_ LPVOID lpData, DWORD dwDataSize, DWORD dwFlags ) PURE; \ STDMETHOD_(VOID,SendComplete)(THIS_ LPVOID , DWORD ) PURE; - -#define IDirectPlaySP_IMETHODS \ - IUnknown_IMETHODS \ - IDirectPlaySP_METHODS - ICOM_DEFINE(IDirectPlaySP,IUnknown) #undef INTERFACE diff --git a/dlls/dplayx/lobbysp.h b/dlls/dplayx/lobbysp.h index 1401502e3f4..74fbd239dd4 100644 --- a/dlls/dplayx/lobbysp.h +++ b/dlls/dplayx/lobbysp.h @@ -458,6 +458,7 @@ HRESULT WINAPI DPLSPInit(LPSPDATA_INIT); /* Define the COM interface */ #define INTERFACE IDPLobbySP #define IDPLobbySP_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddGroupToGroup)(THIS_ LPSPDATA_ADDREMOTEGROUPTOGROUP argtg ) PURE; \ STDMETHOD(AddPlayerToGroup)(THIS_ LPSPDATA_ADDREMOTEPLAYERTOGROUP arptg ) PURE; \ STDMETHOD(CreateGroup)(THIS_ LPSPDATA_CREATEREMOTEGROUP crg ) PURE; \ @@ -474,11 +475,6 @@ HRESULT WINAPI DPLSPInit(LPSPDATA_INIT); STDMETHOD(SetSessionDesc)(THIS_ LPSPDATA_SETSESSIONDESC ssd ) PURE; \ STDMETHOD(SetSPDataPointer)(THIS_ LPVOID lpData ) PURE; \ STDMETHOD(StartSession)(THIS_ LPSPDATA_STARTSESSIONCOMMAND ssc ) PURE; - -#define IDPLobbySP_IMETHODS \ - IUnknown_IMETHODS \ - IDPLobbySP_METHODS - ICOM_DEFINE(IDPLobbySP,IUnknown) #undef INTERFACE diff --git a/dlls/ole32/ifs.h b/dlls/ole32/ifs.h index 2bf4432b2dc..8faf2a54140 100644 --- a/dlls/ole32/ifs.h +++ b/dlls/ole32/ifs.h @@ -29,15 +29,13 @@ typedef struct IMalloc16 IMalloc16, *LPMALLOC16; #define INTERFACE IMalloc16 #define IMalloc16_METHODS \ + IUnknown_METHODS \ STDMETHOD_(LPVOID,Alloc)(THIS_ DWORD cb) PURE; \ STDMETHOD_(LPVOID,Realloc)(THIS_ LPVOID pv, DWORD cb) PURE; \ STDMETHOD_(void,Free)(THIS_ LPVOID pv) PURE; \ STDMETHOD_(DWORD,GetSize)(THIS_ LPVOID pv) PURE; \ STDMETHOD_(INT16,DidAlloc)(THIS_ LPVOID pv) PURE; \ STDMETHOD_(LPVOID,HeapMinimize)(THIS) PURE; -#define IMalloc16_IMETHODS \ - IUnknown_IMETHODS \ - IMalloc16_METHODS ICOM_DEFINE(IMalloc16,IUnknown) #undef INTERFACE @@ -51,6 +49,7 @@ typedef struct ILockBytes16 *LPLOCKBYTES16, ILockBytes16; #define INTERFACE ILockBytes #define ILockBytes16_METHODS \ + IUnknown_METHODS \ STDMETHOD(ReadAt)(THIS_ ULARGE_INTEGER ulOffset, void *pv, ULONG cb, ULONG *pcbRead) PURE; \ STDMETHOD(WriteAt)(THIS_ ULARGE_INTEGER ulOffset, const void *pv, ULONG cb, ULONG *pcbWritten) PURE; \ STDMETHOD(Flush)(THIS) PURE; \ @@ -58,11 +57,6 @@ typedef struct ILockBytes16 *LPLOCKBYTES16, ILockBytes16; STDMETHOD(LockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ STDMETHOD(UnlockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ STDMETHOD(Stat)(THIS_ STATSTG *pstatstg, DWORD grfStatFlag) PURE; - -#define ILockBytes16_IMETHODS \ - IUnknown_IMETHODS \ - ILockBytes16_METHODS - ICOM_DEFINE(ILockBytes16,IUnknown) #undef INTERFACE diff --git a/dlls/shell32/shellfolder.h b/dlls/shell32/shellfolder.h index dad607fc739..140a58cfbea 100644 --- a/dlls/shell32/shellfolder.h +++ b/dlls/shell32/shellfolder.h @@ -37,13 +37,11 @@ typedef struct ISFHelper ISFHelper, *LPISFHELPER; #define INTERFACE ISFHelper #define ISFHelper_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetUniqueName)(THIS_ LPSTR lpName, UINT uLen) PURE; \ STDMETHOD(AddFolder)(THIS_ HWND hwnd, LPCSTR lpName, LPITEMIDLIST * ppidlOut) PURE; \ STDMETHOD(DeleteItems)(THIS_ UINT cidl, LPCITEMIDLIST * apidl) PURE; \ STDMETHOD(CopyItems)(THIS_ IShellFolder * pSFFrom, UINT cidl, LPCITEMIDLIST * apidl) PURE; -#define ISFHelper_IMETHODS \ - IUnknown_IMETHODS \ - ISFHelper_METHODS ICOM_DEFINE(ISFHelper, IUnknown) #undef INTERFACE diff --git a/include/commctrl.h b/include/commctrl.h index 03cd16a341d..e989ec2171a 100644 --- a/include/commctrl.h +++ b/include/commctrl.h @@ -582,7 +582,7 @@ HIMAGELIST WINAPI ImageList_LoadImageW(HINSTANCE,LPCWSTR,INT,INT, COLORREF,UINT,UINT); #define ImageList_LoadImage WINELIB_NAME_AW(ImageList_LoadImage) HIMAGELIST WINAPI ImageList_Merge(HIMAGELIST,INT,HIMAGELIST,INT,INT,INT); -#ifdef IStream_IMETHODS +#ifdef IStream_METHODS HIMAGELIST WINAPI ImageList_Read(LPSTREAM); #endif BOOL WINAPI ImageList_Remove(HIMAGELIST,INT); @@ -594,7 +594,7 @@ BOOL WINAPI ImageList_SetDragCursorImage(HIMAGELIST,INT,INT,INT); BOOL WINAPI ImageList_SetIconSize(HIMAGELIST,INT,INT); BOOL WINAPI ImageList_SetImageCount(HIMAGELIST,INT); BOOL WINAPI ImageList_SetOverlayImage(HIMAGELIST,INT,INT); -#ifdef IStream_IMETHODS +#ifdef IStream_METHODS BOOL WINAPI ImageList_Write(HIMAGELIST, LPSTREAM); #endif diff --git a/include/d3d.h b/include/d3d.h index 89522fe5203..dfa9ae83332 100644 --- a/include/d3d.h +++ b/include/d3d.h @@ -200,15 +200,13 @@ typedef DWORD D3DVIEWPORTHANDLE, *LPD3DVIEWPORTHANDLE; */ #define INTERFACE IDirect3D #define IDirect3D_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ REFIID riid) PURE; \ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK lpEnumDevicesCallback, LPVOID lpUserArg) PURE; \ STDMETHOD(CreateLight)(THIS_ LPDIRECT3DLIGHT *lplpDirect3DLight, IUnknown *pUnkOuter) PURE; \ STDMETHOD(CreateMaterial)(THIS_ LPDIRECT3DMATERIAL *lplpDirect3DMaterial, IUnknown *pUnkOuter) PURE; \ STDMETHOD(CreateViewport)(THIS_ LPDIRECT3DVIEWPORT *lplpD3DViewport, IUnknown *pUnkOuter) PURE; \ STDMETHOD(FindDevice)(THIS_ LPD3DFINDDEVICESEARCH lpD3DDFS, LPD3DFINDDEVICERESULT lplpD3DDevice) PURE; -#define IDirect3D_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3D_METHODS ICOM_DEFINE(IDirect3D,IUnknown) #undef INTERFACE @@ -232,15 +230,13 @@ ICOM_DEFINE(IDirect3D,IUnknown) */ #define INTERFACE IDirect3D2 #define IDirect3D2_METHODS \ + IUnknown_METHODS \ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK lpEnumDevicesCallback, LPVOID lpUserArg) PURE; \ STDMETHOD(CreateLight)(THIS_ LPDIRECT3DLIGHT *lplpDirect3DLight, IUnknown *pUnkOuter) PURE; \ STDMETHOD(CreateMaterial)(THIS_ LPDIRECT3DMATERIAL2 *lplpDirect3DMaterial2, IUnknown *pUnkOuter) PURE; \ STDMETHOD(CreateViewport)(THIS_ LPDIRECT3DVIEWPORT2 *lplpD3DViewport2, IUnknown *pUnkOuter) PURE; \ STDMETHOD(FindDevice)(THIS_ LPD3DFINDDEVICESEARCH lpD3DDFS, LPD3DFINDDEVICERESULT lpD3DFDR) PURE; \ STDMETHOD(CreateDevice)(THIS_ REFCLSID rclsid, LPDIRECTDRAWSURFACE lpDDS, LPDIRECT3DDEVICE2 *lplpD3DDevice2) PURE; -#define IDirect3D2_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3D2_METHODS ICOM_DEFINE(IDirect3D2,IUnknown) #undef INTERFACE @@ -264,6 +260,7 @@ ICOM_DEFINE(IDirect3D2,IUnknown) */ #define INTERFACE IDirect3D3 #define IDirect3D3_METHODS \ + IUnknown_METHODS \ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK lpEnumDevicesCallback, LPVOID lpUserArg) PURE; \ STDMETHOD(CreateLight)(THIS_ LPDIRECT3DLIGHT *lplpDirect3DLight, IUnknown *pUnkOuter) PURE; \ STDMETHOD(CreateMaterial)(THIS_ LPDIRECT3DMATERIAL3 *lplpDirect3DMaterial3, IUnknown *pUnkOuter) PURE; \ @@ -273,9 +270,6 @@ ICOM_DEFINE(IDirect3D2,IUnknown) STDMETHOD(CreateVertexBuffer)(THIS_ LPD3DVERTEXBUFFERDESC lpD3DVertBufDesc,LPDIRECT3DVERTEXBUFFER *lplpD3DVertBuf,DWORD dwFlags,LPUNKNOWN lpUnk) PURE; \ STDMETHOD(EnumZBufferFormats)(THIS_ REFCLSID riidDevice,LPD3DENUMPIXELFORMATSCALLBACK lpEnumCallback,LPVOID lpContext) PURE; \ STDMETHOD(EvictManagedTextures)(THIS) PURE; -#define IDirect3D3_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3D3_METHODS ICOM_DEFINE(IDirect3D3,IUnknown) #undef INTERFACE @@ -301,14 +295,12 @@ ICOM_DEFINE(IDirect3D3,IUnknown) */ #define INTERFACE IDirect3D7 #define IDirect3D7_METHODS \ + IUnknown_METHODS \ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK7 lpEnumDevicesCallback, LPVOID lpUserArg) PURE; \ STDMETHOD(CreateDevice)(THIS_ REFCLSID rclsid,LPDIRECTDRAWSURFACE7 lpDDS, LPDIRECT3DDEVICE7 *lplpD3DDevice) PURE; \ STDMETHOD(CreateVertexBuffer)(THIS_ LPD3DVERTEXBUFFERDESC lpD3DVertBufDesc,LPDIRECT3DVERTEXBUFFER7 *lplpD3DVertBuf,DWORD dwFlags) PURE; \ STDMETHOD(EnumZBufferFormats)(THIS_ REFCLSID riidDevice,LPD3DENUMPIXELFORMATSCALLBACK lpEnumCallback,LPVOID lpContext) PURE; \ STDMETHOD(EvictManagedTextures)(THIS) PURE; -#define IDirect3D7_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3D7_METHODS ICOM_DEFINE(IDirect3D7,IUnknown) #undef INTERFACE @@ -331,12 +323,10 @@ ICOM_DEFINE(IDirect3D7,IUnknown) */ #define INTERFACE IDirect3DLight #define IDirect3DLight_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPDIRECT3D lpDirect3D) PURE; \ STDMETHOD(SetLight)(THIS_ LPD3DLIGHT lpLight) PURE; \ STDMETHOD(GetLight)(THIS_ LPD3DLIGHT lpLight) PURE; -#define IDirect3DLight_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DLight_METHODS ICOM_DEFINE(IDirect3DLight,IUnknown) #undef INTERFACE @@ -357,15 +347,13 @@ ICOM_DEFINE(IDirect3DLight,IUnknown) */ #define INTERFACE IDirect3DMaterial #define IDirect3DMaterial_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPDIRECT3D lpDirect3D) PURE; \ STDMETHOD(SetMaterial)(THIS_ LPD3DMATERIAL lpMat) PURE; \ STDMETHOD(GetMaterial)(THIS_ LPD3DMATERIAL lpMat) PURE; \ STDMETHOD(GetHandle)(THIS_ LPDIRECT3DDEVICE lpDirect3DDevice, LPD3DMATERIALHANDLE lpHandle) PURE; \ STDMETHOD(Reserve)(THIS) PURE; \ STDMETHOD(Unreserve)(THIS) PURE; -#define IDirect3DMaterial_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DMaterial_METHODS ICOM_DEFINE(IDirect3DMaterial,IUnknown) #undef INTERFACE @@ -389,12 +377,10 @@ ICOM_DEFINE(IDirect3DMaterial,IUnknown) */ #define INTERFACE IDirect3DMaterial2 #define IDirect3DMaterial2_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetMaterial)(THIS_ LPD3DMATERIAL lpMat) PURE; \ STDMETHOD(GetMaterial)(THIS_ LPD3DMATERIAL lpMat) PURE; \ STDMETHOD(GetHandle)(THIS_ LPDIRECT3DDEVICE2 lpDirect3DDevice2, LPD3DMATERIALHANDLE lpHandle) PURE; -#define IDirect3DMaterial2_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DMaterial2_METHODS ICOM_DEFINE(IDirect3DMaterial2,IUnknown) #undef INTERFACE @@ -415,12 +401,10 @@ ICOM_DEFINE(IDirect3DMaterial2,IUnknown) */ #define INTERFACE IDirect3DMaterial3 #define IDirect3DMaterial3_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetMaterial)(THIS_ LPD3DMATERIAL lpMat) PURE; \ STDMETHOD(GetMaterial)(THIS_ LPD3DMATERIAL lpMat) PURE; \ STDMETHOD(GetHandle)(THIS_ LPDIRECT3DDEVICE3 lpDirect3DDevice3, LPD3DMATERIALHANDLE lpHandle) PURE; -#define IDirect3DMaterial3_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DMaterial3_METHODS ICOM_DEFINE(IDirect3DMaterial3,IUnknown) #undef INTERFACE @@ -441,14 +425,12 @@ ICOM_DEFINE(IDirect3DMaterial3,IUnknown) */ #define INTERFACE IDirect3DTexture #define IDirect3DTexture_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPDIRECT3DDEVICE lpDirect3DDevice, LPDIRECTDRAWSURFACE lpDDSurface) PURE; \ STDMETHOD(GetHandle)(THIS_ LPDIRECT3DDEVICE lpDirect3DDevice, LPD3DTEXTUREHANDLE lpHandle) PURE; \ STDMETHOD(PaletteChanged)(THIS_ DWORD dwStart, DWORD dwCount) PURE; \ STDMETHOD(Load)(THIS_ LPDIRECT3DTEXTURE lpD3DTexture) PURE; \ STDMETHOD(Unload)(THIS) PURE; -#define IDirect3DTexture_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DTexture_METHODS ICOM_DEFINE(IDirect3DTexture,IUnknown) #undef INTERFACE @@ -471,12 +453,10 @@ ICOM_DEFINE(IDirect3DTexture,IUnknown) */ #define INTERFACE IDirect3DTexture2 #define IDirect3DTexture2_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetHandle)(THIS_ LPDIRECT3DDEVICE2 lpDirect3DDevice2, LPD3DTEXTUREHANDLE lpHandle) PURE; \ STDMETHOD(PaletteChanged)(THIS_ DWORD dwStart, DWORD dwCount) PURE; \ STDMETHOD(Load)(THIS_ LPDIRECT3DTEXTURE2 lpD3DTexture2) PURE; -#define IDirect3DTexture2_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DTexture2_METHODS ICOM_DEFINE(IDirect3DTexture2,IUnknown) #undef INTERFACE @@ -497,6 +477,7 @@ ICOM_DEFINE(IDirect3DTexture2,IUnknown) */ #define INTERFACE IDirect3DViewport #define IDirect3DViewport_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPDIRECT3D lpDirect3D) PURE; \ STDMETHOD(GetViewport)(THIS_ LPD3DVIEWPORT lpData) PURE; \ STDMETHOD(SetViewport)(THIS_ LPD3DVIEWPORT lpData) PURE; \ @@ -510,9 +491,6 @@ ICOM_DEFINE(IDirect3DTexture2,IUnknown) STDMETHOD(AddLight)(THIS_ LPDIRECT3DLIGHT lpDirect3DLight) PURE; \ STDMETHOD(DeleteLight)(THIS_ LPDIRECT3DLIGHT lpDirect3DLight) PURE; \ STDMETHOD(NextLight)(THIS_ LPDIRECT3DLIGHT lpDirect3DLight, LPDIRECT3DLIGHT *lplpDirect3DLight, DWORD dwFlags) PURE; -#define IDirect3DViewport_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DViewport_METHODS ICOM_DEFINE(IDirect3DViewport,IUnknown) #undef INTERFACE @@ -543,11 +521,9 @@ ICOM_DEFINE(IDirect3DViewport,IUnknown) */ #define INTERFACE IDirect3DViewport2 #define IDirect3DViewport2_METHODS \ + IDirect3DViewport_METHODS \ STDMETHOD(GetViewport2)(THIS_ LPD3DVIEWPORT2 lpData) PURE; \ STDMETHOD(SetViewport2)(THIS_ LPD3DVIEWPORT2 lpData) PURE; -#define IDirect3DViewport2_IMETHODS \ - IDirect3DViewport_IMETHODS \ - IDirect3DViewport2_METHODS ICOM_DEFINE(IDirect3DViewport2,IDirect3DViewport) #undef INTERFACE @@ -580,12 +556,10 @@ ICOM_DEFINE(IDirect3DViewport2,IDirect3DViewport) */ #define INTERFACE IDirect3DViewport3 #define IDirect3DViewport3_METHODS \ + IDirect3DViewport2_METHODS \ STDMETHOD(SetBackgroundDepth2)(THIS_ LPDIRECTDRAWSURFACE4 lpDDS) PURE; \ STDMETHOD(GetBackgroundDepth2)(THIS_ LPDIRECTDRAWSURFACE4 *lplpDDS,LPBOOL lpValid) PURE; \ STDMETHOD(Clear2)(THIS_ DWORD dwCount,LPD3DRECT lpRects,DWORD dwFlags,DWORD dwColor,D3DVALUE dvZ,DWORD dwStencil) PURE; -#define IDirect3DViewport3_IMETHODS \ - IDirect3DViewport2_IMETHODS \ - IDirect3DViewport3_METHODS ICOM_DEFINE(IDirect3DViewport3,IDirect3DViewport2) #undef INTERFACE @@ -624,6 +598,7 @@ ICOM_DEFINE(IDirect3DViewport3,IDirect3DViewport2) */ #define INTERFACE IDirect3DExecuteBuffer #define IDirect3DExecuteBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPDIRECT3DDEVICE lpDirect3DDevice, LPD3DEXECUTEBUFFERDESC lpDesc) PURE; \ STDMETHOD(Lock)(THIS_ LPD3DEXECUTEBUFFERDESC lpDesc) PURE; \ STDMETHOD(Unlock)(THIS) PURE; \ @@ -631,9 +606,6 @@ ICOM_DEFINE(IDirect3DViewport3,IDirect3DViewport2) STDMETHOD(GetExecuteData)(THIS_ LPD3DEXECUTEDATA lpData) PURE; \ STDMETHOD(Validate)(THIS_ LPDWORD lpdwOffset, LPD3DVALIDATECALLBACK lpFunc, LPVOID lpUserArg, DWORD dwReserved) PURE; \ STDMETHOD(Optimize)(THIS_ DWORD dwDummy) PURE; -#define IDirect3DExecuteBuffer_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DExecuteBuffer_METHODS ICOM_DEFINE(IDirect3DExecuteBuffer,IUnknown) #undef INTERFACE @@ -658,6 +630,7 @@ ICOM_DEFINE(IDirect3DExecuteBuffer,IUnknown) */ #define INTERFACE IDirect3DDevice #define IDirect3DDevice_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPDIRECT3D lpDirect3D, LPGUID lpGUID, LPD3DDEVICEDESC lpD3DDVDesc) PURE; \ STDMETHOD(GetCaps)(THIS_ LPD3DDEVICEDESC lpD3DHWDevDesc, LPD3DDEVICEDESC lpD3DHELDevDesc) PURE; \ STDMETHOD(SwapTextureHandles)(THIS_ LPDIRECT3DTEXTURE lpD3Dtex1, LPDIRECT3DTEXTURE lpD3DTex2) PURE; \ @@ -677,9 +650,6 @@ ICOM_DEFINE(IDirect3DExecuteBuffer,IUnknown) STDMETHOD(BeginScene)(THIS) PURE; \ STDMETHOD(EndScene)(THIS) PURE; \ STDMETHOD(GetDirect3D)(THIS_ LPDIRECT3D *lplpDirect3D) PURE; -#define IDirect3DDevice_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DDevice_METHODS ICOM_DEFINE(IDirect3DDevice,IUnknown) #undef INTERFACE @@ -716,6 +686,7 @@ ICOM_DEFINE(IDirect3DDevice,IUnknown) */ #define INTERFACE IDirect3DDevice2 #define IDirect3DDevice2_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPD3DDEVICEDESC lpD3DHWDevDesc, LPD3DDEVICEDESC lpD3DHELDevDesc) PURE; \ STDMETHOD(SwapTextureHandles)(THIS_ LPDIRECT3DTEXTURE2 lpD3DTex1, LPDIRECT3DTEXTURE2 lpD3DTex2) PURE; \ STDMETHOD(GetStats)(THIS_ LPD3DSTATS lpD3DStats) PURE; \ @@ -747,9 +718,6 @@ ICOM_DEFINE(IDirect3DDevice,IUnknown) STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE d3dptPrimitiveType, D3DVERTEXTYPE d3dvtVertexType, LPVOID lpvVertices, DWORD dwVertexCount, LPWORD dwIndices, DWORD dwIndexCount, DWORD dwFlags) PURE; \ STDMETHOD(SetClipStatus)(THIS_ LPD3DCLIPSTATUS lpD3DClipStatus) PURE; \ STDMETHOD(GetClipStatus)(THIS_ LPD3DCLIPSTATUS lpD3DClipStatus) PURE; -#define IDirect3DDevice2_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DDevice2_METHODS ICOM_DEFINE(IDirect3DDevice2,IUnknown) #undef INTERFACE @@ -796,6 +764,7 @@ ICOM_DEFINE(IDirect3DDevice2,IUnknown) */ #define INTERFACE IDirect3DDevice3 #define IDirect3DDevice3_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPD3DDEVICEDESC lpD3DHWDevDesc, LPD3DDEVICEDESC lpD3DHELDevDesc) PURE; \ STDMETHOD(GetStats)(THIS_ LPD3DSTATS lpD3DStats) PURE; \ STDMETHOD(AddViewport)(THIS_ LPDIRECT3DVIEWPORT3 lpDirect3DViewport3) PURE; \ @@ -836,9 +805,6 @@ ICOM_DEFINE(IDirect3DDevice2,IUnknown) STDMETHOD(GetTextureStageState)(THIS_ DWORD dwStage,D3DTEXTURESTAGESTATETYPE d3dTexStageStateType,LPDWORD lpdwState) PURE; \ STDMETHOD(SetTextureStageState)(THIS_ DWORD dwStage,D3DTEXTURESTAGESTATETYPE d3dTexStageStateType,DWORD dwState) PURE; \ STDMETHOD(ValidateDevice)(THIS_ LPDWORD lpdwPasses) PURE; -#define IDirect3DDevice3_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DDevice3_METHODS ICOM_DEFINE(IDirect3DDevice3,IUnknown) #undef INTERFACE @@ -894,6 +860,7 @@ ICOM_DEFINE(IDirect3DDevice3,IUnknown) */ #define INTERFACE IDirect3DDevice7 #define IDirect3DDevice7_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPD3DDEVICEDESC7 lpD3DHELDevDesc) PURE; \ STDMETHOD(EnumTextureFormats)(THIS_ LPD3DENUMPIXELFORMATSCALLBACK lpD3DEnumPixelProc, LPVOID lpArg) PURE; \ STDMETHOD(BeginScene)(THIS) PURE; \ @@ -940,9 +907,6 @@ ICOM_DEFINE(IDirect3DDevice3,IUnknown) STDMETHOD(SetClipPlane)(THIS_ DWORD dwIndex,D3DVALUE *pPlaneEquation) PURE; \ STDMETHOD(GetClipPlane)(THIS_ DWORD dwIndex,D3DVALUE *pPlaneEquation) PURE; \ STDMETHOD(GetInfo)(THIS_ DWORD dwDevInfoID,LPVOID pDevInfoStruct,DWORD dwSize) PURE; -#define IDirect3DDevice7_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DDevice7_METHODS ICOM_DEFINE(IDirect3DDevice7,IUnknown) #undef INTERFACE @@ -1005,14 +969,12 @@ ICOM_DEFINE(IDirect3DDevice7,IUnknown) */ #define INTERFACE IDirect3DVertexBuffer #define IDirect3DVertexBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(Lock)(THIS_ DWORD dwFlags,LPVOID *lplpData,LPDWORD lpdwSize) PURE; \ STDMETHOD(Unlock)(THIS) PURE; \ STDMETHOD(ProcessVertices)(THIS_ DWORD dwVertexOp,DWORD dwDestIndex,DWORD dwCount,LPDIRECT3DVERTEXBUFFER lpSrcBuffer,DWORD dwSrcIndex,LPDIRECT3DDEVICE3 lpD3DDevice,DWORD dwFlags) PURE; \ STDMETHOD(GetVertexBufferDesc)(THIS_ LPD3DVERTEXBUFFERDESC lpD3DVertexBufferDesc) PURE; \ STDMETHOD(Optimize)(THIS_ LPDIRECT3DDEVICE3 lpD3DDevice,DWORD dwFlags) PURE; -#define IDirect3DVertexBuffer_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DVertexBuffer_METHODS ICOM_DEFINE(IDirect3DVertexBuffer,IUnknown) #undef INTERFACE @@ -1034,15 +996,13 @@ ICOM_DEFINE(IDirect3DVertexBuffer,IUnknown) */ #define INTERFACE IDirect3DVertexBuffer7 #define IDirect3DVertexBuffer7_METHODS \ + IUnknown_METHODS \ STDMETHOD(Lock)(THIS_ DWORD dwFlags,LPVOID *lplpData,LPDWORD lpdwSize) PURE; \ STDMETHOD(Unlock)(THIS) PURE; \ STDMETHOD(ProcessVertices)(THIS_ DWORD dwVertexOp,DWORD dwDestIndex,DWORD dwCount,LPDIRECT3DVERTEXBUFFER7 lpSrcBuffer,DWORD dwSrcIndex,LPDIRECT3DDEVICE7 lpD3DDevice,DWORD dwFlags) PURE; \ STDMETHOD(GetVertexBufferDesc)(THIS_ LPD3DVERTEXBUFFERDESC lpD3DVertexBufferDesc) PURE; \ STDMETHOD(Optimize)(THIS_ LPDIRECT3DDEVICE7 lpD3DDevice,DWORD dwFlags) PURE; \ STDMETHOD(ProcessVerticesStrided)(THIS_ DWORD dwVertexOp,DWORD dwDestIndex,DWORD dwCount,LPD3DDRAWPRIMITIVESTRIDEDDATA lpStrideData,DWORD dwVertexTypeDesc,LPDIRECT3DDEVICE7 lpD3DDevice,DWORD dwFlags) PURE; -#define IDirect3DVertexBuffer7_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DVertexBuffer7_METHODS ICOM_DEFINE(IDirect3DVertexBuffer7,IUnknown) #undef INTERFACE diff --git a/include/d3d8.h b/include/d3d8.h index 85a19704bdd..0a9826ac1bf 100644 --- a/include/d3d8.h +++ b/include/d3d8.h @@ -104,7 +104,7 @@ typedef struct IDirect3DVolumeTexture8 IDirect3DVolumeTexture8, *LPDIRECT3DVOL */ #define INTERFACE IDirect3D8 #define IDirect3D8_METHODS \ - /*** IDirect3D8 methods ***/ \ + IUnknown_METHODS \ STDMETHOD(RegisterSoftwareDevice)(THIS_ void * pInitializeFunction) PURE; \ STDMETHOD_(UINT,GetAdapterCount )(THIS) PURE; \ STDMETHOD(GetAdapterIdentifier)(THIS_ UINT Adapter, DWORD Flags, D3DADAPTER_IDENTIFIER8 * pIdentifier) PURE; \ @@ -118,11 +118,6 @@ typedef struct IDirect3DVolumeTexture8 IDirect3DVolumeTexture8, *LPDIRECT3DVOL STDMETHOD(GetDeviceCaps)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DCAPS8 * pCaps) PURE; \ STDMETHOD_(HMONITOR,GetAdapterMonitor)(THIS_ UINT Adapter) PURE; \ STDMETHOD(CreateDevice)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType,HWND hFocusWindow, DWORD BehaviorFlags, D3DPRESENT_PARAMETERS * pPresentationParameters, IDirect3DDevice8 ** ppReturnedDeviceInterface) PURE; - - /*** IDirect3D8 methods ***/ -#define IDirect3D8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3D8_METHODS ICOM_DEFINE(IDirect3D8,IUnknown) #undef INTERFACE @@ -152,7 +147,7 @@ ICOM_DEFINE(IDirect3D8,IUnknown) */ #define INTERFACE IDirect3DDevice8 #define IDirect3DDevice8_METHODS \ - /*** IDirect3DDevice8 methods ***/ \ + IUnknown_METHODS \ STDMETHOD(TestCooperativeLevel)(THIS) PURE; \ STDMETHOD_(UINT,GetAvailableTextureMem)(THIS) PURE; \ STDMETHOD(ResourceManagerDiscardBytes)(THIS_ DWORD Bytes) PURE; \ @@ -246,12 +241,7 @@ ICOM_DEFINE(IDirect3D8,IUnknown) STDMETHOD(GetPixelShaderFunction)(THIS_ DWORD Handle,void * pData,DWORD * pSizeOfData) PURE; \ STDMETHOD(DrawRectPatch)(THIS_ UINT Handle,CONST float * pNumSegs,CONST D3DRECTPATCH_INFO * pRectPatchInfo) PURE; \ STDMETHOD(DrawTriPatch)(THIS_ UINT Handle,CONST float * pNumSegs,CONST D3DTRIPATCH_INFO * pTriPatchInfo) PURE; \ - STDMETHOD(DeletePatch)(THIS_ UINT Handle) PURE; \ - - /*** IDirect3DDevice8 methods ***/ -#define IDirect3DDevice8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DDevice8_METHODS + STDMETHOD(DeletePatch)(THIS_ UINT Handle) PURE; ICOM_DEFINE(IDirect3DDevice8,IUnknown) #undef INTERFACE @@ -362,7 +352,7 @@ ICOM_DEFINE(IDirect3DDevice8,IUnknown) */ #define INTERFACE IDirect3DVolume8 #define IDirect3DVolume8_METHODS \ - /*** IDirect3DVolume8 methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetDevice)(THIS_ IDirect3DDevice8 ** ppDevice) PURE; \ STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void * pData, DWORD SizeOfData, DWORD Flags) PURE; \ STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void * pData, DWORD * pSizeOfData) PURE; \ @@ -370,12 +360,7 @@ ICOM_DEFINE(IDirect3DDevice8,IUnknown) STDMETHOD(GetContainer)(THIS_ REFIID riid, void ** ppContainer) PURE; \ STDMETHOD(GetDesc)(THIS_ D3DVOLUME_DESC * pDesc) PURE; \ STDMETHOD(LockBox)(THIS_ D3DLOCKED_BOX * pLockedVolume,CONST D3DBOX * pBox, DWORD Flags) PURE; \ - STDMETHOD(UnlockBox)(THIS) PURE; \ - - /*** IDirect3DVolume8 methods ***/ -#define IDirect3DVolume8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DVolume8_METHODS + STDMETHOD(UnlockBox)(THIS) PURE; ICOM_DEFINE(IDirect3DVolume8,IUnknown) #undef INTERFACE @@ -400,14 +385,9 @@ ICOM_DEFINE(IDirect3DVolume8,IUnknown) */ #define INTERFACE IDirect3DSwapChain8 #define IDirect3DSwapChain8_METHODS \ - /*** IDirect3DSwapChain8 methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Present)(THIS_ CONST RECT * pSourceRect, CONST RECT * pDestRect, HWND hDestWindowOverride,CONST RGNDATA * pDirtyRegion) PURE; \ - STDMETHOD(GetBackBuffer)(THIS_ UINT BackBuffer, D3DBACKBUFFER_TYPE Type,IDirect3DSurface8 ** ppBackBuffer) PURE; \ - - /*** IDirect3DSwapChain8 methods ***/ -#define IDirect3DSwapChain8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DSwapChain8_METHODS + STDMETHOD(GetBackBuffer)(THIS_ UINT BackBuffer, D3DBACKBUFFER_TYPE Type,IDirect3DSurface8 ** ppBackBuffer) PURE; ICOM_DEFINE(IDirect3DSwapChain8,IUnknown) #undef INTERFACE @@ -426,7 +406,7 @@ ICOM_DEFINE(IDirect3DSwapChain8,IUnknown) */ #define INTERFACE IDirect3DSurface8 #define IDirect3DSurface8_METHODS \ - /*** IDirect3DSurface8 methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetDevice)(THIS_ IDirect3DDevice8 ** ppDevice) PURE; \ STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid,CONST void * pData,DWORD SizeOfData,DWORD Flags) PURE; \ STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void * pData,DWORD * pSizeOfData) PURE; \ @@ -434,12 +414,7 @@ ICOM_DEFINE(IDirect3DSwapChain8,IUnknown) STDMETHOD(GetContainer)(THIS_ REFIID riid, void ** ppContainer) PURE; \ STDMETHOD(GetDesc)(THIS_ D3DSURFACE_DESC * pDesc) PURE; \ STDMETHOD(LockRect)(THIS_ D3DLOCKED_RECT * pLockedRect, CONST RECT * pRect,DWORD Flags) PURE; \ - STDMETHOD(UnlockRect)(THIS) PURE; \ - - /*** IDirect3DSurface8 methods ***/ -#define IDirect3DSurface8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DSurface8_METHODS + STDMETHOD(UnlockRect)(THIS) PURE; ICOM_DEFINE(IDirect3DSurface8,IUnknown) #undef INTERFACE @@ -464,7 +439,7 @@ ICOM_DEFINE(IDirect3DSurface8,IUnknown) */ #define INTERFACE IDirect3DResource8 #define IDirect3DResource8_METHODS \ - /*** IDirect3DResource8 methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetDevice)(THIS_ IDirect3DDevice8 ** ppDevice) PURE; \ STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, CONST void * pData, DWORD SizeOfData, DWORD Flags) PURE; \ STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; \ @@ -473,11 +448,6 @@ ICOM_DEFINE(IDirect3DSurface8,IUnknown) STDMETHOD_(DWORD,GetPriority)(THIS) PURE; \ STDMETHOD_(void,PreLoad)(THIS) PURE; \ STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; - - /*** IDirect3DResource8 methods ***/ -#define IDirect3DResource8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS ICOM_DEFINE(IDirect3DResource8,IUnknown) #undef INTERFACE @@ -502,16 +472,10 @@ ICOM_DEFINE(IDirect3DResource8,IUnknown) */ #define INTERFACE IDirect3DVertexBuffer8 #define IDirect3DVertexBuffer8_METHODS \ - /*** IDirect3DVertexBuffer8 methods ***/ \ + IDirect3DResource8_METHODS \ STDMETHOD(Lock)(THIS_ UINT OffsetToLock, UINT SizeToLock, BYTE ** ppbData, DWORD Flags) PURE; \ STDMETHOD(Unlock)(THIS) PURE; \ STDMETHOD(GetDesc)(THIS_ D3DVERTEXBUFFER_DESC * pDesc) PURE; - - /*** IDirect3DVertexBuffer8 methods ***/ -#define IDirect3DVertexBuffer8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS \ - IDirect3DVertexBuffer8_METHODS ICOM_DEFINE(IDirect3DVertexBuffer8,IDirect3DResource8) #undef INTERFACE @@ -540,16 +504,10 @@ ICOM_DEFINE(IDirect3DVertexBuffer8,IDirect3DResource8) */ #define INTERFACE IDirect3DIndexBuffer8 #define IDirect3DIndexBuffer8_METHODS \ - /*** IDirect3DIndexBuffer8 methods ***/ \ + IDirect3DResource8_METHODS \ STDMETHOD(Lock)(THIS_ UINT OffsetToLock, UINT SizeToLock, BYTE ** ppbData, DWORD Flags) PURE; \ STDMETHOD(Unlock)(THIS) PURE; \ - STDMETHOD(GetDesc)(THIS_ D3DINDEXBUFFER_DESC * pDesc) PURE; \ - - /*** IDirect3DIndexBuffer8 methods ***/ -#define IDirect3DIndexBuffer8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS \ - IDirect3DIndexBuffer8_METHODS + STDMETHOD(GetDesc)(THIS_ D3DINDEXBUFFER_DESC * pDesc) PURE; ICOM_DEFINE(IDirect3DIndexBuffer8,IDirect3DResource8) #undef INTERFACE @@ -578,16 +536,10 @@ ICOM_DEFINE(IDirect3DIndexBuffer8,IDirect3DResource8) */ #define INTERFACE IDirect3DBaseTexture8 #define IDirect3DBaseTexture8_METHODS \ - /*** IDirect3DBaseTexture8 methods ***/ \ + IDirect3DResource8_METHODS \ STDMETHOD_(DWORD,SetLOD)(THIS_ DWORD LODNew) PURE; \ STDMETHOD_(DWORD,GetLOD)(THIS) PURE; \ STDMETHOD_(DWORD,GetLevelCount)(THIS) PURE; - - /*** IDirect3DBaseTexture8 methods ***/ -#define IDirect3DBaseTexture8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS \ - IDirect3DBaseTexture8_METHODS ICOM_DEFINE(IDirect3DBaseTexture8,IDirect3DResource8) #undef INTERFACE @@ -616,19 +568,12 @@ ICOM_DEFINE(IDirect3DBaseTexture8,IDirect3DResource8) */ #define INTERFACE IDirect3DCubeTexture8 #define IDirect3DCubeTexture8_METHODS \ - /*** IDirect3DCubeTexture8 methods ***/ \ + IDirect3DBaseTexture8_METHODS \ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC * pDesc) PURE; \ STDMETHOD(GetCubeMapSurface)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level,IDirect3DSurface8 ** ppCubeMapSurface) PURE; \ STDMETHOD(LockRect)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level,D3DLOCKED_RECT * pLockedRect,CONST RECT * pRect,DWORD Flags) PURE; \ STDMETHOD(UnlockRect)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level) PURE; \ - STDMETHOD(AddDirtyRect)(THIS_ D3DCUBEMAP_FACES FaceType,CONST RECT * pDirtyRect) PURE; \ - - /*** IDirect3DCubeTexture8 methods ***/ -#define IDirect3DCubeTexture8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS \ - IDirect3DBaseTexture8_METHODS \ - IDirect3DCubeTexture8_METHODS + STDMETHOD(AddDirtyRect)(THIS_ D3DCUBEMAP_FACES FaceType,CONST RECT * pDirtyRect) PURE; ICOM_DEFINE(IDirect3DCubeTexture8,IDirect3DBaseTexture8) #undef INTERFACE @@ -663,19 +608,12 @@ ICOM_DEFINE(IDirect3DCubeTexture8,IDirect3DBaseTexture8) */ #define INTERFACE IDirect3DTexture8 #define IDirect3DTexture8_METHODS \ - /*** IDirect3DTexture8 methods ***/ \ + IDirect3DBaseTexture8_METHODS \ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC * pDesc) PURE; \ STDMETHOD(GetSurfaceLevel)(THIS_ UINT Level,IDirect3DSurface8 ** ppSurfaceLevel) PURE; \ STDMETHOD(LockRect)(THIS_ UINT Level,D3DLOCKED_RECT * pLockedRect,CONST RECT * pRect,DWORD Flags) PURE; \ STDMETHOD(UnlockRect)(THIS_ UINT Level) PURE; \ - STDMETHOD(AddDirtyRect)(THIS_ CONST RECT * pDirtyRect) PURE; \ - - /*** IDirect3DTexture8 methods ***/ -#define IDirect3DTexture8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS \ - IDirect3DBaseTexture8_METHODS \ - IDirect3DTexture8_METHODS + STDMETHOD(AddDirtyRect)(THIS_ CONST RECT * pDirtyRect) PURE; ICOM_DEFINE(IDirect3DTexture8,IDirect3DBaseTexture8) #undef INTERFACE @@ -710,19 +648,12 @@ ICOM_DEFINE(IDirect3DTexture8,IDirect3DBaseTexture8) */ #define INTERFACE IDirect3DVolumeTexture8 #define IDirect3DVolumeTexture8_METHODS \ - /*** IDirect3DVolumeTexture8 methods ***/ \ + IDirect3DBaseTexture8_METHODS \ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DVOLUME_DESC * pDesc) PURE; \ STDMETHOD(GetVolumeLevel)(THIS_ UINT Level,IDirect3DVolume8 ** ppVolumeLevel) PURE; \ STDMETHOD(LockBox)(THIS_ UINT Level,D3DLOCKED_BOX * pLockedVolume,CONST D3DBOX * pBox,DWORD Flags) PURE; \ STDMETHOD(UnlockBox)(THIS_ UINT Level) PURE; \ STDMETHOD(AddDirtyBox)(THIS_ CONST D3DBOX * pDirtyBox) PURE; - - /*** IDirect3DVolumeTexture8 methods ***/ -#define IDirect3DVolumeTexture8_IMETHODS \ - IUnknown_IMETHODS \ - IDirect3DResource8_METHODS \ - IDirect3DBaseTexture8_METHODS \ - IDirect3DVolumeTexture8_METHODS ICOM_DEFINE(IDirect3DVolumeTexture8,IDirect3DBaseTexture8) #undef INTERFACE diff --git a/include/d3dx8core.h b/include/d3dx8core.h index a0f614a3bef..610b7d92486 100644 --- a/include/d3dx8core.h +++ b/include/d3dx8core.h @@ -58,14 +58,9 @@ typedef struct ID3DXFont ID3DXFont, *LPD3DXFONT; #undef INTERFACE #define INTERFACE ID3DXBuffer #define ID3DXBuffer_METHODS \ - /*** ID3DXBuffer methods ***/ \ + IUnknown_METHODS \ STDMETHOD_(LPVOID,GetBufferPointer)(THIS) PURE; \ STDMETHOD_(DWORD,GetBufferSize)(THIS) PURE; - - /*** ID3DXBuffer methods ***/ -#define ID3DXBuffer_IMETHODS \ - IUnknown_IMETHODS \ - ID3DXBuffer_METHODS ICOM_DEFINE(ID3DXBuffer,IUnknown) #undef INTERFACE @@ -85,15 +80,10 @@ ICOM_DEFINE(ID3DXBuffer,IUnknown) #undef INTERFACE #define INTERFACE ID3DXFont #define ID3DXFont_METHODS \ - /*** ID3DXFont methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Begin)(THIS) PURE; \ STDMETHOD(DrawTextA)(THIS) PURE; \ STDMETHOD(End)(THIS) PURE; - - /*** ID3DXFont methods ***/ -#define ID3DXFont_IMETHODS \ - IUnknown_IMETHODS \ - ID3DXFont_METHODS ICOM_DEFINE(ID3DXFont,IUnknown) #undef INTERFACE diff --git a/include/ddraw.h b/include/ddraw.h index d0ea95d82b7..ba42399d2cb 100644 --- a/include/ddraw.h +++ b/include/ddraw.h @@ -1203,13 +1203,11 @@ typedef struct tagDDDEVICEIDENTIFIER2 { */ #define INTERFACE IDirectDrawPalette #define IDirectDrawPalette_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPDWORD lpdwCaps) PURE; \ STDMETHOD(GetEntries)(THIS_ DWORD dwFlags, DWORD dwBase, DWORD dwNumEntries, LPPALETTEENTRY lpEntries) PURE; \ STDMETHOD(Initialize)(THIS_ LPDIRECTDRAW lpDD, DWORD dwFlags, LPPALETTEENTRY lpDDColorTable) PURE; \ STDMETHOD(SetEntries)(THIS_ DWORD dwFlags, DWORD dwStartingEntry, DWORD dwCount, LPPALETTEENTRY lpEntries) PURE; -#define IDirectDrawPalette_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawPalette_METHODS ICOM_DEFINE(IDirectDrawPalette,IUnknown) #undef INTERFACE @@ -1231,15 +1229,13 @@ ICOM_DEFINE(IDirectDrawPalette,IUnknown) */ #define INTERFACE IDirectDrawClipper #define IDirectDrawClipper_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetClipList)(THIS_ LPRECT lpRect, LPRGNDATA lpClipList, LPDWORD lpdwSize) PURE; \ STDMETHOD(GetHWnd)(THIS_ HWND *lphWnd) PURE; \ STDMETHOD(Initialize)(THIS_ LPDIRECTDRAW lpDD, DWORD dwFlags) PURE; \ STDMETHOD(IsClipListChanged)(THIS_ BOOL *lpbChanged) PURE; \ STDMETHOD(SetClipList)(THIS_ LPRGNDATA lpClipList, DWORD dwFlags) PURE; \ STDMETHOD(SetHWnd)(THIS_ DWORD dwFlags, HWND hWnd) PURE; -#define IDirectDrawClipper_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawClipper_METHODS ICOM_DEFINE(IDirectDrawClipper,IUnknown) #undef INTERFACE @@ -1263,6 +1259,7 @@ ICOM_DEFINE(IDirectDrawClipper,IUnknown) */ #define INTERFACE IDirectDraw #define IDirectDraw_METHODS \ + IUnknown_METHODS \ STDMETHOD(Compact)(THIS) PURE; \ STDMETHOD(CreateClipper)(THIS_ DWORD dwFlags, LPDIRECTDRAWCLIPPER *lplpDDClipper, IUnknown *pUnkOuter) PURE; \ STDMETHOD(CreatePalette)(THIS_ DWORD dwFlags, LPPALETTEENTRY lpColorTable, LPDIRECTDRAWPALETTE *lplpDDPalette, IUnknown *pUnkOuter) PURE; \ @@ -1283,9 +1280,6 @@ ICOM_DEFINE(IDirectDrawClipper,IUnknown) STDMETHOD(SetCooperativeLevel)(THIS_ HWND hWnd, DWORD dwFlags) PURE; \ STDMETHOD(SetDisplayMode)(THIS_ DWORD dwWidth, DWORD dwHeight, DWORD dwBPP) PURE; \ STDMETHOD(WaitForVerticalBlank)(THIS_ DWORD dwFlags, HANDLE hEvent) PURE; -#define IDirectDraw_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDraw_METHODS ICOM_DEFINE(IDirectDraw,IUnknown) #undef INTERFACE @@ -1337,6 +1331,7 @@ ICOM_DEFINE(IDirectDraw,IUnknown) */ #define INTERFACE IDirectDraw2 #define IDirectDraw2_METHODS \ +/*00*/ IUnknown_METHODS \ /*0c*/ STDMETHOD(Compact)(THIS) PURE; \ /*10*/ STDMETHOD(CreateClipper)(THIS_ DWORD dwFlags, LPDIRECTDRAWCLIPPER *lplpDDClipper, IUnknown *pUnkOuter) PURE; \ /*14*/ STDMETHOD(CreatePalette)(THIS_ DWORD dwFlags, LPPALETTEENTRY lpColorTable, LPDIRECTDRAWPALETTE *lplpDDPalette, IUnknown *pUnkOuter) PURE; \ @@ -1359,9 +1354,6 @@ ICOM_DEFINE(IDirectDraw,IUnknown) /*58*/ STDMETHOD(WaitForVerticalBlank)(THIS_ DWORD dwFlags, HANDLE hEvent) PURE; \ /* added in v2 */ \ /*5c*/ STDMETHOD(GetAvailableVidMem)(THIS_ LPDDSCAPS lpDDCaps, LPDWORD lpdwTotal, LPDWORD lpdwFree) PURE; -#define IDirectDraw2_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDraw2_METHODS ICOM_DEFINE(IDirectDraw2,IUnknown) #undef INTERFACE @@ -1401,6 +1393,7 @@ ICOM_DEFINE(IDirectDraw2,IUnknown) */ #define INTERFACE IDirectDraw4 #define IDirectDraw4_METHODS \ +/*00*/ IUnknown_METHODS \ /*0c*/ STDMETHOD(Compact)(THIS) PURE; \ /*10*/ STDMETHOD(CreateClipper)(THIS_ DWORD dwFlags, LPDIRECTDRAWCLIPPER *lplpDDClipper, IUnknown *pUnkOuter) PURE; \ /*14*/ STDMETHOD(CreatePalette)(THIS_ DWORD dwFlags, LPPALETTEENTRY lpColorTable, LPDIRECTDRAWPALETTE *lplpDDPalette, IUnknown *pUnkOuter) PURE; \ @@ -1428,9 +1421,6 @@ ICOM_DEFINE(IDirectDraw2,IUnknown) /*64*/ STDMETHOD(RestoreAllSurfaces)(THIS) PURE; \ /*68*/ STDMETHOD(TestCooperativeLevel)(THIS) PURE; \ /*6c*/ STDMETHOD(GetDeviceIdentifier)(THIS_ LPDDDEVICEIDENTIFIER pDDDI, DWORD dwFlags) PURE; -#define IDirectDraw4_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDraw4_METHODS ICOM_DEFINE(IDirectDraw4,IUnknown) #undef INTERFACE @@ -1478,6 +1468,7 @@ ICOM_DEFINE(IDirectDraw4,IUnknown) */ #define INTERFACE IDirectDraw7 #define IDirectDraw7_METHODS \ +/*00*/ IUnknown_METHODS \ /*0c*/ STDMETHOD(Compact)(THIS) PURE; \ /*10*/ STDMETHOD(CreateClipper)(THIS_ DWORD dwFlags, LPDIRECTDRAWCLIPPER *lplpDDClipper, IUnknown *pUnkOuter) PURE; \ /*14*/ STDMETHOD(CreatePalette)(THIS_ DWORD dwFlags, LPPALETTEENTRY lpColorTable, LPDIRECTDRAWPALETTE *lplpDDPalette, IUnknown *pUnkOuter) PURE; \ @@ -1508,9 +1499,6 @@ ICOM_DEFINE(IDirectDraw4,IUnknown) /* added in v7 */ \ /*70*/ STDMETHOD(StartModeTest)(THIS_ LPSIZE pModes, DWORD dwNumModes, DWORD dwFlags) PURE; \ /*74*/ STDMETHOD(EvaluateMode)(THIS_ DWORD dwFlags, DWORD *pTimeout) PURE; -#define IDirectDraw7_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDraw7_METHODS ICOM_DEFINE(IDirectDraw7,IUnknown) #undef INTERFACE @@ -1558,6 +1546,7 @@ ICOM_DEFINE(IDirectDraw7,IUnknown) */ #define INTERFACE IDirectDrawSurface #define IDirectDrawSurface_METHODS \ +/*00*/ IUnknown_METHODS \ /*0c*/ STDMETHOD(AddAttachedSurface)(THIS_ LPDIRECTDRAWSURFACE lpDDSAttachedSurface) PURE; \ /*10*/ STDMETHOD(AddOverlayDirtyRect)(THIS_ LPRECT lpRect) PURE; \ /*14*/ STDMETHOD(Blt)(THIS_ LPRECT lpDestRect, LPDIRECTDRAWSURFACE lpDDSrcSurface, LPRECT lpSrcRect, DWORD dwFlags, LPDDBLTFX lpDDBltFx) PURE; \ @@ -1591,9 +1580,6 @@ ICOM_DEFINE(IDirectDraw7,IUnknown) /*84*/ STDMETHOD(UpdateOverlay)(THIS_ LPRECT lpSrcRect, LPDIRECTDRAWSURFACE lpDDDestSurface, LPRECT lpDestRect, DWORD dwFlags, LPDDOVERLAYFX lpDDOverlayFx) PURE; \ /*88*/ STDMETHOD(UpdateOverlayDisplay)(THIS_ DWORD dwFlags) PURE; \ /*8c*/ STDMETHOD(UpdateOverlayZOrder)(THIS_ DWORD dwFlags, LPDIRECTDRAWSURFACE lpDDSReference) PURE; -#define IDirectDrawSurface_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawSurface_METHODS ICOM_DEFINE(IDirectDrawSurface,IUnknown) #undef INTERFACE @@ -1647,6 +1633,7 @@ ICOM_DEFINE(IDirectDrawSurface,IUnknown) */ #define INTERFACE IDirectDrawSurface2 #define IDirectDrawSurface2_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddAttachedSurface)(THIS_ LPDIRECTDRAWSURFACE2 lpDDSAttachedSurface) PURE; \ STDMETHOD(AddOverlayDirtyRect)(THIS_ LPRECT lpRect) PURE; \ STDMETHOD(Blt)(THIS_ LPRECT lpDestRect, LPDIRECTDRAWSURFACE2 lpDDSrcSurface, LPRECT lpSrcRect, DWORD dwFlags, LPDDBLTFX lpDDBltFx) PURE; \ @@ -1684,9 +1671,6 @@ ICOM_DEFINE(IDirectDrawSurface,IUnknown) STDMETHOD(GetDDInterface)(THIS_ LPVOID *lplpDD) PURE; \ STDMETHOD(PageLock)(THIS_ DWORD dwFlags) PURE; \ STDMETHOD(PageUnlock)(THIS_ DWORD dwFlags) PURE; -#define IDirectDrawSurface2_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawSurface2_METHODS ICOM_DEFINE(IDirectDrawSurface2,IUnknown) #undef INTERFACE @@ -1744,6 +1728,7 @@ ICOM_DEFINE(IDirectDrawSurface2,IUnknown) */ #define INTERFACE IDirectDrawSurface3 #define IDirectDrawSurface3_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddAttachedSurface)(THIS_ LPDIRECTDRAWSURFACE3 lpDDSAttachedSurface) PURE; \ STDMETHOD(AddOverlayDirtyRect)(THIS_ LPRECT lpRect) PURE; \ STDMETHOD(Blt)(THIS_ LPRECT lpDestRect, LPDIRECTDRAWSURFACE3 lpDDSrcSurface, LPRECT lpSrcRect, DWORD dwFlags, LPDDBLTFX lpDDBltFx) PURE; \ @@ -1783,9 +1768,6 @@ ICOM_DEFINE(IDirectDrawSurface2,IUnknown) STDMETHOD(PageUnlock)(THIS_ DWORD dwFlags) PURE; \ /* added in v3 */ \ STDMETHOD(SetSurfaceDesc)(THIS_ LPDDSURFACEDESC lpDDSD, DWORD dwFlags) PURE; -#define IDirectDrawSurface3_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawSurface3_METHODS ICOM_DEFINE(IDirectDrawSurface3,IUnknown) #undef INTERFACE @@ -1844,6 +1826,7 @@ ICOM_DEFINE(IDirectDrawSurface3,IUnknown) */ #define INTERFACE IDirectDrawSurface4 #define IDirectDrawSurface4_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddAttachedSurface)(THIS_ LPDIRECTDRAWSURFACE4 lpDDSAttachedSurface) PURE; \ STDMETHOD(AddOverlayDirtyRect)(THIS_ LPRECT lpRect) PURE; \ STDMETHOD(Blt)(THIS_ LPRECT lpDestRect, LPDIRECTDRAWSURFACE4 lpDDSrcSurface, LPRECT lpSrcRect, DWORD dwFlags, LPDDBLTFX lpDDBltFx) PURE; \ @@ -1889,9 +1872,6 @@ ICOM_DEFINE(IDirectDrawSurface3,IUnknown) STDMETHOD(FreePrivateData)(THIS_ REFGUID tag) PURE; \ STDMETHOD(GetUniquenessValue)(THIS_ LPDWORD pValue) PURE; \ STDMETHOD(ChangeUniquenessValue)(THIS) PURE; -#define IDirectDrawSurface4_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawSurface4_METHODS ICOM_DEFINE(IDirectDrawSurface4,IUnknown) #undef INTERFACE @@ -1954,6 +1934,7 @@ ICOM_DEFINE(IDirectDrawSurface4,IUnknown) */ #define INTERFACE IDirectDrawSurface7 #define IDirectDrawSurface7_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddAttachedSurface)(THIS_ LPDIRECTDRAWSURFACE7 lpDDSAttachedSurface) PURE; \ STDMETHOD(AddOverlayDirtyRect)(THIS_ LPRECT lpRect) PURE; \ STDMETHOD(Blt)(THIS_ LPRECT lpDestRect, LPDIRECTDRAWSURFACE7 lpDDSrcSurface, LPRECT lpSrcRect, DWORD dwFlags, LPDDBLTFX lpDDBltFx) PURE; \ @@ -2004,9 +1985,6 @@ ICOM_DEFINE(IDirectDrawSurface4,IUnknown) STDMETHOD(GetPriority)(THIS_ LPDWORD prio) PURE; \ STDMETHOD(SetLOD)(THIS_ DWORD lod) PURE; \ STDMETHOD(GetLOD)(THIS_ LPDWORD lod) PURE; -#define IDirectDrawSurface7_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawSurface7_METHODS ICOM_DEFINE(IDirectDrawSurface7,IUnknown) #undef INTERFACE @@ -2073,11 +2051,9 @@ ICOM_DEFINE(IDirectDrawSurface7,IUnknown) */ #define INTERFACE IDirectDrawColorControl #define IDirectDrawColorControl_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetColorControls)(THIS_ LPDDCOLORCONTROL lpColorControl) PURE; \ STDMETHOD(SetColorControls)(THIS_ LPDDCOLORCONTROL lpColorControl) PURE; -#define IDirectDrawColorControl_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawColorControl_METHODS ICOM_DEFINE(IDirectDrawColorControl,IUnknown) #undef INTERFACE @@ -2096,11 +2072,9 @@ ICOM_DEFINE(IDirectDrawColorControl,IUnknown) */ #define INTERFACE IDirectDrawGammaControl #define IDirectDrawGammaControl_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetGammaRamp)(THIS_ DWORD dwFlags, LPDDGAMMARAMP lpGammaRamp) PURE; \ STDMETHOD(SetGammaRamp)(THIS_ DWORD dwFlags, LPDDGAMMARAMP lpGammaRamp) PURE; -#define IDirectDrawGammaControl_IMETHODS \ - IUnknown_IMETHODS \ - IDirectDrawGammaControl_METHODS ICOM_DEFINE(IDirectDrawGammaControl,IUnknown) #undef INTERFACE diff --git a/include/dinput.h b/include/dinput.h index 80692858fb3..d93de958356 100644 --- a/include/dinput.h +++ b/include/dinput.h @@ -1050,6 +1050,7 @@ DECL_WINELIB_TYPE_AW(LPCDIDEVICEIMAGEINFOHEADER) */ #define INTERFACE IDirectInputEffect #define IDirectInputEffect_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ HINSTANCE, DWORD, REFGUID) PURE; \ STDMETHOD(GetEffectGuid)(THIS_ LPGUID) PURE; \ STDMETHOD(GetParameters)(THIS_ LPDIEFFECT, DWORD) PURE; \ @@ -1060,9 +1061,6 @@ DECL_WINELIB_TYPE_AW(LPCDIDEVICEIMAGEINFOHEADER) STDMETHOD(Download)(THIS) PURE; \ STDMETHOD(Unload)(THIS) PURE; \ STDMETHOD(Escape)(THIS_ LPDIEFFESCAPE) PURE; -#define IDirectInputEffect_IMETHODS \ - IUnknown_IMETHODS \ - IDirectInputEffect_METHODS ICOM_DEFINE(IDirectInputEffect,IUnknown) #undef INTERFACE @@ -1090,6 +1088,7 @@ ICOM_DEFINE(IDirectInputEffect,IUnknown) */ #define INTERFACE IDirectInputDeviceA #define IDirectInputDeviceA_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCapabilities)(THIS_ LPDIDEVCAPS lpDIDevCaps) PURE; \ STDMETHOD(EnumObjects)(THIS_ LPDIENUMDEVICEOBJECTSCALLBACKA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \ STDMETHOD(GetProperty)(THIS_ REFGUID rguidProp, LPDIPROPHEADER pdiph) PURE; \ @@ -1105,9 +1104,6 @@ ICOM_DEFINE(IDirectInputEffect,IUnknown) STDMETHOD(GetDeviceInfo)(THIS_ LPDIDEVICEINSTANCEA pdidi) PURE; \ STDMETHOD(RunControlPanel)(THIS_ HWND hwndOwner, DWORD dwFlags) PURE; \ STDMETHOD(Initialize)(THIS_ HINSTANCE hinst, DWORD dwVersion, REFGUID rguid) PURE; -#define IDirectInputDeviceA_IMETHODS \ - IUnknown_IMETHODS \ - IDirectInputDeviceA_METHODS ICOM_DEFINE(IDirectInputDeviceA,IUnknown) #undef INTERFACE @@ -1140,6 +1136,7 @@ ICOM_DEFINE(IDirectInputDeviceA,IUnknown) */ #define INTERFACE IDirectInputDevice2A #define IDirectInputDevice2A_METHODS \ + IDirectInputDeviceA_METHODS \ STDMETHOD(CreateEffect)(THIS_ REFGUID rguid, LPCDIEFFECT lpeff, LPDIRECTINPUTEFFECT *ppdeff, LPUNKNOWN punkOuter) PURE; \ STDMETHOD(EnumEffects)(THIS_ LPDIENUMEFFECTSCALLBACKA lpCallback, LPVOID pvRef, DWORD dwEffType) PURE; \ STDMETHOD(GetEffectInfo)(THIS_ LPDIEFFECTINFOA pdei, REFGUID rguid) PURE; \ @@ -1149,9 +1146,6 @@ ICOM_DEFINE(IDirectInputDeviceA,IUnknown) STDMETHOD(Escape)(THIS_ LPDIEFFESCAPE pesc) PURE; \ STDMETHOD(Poll)(THIS) PURE; \ STDMETHOD(SendDeviceData)(THIS_ DWORD cbObjectData, LPCDIDEVICEOBJECTDATA rgdod, LPDWORD pdwInOut, DWORD fl) PURE; -#define IDirectInputDevice2A_IMETHODS \ - IDirectInputDeviceA_IMETHODS \ - IDirectInputDevice2A_METHODS ICOM_DEFINE(IDirectInputDevice2A,IDirectInputDeviceA) #undef INTERFACE @@ -1194,11 +1188,9 @@ ICOM_DEFINE(IDirectInputDevice2A,IDirectInputDeviceA) */ #define INTERFACE IDirectInputDevice7A #define IDirectInputDevice7A_METHODS \ + IDirectInputDevice2A_METHODS \ STDMETHOD(EnumEffectsInFile)(THIS_ LPCSTR lpszFileName,LPDIENUMEFFECTSINFILECALLBACK pec,LPVOID pvRef,DWORD dwFlags) PURE; \ STDMETHOD(WriteEffectToFile)(THIS_ LPCSTR lpszFileName,DWORD dwEntries,LPDIFILEEFFECT rgDiFileEft,DWORD dwFlags) PURE; -#define IDirectInputDevice7A_IMETHODS \ - IDirectInputDevice2A_IMETHODS \ - IDirectInputDevice7A_METHODS ICOM_DEFINE(IDirectInputDevice7A,IDirectInputDevice2A) #undef INTERFACE @@ -1246,12 +1238,10 @@ ICOM_DEFINE(IDirectInputDevice7A,IDirectInputDevice2A) */ #define INTERFACE IDirectInputDevice8A #define IDirectInputDevice8A_METHODS \ + IDirectInputDevice7A_METHODS \ STDMETHOD(BuildActionMap)(THIS_ LPDIACTIONFORMATA lpdiaf, LPCSTR lpszUserName, DWORD dwFlags) PURE; \ STDMETHOD(SetActionMap)(THIS_ LPDIACTIONFORMATA lpdiaf, LPCSTR lpszUserName, DWORD dwFlags) PURE; \ STDMETHOD(GetImageInfo)(THIS_ LPDIDEVICEIMAGEINFOHEADERA lpdiDevImageInfoHeader) PURE; -#define IDirectInputDevice8A_IMETHODS \ - IDirectInputDevice7A_IMETHODS \ - IDirectInputDevice8A_METHODS ICOM_DEFINE(IDirectInputDevice8A,IDirectInputDevice7A) #undef INTERFACE @@ -1338,14 +1328,12 @@ extern const DIDATAFORMAT c_dfDIJoystick2; */ #define INTERFACE IDirectInputA #define IDirectInputA_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateDevice)(THIS_ REFGUID rguid, LPDIRECTINPUTDEVICEA *lplpDirectInputDevice, LPUNKNOWN pUnkOuter) PURE; \ STDMETHOD(EnumDevices)(THIS_ DWORD dwDevType, LPDIENUMDEVICESCALLBACKA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \ STDMETHOD(GetDeviceStatus)(THIS_ REFGUID rguidInstance) PURE; \ STDMETHOD(RunControlPanel)(THIS_ HWND hwndOwner, DWORD dwFlags) PURE; \ STDMETHOD(Initialize)(THIS_ HINSTANCE hinst, DWORD dwVersion) PURE; -#define IDirectInputA_IMETHODS \ - IUnknown_IMETHODS \ - IDirectInputA_METHODS ICOM_DEFINE(IDirectInputA,IUnknown) #undef INTERFACE @@ -1367,10 +1355,8 @@ ICOM_DEFINE(IDirectInputA,IUnknown) */ #define INTERFACE IDirectInput2A #define IDirectInput2A_METHODS \ + IDirectInputA_METHODS \ STDMETHOD(FindDevice)(THIS_ REFGUID rguid, LPCSTR pszName, LPGUID pguidInstance) PURE; -#define IDirectInput2A_IMETHODS \ - IDirectInputA_IMETHODS \ - IDirectInput2A_METHODS ICOM_DEFINE(IDirectInput2A,IDirectInputA) #undef INTERFACE @@ -1395,10 +1381,8 @@ ICOM_DEFINE(IDirectInput2A,IDirectInputA) */ #define INTERFACE IDirectInput7A #define IDirectInput7A_METHODS \ + IDirectInput2A_METHODS \ STDMETHOD(CreateDeviceEx)(THIS_ REFGUID rguid, REFIID riid, LPVOID *pvOut, LPUNKNOWN lpUnknownOuter) PURE; -#define IDirectInput7A_IMETHODS \ - IDirectInput2A_IMETHODS \ - IDirectInput7A_METHODS ICOM_DEFINE(IDirectInput7A,IDirectInput2A) #undef INTERFACE @@ -1427,6 +1411,7 @@ ICOM_DEFINE(IDirectInput7A,IDirectInput2A) */ #define INTERFACE IDirectInput8A #define IDirectInput8A_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateDevice)(THIS_ REFGUID rguid, LPDIRECTINPUTDEVICE8A *lplpDirectInputDevice, LPUNKNOWN pUnkOuter) PURE; \ STDMETHOD(EnumDevices)(THIS_ DWORD dwDevType, LPDIENUMDEVICESCALLBACKA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \ STDMETHOD(GetDeviceStatus)(THIS_ REFGUID rguidInstance) PURE; \ @@ -1435,9 +1420,6 @@ ICOM_DEFINE(IDirectInput7A,IDirectInput2A) STDMETHOD(FindDevice)(THIS_ REFGUID rguid, LPCSTR pszName, LPGUID pguidInstance) PURE; \ STDMETHOD(EnumDevicesBySemantics)(THIS_ LPCSTR ptszUserName, LPDIACTIONFORMATA lpdiActionFormat, LPDIENUMDEVICESBYSEMANTICSCBA lpCallback, LPVOID pvRef, DWORD dwFlags) PURE; \ STDMETHOD(ConfigureDevices)(THIS_ LPDICONFIGUREDEVICESCALLBACK lpdiCallback, LPDICONFIGUREDEVICESPARAMSA lpdiCDParams, DWORD dwFlags, LPVOID pvRefData) PURE; -#define IDirectInput8A_IMETHODS \ - IUnknown_IMETHODS \ - IDirectInput8A_METHODS ICOM_DEFINE(IDirectInput8A,IUnknown) #undef INTERFACE diff --git a/include/dmplugin.h b/include/dmplugin.h index a1564a889eb..a0c38c6b9b7 100644 --- a/include/dmplugin.h +++ b/include/dmplugin.h @@ -67,18 +67,13 @@ DEFINE_GUID(CLSID_DirectMusicWaveTrack, 0xeed36461,0x9ea5,0x11d3,0x9b,0xd1, #undef INTERFACE #define INTERFACE IDirectMusicTool #define IDirectMusicTool_METHODS \ - /*** IDirectMusicTool methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Init)(THIS_ IDirectMusicGraph *pGraph) PURE; \ STDMETHOD(GetMsgDeliveryType)(THIS_ DWORD *pdwDeliveryType) PURE; \ STDMETHOD(GetMediaTypeArraySize)(THIS_ DWORD *pdwNumElements) PURE; \ STDMETHOD(GetMediaTypes)(THIS_ DWORD **padwMediaTypes, DWORD dwNumElements) PURE; \ STDMETHOD(ProcessPMsg)(THIS_ IDirectMusicPerformance *pPerf, DMUS_PMSG *pPMSG) PURE; \ STDMETHOD(Flush)(THIS_ IDirectMusicPerformance *pPerf, DMUS_PMSG *pPMSG, REFERENCE_TIME rtTime) PURE; - - /*** IDirectMusicTool methods ***/ -#define IDirectMusicTool_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicTool_METHODS ICOM_DEFINE(IDirectMusicTool,IUnknown) #undef INTERFACE @@ -103,14 +98,8 @@ ICOM_DEFINE(IDirectMusicTool,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicTool8 #define IDirectMusicTool8_METHODS \ - /*** IDirectMusicTool8 methods ***/ \ - STDMETHOD(Clone)(THIS_ IDirectMusicTool **ppTool) PURE; - - /*** IDirectMusicTool8 methods ***/ -#define IDirectMusicTool8_IMETHODS \ - IUnknown_IMETHODS \ IDirectMusicTool_METHODS \ - IDirectMusicTool8_METHODS + STDMETHOD(Clone)(THIS_ IDirectMusicTool **ppTool) PURE; ICOM_DEFINE(IDirectMusicTool8,IDirectMusicTool) #undef INTERFACE @@ -156,7 +145,7 @@ typedef enum enumDMUS_TRACKF_FLAGS #undef INTERFACE #define INTERFACE IDirectMusicTrack #define IDirectMusicTrack_METHODS \ - /*** IDirectMusicTrack methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Init)(THIS_ IDirectMusicSegment *pSegment) PURE; \ STDMETHOD(InitPlay)(THIS_ IDirectMusicSegmentState *pSegmentState, IDirectMusicPerformance *pPerformance, void **ppStateData, DWORD dwVirtualTrackID, DWORD dwFlags) PURE; \ STDMETHOD(EndPlay)(THIS_ void *pStateData) PURE; \ @@ -167,11 +156,6 @@ typedef enum enumDMUS_TRACKF_FLAGS STDMETHOD(AddNotificationType)(THIS_ REFGUID rguidNotificationType) PURE; \ STDMETHOD(RemoveNotificationType)(THIS_ REFGUID rguidNotificationType) PURE; \ STDMETHOD(Clone)(THIS_ MUSIC_TIME mtStart, MUSIC_TIME mtEnd, IDirectMusicTrack **ppTrack) PURE; - - /*** IDirectMusicTrack methods ***/ -#define IDirectMusicTrack_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicTrack_METHODS ICOM_DEFINE(IDirectMusicTrack,IUnknown) #undef INTERFACE @@ -200,19 +184,12 @@ ICOM_DEFINE(IDirectMusicTrack,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicTrack8 #define IDirectMusicTrack8_METHODS \ - /*** IDirectMusicTrack8 methods ***/ \ + IDirectMusicTrack_METHODS \ STDMETHOD(PlayEx)(THIS_ void *pStateData, REFERENCE_TIME rtStart, REFERENCE_TIME rtEnd, REFERENCE_TIME rtOffset, DWORD dwFlags, IDirectMusicPerformance *pPerf, IDirectMusicSegmentState *pSegSt, DWORD dwVirtualID) PURE; \ STDMETHOD(GetParamEx)(THIS_ REFGUID rguidType, REFERENCE_TIME rtTime, REFERENCE_TIME *prtNext, void *pParam, void *pStateData, DWORD dwFlags) PURE; \ STDMETHOD(SetParamEx)(THIS_ REFGUID rguidType, REFERENCE_TIME rtTime, void *pParam, void *pStateData, DWORD dwFlags) PURE; \ STDMETHOD(Compose)(THIS_ IUnknown *pContext, DWORD dwTrackGroup, IDirectMusicTrack **ppResultTrack) PURE; \ STDMETHOD(Join)(THIS_ IDirectMusicTrack *pNewTrack, MUSIC_TIME mtJoin, IUnknown *pContext, DWORD dwTrackGroup, IDirectMusicTrack **ppResultTrack) PURE; - - /*** IDirectMusicTrack8 methods ***/ -#define IDirectMusicTrack8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicTrack_METHODS \ - IDirectMusicTrack8_METHODS - ICOM_DEFINE(IDirectMusicTrack8,IDirectMusicTrack) #undef INTERFACE diff --git a/include/dmusicc.h b/include/dmusicc.h index f731b9334e2..c0008c2d340 100644 --- a/include/dmusicc.h +++ b/include/dmusicc.h @@ -288,7 +288,7 @@ typedef struct _DMUS_CLOCKINFO8 #undef INTERFACE #define INTERFACE IDirectMusic #define IDirectMusic_METHODS \ - /*** IDirectMusic methods ***/ \ + IUnknown_METHODS \ STDMETHOD(EnumPort)(THIS_ DWORD dwIndex, LPDMUS_PORTCAPS pPortCaps) PURE; \ STDMETHOD(CreateMusicBuffer)(THIS_ LPDMUS_BUFFERDESC pBufferDesc, LPDIRECTMUSICBUFFER **ppBuffer, LPUNKNOWN pUnkOuter) PURE; \ STDMETHOD(CreatePort)(THIS_ REFCLSID rclsidPort, LPDMUS_PORTPARAMS pPortParams, LPDIRECTMUSICPORT *ppPort, LPUNKNOWN pUnkOuter) PURE; \ @@ -298,11 +298,6 @@ typedef struct _DMUS_CLOCKINFO8 STDMETHOD(Activate)(THIS_ BOOL fEnable) PURE; \ STDMETHOD(GetDefaultPort)(THIS_ LPGUID pguidPort) PURE; \ STDMETHOD(SetDirectSound)(THIS_ LPDIRECTSOUND pDirectSound, HWND hWnd) PURE; - - /*** IDirectMusic methods ***/ -#define IDirectMusic_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusic_METHODS ICOM_DEFINE(IDirectMusic,IUnknown) #undef INTERFACE @@ -330,14 +325,8 @@ ICOM_DEFINE(IDirectMusic,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusic8 #define IDirectMusic8_METHODS \ - /*** IDirectMusic8 methods ***/ \ - STDMETHOD(SetExternalMasterClock)(THIS_ IReferenceClock *pClock) PURE; - - /*** IDirectMusic8 methods ***/ -#define IDirectMusic8_IMETHODS \ - IUnknown_IMETHODS \ IDirectMusic_METHODS \ - IDirectMusic8_METHODS + STDMETHOD(SetExternalMasterClock)(THIS_ IReferenceClock *pClock) PURE; ICOM_DEFINE(IDirectMusic8,IDirectMusic) #undef INTERFACE @@ -367,7 +356,7 @@ ICOM_DEFINE(IDirectMusic8,IDirectMusic) #undef INTERFACE #define INTERFACE IDirectMusicBuffer #define IDirectMusicBuffer_METHODS \ - /*** IDirectMusicBuffer methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Flush)(THIS) PURE; \ STDMETHOD(TotalTime)(THIS_ LPREFERENCE_TIME prtTime) PURE; \ STDMETHOD(PackStructured)(THIS_ REFERENCE_TIME rt, DWORD dwChannelGroup, DWORD dwChannelMessage) PURE; \ @@ -381,11 +370,6 @@ ICOM_DEFINE(IDirectMusic8,IDirectMusic) STDMETHOD(GetBufferFormat)(THIS_ LPGUID pGuidFormat) PURE; \ STDMETHOD(SetStartTime)(THIS_ REFERENCE_TIME rt) PURE; \ STDMETHOD(SetUsedBytes)(THIS_ DWORD cb) PURE; - - /*** IDirectMusicBuffer methods ***/ -#define IDirectMusicBuffer_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicBuffer_METHODS ICOM_DEFINE(IDirectMusicBuffer,IUnknown) #undef INTERFACE @@ -416,14 +400,9 @@ ICOM_DEFINE(IDirectMusicBuffer,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicInstrument #define IDirectMusicInstrument_METHODS \ - /*** IDirectMusicInstrument methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetPatch)(THIS_ DWORD *pdwPatch) PURE; \ STDMETHOD(SetPatch)(THIS_ DWORD dwPatch) PURE; - - /*** IDirectMusicInstrument methods ***/ -#define IDirectMusicInstrument_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicInstrument_METHODS ICOM_DEFINE(IDirectMusicInstrument,IUnknown) #undef INTERFACE @@ -444,13 +423,8 @@ ICOM_DEFINE(IDirectMusicInstrument,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicDownloadedInstrument #define IDirectMusicDownloadedInstrument_METHODS \ - /*** IDirectMusicDownloadedInstrument methods ***/ \ - /* none at this time */ - - /*** IDirectMusicDownloadedInstrument methods ***/ -#define IDirectMusicDownloadedInstrument_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicDownloadedInstrument_METHODS + IUnknown_METHODS \ + /* no IDirectMusicDownloadedInstrument methods at this time */ ICOM_DEFINE(IDirectMusicDownloadedInstrument,IUnknown) #undef INTERFACE @@ -470,14 +444,9 @@ ICOM_DEFINE(IDirectMusicDownloadedInstrument,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicCollection #define IDirectMusicCollection_METHODS \ - /*** IDirectMusicCollection methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetInstrument)(THIS_ DWORD dwPatch, IDirectMusicInstrument **ppInstrument) PURE; \ STDMETHOD(EnumInstrument)(THIS_ DWORD dwIndex, DWORD *pdwPatch, LPWSTR pwszName, DWORD dwNameLen) PURE; - - /*** IDirectMusicCollection methods ***/ -#define IDirectMusicCollection_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicCollection_METHODS ICOM_DEFINE(IDirectMusicCollection,IUnknown) #undef INTERFACE @@ -498,13 +467,8 @@ ICOM_DEFINE(IDirectMusicCollection,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicDownload #define IDirectMusicDownload_METHODS \ - /*** IDirectMusicDownload methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetBuffer)(THIS_ void **ppvBuffer, DWORD *pdwSize) PURE; - - /*** IDirectMusicDownload methods ***/ -#define IDirectMusicDownload_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicDownload_METHODS ICOM_DEFINE(IDirectMusicDownload,IUnknown) #undef INTERFACE @@ -524,18 +488,13 @@ ICOM_DEFINE(IDirectMusicDownload,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicPortDownload #define IDirectMusicPortDownload_METHODS \ - /*** IDirectMusicPortDownload methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetBuffer)(THIS_ DWORD dwDLId, IDirectMusicDownload **ppIDMDownload) PURE; \ STDMETHOD(AllocateBuffer)(THIS_ DWORD dwSize, IDirectMusicDownload **ppIDMDownload) PURE; \ STDMETHOD(GetDLId)(THIS_ DWORD *pdwStartDLId, DWORD dwCount) PURE; \ STDMETHOD(GetAppend)(THIS_ DWORD *pdwAppend) PURE; \ STDMETHOD(Download)(THIS_ IDirectMusicDownload *pIDMDownload) PURE; \ STDMETHOD(Unload)(THIS_ IDirectMusicDownload *pIDMDownload) PURE; - - /*** IDirectMusicPortDownload methods ***/ -#define IDirectMusicPortDownload_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicPortDownload_METHODS ICOM_DEFINE(IDirectMusicPortDownload,IUnknown) #undef INTERFACE @@ -606,7 +565,7 @@ ICOM_DEFINE(IDirectMusicPortDownload,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicPort #define IDirectMusicPort_METHODS \ - /*** IDirectMusicPort methods ***/ \ + IUnknown_METHODS \ STDMETHOD(PlayBuffer)(THIS_ LPDIRECTMUSICBUFFER pBuffer) PURE; \ STDMETHOD(SetReadNotificationHandle)(THIS_ HANDLE hEvent) PURE; \ STDMETHOD(Read)(THIS_ LPDIRECTMUSICBUFFER pBuffer) PURE; \ @@ -623,11 +582,6 @@ ICOM_DEFINE(IDirectMusicPortDownload,IUnknown) STDMETHOD(GetChannelPriority)(THIS_ DWORD dwChannelGroup, DWORD dwChannel, LPDWORD pdwPriority) PURE; \ STDMETHOD(SetDirectSound)(THIS_ LPDIRECTSOUND pDirectSound, LPDIRECTSOUNDBUFFER pDirectSoundBuffer) PURE; \ STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX pWaveFormatEx, LPDWORD pdwWaveFormatExSize, LPDWORD pdwBufferSize) PURE; - -/*** IDirectMusicPort methods ***/ -#define IDirectMusicPort_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicPort_METHODS ICOM_DEFINE(IDirectMusicPort,IUnknown) #undef INTERFACE @@ -662,13 +616,8 @@ ICOM_DEFINE(IDirectMusicPort,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicThru #define IDirectMusicThru_METHODS \ - /*** IDirectMusicThru methods ***/ \ + IUnknown_METHODS \ STDMETHOD(ThruChannel)(THIS_ DWORD dwSourceChannelGroup, DWORD dwSourceChannel, DWORD dwDestinationChannelGroup, DWORD dwDestinationChannel, LPDIRECTMUSICPORT pDestinationPort) PURE; - -/*** IDirectMusicThru methods ***/ -#define IDirectMusicThru_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicThru_METHODS ICOM_DEFINE(IDirectMusicThru,IUnknown) #undef INTERFACE @@ -692,16 +641,11 @@ ICOM_DEFINE(IDirectMusicThru,IUnknown) #undef INTERFACE #define INTERFACE IReferenceClock #define IReferenceClock_METHODS \ - /*** IReferenceClock methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetTime)(THIS_ REFERENCE_TIME *pTime) PURE; \ STDMETHOD(AdviseTime)(THIS_ REFERENCE_TIME baseTime, REFERENCE_TIME streamTime, HANDLE hEvent, DWORD *pdwAdviseCookie) PURE; \ STDMETHOD(AdvisePeriodic)(THIS_ REFERENCE_TIME startTime, REFERENCE_TIME periodTime, HANDLE hSemaphore, DWORD *pdwAdviseCookie) PURE; \ STDMETHOD(Unadvise)(THIS_ DWORD dwAdviseCookie) PURE; - - /*** IReferenceClock methods ***/ -#define IReferenceClock_IMETHODS \ - IUnknown_IMETHODS \ - IReferenceClock_METHODS ICOM_DEFINE(IReferenceClock,IUnknown) #undef INTERFACE diff --git a/include/dmusici.h b/include/dmusici.h index 9a0128fdd98..7e2ef155cfd 100644 --- a/include/dmusici.h +++ b/include/dmusici.h @@ -797,15 +797,10 @@ typedef struct _DMUS_VARIATIONS_PARAM #undef INTERFACE #define INTERFACE IDirectMusicBand #define IDirectMusicBand_METHODS \ - /*** IDirectMusicBand methods ***/ \ + IUnknown_METHODS \ STDMETHOD(CreateSegment)(THIS_ IDirectMusicSegment **ppSegment) PURE; \ STDMETHOD(Download)(THIS_ IDirectMusicPerformance *pPerformance) PURE; \ STDMETHOD(Unload)(THIS_ IDirectMusicPerformance *pPerformance) PURE; - - /*** IDirectMusicBand methods ***/ -#define IDirectMusicBand_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicBand_METHODS ICOM_DEFINE(IDirectMusicBand,IUnknown) #undef INTERFACE @@ -827,15 +822,10 @@ ICOM_DEFINE(IDirectMusicBand,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicObject #define IDirectMusicObject_METHODS \ - /*** IDirectMusicObject methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetDescriptor)(THIS_ LPDMUS_OBJECTDESC pDesc) PURE; \ STDMETHOD(SetDescriptor)(THIS_ LPDMUS_OBJECTDESC pDesc) PURE; \ STDMETHOD(ParseDescriptor)(THIS_ LPSTREAM pStream, LPDMUS_OBJECTDESC pDesc) PURE; - - /*** IDirectMusicObject methods ***/ -#define IDirectMusicObject_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicObject_METHODS ICOM_DEFINE(IDirectMusicObject,IUnknown) #undef INTERFACE @@ -857,7 +847,7 @@ ICOM_DEFINE(IDirectMusicObject,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicLoader #define IDirectMusicLoader_METHODS \ - /*** IDirectMusicLoader methods ***/ \ + IUnknown_METHODS \ STDMETHOD(_GetObject)(THIS_ LPDMUS_OBJECTDESC pDesc, REFIID riid, LPVOID *ppv) PURE; \ STDMETHOD(SetObject)(THIS_ LPDMUS_OBJECTDESC pDesc) PURE; \ STDMETHOD(SetSearchDirectory)(THIS_ REFGUID rguidClass, WCHAR *pwzPath, BOOL fClear) PURE; \ @@ -867,11 +857,6 @@ ICOM_DEFINE(IDirectMusicObject,IUnknown) STDMETHOD(ClearCache)(THIS_ REFGUID rguidClass) PURE; \ STDMETHOD(EnableCache)(THIS_ REFGUID rguidClass, BOOL fEnable) PURE; \ STDMETHOD(EnumObject)(THIS_ REFGUID rguidClass, DWORD dwIndex, LPDMUS_OBJECTDESC pDesc) PURE; - - /*** IDirectMusicLoader methods ***/ -#define IDirectMusicLoader_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicLoader_METHODS ICOM_DEFINE(IDirectMusicLoader,IUnknown) #undef INTERFACE @@ -899,16 +884,10 @@ ICOM_DEFINE(IDirectMusicLoader,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicLoader8 #define IDirectMusicLoader8_METHODS \ - /*** IDirectMusicLoader8 methods ***/ \ + IDirectMusicLoader_METHODS \ STDMETHOD_(void,CollectGarbage)(THIS) PURE; \ STDMETHOD(ReleaseObjectByUnknown)(THIS_ IUnknown *pObject) PURE; \ STDMETHOD(LoadObjectFromFile)(THIS_ REFGUID rguidClassID, REFIID iidInterfaceID, WCHAR *pwzFilePath, void **ppObject) PURE; - - /*** IDirectMusicLoader8 methods ***/ -#define IDirectMusicLoader8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicLoader_METHODS \ - IDirectMusicLoader8_METHODS ICOM_DEFINE(IDirectMusicLoader8,IDirectMusicLoader) #undef INTERFACE @@ -940,13 +919,8 @@ ICOM_DEFINE(IDirectMusicLoader8,IDirectMusicLoader) #undef INTERFACE #define INTERFACE IDirectMusicGetLoader #define IDirectMusicGetLoader_METHODS \ - /*** IDirectMusicGetLoader methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetLoader)(THIS_ IDirectMusicLoader **ppLoader) PURE; - - /*** IDirectMusicGetLoader methods ***/ -#define IDirectMusicGetLoader_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicGetLoader_METHODS ICOM_DEFINE(IDirectMusicGetLoader,IUnknown) #undef INTERFACE @@ -966,7 +940,7 @@ ICOM_DEFINE(IDirectMusicGetLoader,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicSegment #define IDirectMusicSegment_METHODS \ - /*** IDirectMusicSegment methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetLength)(THIS_ MUSIC_TIME *pmtLength) PURE; \ STDMETHOD(SetLength)(THIS_ MUSIC_TIME mtLength) PURE; \ STDMETHOD(GetRepeats)(THIS_ DWORD *pdwRepeats) PURE; \ @@ -990,11 +964,6 @@ ICOM_DEFINE(IDirectMusicGetLoader,IUnknown) STDMETHOD(SetLoopPoints)(THIS_ MUSIC_TIME mtStart, MUSIC_TIME mtEnd) PURE; \ STDMETHOD(GetLoopPoints)(THIS_ MUSIC_TIME *pmtStart, MUSIC_TIME *pmtEnd) PURE; \ STDMETHOD(SetPChannelsUsed)(THIS_ DWORD dwNumPChannels, DWORD *paPChannels) PURE; - - /*** IDirectMusicSegment methods ***/ -#define IDirectMusicSegment_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSegment_METHODS ICOM_DEFINE(IDirectMusicSegment,IUnknown) #undef INTERFACE @@ -1036,18 +1005,12 @@ ICOM_DEFINE(IDirectMusicSegment,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicSegment8 #define IDirectMusicSegment8_METHODS \ - /*** IDirectMusicSegment8 methods ***/ \ + IDirectMusicSegment_METHODS \ STDMETHOD(SetTrackConfig)(THIS_ REFGUID rguidTrackClassID, DWORD dwGroupBits, DWORD dwIndex, DWORD dwFlagsOn, DWORD dwFlagsOff) PURE; \ STDMETHOD(GetAudioPathConfig)(THIS_ IUnknown **ppAudioPathConfig) PURE; \ STDMETHOD(Compose)(THIS_ MUSIC_TIME mtTime, IDirectMusicSegment *pFromSegment, IDirectMusicSegment *pToSegment, IDirectMusicSegment **ppComposedSegment) PURE; \ STDMETHOD(Download)(THIS_ IUnknown *pAudioPath) PURE; \ STDMETHOD(Unload)(THIS_ IUnknown *pAudioPath) PURE; - - /*** IDirectMusicSegment8 methods ***/ -#define IDirectMusicSegment8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSegment_METHODS \ - IDirectMusicSegment8_METHODS ICOM_DEFINE(IDirectMusicSegment8,IDirectMusicSegment) #undef INTERFACE @@ -1095,17 +1058,12 @@ ICOM_DEFINE(IDirectMusicSegment8,IDirectMusicSegment) #undef INTERFACE #define INTERFACE IDirectMusicSegmentState #define IDirectMusicSegmentState_METHODS \ - /*** IDirectMusicSegmentState methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetRepeats)(THIS_ DWORD *pdwRepeats) PURE; \ STDMETHOD(GetSegment)(THIS_ IDirectMusicSegment **ppSegment) PURE; \ STDMETHOD(GetStartTime)(THIS_ MUSIC_TIME *pmtStart) PURE; \ STDMETHOD(GetSeek)(THIS_ MUSIC_TIME *pmtSeek) PURE; \ STDMETHOD(GetStartPoint)(THIS_ MUSIC_TIME *pmtStart) PURE; - - /*** IDirectMusicSegmentState methods ***/ -#define IDirectMusicSegmentState_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSegmentState_METHODS ICOM_DEFINE(IDirectMusicSegmentState,IUnknown) #undef INTERFACE @@ -1129,15 +1087,9 @@ ICOM_DEFINE(IDirectMusicSegmentState,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicSegmentState8 #define IDirectMusicSegmentState8_METHODS \ - /*** IDirectMusicSegmentState8 methods ***/ \ + IDirectMusicSegmentState_METHODS \ STDMETHOD(SetTrackConfig)(THIS_ REFGUID rguidTrackClassID, DWORD dwGroupBits, DWORD dwIndex, DWORD dwFlagsOn, DWORD dwFlagsOff) PURE; \ STDMETHOD(GetObjectInPath)(THIS_ DWORD dwPChannel, DWORD dwStage, DWORD dwBuffer, REFGUID guidObject, DWORD dwIndex, REFGUID iidInterface, void **ppObject) PURE; - - /*** IDirectMusicSegmentState8 methods ***/ -#define IDirectMusicSegmentState8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSegmentState_METHODS \ - IDirectMusicSegmentState8_METHODS ICOM_DEFINE(IDirectMusicSegmentState8,IDirectMusicSegmentState) #undef INTERFACE @@ -1164,16 +1116,11 @@ ICOM_DEFINE(IDirectMusicSegmentState8,IDirectMusicSegmentState) #undef INTERFACE #define INTERFACE IDirectMusicAudioPath #define IDirectMusicAudioPath_METHODS \ - /*** IDirectMusicAudioPath methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetObjectInPath)(THIS_ DWORD dwPChannel, DWORD dwStage, DWORD dwBuffer, REFGUID guidObject, WORD dwIndex, REFGUID iidInterface, void **ppObject) PURE; \ STDMETHOD(Activate)(THIS_ BOOL fActivate) PURE; \ STDMETHOD(SetVolume)(THIS_ long lVolume, DWORD dwDuration) PURE; \ STDMETHOD(ConvertPChannel)(THIS_ DWORD dwPChannelIn, DWORD *pdwPChannelOut) PURE; - - /*** IDirectMusicAudioPath methods ***/ -#define IDirectMusicAudioPath_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicAudioPath_METHODS ICOM_DEFINE(IDirectMusicAudioPath,IUnknown) #undef INTERFACE @@ -1196,7 +1143,7 @@ ICOM_DEFINE(IDirectMusicAudioPath,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicPerformance #define IDirectMusicPerformance_METHODS \ - /*** IDirectMusicPerformance methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Init)(THIS_ IDirectMusic **ppDirectMusic, LPDIRECTSOUND pDirectSound, HWND hWnd) PURE; \ STDMETHOD(PlaySegment)(THIS_ IDirectMusicSegment *pSegment, DWORD dwFlags, __int64 i64StartTime, IDirectMusicSegmentState **ppSegmentState) PURE; \ STDMETHOD(Stop)(THIS_ IDirectMusicSegment *pSegment, IDirectMusicSegmentState *pSegmentState, MUSIC_TIME mtTime, DWORD dwFlags) PURE; \ @@ -1238,11 +1185,6 @@ ICOM_DEFINE(IDirectMusicAudioPath,IUnknown) STDMETHOD(MusicToMIDI)(THIS_ WORD wMusicValue, DMUS_CHORD_KEY *pChord, BYTE bPlayMode, BYTE bChordLevel, BYTE *pbMIDIValue) PURE; \ STDMETHOD(TimeToRhythm)(THIS_ MUSIC_TIME mtTime, DMUS_TIMESIGNATURE *pTimeSig, WORD *pwMeasure, BYTE *pbBeat, BYTE *pbGrid, short *pnOffset) PURE; \ STDMETHOD(RhythmToTime)(THIS_ WORD wMeasure, BYTE bBeat, BYTE bGrid, short nOffset, DMUS_TIMESIGNATURE *pTimeSig, MUSIC_TIME *pmtTime) PURE; - - /*** IDirectMusicPerformance methods ***/ -#define IDirectMusicPerformance_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicPerformance_METHODS ICOM_DEFINE(IDirectMusicPerformance,IUnknown) #undef INTERFACE @@ -1302,7 +1244,7 @@ ICOM_DEFINE(IDirectMusicPerformance,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicPerformance8 #define IDirectMusicPerformance8_METHODS \ - /*** IDirectMusicPerformance8 methods ***/ \ + IDirectMusicPerformance_METHODS \ STDMETHOD(InitAudio)(THIS_ IDirectMusic **ppDirectMusic, IDirectSound **ppDirectSound, HWND hWnd, DWORD dwDefaultPathType, DWORD dwPChannelCount, DWORD dwFlags, DMUS_AUDIOPARAMS *pParams) PURE; \ STDMETHOD(PlaySegmentEx)(THIS_ IUnknown *pSource, WCHAR *pwzSegmentName, IUnknown *pTransition, DWORD dwFlags, __int64 i64StartTime, IDirectMusicSegmentState **ppSegmentState, IUnknown *pFrom, IUnknown *pAudioPath) PURE; \ STDMETHOD(StopEx)(THIS_ IUnknown *pObjectToStop, __int64 i64StopTime, DWORD dwFlags) PURE; \ @@ -1312,12 +1254,6 @@ ICOM_DEFINE(IDirectMusicPerformance,IUnknown) STDMETHOD(SetDefaultAudioPath)(THIS_ IDirectMusicAudioPath *pAudioPath) PURE; \ STDMETHOD(GetDefaultAudioPath)(THIS_ IDirectMusicAudioPath **ppAudioPath) PURE; \ STDMETHOD(GetParamEx)(THIS_ REFGUID rguidType, DWORD dwTrackID, DWORD dwGroupBits, DWORD dwIndex, MUSIC_TIME mtTime, MUSIC_TIME *pmtNext, void *pParam) PURE; - - /*** IDirectMusicPerformance8 methods ***/ -#define IDirectMusicPerformance8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicPerformance_METHODS \ - IDirectMusicPerformance8_METHODS ICOM_DEFINE(IDirectMusicPerformance8,IDirectMusicPerformance) #undef INTERFACE @@ -1387,16 +1323,11 @@ ICOM_DEFINE(IDirectMusicPerformance8,IDirectMusicPerformance) #undef INTERFACE #define INTERFACE IDirectMusicGraph #define IDirectMusicGraph_METHODS \ - /*** IDirectMusicGraph methods ***/ \ + IUnknown_METHODS \ STDMETHOD(StampPMsg)(THIS_ DMUS_PMSG *pPMSG) PURE; \ STDMETHOD(InsertTool)(THIS_ IDirectMusicTool *pTool, DWORD *pdwPChannels, DWORD cPChannels, LONG lIndex) PURE; \ STDMETHOD(GetTool)(THIS_ DWORD dwIndex, IDirectMusicTool **ppTool) PURE; \ STDMETHOD(RemoveTool)(THIS_ IDirectMusicTool *pTool) PURE; - - /*** IDirectMusicGraph methods ***/ -#define IDirectMusicGraph_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicGraph_METHODS ICOM_DEFINE(IDirectMusicGraph,IUnknown) #undef INTERFACE @@ -1419,7 +1350,7 @@ ICOM_DEFINE(IDirectMusicGraph,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicStyle #define IDirectMusicStyle_METHODS \ - /*** IDirectMusicStyle methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetBand)(THIS_ WCHAR *pwszName, IDirectMusicBand **ppBand) PURE; \ STDMETHOD(EnumBand)(THIS_ DWORD dwIndex, WCHAR *pwszName) PURE; \ STDMETHOD(GetDefaultBand)(THIS_ IDirectMusicBand **ppBand) PURE; \ @@ -1431,11 +1362,6 @@ ICOM_DEFINE(IDirectMusicGraph,IUnknown) STDMETHOD(GetTimeSignature)(THIS_ DMUS_TIMESIGNATURE *pTimeSig) PURE; \ STDMETHOD(GetEmbellishmentLength)(THIS_ DWORD dwType, DWORD dwLevel, DWORD *pdwMin, DWORD *pdwMax) PURE; \ STDMETHOD(GetTempo)(THIS_ double *pTempo) PURE; - - /*** IDirectMusicStyle methods ***/ -#define IDirectMusicStyle_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicStyle_METHODS ICOM_DEFINE(IDirectMusicStyle,IUnknown) #undef INTERFACE @@ -1465,14 +1391,8 @@ ICOM_DEFINE(IDirectMusicStyle,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicStyle8 #define IDirectMusicStyle8_METHODS \ - /*** IDirectMusicStyle8 methods ***/ \ - STDMETHOD(EnumPattern)(THIS_ DWORD dwIndex, DWORD dwPatternType, WCHAR *pwszName) PURE; - - /*** IDirectMusicStyle8 methods ***/ -#define IDirectMusicStyle8_IMETHODS \ - IUnknown_IMETHODS \ IDirectMusicStyle_METHODS \ - IDirectMusicStyle8_METHODS + STDMETHOD(EnumPattern)(THIS_ DWORD dwIndex, DWORD dwPatternType, WCHAR *pwszName) PURE; ICOM_DEFINE(IDirectMusicStyle8,IDirectMusicStyle) #undef INTERFACE @@ -1504,13 +1424,8 @@ ICOM_DEFINE(IDirectMusicStyle8,IDirectMusicStyle) #undef INTERFACE #define INTERFACE IDirectMusicChordMap #define IDirectMusicChordMap_METHODS \ - /*** IDirectMusicChordMap methods ***/ \ + IUnknown_METHODS \ STDMETHOD(GetScale)(THIS_ DWORD *pdwScale) PURE; - - /*** IDirectMusicChordMap methods ***/ -#define IDirectMusicChordMap_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicChordMap_METHODS ICOM_DEFINE(IDirectMusicChordMap,IUnknown) #undef INTERFACE @@ -1530,18 +1445,13 @@ ICOM_DEFINE(IDirectMusicChordMap,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicComposer #define IDirectMusicComposer_METHODS \ - /*** IDirectMusicComposer methods ***/ \ + IUnknown_METHODS \ STDMETHOD(ComposeSegmentFromTemplate)(THIS_ IDirectMusicStyle *pStyle, IDirectMusicSegment *pTemplate, WORD wActivity, IDirectMusicChordMap *pChordMap, IDirectMusicSegment **ppSegment) PURE; \ STDMETHOD(ComposeSegmentFromShape)(THIS_ IDirectMusicStyle *pStyle, WORD wNumMeasures, WORD wShape, WORD wActivity, BOOL fIntro, BOOL fEnd, IDirectMusicChordMap *pChordMap, IDirectMusicSegment **ppSegment) PURE; \ STDMETHOD(ComposeTransition)(THIS_ IDirectMusicSegment *pFromSeg, IDirectMusicSegment *pToSeg, MUSIC_TIME mtTime, WORD wCommand, DWORD dwFlags, IDirectMusicChordMap *pChordMap, IDirectMusicSegment **ppTransSeg) PURE; \ STDMETHOD(AutoTransition)(THIS_ IDirectMusicPerformance *pPerformance, IDirectMusicSegment *pToSeg, WORD wCommand, DWORD dwFlags, IDirectMusicChordMap *pChordMap, IDirectMusicSegment **ppTransSeg, IDirectMusicSegmentState **ppToSegState, IDirectMusicSegmentState **ppTransSegState) PURE; \ STDMETHOD(ComposeTemplateFromShape)(THIS_ WORD wNumMeasures, WORD wShape, BOOL fIntro, BOOL fEnd, WORD wEndLength, IDirectMusicSegment **ppTemplate) PURE; \ STDMETHOD(ChangeChordMap)(THIS_ IDirectMusicSegment *pSegment, BOOL fTrackScale, IDirectMusicChordMap *pChordMap) PURE; - - /*** IDirectMusicComposer methods ***/ -#define IDirectMusicComposer_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicComposer_METHODS ICOM_DEFINE(IDirectMusicComposer,IUnknown) #undef INTERFACE @@ -1566,15 +1476,10 @@ ICOM_DEFINE(IDirectMusicComposer,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicPatternTrack #define IDirectMusicPatternTrack_METHODS \ - /*** IDirectMusicPatternTrack methods ***/ \ + IUnknown_METHODS \ STDMETHOD(CreateSegment)(THIS_ IDirectMusicStyle *pStyle, IDirectMusicSegment **ppSegment) PURE; \ STDMETHOD(SetVariation)(THIS_ IDirectMusicSegmentState *pSegState, DWORD dwVariationFlags, DWORD dwPart) PURE; \ STDMETHOD(SetPatternByName)(THIS_ IDirectMusicSegmentState *pSegState, WCHAR *wszName, IDirectMusicStyle *pStyle, DWORD dwPatternType, DWORD *pdwLength) PURE; - - /*** IDirectMusicPatternTrack methods ***/ -#define IDirectMusicPatternTrack_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicPatternTrack_METHODS ICOM_DEFINE(IDirectMusicPatternTrack,IUnknown) #undef INTERFACE @@ -1596,7 +1501,7 @@ ICOM_DEFINE(IDirectMusicPatternTrack,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicScript #define IDirectMusicScript_METHODS \ - /*** IDirectMusicScript methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Init)(THIS_ IDirectMusicPerformance *pPerformance, DMUS_SCRIPT_ERRORINFO *pErrorInfo) PURE; \ STDMETHOD(CallRoutine)(THIS_ WCHAR *pwszRoutineName, DMUS_SCRIPT_ERRORINFO *pErrorInfo) PURE; \ STDMETHOD(SetVariableVariant)(THIS_ WCHAR *pwszVariableName, VARIANT varValue, BOOL fSetRef, DMUS_SCRIPT_ERRORINFO *pErrorInfo) PURE; \ @@ -1607,11 +1512,6 @@ ICOM_DEFINE(IDirectMusicPatternTrack,IUnknown) STDMETHOD(GetVariableObject)(THIS_ WCHAR *pwszVariableName, REFIID riid, LPVOID *ppv, DMUS_SCRIPT_ERRORINFO *pErrorInfo) PURE; \ STDMETHOD(EnumRoutine)(THIS_ DWORD dwIndex, WCHAR *pwszName) PURE; \ STDMETHOD(EnumVariable)(THIS_ DWORD dwIndex, WCHAR *pwszName) PURE; - - /*** IDirectMusicScript methods ***/ -#define IDirectMusicScript_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicScript_METHODS ICOM_DEFINE(IDirectMusicScript,IUnknown) #undef INTERFACE @@ -1640,13 +1540,8 @@ ICOM_DEFINE(IDirectMusicScript,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicContainer #define IDirectMusicContainer_METHODS \ - /*** IDirectMusicContainer methods ***/ \ + IUnknown_METHODS \ STDMETHOD(EnumObject)(THIS_ REFGUID rguidClass, DWORD dwIndex, LPDMUS_OBJECTDESC pDesc, WCHAR *pwszAlias) PURE; - - /*** IDirectMusicContainer methods ***/ -#define IDirectMusicContainer_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicContainer_METHODS ICOM_DEFINE(IDirectMusicContainer,IUnknown) #undef INTERFACE @@ -1666,7 +1561,7 @@ ICOM_DEFINE(IDirectMusicContainer,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicSong #define IDirectMusicSong_METHODS \ - /*** IDirectMusicSong methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Compose)(THIS) PURE; \ STDMETHOD(GetParam)(THIS_ REFGUID rguidType, DWORD dwGroupBits, DWORD dwIndex, MUSIC_TIME mtTime, MUSIC_TIME *pmtNext, void *pParam) PURE; \ STDMETHOD(GetSegment)(THIS_ WCHAR *pwzName, IDirectMusicSegment **ppSegment) PURE; \ @@ -1674,11 +1569,6 @@ ICOM_DEFINE(IDirectMusicContainer,IUnknown) STDMETHOD(Download)(THIS_ IUnknown *pAudioPath) PURE; \ STDMETHOD(Unload)(THIS_ IUnknown *pAudioPath) PURE; \ STDMETHOD(EnumSegment)(THIS_ DWORD dwIndex, IDirectMusicSegment **ppSegment) PURE; - - /*** IDirectMusicSong methods ***/ -#define IDirectMusicSong_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSong_METHODS ICOM_DEFINE(IDirectMusicSong,IUnknown) #undef INTERFACE diff --git a/include/dmusics.h b/include/dmusics.h index c6e2da6f080..5192ee81cdd 100644 --- a/include/dmusics.h +++ b/include/dmusics.h @@ -66,7 +66,7 @@ typedef struct _DMUS_VOICE_STATE #undef INTERFACE #define INTERFACE IDirectMusicSynth #define IDirectMusicSynth_METHODS \ - /*** IDirectMusicSynth methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Open)(THIS_ LPDMUS_PORTPARAMS pPortParams) PURE; \ STDMETHOD(Close)(THIS) PURE; \ STDMETHOD(SetNumChannelGroups)(THIS_ DWORD dwGroups) PURE; \ @@ -84,11 +84,6 @@ typedef struct _DMUS_VOICE_STATE STDMETHOD(GetChannelPriority)(THIS_ DWORD dwChannelGroup, DWORD dwChannel, LPDWORD pdwPriority) PURE; \ STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX pWaveFormatEx, LPDWORD pdwWaveFormatExSiz) PURE; \ STDMETHOD(GetAppend)(THIS_ DWORD *pdwAppend) PURE; - -/*** IDirectMusicSynth methods ***/ -#define IDirectMusicSynth_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSynth_METHODS ICOM_DEFINE(IDirectMusicSynth,IUnknown) #undef INTERFACE @@ -124,18 +119,12 @@ ICOM_DEFINE(IDirectMusicSynth,IUnknown) #undef INTERFACE #define INTERFACE IDirectMusicSynth8 #define IDirectMusicSynth8_METHODS \ - /*** IDirectMusicSynth8 methods ***/ \ + IDirectMusicSynth_METHODS \ STDMETHOD(PlayVoice)(THIS_ REFERENCE_TIME rt, DWORD dwVoiceId, DWORD dwChannelGroup, DWORD dwChannel, DWORD dwDLId, long prPitch, long vrVolume, SAMPLE_TIME stVoiceStart, SAMPLE_TIME stLoopStart, SAMPLE_TIME stLoopEnd) PURE; \ STDMETHOD(StopVoice)(THIS_ REFERENCE_TIME rt, DWORD dwVoiceId) PURE; \ STDMETHOD(GetVoiceState)(THIS_ DWORD dwVoice[], DWORD cbVoice, DMUS_VOICE_STATE dwVoiceState[]) PURE; \ STDMETHOD(Refresh)(THIS_ DWORD dwDownloadID, DWORD dwFlags) PURE; \ STDMETHOD(AssignChannelToBuses)(THIS_ DWORD dwChannelGroup, DWORD dwChannel, LPDWORD pdwBuses, DWORD cBuses) PURE; - -/*** IDirectMusicSynth methods ***/ -#define IDirectMusicSynth8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSynth_METHODS \ - IDirectMusicSynth8_METHODS ICOM_DEFINE(IDirectMusicSynth8,IDirectMusicSynth) #undef INTERFACE @@ -177,7 +166,7 @@ ICOM_DEFINE(IDirectMusicSynth8,IDirectMusicSynth) #undef INTERFACE #define INTERFACE IDirectMusicSynthSink #define IDirectMusicSynthSink_METHODS \ - /*** IDirectMusicSynthSink methods ***/ \ + IUnknown_METHODS \ STDMETHOD(Init)(THIS_ IDirectMusicSynth *pSynth) PURE; \ STDMETHOD(SetMasterClock)(THIS_ IReferenceClock *pClock) PURE; \ STDMETHOD(GetLatencyClock)(THIS_ IReferenceClock **ppClock) PURE; \ @@ -186,11 +175,6 @@ ICOM_DEFINE(IDirectMusicSynth8,IDirectMusicSynth) STDMETHOD(RefTimeToSample)(THIS_ REFERENCE_TIME rfTime, LONGLONG *pllSampleTime) PURE; \ STDMETHOD(SetDirectSound)(THIS_ LPDIRECTSOUND pDirectSound, LPDIRECTSOUNDBUFFER pDirectSoundBuffer) PURE; \ STDMETHOD(GetDesiredBufferSize)(THIS_ LPDWORD pdwBufferSizeInSamples) PURE; - -/*** IDirectMusicSynthSink methods ***/ -#define IDirectMusicSynthSink_IMETHODS \ - IUnknown_IMETHODS \ - IDirectMusicSynthSink_METHODS ICOM_DEFINE(IDirectMusicSynthSink,IUnknown) #undef INTERFACE diff --git a/include/docobj.h b/include/docobj.h index 7de03ae4f33..ac856b38c3c 100644 --- a/include/docobj.h +++ b/include/docobj.h @@ -195,12 +195,10 @@ typedef struct IPrint IPrint, *LPPRINT; */ #define INTERFACE IOleDocument #define IOleDocument_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateView)(THIS_ IOleInPlaceSite *pIPSite, IStream *pstm, DWORD dwReserved, IOleDocumentView **ppView) PURE; \ STDMETHOD(GetDocMiscStatus)(THIS_ DWORD *pdwStatus) PURE; \ STDMETHOD(EnumViews)(THIS_ IEnumOleDocumentViews **ppEnum, IOleDocumentView **ppView) PURE; -#define IOleDocument_IMETHODS \ - IUnknown_IMETHODS \ - IOleDocument_METHODS ICOM_DEFINE(IOleDocument,IUnknown) #undef INTERFACE @@ -221,10 +219,8 @@ ICOM_DEFINE(IOleDocument,IUnknown) */ #define INTERFACE IOleDocumentSite #define IOleDocumentSite_METHODS \ + IUnknown_METHODS \ STDMETHOD(ActivateMe)(THIS_ IOleDocumentView *pViewToActivate) PURE; -#define IOleDocumentSite_IMETHODS \ - IUnknown_IMETHODS \ - IOleDocumentSite_METHODS ICOM_DEFINE(IOleDocumentSite,IUnknown) #undef INTERFACE @@ -243,6 +239,7 @@ ICOM_DEFINE(IOleDocumentSite,IUnknown) */ #define INTERFACE IOleDocumentView #define IOleDocumentView_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetInPlaceSite)(THIS_ IOleInPlaceSite *pIPSite) PURE; \ STDMETHOD(GetInPlaceSite)(THIS_ IOleInPlaceSite **ppIPSite) PURE; \ STDMETHOD(GetDocument)(THIS_ IUnknown **ppunk) PURE; \ @@ -256,9 +253,6 @@ ICOM_DEFINE(IOleDocumentSite,IUnknown) STDMETHOD(SaveViewState)(THIS_ LPSTREAM pstm) PURE; \ STDMETHOD(ApplyViewState)(THIS_ LPSTREAM pstm) PURE; \ STDMETHOD(Clone)(THIS_ IOleInPlaceSite *pIPSiteNew, IOleDocumentView **ppViewNew) PURE; -#define IOleDocumentView_IMETHODS \ - IUnknown_IMETHODS \ - IOleDocumentView_METHODS ICOM_DEFINE(IOleDocumentView,IUnknown) #undef INTERFACE @@ -289,13 +283,11 @@ ICOM_DEFINE(IOleDocumentView,IUnknown) */ #define INTERFACE IEnumOleDocumentViews #define IEnumOleDocumentViews_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG cViews, IOleDocumentView **rgpView, ULONG *pcFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG cViews) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumOleDocumentViews **ppEnum) PURE; -#define IEnumOleDocumentViews_IMETHODS \ - IUnknown_IMETHODS \ - IEnumOleDocumentViews_METHODS ICOM_DEFINE(IEnumOleDocumentViews,IUnknown) #undef INTERFACE @@ -317,11 +309,9 @@ ICOM_DEFINE(IEnumOleDocumentViews,IUnknown) */ #define INTERFACE IOleCommandTarget #define IOleCommandTarget_METHODS \ + IUnknown_METHODS \ STDMETHOD(QueryStatus)(THIS_ const GUID *pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText) PURE; \ STDMETHOD(Exec)(THIS_ const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut) PURE; -#define IOleCommandTarget_IMETHODS \ - IUnknown_IMETHODS \ - IOleCommandTarget_METHODS ICOM_DEFINE(IOleCommandTarget,IUnknown) #undef INTERFACE @@ -341,11 +331,9 @@ ICOM_DEFINE(IOleCommandTarget,IUnknown) */ #define INTERFACE IContinueCallback #define IContinueCallback_METHODS \ + IUnknown_METHODS \ STDMETHOD(FContinue)(THIS) PURE; \ STDMETHOD(FContinuePrinting)(THIS_ LONG nCntPrinted, LONG nCurPage, WCHAR *pwszPrintStatus) PURE; -#define IContinueCallback_IMETHODS \ - IUnknown_IMETHODS \ - IContinueCallback_METHODS ICOM_DEFINE(IContinueCallback,IUnknown) #undef INTERFACE @@ -365,12 +353,10 @@ ICOM_DEFINE(IContinueCallback,IUnknown) */ #define INTERFACE IPrint #define IPrint_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetInitialPageNum)(THIS_ LONG nFirstPage) PURE; \ STDMETHOD(GetPageInfo)(THIS_ LONG *pnFirstPage, LONG *pcPages) PURE; \ STDMETHOD(Print)(THIS_ DWORD grfFlags, DVTARGETDEVICE **pptd, PAGESET **ppPageSet, STGMEDIUM *pstgmOptions, IContinueCallback *pcallback, LONG nFirstPage, LONG *pcPagesPrinted, LONG *pnLastPage) PURE; -#define IPrint_IMETHODS \ - IUnknown_IMETHODS \ - IPrint_METHODS ICOM_DEFINE(IPrint,IUnknown) #undef INTERFACE diff --git a/include/dplay.h b/include/dplay.h index 827131c041e..e8932629748 100644 --- a/include/dplay.h +++ b/include/dplay.h @@ -421,6 +421,7 @@ typedef BOOL (CALLBACK *LPDPENUMSESSIONSCALLBACK2)( */ #define INTERFACE IDirectPlay #define IDirectPlay_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddPlayerToGroup)(THIS_ DPID idGroup, DPID idPlayer) PURE; \ STDMETHOD(Close)(THIS) PURE; \ STDMETHOD(CreatePlayer)(THIS_ LPDPID lpidPlayer, LPSTR lpPlayerName, LPSTR, LPHANDLE) PURE; \ @@ -443,9 +444,6 @@ typedef BOOL (CALLBACK *LPDPENUMSESSIONSCALLBACK2)( STDMETHOD(SaveSession)(THIS_ LPSTR) PURE; \ STDMETHOD(Send)(THIS_ DPID idFrom, DPID idTo, DWORD dwFlags, LPVOID lpData, DWORD dwDataSize) PURE; \ STDMETHOD(SetPlayerName)(THIS_ DPID idPlayer, LPSTR lpPlayerName, LPSTR) PURE; -#define IDirectPlay_IMETHODS \ - IUnknown_IMETHODS \ - IDirectPlay_METHODS ICOM_DEFINE(IDirectPlay,IUnknown) #undef INTERFACE @@ -485,6 +483,7 @@ ICOM_DEFINE(IDirectPlay,IUnknown) */ #define INTERFACE IDirectPlay2 #define IDirectPlay2_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddPlayerToGroup)(THIS_ DPID idGroup, DPID idPlayer) PURE; \ STDMETHOD(Close)(THIS) PURE; \ STDMETHOD(CreateGroup)(THIS_ LPDPID lpidGroup, LPDPNAME lpGroupName, LPVOID lpData, DWORD dwDataSize, DWORD dwFlags) PURE; \ @@ -514,9 +513,6 @@ ICOM_DEFINE(IDirectPlay,IUnknown) STDMETHOD(SetPlayerData)(THIS_ DPID idPlayer, LPVOID lpData, DWORD dwDataSize, DWORD dwFlags) PURE; \ STDMETHOD(SetPlayerName)(THIS_ DPID idPlayer, LPDPNAME lpPlayerName, DWORD dwFlags) PURE; \ STDMETHOD(SetSessionDesc)(THIS_ LPDPSESSIONDESC2 lpSessDesc, DWORD dwFlags) PURE; -#define IDirectPlay2_IMETHODS \ - IUnknown_IMETHODS \ - IDirectPlay2_METHODS ICOM_DEFINE(IDirectPlay2,IUnknown) #undef INTERFACE @@ -563,6 +559,7 @@ ICOM_DEFINE(IDirectPlay2,IUnknown) */ #define INTERFACE IDirectPlay3 #define IDirectPlay3_METHODS \ + IDirectPlay2_METHODS \ STDMETHOD(AddGroupToGroup)(THIS_ DPID idParentGroup, DPID idGroup) PURE; \ STDMETHOD(CreateGroupInGroup)(THIS_ DPID idParentGroup, LPDPID lpidGroup, LPDPNAME lpGroupName, LPVOID lpData, DWORD dwDataSize, DWORD dwFlags) PURE; \ STDMETHOD(DeleteGroupFromGroup)(THIS_ DPID idParentGroup, DPID idGroup) PURE; \ @@ -578,9 +575,6 @@ ICOM_DEFINE(IDirectPlay2,IUnknown) STDMETHOD(GetGroupParent)(THIS_ DPID idGroup, LPDPID lpidParent) PURE; \ STDMETHOD(GetPlayerAccount)(THIS_ DPID idPlayer, DWORD dwFlags, LPVOID lpData, LPDWORD lpdwDataSize) PURE; \ STDMETHOD(GetPlayerFlags)(THIS_ DPID idPlayer, LPDWORD lpdwFlags) PURE; -#define IDirectPlay3_IMETHODS \ - IDirectPlay2_IMETHODS \ - IDirectPlay3_METHODS ICOM_DEFINE(IDirectPlay3,IDirectPlay2) #undef INTERFACE @@ -642,16 +636,13 @@ ICOM_DEFINE(IDirectPlay3,IDirectPlay2) */ #define INTERFACE IDirectPlay4 #define IDirectPlay4_METHODS \ + IDirectPlay3_METHODS \ STDMETHOD(GetGroupOwner)(THIS_ DPID , LPDPID ) PURE; \ STDMETHOD(SetGroupOwner)(THIS_ DPID , DPID ) PURE; \ STDMETHOD(SendEx)(THIS_ DPID , DPID , DWORD , LPVOID , DWORD , DWORD , DWORD , LPVOID , LPDWORD ) PURE; \ STDMETHOD(GetMessageQueue)(THIS_ DPID , DPID , DWORD , LPDWORD , LPDWORD ) PURE; \ STDMETHOD(CancelMessage)(THIS_ DWORD , DWORD ) PURE; \ STDMETHOD(CancelPriority)(THIS_ DWORD , DWORD , DWORD ) PURE; - -#define IDirectPlay4_IMETHODS \ - IDirectPlay3_IMETHODS \ - IDirectPlay4_METHODS ICOM_DEFINE(IDirectPlay4,IDirectPlay3) #undef INTERFACE diff --git a/include/dplobby.h b/include/dplobby.h index 4f7ee3907c8..792d3f090d4 100644 --- a/include/dplobby.h +++ b/include/dplobby.h @@ -370,6 +370,7 @@ typedef BOOL (CALLBACK *LPDPLENUMLOCALAPPLICATIONSCALLBACK)( */ #define INTERFACE IDirectPlayLobby #define IDirectPlayLobby_METHODS \ + IUnknown_METHODS \ STDMETHOD(Connect)(THIS_ DWORD, LPDIRECTPLAY2*, IUnknown*) PURE; \ STDMETHOD(CreateAddress)(THIS_ REFGUID, REFGUID, LPCVOID, DWORD, LPVOID, LPDWORD) PURE; \ STDMETHOD(EnumAddress)(THIS_ LPDPENUMADDRESSCALLBACK, LPCVOID, DWORD, LPVOID) PURE; \ @@ -381,9 +382,6 @@ typedef BOOL (CALLBACK *LPDPLENUMLOCALAPPLICATIONSCALLBACK)( STDMETHOD(SendLobbyMessage)(THIS_ DWORD, DWORD, LPVOID, DWORD) PURE; \ STDMETHOD(SetConnectionSettings)(THIS_ DWORD, DWORD, LPDPLCONNECTION) PURE; \ STDMETHOD(SetLobbyMessageEvent)(THIS_ DWORD, DWORD, HANDLE) PURE; -#define IDirectPlayLobby_IMETHODS \ - IUnknown_IMETHODS \ - IDirectPlayLobby_METHODS ICOM_DEFINE(IDirectPlayLobby,IUnknown) #undef INTERFACE @@ -392,10 +390,8 @@ ICOM_DEFINE(IDirectPlayLobby,IUnknown) */ #define INTERFACE IDirectPlayLobby2 #define IDirectPlayLobby2_METHODS \ + IDirectPlayLobby_METHODS \ STDMETHOD(CreateCompoundAddress)(THIS_ LPCDPCOMPOUNDADDRESSELEMENT, DWORD, LPVOID, LPDWORD) PURE; -#define IDirectPlayLobby2_IMETHODS \ - IDirectPlayLobby_IMETHODS \ - IDirectPlayLobby2_METHODS ICOM_DEFINE(IDirectPlayLobby2,IDirectPlayLobby) #undef INTERFACE @@ -404,14 +400,11 @@ ICOM_DEFINE(IDirectPlayLobby2,IDirectPlayLobby) */ #define INTERFACE IDirectPlayLobby3 #define IDirectPlayLobby3_METHODS \ + IDirectPlayLobby2_METHODS \ STDMETHOD(ConnectEx)(THIS_ DWORD, REFIID, LPVOID *, IUnknown *) PURE; \ STDMETHOD(RegisterApplication)(THIS_ DWORD, LPDPAPPLICATIONDESC) PURE; \ STDMETHOD(UnregisterApplication)(THIS_ DWORD, REFGUID) PURE; \ STDMETHOD(WaitForConnectionSettings)(THIS_ DWORD) PURE; - -#define IDirectPlayLobby3_IMETHODS \ - IDirectPlayLobby2_IMETHODS \ - IDirectPlayLobby3_METHODS ICOM_DEFINE(IDirectPlayLobby3,IDirectPlayLobby2) #undef INTERFACE diff --git a/include/dsdriver.h b/include/dsdriver.h index e482991e1c4..00d5e464848 100644 --- a/include/dsdriver.h +++ b/include/dsdriver.h @@ -134,15 +134,13 @@ typedef struct _DSCDRIVERCAPS */ #define INTERFACE IDsDriver #define IDsDriver_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetDriverDesc)(THIS_ PDSDRIVERDESC pDsDriverDesc) PURE; \ STDMETHOD(Open)(THIS) PURE; \ STDMETHOD(Close)(THIS) PURE; \ STDMETHOD(GetCaps)(THIS_ PDSDRIVERCAPS pDsDrvCaps) PURE; \ STDMETHOD(CreateSoundBuffer)(THIS_ LPWAVEFORMATEX pwfx,DWORD dwFlags,DWORD dwCardAddress,LPDWORD pdwcbBufferSize,LPBYTE *ppbBuffer,LPVOID *ppvObj) PURE; \ STDMETHOD(DuplicateSoundBuffer)(THIS_ PIDSDRIVERBUFFER pIDsDriverBuffer,LPVOID *ppvObj) PURE; -#define IDsDriver_IMETHODS \ - IUnknown_METHODS \ - IDsDriver_METHODS ICOM_DEFINE(IDsDriver,IUnknown) #undef INTERFACE @@ -165,6 +163,7 @@ ICOM_DEFINE(IDsDriver,IUnknown) */ #define INTERFACE IDsDriverBuffer #define IDsDriverBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(Lock)(THIS_ LPVOID *ppvAudio1,LPDWORD pdwLen1,LPVOID *pdwAudio2,LPDWORD pdwLen2,DWORD dwWritePosition,DWORD dwWriteLen,DWORD dwFlags) PURE; \ STDMETHOD(Unlock)(THIS_ LPVOID pvAudio1,DWORD dwLen1,LPVOID pvAudio2,DWORD dwLen2) PURE; \ STDMETHOD(SetFormat)(THIS_ LPWAVEFORMATEX pwfxToSet) PURE; \ @@ -174,9 +173,6 @@ ICOM_DEFINE(IDsDriver,IUnknown) STDMETHOD(GetPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor,LPDWORD lpdwCurrentWriteCursor) PURE; \ STDMETHOD(Play)(THIS_ DWORD dwReserved1,DWORD dwReserved2,DWORD dwFlags) PURE; \ STDMETHOD(Stop)(THIS) PURE; -#define IDsDriverBuffer_IMETHODS \ - IUnknown_METHODS \ - IDsDriverBuffer_METHODS ICOM_DEFINE(IDsDriverBuffer,IUnknown) #undef INTERFACE @@ -202,12 +198,10 @@ ICOM_DEFINE(IDsDriverBuffer,IUnknown) */ #define INTERFACE IDsDriverPropertySet #define IDsDriverPropertySet_METHODS \ + IUnknown_METHODS \ STDMETHOD(Get)(THIS_ PDSPROPERTY pDsProperty,LPVOID pPropertyParams,ULONG cbPropertyParams,LPVOID pPropertyData,ULONG cbPropertyData,PULONG pcbReturnedData) PURE; \ STDMETHOD(Set)(THIS_ PDSPROPERTY pDsProperty,LPVOID pPropertyParams,ULONG cbPropertyParams,LPVOID pPropertyData,ULONG cbPropertyData) PURE; \ STDMETHOD(QuerySupport)(THIS_ REFGUID PropertySetId,ULONG PropertyId,PULONG pSupport) PURE; -#define IDsDriverPropertySet_IMETHODS \ - IUnknown_METHODS \ - IDsDriverPropertySet_METHODS ICOM_DEFINE(IDsDriverPropertySet,IUnknown) #undef INTERFACE @@ -262,10 +256,8 @@ typedef enum */ #define INTERFACE IDsDriverNotify #define IDsDriverNotify_METHODS \ - STDMETHOD(SetNotificationPositions)(THIS_ DWORD dwPositionNotifies,LPCDSBPOSITIONNOTIFY pcPositionNotifies) PURE; -#define IDsDriverNotify_IMETHODS \ IUnknown_METHODS \ - IDsDriverNotify_METHODS + STDMETHOD(SetNotificationPositions)(THIS_ DWORD dwPositionNotifies,LPCDSBPOSITIONNOTIFY pcPositionNotifies) PURE; ICOM_DEFINE(IDsDriverNotify,IUnknown) #undef INTERFACE @@ -283,14 +275,12 @@ ICOM_DEFINE(IDsDriverNotify,IUnknown) */ #define INTERFACE IDsCaptureDriver #define IDsCaptureDriver_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetDriverDesc)(THIS_ PDSDRIVERDESC pDsDriverDesc) PURE; \ STDMETHOD(Open)(THIS) PURE; \ STDMETHOD(Close)(THIS) PURE; \ STDMETHOD(GetCaps)(THIS_ PDSCDRIVERCAPS pDsDrvCaps) PURE; \ STDMETHOD(CreateCaptureBuffer)(THIS_ LPWAVEFORMATEX pwfx,DWORD dwFlags,DWORD dwCardAddress,LPDWORD pdwcbBufferSize,LPBYTE *ppbBuffer,LPVOID *ppvObj) PURE; -#define IDsCaptureDriver_IMETHODS \ - IUnknown_METHODS \ - IDsCaptureDriver_METHODS ICOM_DEFINE(IDsCaptureDriver,IUnknown) #undef INTERFACE @@ -312,6 +302,7 @@ ICOM_DEFINE(IDsCaptureDriver,IUnknown) */ #define INTERFACE IDsCaptureDriverBuffer #define IDsCaptureDriverBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(Lock)(THIS_ LPVOID *ppvAudio1,LPDWORD pdwLen1,LPVOID *ppvAudio2,LPDWORD pdwLen2,DWORD dwWritePosition,DWORD dwWriteLen,DWORD dwFlags) PURE; \ STDMETHOD(Unlock)(THIS_ LPVOID pvAudio1,DWORD dwLen1,LPVOID pvAudio2,DWORD dwLen2) PURE; \ STDMETHOD(SetFormat)(THIS_ LPWAVEFORMATEX pwfxToSet) PURE; \ @@ -319,9 +310,6 @@ ICOM_DEFINE(IDsCaptureDriver,IUnknown) STDMETHOD(GetStatus)(THIS_ LPDWORD lpdwStatus) PURE; \ STDMETHOD(Start)(THIS_ DWORD dwFlags) PURE; \ STDMETHOD(Stop)(THIS) PURE; -#define IDsCaptureDriverBuffer_IMETHODS \ - IUnknown_METHODS \ - IDsCaptureDriverBuffer_METHODS ICOM_DEFINE(IDsCaptureDriverBuffer,IUnknown) #undef INTERFACE diff --git a/include/dsound.h b/include/dsound.h index 313d84019d7..7c11240ee4c 100644 --- a/include/dsound.h +++ b/include/dsound.h @@ -332,6 +332,7 @@ extern HRESULT WINAPI GetDeviceID(LPCGUID lpGuidSrc, LPGUID lpGuidDest); */ #define INTERFACE IDirectSound #define IDirectSound_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateSoundBuffer)(THIS_ LPDSBUFFERDESC lpcDSBufferDesc, LPLPDIRECTSOUNDBUFFER lplpDirectSoundBuffer, IUnknown *pUnkOuter) PURE; \ STDMETHOD(GetCaps)(THIS_ LPDSCAPS lpDSCaps) PURE; \ STDMETHOD(DuplicateSoundBuffer)(THIS_ LPDIRECTSOUNDBUFFER lpDsbOriginal, LPLPDIRECTSOUNDBUFFER lplpDsbDuplicate) PURE; \ @@ -340,9 +341,6 @@ extern HRESULT WINAPI GetDeviceID(LPCGUID lpGuidSrc, LPGUID lpGuidDest); STDMETHOD(GetSpeakerConfig)(THIS_ LPDWORD lpdwSpeakerConfig) PURE; \ STDMETHOD(SetSpeakerConfig)(THIS_ DWORD dwSpeakerConfig) PURE; \ STDMETHOD(Initialize)(THIS_ LPCGUID lpcGuid) PURE; -#define IDirectSound_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSound_METHODS ICOM_DEFINE(IDirectSound,IUnknown) #undef INTERFACE @@ -368,6 +366,7 @@ ICOM_DEFINE(IDirectSound,IUnknown) */ #define INTERFACE IDirectSound8 #define IDirectSound8_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateSoundBuffer)(THIS_ LPDSBUFFERDESC lpcDSBufferDesc, LPLPDIRECTSOUNDBUFFER8 lplpDirectSoundBuffer, IUnknown *pUnkOuter) PURE; \ STDMETHOD(GetCaps)(THIS_ LPDSCAPS lpDSCaps) PURE; \ STDMETHOD(DuplicateSoundBuffer)(THIS_ LPDIRECTSOUNDBUFFER8 lpDsbOriginal, LPLPDIRECTSOUNDBUFFER8 lplpDsbDuplicate) PURE; \ @@ -377,9 +376,6 @@ ICOM_DEFINE(IDirectSound,IUnknown) STDMETHOD(SetSpeakerConfig)(THIS_ DWORD dwSpeakerConfig) PURE; \ STDMETHOD(Initialize)(THIS_ LPCGUID lpcGuid) PURE; \ STDMETHOD(VerifyCertification)(THIS_ LPDWORD pdwCertified) PURE; -#define IDirectSound8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSound8_METHODS ICOM_DEFINE(IDirectSound8,IUnknown) #undef INTERFACE @@ -407,6 +403,7 @@ ICOM_DEFINE(IDirectSound8,IUnknown) */ #define INTERFACE IDirectSoundBuffer #define IDirectSoundBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPDSBCAPS lpDSBufferCaps) PURE; \ STDMETHOD(GetCurrentPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor, LPDWORD lpdwCurrentWriteCursor) PURE; \ STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX lpwfxFormat, DWORD dwSizeAllocated, LPDWORD lpdwSizeWritten) PURE; \ @@ -425,9 +422,6 @@ ICOM_DEFINE(IDirectSound8,IUnknown) STDMETHOD(Stop)(THIS) PURE; \ STDMETHOD(Unlock)(THIS_ LPVOID lpvAudioPtr1, DWORD dwAudioBytes1, LPVOID lpvAudioPtr2, DWORD dwAudioPtr2) PURE; \ STDMETHOD(Restore)(THIS) PURE; -#define IDirectSoundBuffer_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSoundBuffer_METHODS ICOM_DEFINE(IDirectSoundBuffer,IUnknown) #undef INTERFACE @@ -463,6 +457,7 @@ ICOM_DEFINE(IDirectSoundBuffer,IUnknown) */ #define INTERFACE IDirectSoundBuffer8 #define IDirectSoundBuffer8_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPDSBCAPS lpDSBufferCaps) PURE; \ STDMETHOD(GetCurrentPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor, LPDWORD lpdwCurrentWriteCursor) PURE; \ STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX lpwfxFormat, DWORD dwSizeAllocated, LPDWORD lpdwSizeWritten) PURE; \ @@ -484,9 +479,6 @@ ICOM_DEFINE(IDirectSoundBuffer,IUnknown) STDMETHOD(SetFX)(THIS_ DWORD dwEffectsCount, LPDSEFFECTDESC pDSFXDesc, LPDWORD pdwResultCodes) PURE; \ STDMETHOD(AcquireResources)(THIS_ DWORD dwFlags, DWORD dwEffectsCount, LPDWORD pdwResultCodes) PURE; \ STDMETHOD(GetObjectInPath)(THIS_ REFGUID rguidObject, DWORD dwIndex, REFGUID rguidInterface, LPVOID *ppObject) PURE; -#define IDirectSoundBuffer8_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSoundBuffer8_METHODS ICOM_DEFINE(IDirectSoundBuffer8,IUnknown) #undef INTERFACE @@ -526,13 +518,10 @@ ICOM_DEFINE(IDirectSoundBuffer8,IUnknown) */ #define INTERFACE IDirectSoundCapture #define IDirectSoundCapture_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateCaptureBuffer)(THIS_ LPCDSCBUFFERDESC lpcDSCBufferDesc,LPDIRECTSOUNDCAPTUREBUFFER *lplpDSCaptureBuffer, LPUNKNOWN pUnk) PURE; \ STDMETHOD(GetCaps)(THIS_ LPDSCCAPS lpDSCCaps) PURE; \ STDMETHOD(Initialize)(THIS_ LPCGUID lpcGUID) PURE; - -#define IDirectSoundCapture_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSoundCapture_METHODS ICOM_DEFINE(IDirectSoundCapture,IUnknown) #undef INTERFACE @@ -550,6 +539,7 @@ ICOM_DEFINE(IDirectSoundCapture,IUnknown) */ #define INTERFACE IDirectSoundCaptureBuffer #define IDirectSoundCaptureBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetCaps)(THIS_ LPDSCBCAPS lpDSCBCaps) PURE; \ STDMETHOD(GetCurrentPosition)(THIS_ LPDWORD lpdwCapturePosition,LPDWORD lpdwReadPosition) PURE; \ STDMETHOD(GetFormat)(THIS_ LPWAVEFORMATEX lpwfxFormat, DWORD dwSizeAllocated, LPDWORD lpdwSizeWritten) PURE; \ @@ -559,10 +549,6 @@ ICOM_DEFINE(IDirectSoundCapture,IUnknown) STDMETHOD(Start)(THIS_ DWORD dwFlags) PURE; \ STDMETHOD(Stop)(THIS) PURE; \ STDMETHOD(Unlock)(THIS_ LPVOID lpvAudioPtr1, DWORD dwAudioBytes1, LPVOID lpvAudioPtr2, DWORD dwAudioBytes2) PURE; - -#define IDirectSoundCaptureBuffer_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSoundCaptureBuffer_METHODS ICOM_DEFINE(IDirectSoundCaptureBuffer,IUnknown) #undef INTERFACE @@ -586,12 +572,9 @@ ICOM_DEFINE(IDirectSoundCaptureBuffer,IUnknown) */ #define INTERFACE IDirectSoundCaptureBuffer8 #define IDirectSoundCaptureBuffer8_METHODS \ + IDirectSoundCaptureBuffer_METHODS \ STDMETHOD(GetObjectInPath)(THIS_ REFGUID rguidObject, DWORD dwIndex, REFGUID rguidInterface, LPVOID *ppObject) PURE; \ STDMETHOD(GetFXStatus)(THIS_ DWORD dwFXCount, LPDWORD pdwFXStatus) PURE; - -#define IDirectSoundCaptureBuffer8_IMETHODS \ - IDirectSoundCaptureBuffer_IMETHODS \ - IDirectSoundCaptureBuffer8_METHODS ICOM_DEFINE(IDirectSoundCaptureBuffer8,IDirectSoundCaptureBuffer) #undef INTERFACE @@ -621,10 +604,8 @@ ICOM_DEFINE(IDirectSoundCaptureBuffer8,IDirectSoundCaptureBuffer) #define INTERFACE IDirectSoundNotify #define IDirectSoundNotify_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetNotificationPositions)(THIS_ DWORD cPositionNotifies, LPCDSBPOSITIONNOTIFY lpcPositionNotifies) PURE; -#define IDirectSoundNotify_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSoundNotify_METHODS ICOM_DEFINE(IDirectSoundNotify,IUnknown) #undef INTERFACE @@ -684,6 +665,7 @@ typedef const DS3DLISTENER *LPCDS3DLISTENER; #define INTERFACE IDirectSound3DListener #define IDirectSound3DListener_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetAllParameters)(THIS_ LPDS3DLISTENER lpListener) PURE; \ STDMETHOD(GetDistanceFactor)(THIS_ LPD3DVALUE lpflDistanceFactor) PURE; \ STDMETHOD(GetDopplerFactor)(THIS_ LPD3DVALUE lpflDopplerFactor) PURE; \ @@ -699,9 +681,6 @@ typedef const DS3DLISTENER *LPCDS3DLISTENER; STDMETHOD(SetRolloffFactor)(THIS_ D3DVALUE flRolloffFactor, DWORD dwApply) PURE; \ STDMETHOD(SetVelocity)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply) PURE; \ STDMETHOD(CommitDeferredSettings)(THIS) PURE; -#define IDirectSound3DListener_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSound3DListener_METHODS ICOM_DEFINE(IDirectSound3DListener,IUnknown) #undef INTERFACE @@ -749,6 +728,7 @@ typedef const DS3DBUFFER *LPCDS3DBUFFER; #define INTERFACE IDirectSound3DBuffer #define IDirectSound3DBuffer_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetAllParameters)(THIS_ LPDS3DBUFFER lpDs3dBuffer) PURE; \ STDMETHOD(GetConeAngles)(THIS_ LPDWORD lpdwInsideConeAngle, LPDWORD lpdwOutsideConeAngle) PURE; \ STDMETHOD(GetConeOrientation)(THIS_ LPD3DVECTOR lpvOrientation) PURE; \ @@ -767,9 +747,6 @@ typedef const DS3DBUFFER *LPCDS3DBUFFER; STDMETHOD(SetMode)(THIS_ DWORD dwMode, DWORD dwApply) PURE; \ STDMETHOD(SetPosition)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply) PURE; \ STDMETHOD(SetVelocity)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply) PURE; -#define IDirectSound3DBuffer_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSound3DBuffer_METHODS ICOM_DEFINE(IDirectSound3DBuffer,IUnknown) #undef INTERFACE @@ -807,12 +784,10 @@ ICOM_DEFINE(IDirectSound3DBuffer,IUnknown) #define INTERFACE IKsPropertySet #define IKsPropertySet_METHODS \ + IUnknown_METHODS \ STDMETHOD(Get)(THIS_ REFGUID rgid,ULONG x1,LPVOID p1,ULONG x2,LPVOID p2,ULONG x3,ULONG *px4) PURE;\ STDMETHOD(Set)(THIS_ REFGUID rgid,ULONG x1,LPVOID p1,ULONG x2,LPVOID p2,ULONG x3) PURE;\ STDMETHOD(QuerySupport)(THIS_ REFGUID rgid,ULONG x1,ULONG *px2) PURE; -#define IKsPropertySet_IMETHODS \ - IUnknown_IMETHODS \ - IKsPropertySet_METHODS ICOM_DEFINE(IKsPropertySet,IUnknown) #undef INTERFACE @@ -831,10 +806,8 @@ ICOM_DEFINE(IKsPropertySet,IUnknown) */ #define INTERFACE IDirectSoundFullDuplex #define IDirectSoundFullDuplex_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPCGUID pCaptureGuid,LPCGUID pRendererGuid,LPCDSCBUFFERDESC lpDscBufferDesc,LPCDSBUFFERDESC lpDsBufferDesc,HWND hWnd,DWORD dwLevel,LPLPDIRECTSOUNDCAPTUREBUFFER8 lplpDirectSoundCaptureBuffer8,LPLPDIRECTSOUNDBUFFER8 lplpDirectSoundBuffer8) PURE; -#define IDirectSoundFullDuplex_IMETHODS \ - IUnknown_IMETHODS \ - IDirectSoundFullDuplex_METHODS ICOM_DEFINE(IDirectSoundFullDuplex,IUnknown) #undef INTERFACE diff --git a/include/oaidl.h b/include/oaidl.h index 26545a9b11e..df7a2a9e2a7 100644 --- a/include/oaidl.h +++ b/include/oaidl.h @@ -663,17 +663,6 @@ struct IDispatchVtbl { }; -#define IDispatch_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IDispatch methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(INTERFACE *This, UINT* pctinfo); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(INTERFACE *This, UINT iTInfo, LCID lcid, ITypeInfo** ppTInfo); \ - HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(INTERFACE *This, REFIID riid, LPOLESTR* rgszNames, UINT cNames, LCID lcid, DISPID* rgDispId); \ - HRESULT (STDMETHODCALLTYPE *Invoke)(INTERFACE *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr); - /*** IUnknown methods ***/ #define IDispatch_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDispatch_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -686,6 +675,18 @@ struct IDispatchVtbl { #endif +#define IDispatch_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IDispatch methods ***/ \ + STDMETHOD_(HRESULT,GetTypeInfoCount)(THIS_ UINT* pctinfo) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ UINT iTInfo, LCID lcid, ITypeInfo** ppTInfo) PURE; \ + STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ REFIID riid, LPOLESTR* rgszNames, UINT cNames, LCID lcid, DISPID* rgDispId) PURE; \ + STDMETHOD_(HRESULT,Invoke)(THIS_ DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr) PURE; + HRESULT CALLBACK IDispatch_GetTypeInfoCount_Proxy( IDispatch* This, UINT* pctinfo); @@ -823,17 +824,6 @@ struct IEnumVARIANTVtbl { }; -#define IEnumVARIANT_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumVARIANT methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, VARIANT* rgVar, ULONG* pCeltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumVARIANT** ppEnum); - /*** IUnknown methods ***/ #define IEnumVARIANT_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumVARIANT_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -846,6 +836,18 @@ struct IEnumVARIANTVtbl { #endif +#define IEnumVARIANT_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumVARIANT methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, VARIANT* rgVar, ULONG* pCeltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumVARIANT** ppEnum) PURE; + HRESULT CALLBACK IEnumVARIANT_RemoteNext_Proxy( IEnumVARIANT* This, ULONG celt, @@ -969,15 +971,6 @@ struct ITypeCompVtbl { }; -#define ITypeComp_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeComp methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Bind)(INTERFACE *This, LPOLESTR szName, ULONG lHashVal, WORD wFlags, ITypeInfo** ppTInfo, DESCKIND* pDescKind, BINDPTR* pBindPtr); \ - HRESULT (STDMETHODCALLTYPE *BindType)(INTERFACE *This, LPOLESTR szName, ULONG lHashVal, ITypeInfo** ppTInfo, ITypeComp** ppTComp); - /*** IUnknown methods ***/ #define ITypeComp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeComp_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -988,6 +981,16 @@ struct ITypeCompVtbl { #endif +#define ITypeComp_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeComp methods ***/ \ + STDMETHOD_(HRESULT,Bind)(THIS_ LPOLESTR szName, ULONG lHashVal, WORD wFlags, ITypeInfo** ppTInfo, DESCKIND* pDescKind, BINDPTR* pBindPtr) PURE; \ + STDMETHOD_(HRESULT,BindType)(THIS_ LPOLESTR szName, ULONG lHashVal, ITypeInfo** ppTInfo, ITypeComp** ppTComp) PURE; + HRESULT CALLBACK ITypeComp_RemoteBind_Proxy( ITypeComp* This, LPOLESTR szName, @@ -1271,32 +1274,6 @@ struct ITypeInfoVtbl { }; -#define ITypeInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetTypeAttr)(INTERFACE *This, TYPEATTR** ppTypeAttr); \ - HRESULT (STDMETHODCALLTYPE *GetTypeComp)(INTERFACE *This, ITypeComp** ppTComp); \ - HRESULT (STDMETHODCALLTYPE *GetFuncDesc)(INTERFACE *This, UINT index, FUNCDESC** ppFuncDesc); \ - HRESULT (STDMETHODCALLTYPE *GetVarDesc)(INTERFACE *This, UINT index, VARDESC** ppVarDesc); \ - HRESULT (STDMETHODCALLTYPE *GetNames)(INTERFACE *This, MEMBERID memid, BSTR* rgBstrNames, UINT cMaxNames, UINT* pcNames); \ - HRESULT (STDMETHODCALLTYPE *GetRefTypeOfImplType)(INTERFACE *This, UINT index, HREFTYPE* pRefType); \ - HRESULT (STDMETHODCALLTYPE *GetImplTypeFlags)(INTERFACE *This, UINT index, INT* pImplTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(INTERFACE *This, LPOLESTR* rgszNames, UINT cNames, MEMBERID* pMemId); \ - HRESULT (STDMETHODCALLTYPE *Invoke)(INTERFACE *This, PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr); \ - HRESULT (STDMETHODCALLTYPE *GetDocumentation)(INTERFACE *This, MEMBERID memid, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile); \ - HRESULT (STDMETHODCALLTYPE *GetDllEntry)(INTERFACE *This, MEMBERID memid, INVOKEKIND invKind, BSTR* pBstrDllName, BSTR* pBstrName, WORD* pwOrdinal); \ - HRESULT (STDMETHODCALLTYPE *GetRefTypeInfo)(INTERFACE *This, HREFTYPE hRefType, ITypeInfo** ppTInfo); \ - HRESULT (STDMETHODCALLTYPE *AddressOfMember)(INTERFACE *This, MEMBERID memid, INVOKEKIND invKind, PVOID* ppv); \ - HRESULT (STDMETHODCALLTYPE *CreateInstance)(INTERFACE *This, IUnknown* pUnkOuter, REFIID riid, PVOID* ppvObj); \ - HRESULT (STDMETHODCALLTYPE *GetMops)(INTERFACE *This, MEMBERID memid, BSTR* pBstrMops); \ - HRESULT (STDMETHODCALLTYPE *GetContainingTypeLib)(INTERFACE *This, ITypeLib** ppTLib, UINT* pIndex); \ - void (STDMETHODCALLTYPE *ReleaseTypeAttr)(INTERFACE *This, TYPEATTR* pTypeAttr); \ - void (STDMETHODCALLTYPE *ReleaseFuncDesc)(INTERFACE *This, FUNCDESC* pFuncDesc); \ - void (STDMETHODCALLTYPE *ReleaseVarDesc)(INTERFACE *This, VARDESC* pVarDesc); - /*** IUnknown methods ***/ #define ITypeInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1324,6 +1301,33 @@ struct ITypeInfoVtbl { #endif +#define ITypeInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeInfo methods ***/ \ + STDMETHOD_(HRESULT,GetTypeAttr)(THIS_ TYPEATTR** ppTypeAttr) PURE; \ + STDMETHOD_(HRESULT,GetTypeComp)(THIS_ ITypeComp** ppTComp) PURE; \ + STDMETHOD_(HRESULT,GetFuncDesc)(THIS_ UINT index, FUNCDESC** ppFuncDesc) PURE; \ + STDMETHOD_(HRESULT,GetVarDesc)(THIS_ UINT index, VARDESC** ppVarDesc) PURE; \ + STDMETHOD_(HRESULT,GetNames)(THIS_ MEMBERID memid, BSTR* rgBstrNames, UINT cMaxNames, UINT* pcNames) PURE; \ + STDMETHOD_(HRESULT,GetRefTypeOfImplType)(THIS_ UINT index, HREFTYPE* pRefType) PURE; \ + STDMETHOD_(HRESULT,GetImplTypeFlags)(THIS_ UINT index, INT* pImplTypeFlags) PURE; \ + STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ LPOLESTR* rgszNames, UINT cNames, MEMBERID* pMemId) PURE; \ + STDMETHOD_(HRESULT,Invoke)(THIS_ PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr) PURE; \ + STDMETHOD_(HRESULT,GetDocumentation)(THIS_ MEMBERID memid, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile) PURE; \ + STDMETHOD_(HRESULT,GetDllEntry)(THIS_ MEMBERID memid, INVOKEKIND invKind, BSTR* pBstrDllName, BSTR* pBstrName, WORD* pwOrdinal) PURE; \ + STDMETHOD_(HRESULT,GetRefTypeInfo)(THIS_ HREFTYPE hRefType, ITypeInfo** ppTInfo) PURE; \ + STDMETHOD_(HRESULT,AddressOfMember)(THIS_ MEMBERID memid, INVOKEKIND invKind, PVOID* ppv) PURE; \ + STDMETHOD_(HRESULT,CreateInstance)(THIS_ IUnknown* pUnkOuter, REFIID riid, PVOID* ppvObj) PURE; \ + STDMETHOD_(HRESULT,GetMops)(THIS_ MEMBERID memid, BSTR* pBstrMops) PURE; \ + STDMETHOD_(HRESULT,GetContainingTypeLib)(THIS_ ITypeLib** ppTLib, UINT* pIndex) PURE; \ + STDMETHOD_(void,ReleaseTypeAttr)(THIS_ TYPEATTR* pTypeAttr) PURE; \ + STDMETHOD_(void,ReleaseFuncDesc)(THIS_ FUNCDESC* pFuncDesc) PURE; \ + STDMETHOD_(void,ReleaseVarDesc)(THIS_ VARDESC* pVarDesc) PURE; + HRESULT CALLBACK ITypeInfo_RemoteGetTypeAttr_Proxy( ITypeInfo* This, LPTYPEATTR* ppTypeAttr, @@ -1909,48 +1913,6 @@ struct ITypeInfo2Vtbl { }; -#define ITypeInfo2_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetTypeAttr)(INTERFACE *This, TYPEATTR** ppTypeAttr); \ - HRESULT (STDMETHODCALLTYPE *GetTypeComp)(INTERFACE *This, ITypeComp** ppTComp); \ - HRESULT (STDMETHODCALLTYPE *GetFuncDesc)(INTERFACE *This, UINT index, FUNCDESC** ppFuncDesc); \ - HRESULT (STDMETHODCALLTYPE *GetVarDesc)(INTERFACE *This, UINT index, VARDESC** ppVarDesc); \ - HRESULT (STDMETHODCALLTYPE *GetNames)(INTERFACE *This, MEMBERID memid, BSTR* rgBstrNames, UINT cMaxNames, UINT* pcNames); \ - HRESULT (STDMETHODCALLTYPE *GetRefTypeOfImplType)(INTERFACE *This, UINT index, HREFTYPE* pRefType); \ - HRESULT (STDMETHODCALLTYPE *GetImplTypeFlags)(INTERFACE *This, UINT index, INT* pImplTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(INTERFACE *This, LPOLESTR* rgszNames, UINT cNames, MEMBERID* pMemId); \ - HRESULT (STDMETHODCALLTYPE *Invoke)(INTERFACE *This, PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr); \ - HRESULT (STDMETHODCALLTYPE *GetDocumentation)(INTERFACE *This, MEMBERID memid, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile); \ - HRESULT (STDMETHODCALLTYPE *GetDllEntry)(INTERFACE *This, MEMBERID memid, INVOKEKIND invKind, BSTR* pBstrDllName, BSTR* pBstrName, WORD* pwOrdinal); \ - HRESULT (STDMETHODCALLTYPE *GetRefTypeInfo)(INTERFACE *This, HREFTYPE hRefType, ITypeInfo** ppTInfo); \ - HRESULT (STDMETHODCALLTYPE *AddressOfMember)(INTERFACE *This, MEMBERID memid, INVOKEKIND invKind, PVOID* ppv); \ - HRESULT (STDMETHODCALLTYPE *CreateInstance)(INTERFACE *This, IUnknown* pUnkOuter, REFIID riid, PVOID* ppvObj); \ - HRESULT (STDMETHODCALLTYPE *GetMops)(INTERFACE *This, MEMBERID memid, BSTR* pBstrMops); \ - HRESULT (STDMETHODCALLTYPE *GetContainingTypeLib)(INTERFACE *This, ITypeLib** ppTLib, UINT* pIndex); \ - void (STDMETHODCALLTYPE *ReleaseTypeAttr)(INTERFACE *This, TYPEATTR* pTypeAttr); \ - void (STDMETHODCALLTYPE *ReleaseFuncDesc)(INTERFACE *This, FUNCDESC* pFuncDesc); \ - void (STDMETHODCALLTYPE *ReleaseVarDesc)(INTERFACE *This, VARDESC* pVarDesc); \ - /*** ITypeInfo2 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetTypeKind)(INTERFACE *This, TYPEKIND* pTypeKind); \ - HRESULT (STDMETHODCALLTYPE *GetTypeFlags)(INTERFACE *This, ULONG* pTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *GetFuncIndexOfMemId)(INTERFACE *This, MEMBERID memid, INVOKEKIND invKind, UINT* pFuncIndex); \ - HRESULT (STDMETHODCALLTYPE *GetVarIndexOfMemId)(INTERFACE *This, MEMBERID memid, UINT* pVarIndex); \ - HRESULT (STDMETHODCALLTYPE *GetCustData)(INTERFACE *This, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *GetFuncCustData)(INTERFACE *This, UINT index, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *GetParamCustData)(INTERFACE *This, UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *GetVarCustData)(INTERFACE *This, UINT index, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *GetImplTypeCustData)(INTERFACE *This, UINT index, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *GetDocumentation2)(INTERFACE *This, MEMBERID memid, LCID lcid, BSTR* pbstrHelpString, DWORD* pdwHelpStringContext, BSTR* pbstrHelpStringDll); \ - HRESULT (STDMETHODCALLTYPE *GetAllCustData)(INTERFACE *This, CUSTDATA* pCustData); \ - HRESULT (STDMETHODCALLTYPE *GetAllFuncCustData)(INTERFACE *This, UINT index, CUSTDATA* pCustData); \ - HRESULT (STDMETHODCALLTYPE *GetAllParamCustData)(INTERFACE *This, UINT indexFunc, UINT indexParam, CUSTDATA* pCustData); \ - HRESULT (STDMETHODCALLTYPE *GetAllVarCustData)(INTERFACE *This, UINT index, CUSTDATA* pCustData); \ - HRESULT (STDMETHODCALLTYPE *GetAllImplTypeCustData)(INTERFACE *This, UINT index, CUSTDATA* pCustData); - /*** IUnknown methods ***/ #define ITypeInfo2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeInfo2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1994,6 +1956,49 @@ struct ITypeInfo2Vtbl { #endif +#define ITypeInfo2_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeInfo methods ***/ \ + STDMETHOD_(HRESULT,GetTypeAttr)(THIS_ TYPEATTR** ppTypeAttr) PURE; \ + STDMETHOD_(HRESULT,GetTypeComp)(THIS_ ITypeComp** ppTComp) PURE; \ + STDMETHOD_(HRESULT,GetFuncDesc)(THIS_ UINT index, FUNCDESC** ppFuncDesc) PURE; \ + STDMETHOD_(HRESULT,GetVarDesc)(THIS_ UINT index, VARDESC** ppVarDesc) PURE; \ + STDMETHOD_(HRESULT,GetNames)(THIS_ MEMBERID memid, BSTR* rgBstrNames, UINT cMaxNames, UINT* pcNames) PURE; \ + STDMETHOD_(HRESULT,GetRefTypeOfImplType)(THIS_ UINT index, HREFTYPE* pRefType) PURE; \ + STDMETHOD_(HRESULT,GetImplTypeFlags)(THIS_ UINT index, INT* pImplTypeFlags) PURE; \ + STDMETHOD_(HRESULT,GetIDsOfNames)(THIS_ LPOLESTR* rgszNames, UINT cNames, MEMBERID* pMemId) PURE; \ + STDMETHOD_(HRESULT,Invoke)(THIS_ PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, UINT* puArgErr) PURE; \ + STDMETHOD_(HRESULT,GetDocumentation)(THIS_ MEMBERID memid, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile) PURE; \ + STDMETHOD_(HRESULT,GetDllEntry)(THIS_ MEMBERID memid, INVOKEKIND invKind, BSTR* pBstrDllName, BSTR* pBstrName, WORD* pwOrdinal) PURE; \ + STDMETHOD_(HRESULT,GetRefTypeInfo)(THIS_ HREFTYPE hRefType, ITypeInfo** ppTInfo) PURE; \ + STDMETHOD_(HRESULT,AddressOfMember)(THIS_ MEMBERID memid, INVOKEKIND invKind, PVOID* ppv) PURE; \ + STDMETHOD_(HRESULT,CreateInstance)(THIS_ IUnknown* pUnkOuter, REFIID riid, PVOID* ppvObj) PURE; \ + STDMETHOD_(HRESULT,GetMops)(THIS_ MEMBERID memid, BSTR* pBstrMops) PURE; \ + STDMETHOD_(HRESULT,GetContainingTypeLib)(THIS_ ITypeLib** ppTLib, UINT* pIndex) PURE; \ + STDMETHOD_(void,ReleaseTypeAttr)(THIS_ TYPEATTR* pTypeAttr) PURE; \ + STDMETHOD_(void,ReleaseFuncDesc)(THIS_ FUNCDESC* pFuncDesc) PURE; \ + STDMETHOD_(void,ReleaseVarDesc)(THIS_ VARDESC* pVarDesc) PURE; \ + /*** ITypeInfo2 methods ***/ \ + STDMETHOD_(HRESULT,GetTypeKind)(THIS_ TYPEKIND* pTypeKind) PURE; \ + STDMETHOD_(HRESULT,GetTypeFlags)(THIS_ ULONG* pTypeFlags) PURE; \ + STDMETHOD_(HRESULT,GetFuncIndexOfMemId)(THIS_ MEMBERID memid, INVOKEKIND invKind, UINT* pFuncIndex) PURE; \ + STDMETHOD_(HRESULT,GetVarIndexOfMemId)(THIS_ MEMBERID memid, UINT* pVarIndex) PURE; \ + STDMETHOD_(HRESULT,GetCustData)(THIS_ REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,GetFuncCustData)(THIS_ UINT index, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,GetParamCustData)(THIS_ UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,GetVarCustData)(THIS_ UINT index, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,GetImplTypeCustData)(THIS_ UINT index, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,GetDocumentation2)(THIS_ MEMBERID memid, LCID lcid, BSTR* pbstrHelpString, DWORD* pdwHelpStringContext, BSTR* pbstrHelpStringDll) PURE; \ + STDMETHOD_(HRESULT,GetAllCustData)(THIS_ CUSTDATA* pCustData) PURE; \ + STDMETHOD_(HRESULT,GetAllFuncCustData)(THIS_ UINT index, CUSTDATA* pCustData) PURE; \ + STDMETHOD_(HRESULT,GetAllParamCustData)(THIS_ UINT indexFunc, UINT indexParam, CUSTDATA* pCustData) PURE; \ + STDMETHOD_(HRESULT,GetAllVarCustData)(THIS_ UINT index, CUSTDATA* pCustData) PURE; \ + STDMETHOD_(HRESULT,GetAllImplTypeCustData)(THIS_ UINT index, CUSTDATA* pCustData) PURE; + HRESULT CALLBACK ITypeInfo2_GetTypeKind_Proxy( ITypeInfo2* This, TYPEKIND* pTypeKind); @@ -2303,23 +2308,6 @@ struct ITypeLibVtbl { }; -#define ITypeLib_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeLib methods ***/ \ - UINT (STDMETHODCALLTYPE *GetTypeInfoCount)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(INTERFACE *This, UINT index, ITypeInfo** ppTInfo); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfoType)(INTERFACE *This, UINT index, TYPEKIND* pTKind); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfoOfGuid)(INTERFACE *This, REFGUID guid, ITypeInfo** ppTinfo); \ - HRESULT (STDMETHODCALLTYPE *GetLibAttr)(INTERFACE *This, TLIBATTR** ppTLibAttr); \ - HRESULT (STDMETHODCALLTYPE *GetTypeComp)(INTERFACE *This, ITypeComp** ppTComp); \ - HRESULT (STDMETHODCALLTYPE *GetDocumentation)(INTERFACE *This, INT index, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile); \ - HRESULT (STDMETHODCALLTYPE *IsName)(INTERFACE *This, LPOLESTR szNameBuf, ULONG lHashVal, BOOL* pfName); \ - HRESULT (STDMETHODCALLTYPE *FindName)(INTERFACE *This, LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo** ppTInfo, MEMBERID* rgMemId, USHORT* pcFound); \ - void (STDMETHODCALLTYPE *ReleaseTLibAttr)(INTERFACE *This, TLIBATTR* pTLibAttr); - /*** IUnknown methods ***/ #define ITypeLib_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeLib_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2338,6 +2326,24 @@ struct ITypeLibVtbl { #endif +#define ITypeLib_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeLib methods ***/ \ + STDMETHOD_(UINT,GetTypeInfoCount)(THIS) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ UINT index, ITypeInfo** ppTInfo) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfoType)(THIS_ UINT index, TYPEKIND* pTKind) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfoOfGuid)(THIS_ REFGUID guid, ITypeInfo** ppTinfo) PURE; \ + STDMETHOD_(HRESULT,GetLibAttr)(THIS_ TLIBATTR** ppTLibAttr) PURE; \ + STDMETHOD_(HRESULT,GetTypeComp)(THIS_ ITypeComp** ppTComp) PURE; \ + STDMETHOD_(HRESULT,GetDocumentation)(THIS_ INT index, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile) PURE; \ + STDMETHOD_(HRESULT,IsName)(THIS_ LPOLESTR szNameBuf, ULONG lHashVal, BOOL* pfName) PURE; \ + STDMETHOD_(HRESULT,FindName)(THIS_ LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo** ppTInfo, MEMBERID* rgMemId, USHORT* pcFound) PURE; \ + STDMETHOD_(void,ReleaseTLibAttr)(THIS_ TLIBATTR* pTLibAttr) PURE; + HRESULT CALLBACK ITypeLib_RemoteGetTypeInfoCount_Proxy( ITypeLib* This, UINT* pcTInfo); @@ -2620,28 +2626,6 @@ struct ITypeLib2Vtbl { }; -#define ITypeLib2_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeLib methods ***/ \ - UINT (STDMETHODCALLTYPE *GetTypeInfoCount)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(INTERFACE *This, UINT index, ITypeInfo** ppTInfo); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfoType)(INTERFACE *This, UINT index, TYPEKIND* pTKind); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfoOfGuid)(INTERFACE *This, REFGUID guid, ITypeInfo** ppTinfo); \ - HRESULT (STDMETHODCALLTYPE *GetLibAttr)(INTERFACE *This, TLIBATTR** ppTLibAttr); \ - HRESULT (STDMETHODCALLTYPE *GetTypeComp)(INTERFACE *This, ITypeComp** ppTComp); \ - HRESULT (STDMETHODCALLTYPE *GetDocumentation)(INTERFACE *This, INT index, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile); \ - HRESULT (STDMETHODCALLTYPE *IsName)(INTERFACE *This, LPOLESTR szNameBuf, ULONG lHashVal, BOOL* pfName); \ - HRESULT (STDMETHODCALLTYPE *FindName)(INTERFACE *This, LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo** ppTInfo, MEMBERID* rgMemId, USHORT* pcFound); \ - void (STDMETHODCALLTYPE *ReleaseTLibAttr)(INTERFACE *This, TLIBATTR* pTLibAttr); \ - /*** ITypeLib2 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetCustData)(INTERFACE *This, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *GetLibStatistics)(INTERFACE *This, ULONG* pcUniqueNames, ULONG* pcchUniqueNames); \ - HRESULT (STDMETHODCALLTYPE *GetDocumentation2)(INTERFACE *This, INT index, LCID lcid, BSTR* pbstrHelpString, DWORD* pdwHelpStringContext, BSTR* pbstrHelpStringDll); \ - HRESULT (STDMETHODCALLTYPE *GetAllCustData)(INTERFACE *This, CUSTDATA* pCustData); - /*** IUnknown methods ***/ #define ITypeLib2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeLib2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2665,6 +2649,29 @@ struct ITypeLib2Vtbl { #endif +#define ITypeLib2_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeLib methods ***/ \ + STDMETHOD_(UINT,GetTypeInfoCount)(THIS) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ UINT index, ITypeInfo** ppTInfo) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfoType)(THIS_ UINT index, TYPEKIND* pTKind) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfoOfGuid)(THIS_ REFGUID guid, ITypeInfo** ppTinfo) PURE; \ + STDMETHOD_(HRESULT,GetLibAttr)(THIS_ TLIBATTR** ppTLibAttr) PURE; \ + STDMETHOD_(HRESULT,GetTypeComp)(THIS_ ITypeComp** ppTComp) PURE; \ + STDMETHOD_(HRESULT,GetDocumentation)(THIS_ INT index, BSTR* pBstrName, BSTR* pBstrDocString, DWORD* pdwHelpContext, BSTR* pBstrHelpFile) PURE; \ + STDMETHOD_(HRESULT,IsName)(THIS_ LPOLESTR szNameBuf, ULONG lHashVal, BOOL* pfName) PURE; \ + STDMETHOD_(HRESULT,FindName)(THIS_ LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo** ppTInfo, MEMBERID* rgMemId, USHORT* pcFound) PURE; \ + STDMETHOD_(void,ReleaseTLibAttr)(THIS_ TLIBATTR* pTLibAttr) PURE; \ + /*** ITypeLib2 methods ***/ \ + STDMETHOD_(HRESULT,GetCustData)(THIS_ REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,GetLibStatistics)(THIS_ ULONG* pcUniqueNames, ULONG* pcchUniqueNames) PURE; \ + STDMETHOD_(HRESULT,GetDocumentation2)(THIS_ INT index, LCID lcid, BSTR* pbstrHelpString, DWORD* pdwHelpStringContext, BSTR* pbstrHelpStringDll) PURE; \ + STDMETHOD_(HRESULT,GetAllCustData)(THIS_ CUSTDATA* pCustData) PURE; + HRESULT CALLBACK ITypeLib2_GetCustData_Proxy( ITypeLib2* This, REFGUID guid, @@ -2797,15 +2804,6 @@ struct ITypeChangeEventsVtbl { }; -#define ITypeChangeEvents_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeChangeEvents methods ***/ \ - HRESULT (STDMETHODCALLTYPE *RequestTypeChange)(INTERFACE *This, CHANGEKIND changeKind, ITypeInfo* pTInfoBefore, LPOLESTR pStrName, INT* pfCancel); \ - HRESULT (STDMETHODCALLTYPE *AfterTypeChange)(INTERFACE *This, CHANGEKIND changeKind, ITypeInfo* pTInfoAfter, LPOLESTR pStrName); - /*** IUnknown methods ***/ #define ITypeChangeEvents_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeChangeEvents_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2816,6 +2814,16 @@ struct ITypeChangeEventsVtbl { #endif +#define ITypeChangeEvents_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeChangeEvents methods ***/ \ + STDMETHOD_(HRESULT,RequestTypeChange)(THIS_ CHANGEKIND changeKind, ITypeInfo* pTInfoBefore, LPOLESTR pStrName, INT* pfCancel) PURE; \ + STDMETHOD_(HRESULT,AfterTypeChange)(THIS_ CHANGEKIND changeKind, ITypeInfo* pTInfoAfter, LPOLESTR pStrName) PURE; + HRESULT CALLBACK ITypeChangeEvents_RequestTypeChange_Proxy( ITypeChangeEvents* This, CHANGEKIND changeKind, @@ -2907,18 +2915,6 @@ struct IErrorInfoVtbl { }; -#define IErrorInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IErrorInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetGUID)(INTERFACE *This, GUID* pGUID); \ - HRESULT (STDMETHODCALLTYPE *GetSource)(INTERFACE *This, BSTR* pBstrSource); \ - HRESULT (STDMETHODCALLTYPE *GetDescription)(INTERFACE *This, BSTR* pBstrDescription); \ - HRESULT (STDMETHODCALLTYPE *GetHelpFile)(INTERFACE *This, BSTR* pBstrHelpFile); \ - HRESULT (STDMETHODCALLTYPE *GetHelpContext)(INTERFACE *This, DWORD* pdwHelpContext); - /*** IUnknown methods ***/ #define IErrorInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IErrorInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2932,6 +2928,19 @@ struct IErrorInfoVtbl { #endif +#define IErrorInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IErrorInfo methods ***/ \ + STDMETHOD_(HRESULT,GetGUID)(THIS_ GUID* pGUID) PURE; \ + STDMETHOD_(HRESULT,GetSource)(THIS_ BSTR* pBstrSource) PURE; \ + STDMETHOD_(HRESULT,GetDescription)(THIS_ BSTR* pBstrDescription) PURE; \ + STDMETHOD_(HRESULT,GetHelpFile)(THIS_ BSTR* pBstrHelpFile) PURE; \ + STDMETHOD_(HRESULT,GetHelpContext)(THIS_ DWORD* pdwHelpContext) PURE; + HRESULT CALLBACK IErrorInfo_GetGUID_Proxy( IErrorInfo* This, GUID* pGUID); @@ -3042,18 +3051,6 @@ struct ICreateErrorInfoVtbl { }; -#define ICreateErrorInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ICreateErrorInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *SetGUID)(INTERFACE *This, REFGUID rguid); \ - HRESULT (STDMETHODCALLTYPE *SetSource)(INTERFACE *This, LPOLESTR szSource); \ - HRESULT (STDMETHODCALLTYPE *SetDescription)(INTERFACE *This, LPOLESTR szDescription); \ - HRESULT (STDMETHODCALLTYPE *SetHelpFile)(INTERFACE *This, LPOLESTR szHelpFile); \ - HRESULT (STDMETHODCALLTYPE *SetHelpContext)(INTERFACE *This, DWORD dwHelpContext); - /*** IUnknown methods ***/ #define ICreateErrorInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ICreateErrorInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3067,6 +3064,19 @@ struct ICreateErrorInfoVtbl { #endif +#define ICreateErrorInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ICreateErrorInfo methods ***/ \ + STDMETHOD_(HRESULT,SetGUID)(THIS_ REFGUID rguid) PURE; \ + STDMETHOD_(HRESULT,SetSource)(THIS_ LPOLESTR szSource) PURE; \ + STDMETHOD_(HRESULT,SetDescription)(THIS_ LPOLESTR szDescription) PURE; \ + STDMETHOD_(HRESULT,SetHelpFile)(THIS_ LPOLESTR szHelpFile) PURE; \ + STDMETHOD_(HRESULT,SetHelpContext)(THIS_ DWORD dwHelpContext) PURE; + HRESULT CALLBACK ICreateErrorInfo_SetGUID_Proxy( ICreateErrorInfo* This, REFGUID rguid); @@ -3149,14 +3159,6 @@ struct ISupportErrorInfoVtbl { }; -#define ISupportErrorInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ISupportErrorInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *InterfaceSupportsErrorInfo)(INTERFACE *This, REFIID riid); - /*** IUnknown methods ***/ #define ISupportErrorInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ISupportErrorInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3166,6 +3168,15 @@ struct ISupportErrorInfoVtbl { #endif +#define ISupportErrorInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ISupportErrorInfo methods ***/ \ + STDMETHOD_(HRESULT,InterfaceSupportsErrorInfo)(THIS_ REFIID riid) PURE; + HRESULT CALLBACK ISupportErrorInfo_InterfaceSupportsErrorInfo_Proxy( ISupportErrorInfo* This, REFIID riid); @@ -3218,14 +3229,6 @@ struct ITypeFactoryVtbl { }; -#define ITypeFactory_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeFactory methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateFromTypeInfo)(INTERFACE *This, ITypeInfo* pTypeInfo, REFIID riid, IUnknown** ppv); - /*** IUnknown methods ***/ #define ITypeFactory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeFactory_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3235,6 +3238,15 @@ struct ITypeFactoryVtbl { #endif +#define ITypeFactory_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeFactory methods ***/ \ + STDMETHOD_(HRESULT,CreateFromTypeInfo)(THIS_ ITypeInfo* pTypeInfo, REFIID riid, IUnknown** ppv) PURE; + HRESULT CALLBACK ITypeFactory_CreateFromTypeInfo_Proxy( ITypeFactory* This, ITypeInfo* pTypeInfo, @@ -3330,17 +3342,6 @@ struct ITypeMarshalVtbl { }; -#define ITypeMarshal_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ITypeMarshal methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Size)(INTERFACE *This, PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG* pSize); \ - HRESULT (STDMETHODCALLTYPE *Marshal)(INTERFACE *This, PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG cbBufferLength, BYTE* pBuffer, ULONG* pcbWritten); \ - HRESULT (STDMETHODCALLTYPE *Unmarshal)(INTERFACE *This, PVOID pvType, DWORD dwFlags, ULONG cbBufferLength, BYTE* pBuffer, ULONG* pcbRead); \ - HRESULT (STDMETHODCALLTYPE *Free)(INTERFACE *This, PVOID pvType); - /*** IUnknown methods ***/ #define ITypeMarshal_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ITypeMarshal_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3353,6 +3354,18 @@ struct ITypeMarshalVtbl { #endif +#define ITypeMarshal_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ITypeMarshal methods ***/ \ + STDMETHOD_(HRESULT,Size)(THIS_ PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG* pSize) PURE; \ + STDMETHOD_(HRESULT,Marshal)(THIS_ PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG cbBufferLength, BYTE* pBuffer, ULONG* pcbWritten) PURE; \ + STDMETHOD_(HRESULT,Unmarshal)(THIS_ PVOID pvType, DWORD dwFlags, ULONG cbBufferLength, BYTE* pBuffer, ULONG* pcbRead) PURE; \ + STDMETHOD_(HRESULT,Free)(THIS_ PVOID pvType) PURE; + HRESULT CALLBACK ITypeMarshal_Size_Proxy( ITypeMarshal* This, PVOID pvType, @@ -3570,29 +3583,6 @@ struct IRecordInfoVtbl { }; -#define IRecordInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRecordInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *RecordInit)(INTERFACE *This, PVOID pvNew); \ - HRESULT (STDMETHODCALLTYPE *RecordClear)(INTERFACE *This, PVOID pvExisting); \ - HRESULT (STDMETHODCALLTYPE *RecordCopy)(INTERFACE *This, PVOID pvExisting, PVOID pvNew); \ - HRESULT (STDMETHODCALLTYPE *GetGuid)(INTERFACE *This, GUID* pguid); \ - HRESULT (STDMETHODCALLTYPE *GetName)(INTERFACE *This, BSTR* pbstrName); \ - HRESULT (STDMETHODCALLTYPE *GetSize)(INTERFACE *This, ULONG* pcbSize); \ - HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(INTERFACE *This, ITypeInfo** ppTypeInfo); \ - HRESULT (STDMETHODCALLTYPE *GetField)(INTERFACE *This, PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField); \ - HRESULT (STDMETHODCALLTYPE *GetFieldNoCopy)(INTERFACE *This, PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField, PVOID* ppvDataCArray); \ - HRESULT (STDMETHODCALLTYPE *PutField)(INTERFACE *This, ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField); \ - HRESULT (STDMETHODCALLTYPE *PutFieldNoCopy)(INTERFACE *This, ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField); \ - HRESULT (STDMETHODCALLTYPE *GetFieldNames)(INTERFACE *This, ULONG* pcNames, BSTR* rgBstrNames); \ - BOOL (STDMETHODCALLTYPE *IsMatchingType)(INTERFACE *This, IRecordInfo* pRecordInfo); \ - PVOID (STDMETHODCALLTYPE *RecordCreate)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *RecordCreateCopy)(INTERFACE *This, PVOID pvSource, PVOID* ppvDest); \ - HRESULT (STDMETHODCALLTYPE *RecordDestroy)(INTERFACE *This, PVOID pvRecord); - /*** IUnknown methods ***/ #define IRecordInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRecordInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3617,6 +3607,30 @@ struct IRecordInfoVtbl { #endif +#define IRecordInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRecordInfo methods ***/ \ + STDMETHOD_(HRESULT,RecordInit)(THIS_ PVOID pvNew) PURE; \ + STDMETHOD_(HRESULT,RecordClear)(THIS_ PVOID pvExisting) PURE; \ + STDMETHOD_(HRESULT,RecordCopy)(THIS_ PVOID pvExisting, PVOID pvNew) PURE; \ + STDMETHOD_(HRESULT,GetGuid)(THIS_ GUID* pguid) PURE; \ + STDMETHOD_(HRESULT,GetName)(THIS_ BSTR* pbstrName) PURE; \ + STDMETHOD_(HRESULT,GetSize)(THIS_ ULONG* pcbSize) PURE; \ + STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ ITypeInfo** ppTypeInfo) PURE; \ + STDMETHOD_(HRESULT,GetField)(THIS_ PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField) PURE; \ + STDMETHOD_(HRESULT,GetFieldNoCopy)(THIS_ PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField, PVOID* ppvDataCArray) PURE; \ + STDMETHOD_(HRESULT,PutField)(THIS_ ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField) PURE; \ + STDMETHOD_(HRESULT,PutFieldNoCopy)(THIS_ ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT* pvarField) PURE; \ + STDMETHOD_(HRESULT,GetFieldNames)(THIS_ ULONG* pcNames, BSTR* rgBstrNames) PURE; \ + STDMETHOD_(BOOL,IsMatchingType)(THIS_ IRecordInfo* pRecordInfo) PURE; \ + STDMETHOD_(PVOID,RecordCreate)(THIS) PURE; \ + STDMETHOD_(HRESULT,RecordCreateCopy)(THIS_ PVOID pvSource, PVOID* ppvDest) PURE; \ + STDMETHOD_(HRESULT,RecordDestroy)(THIS_ PVOID pvRecord) PURE; + HRESULT CALLBACK IRecordInfo_RecordInit_Proxy( IRecordInfo* This, PVOID pvNew); @@ -3985,36 +3999,6 @@ struct ICreateTypeInfoVtbl { }; -#define ICreateTypeInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ICreateTypeInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *SetGuid)(INTERFACE *This, REFGUID guid); \ - HRESULT (STDMETHODCALLTYPE *SetTypeFlags)(INTERFACE *This, UINT uTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *SetDocString)(INTERFACE *This, LPOLESTR pStrDoc); \ - HRESULT (STDMETHODCALLTYPE *SetHelpContext)(INTERFACE *This, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetVersion)(INTERFACE *This, WORD wMajorVerNum, WORD wMinorVerNum); \ - HRESULT (STDMETHODCALLTYPE *AddRefTypeInfo)(INTERFACE *This, ITypeInfo* pTInfo, HREFTYPE* phRefType); \ - HRESULT (STDMETHODCALLTYPE *AddFuncDesc)(INTERFACE *This, UINT index, FUNCDESC* pFuncDesc); \ - HRESULT (STDMETHODCALLTYPE *AddImplType)(INTERFACE *This, UINT index, HREFTYPE hRefType); \ - HRESULT (STDMETHODCALLTYPE *SetImplTypeFlags)(INTERFACE *This, UINT index, INT implTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *SetAlignment)(INTERFACE *This, WORD cbAlignment); \ - HRESULT (STDMETHODCALLTYPE *SetSchema)(INTERFACE *This, LPOLESTR pStrSchema); \ - HRESULT (STDMETHODCALLTYPE *AddVarDesc)(INTERFACE *This, UINT index, VARDESC* pVarDesc); \ - HRESULT (STDMETHODCALLTYPE *SetFuncAndParamNames)(INTERFACE *This, UINT index, LPOLESTR* rgszNames, UINT cNames); \ - HRESULT (STDMETHODCALLTYPE *SetVarName)(INTERFACE *This, UINT index, LPOLESTR szName); \ - HRESULT (STDMETHODCALLTYPE *SetTypeDescAlias)(INTERFACE *This, TYPEDESC* pTDescAlias); \ - HRESULT (STDMETHODCALLTYPE *DefineFuncAsDllEntry)(INTERFACE *This, UINT index, LPOLESTR szDllName, LPOLESTR szProcName); \ - HRESULT (STDMETHODCALLTYPE *SetFuncDocString)(INTERFACE *This, UINT index, LPOLESTR szDocString); \ - HRESULT (STDMETHODCALLTYPE *SetVarDocString)(INTERFACE *This, UINT index, LPOLESTR szDocString); \ - HRESULT (STDMETHODCALLTYPE *SetFuncHelpContext)(INTERFACE *This, UINT index, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetVarHelpContext)(INTERFACE *This, UINT index, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetMops)(INTERFACE *This, UINT index, BSTR bstrMops); \ - HRESULT (STDMETHODCALLTYPE *SetTypeIdldesc)(INTERFACE *This, IDLDESC* pIdlDesc); \ - HRESULT (STDMETHODCALLTYPE *LayOut)(INTERFACE *This); - /*** IUnknown methods ***/ #define ICreateTypeInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ICreateTypeInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4046,6 +4030,37 @@ struct ICreateTypeInfoVtbl { #endif +#define ICreateTypeInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ICreateTypeInfo methods ***/ \ + STDMETHOD_(HRESULT,SetGuid)(THIS_ REFGUID guid) PURE; \ + STDMETHOD_(HRESULT,SetTypeFlags)(THIS_ UINT uTypeFlags) PURE; \ + STDMETHOD_(HRESULT,SetDocString)(THIS_ LPOLESTR pStrDoc) PURE; \ + STDMETHOD_(HRESULT,SetHelpContext)(THIS_ DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetVersion)(THIS_ WORD wMajorVerNum, WORD wMinorVerNum) PURE; \ + STDMETHOD_(HRESULT,AddRefTypeInfo)(THIS_ ITypeInfo* pTInfo, HREFTYPE* phRefType) PURE; \ + STDMETHOD_(HRESULT,AddFuncDesc)(THIS_ UINT index, FUNCDESC* pFuncDesc) PURE; \ + STDMETHOD_(HRESULT,AddImplType)(THIS_ UINT index, HREFTYPE hRefType) PURE; \ + STDMETHOD_(HRESULT,SetImplTypeFlags)(THIS_ UINT index, INT implTypeFlags) PURE; \ + STDMETHOD_(HRESULT,SetAlignment)(THIS_ WORD cbAlignment) PURE; \ + STDMETHOD_(HRESULT,SetSchema)(THIS_ LPOLESTR pStrSchema) PURE; \ + STDMETHOD_(HRESULT,AddVarDesc)(THIS_ UINT index, VARDESC* pVarDesc) PURE; \ + STDMETHOD_(HRESULT,SetFuncAndParamNames)(THIS_ UINT index, LPOLESTR* rgszNames, UINT cNames) PURE; \ + STDMETHOD_(HRESULT,SetVarName)(THIS_ UINT index, LPOLESTR szName) PURE; \ + STDMETHOD_(HRESULT,SetTypeDescAlias)(THIS_ TYPEDESC* pTDescAlias) PURE; \ + STDMETHOD_(HRESULT,DefineFuncAsDllEntry)(THIS_ UINT index, LPOLESTR szDllName, LPOLESTR szProcName) PURE; \ + STDMETHOD_(HRESULT,SetFuncDocString)(THIS_ UINT index, LPOLESTR szDocString) PURE; \ + STDMETHOD_(HRESULT,SetVarDocString)(THIS_ UINT index, LPOLESTR szDocString) PURE; \ + STDMETHOD_(HRESULT,SetFuncHelpContext)(THIS_ UINT index, DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetVarHelpContext)(THIS_ UINT index, DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetMops)(THIS_ UINT index, BSTR bstrMops) PURE; \ + STDMETHOD_(HRESULT,SetTypeIdldesc)(THIS_ IDLDESC* pIdlDesc) PURE; \ + STDMETHOD_(HRESULT,LayOut)(THIS) PURE; + HRESULT CALLBACK ICreateTypeInfo_SetGuid_Proxy( ICreateTypeInfo* This, REFGUID guid); @@ -4518,52 +4533,6 @@ struct ICreateTypeInfo2Vtbl { }; -#define ICreateTypeInfo2_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ICreateTypeInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *SetGuid)(INTERFACE *This, REFGUID guid); \ - HRESULT (STDMETHODCALLTYPE *SetTypeFlags)(INTERFACE *This, UINT uTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *SetDocString)(INTERFACE *This, LPOLESTR pStrDoc); \ - HRESULT (STDMETHODCALLTYPE *SetHelpContext)(INTERFACE *This, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetVersion)(INTERFACE *This, WORD wMajorVerNum, WORD wMinorVerNum); \ - HRESULT (STDMETHODCALLTYPE *AddRefTypeInfo)(INTERFACE *This, ITypeInfo* pTInfo, HREFTYPE* phRefType); \ - HRESULT (STDMETHODCALLTYPE *AddFuncDesc)(INTERFACE *This, UINT index, FUNCDESC* pFuncDesc); \ - HRESULT (STDMETHODCALLTYPE *AddImplType)(INTERFACE *This, UINT index, HREFTYPE hRefType); \ - HRESULT (STDMETHODCALLTYPE *SetImplTypeFlags)(INTERFACE *This, UINT index, INT implTypeFlags); \ - HRESULT (STDMETHODCALLTYPE *SetAlignment)(INTERFACE *This, WORD cbAlignment); \ - HRESULT (STDMETHODCALLTYPE *SetSchema)(INTERFACE *This, LPOLESTR pStrSchema); \ - HRESULT (STDMETHODCALLTYPE *AddVarDesc)(INTERFACE *This, UINT index, VARDESC* pVarDesc); \ - HRESULT (STDMETHODCALLTYPE *SetFuncAndParamNames)(INTERFACE *This, UINT index, LPOLESTR* rgszNames, UINT cNames); \ - HRESULT (STDMETHODCALLTYPE *SetVarName)(INTERFACE *This, UINT index, LPOLESTR szName); \ - HRESULT (STDMETHODCALLTYPE *SetTypeDescAlias)(INTERFACE *This, TYPEDESC* pTDescAlias); \ - HRESULT (STDMETHODCALLTYPE *DefineFuncAsDllEntry)(INTERFACE *This, UINT index, LPOLESTR szDllName, LPOLESTR szProcName); \ - HRESULT (STDMETHODCALLTYPE *SetFuncDocString)(INTERFACE *This, UINT index, LPOLESTR szDocString); \ - HRESULT (STDMETHODCALLTYPE *SetVarDocString)(INTERFACE *This, UINT index, LPOLESTR szDocString); \ - HRESULT (STDMETHODCALLTYPE *SetFuncHelpContext)(INTERFACE *This, UINT index, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetVarHelpContext)(INTERFACE *This, UINT index, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetMops)(INTERFACE *This, UINT index, BSTR bstrMops); \ - HRESULT (STDMETHODCALLTYPE *SetTypeIdldesc)(INTERFACE *This, IDLDESC* pIdlDesc); \ - HRESULT (STDMETHODCALLTYPE *LayOut)(INTERFACE *This); \ - /*** ICreateTypeInfo2 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *DeleteFuncDesc)(INTERFACE *This, UINT index); \ - HRESULT (STDMETHODCALLTYPE *DeleteFuncDescByMemId)(INTERFACE *This, MEMBERID memid, INVOKEKIND invKind); \ - HRESULT (STDMETHODCALLTYPE *DeleteVarDesc)(INTERFACE *This, UINT index); \ - HRESULT (STDMETHODCALLTYPE *DeleteVarDescByMemId)(INTERFACE *This, MEMBERID memid); \ - HRESULT (STDMETHODCALLTYPE *DeleteImplType)(INTERFACE *This, UINT index); \ - HRESULT (STDMETHODCALLTYPE *SetCustData)(INTERFACE *This, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *SetFuncCustData)(INTERFACE *This, UINT index, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *SetParamCustData)(INTERFACE *This, UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *SetVarCustData)(INTERFACE *This, UINT index, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *SetImplTypeCustData)(INTERFACE *This, UINT index, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *SetHelpStringContext)(INTERFACE *This, ULONG dwHelpStringContext); \ - HRESULT (STDMETHODCALLTYPE *SetFuncHelpStringContext)(INTERFACE *This, UINT index, ULONG dwHelpStringContext); \ - HRESULT (STDMETHODCALLTYPE *SetVarHelpStringContext)(INTERFACE *This, UINT index, ULONG dwHelpStringContext); \ - HRESULT (STDMETHODCALLTYPE *Invalidate)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *SetName)(INTERFACE *This, LPOLESTR szName); - /*** IUnknown methods ***/ #define ICreateTypeInfo2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ICreateTypeInfo2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4611,6 +4580,53 @@ struct ICreateTypeInfo2Vtbl { #endif +#define ICreateTypeInfo2_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ICreateTypeInfo methods ***/ \ + STDMETHOD_(HRESULT,SetGuid)(THIS_ REFGUID guid) PURE; \ + STDMETHOD_(HRESULT,SetTypeFlags)(THIS_ UINT uTypeFlags) PURE; \ + STDMETHOD_(HRESULT,SetDocString)(THIS_ LPOLESTR pStrDoc) PURE; \ + STDMETHOD_(HRESULT,SetHelpContext)(THIS_ DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetVersion)(THIS_ WORD wMajorVerNum, WORD wMinorVerNum) PURE; \ + STDMETHOD_(HRESULT,AddRefTypeInfo)(THIS_ ITypeInfo* pTInfo, HREFTYPE* phRefType) PURE; \ + STDMETHOD_(HRESULT,AddFuncDesc)(THIS_ UINT index, FUNCDESC* pFuncDesc) PURE; \ + STDMETHOD_(HRESULT,AddImplType)(THIS_ UINT index, HREFTYPE hRefType) PURE; \ + STDMETHOD_(HRESULT,SetImplTypeFlags)(THIS_ UINT index, INT implTypeFlags) PURE; \ + STDMETHOD_(HRESULT,SetAlignment)(THIS_ WORD cbAlignment) PURE; \ + STDMETHOD_(HRESULT,SetSchema)(THIS_ LPOLESTR pStrSchema) PURE; \ + STDMETHOD_(HRESULT,AddVarDesc)(THIS_ UINT index, VARDESC* pVarDesc) PURE; \ + STDMETHOD_(HRESULT,SetFuncAndParamNames)(THIS_ UINT index, LPOLESTR* rgszNames, UINT cNames) PURE; \ + STDMETHOD_(HRESULT,SetVarName)(THIS_ UINT index, LPOLESTR szName) PURE; \ + STDMETHOD_(HRESULT,SetTypeDescAlias)(THIS_ TYPEDESC* pTDescAlias) PURE; \ + STDMETHOD_(HRESULT,DefineFuncAsDllEntry)(THIS_ UINT index, LPOLESTR szDllName, LPOLESTR szProcName) PURE; \ + STDMETHOD_(HRESULT,SetFuncDocString)(THIS_ UINT index, LPOLESTR szDocString) PURE; \ + STDMETHOD_(HRESULT,SetVarDocString)(THIS_ UINT index, LPOLESTR szDocString) PURE; \ + STDMETHOD_(HRESULT,SetFuncHelpContext)(THIS_ UINT index, DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetVarHelpContext)(THIS_ UINT index, DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetMops)(THIS_ UINT index, BSTR bstrMops) PURE; \ + STDMETHOD_(HRESULT,SetTypeIdldesc)(THIS_ IDLDESC* pIdlDesc) PURE; \ + STDMETHOD_(HRESULT,LayOut)(THIS) PURE; \ + /*** ICreateTypeInfo2 methods ***/ \ + STDMETHOD_(HRESULT,DeleteFuncDesc)(THIS_ UINT index) PURE; \ + STDMETHOD_(HRESULT,DeleteFuncDescByMemId)(THIS_ MEMBERID memid, INVOKEKIND invKind) PURE; \ + STDMETHOD_(HRESULT,DeleteVarDesc)(THIS_ UINT index) PURE; \ + STDMETHOD_(HRESULT,DeleteVarDescByMemId)(THIS_ MEMBERID memid) PURE; \ + STDMETHOD_(HRESULT,DeleteImplType)(THIS_ UINT index) PURE; \ + STDMETHOD_(HRESULT,SetCustData)(THIS_ REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,SetFuncCustData)(THIS_ UINT index, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,SetParamCustData)(THIS_ UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,SetVarCustData)(THIS_ UINT index, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,SetImplTypeCustData)(THIS_ UINT index, REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,SetHelpStringContext)(THIS_ ULONG dwHelpStringContext) PURE; \ + STDMETHOD_(HRESULT,SetFuncHelpStringContext)(THIS_ UINT index, ULONG dwHelpStringContext) PURE; \ + STDMETHOD_(HRESULT,SetVarHelpStringContext)(THIS_ UINT index, ULONG dwHelpStringContext) PURE; \ + STDMETHOD_(HRESULT,Invalidate)(THIS) PURE; \ + STDMETHOD_(HRESULT,SetName)(THIS_ LPOLESTR szName) PURE; + HRESULT CALLBACK ICreateTypeInfo2_DeleteFuncDesc_Proxy( ICreateTypeInfo2* This, UINT index); @@ -4853,23 +4869,6 @@ struct ICreateTypeLibVtbl { }; -#define ICreateTypeLib_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ICreateTypeLib methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateTypeInfo)(INTERFACE *This, LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo** ppCTInfo); \ - HRESULT (STDMETHODCALLTYPE *SetName)(INTERFACE *This, LPOLESTR szName); \ - HRESULT (STDMETHODCALLTYPE *SetVersion)(INTERFACE *This, WORD wMajorVerNum, WORD wMinorVerNum); \ - HRESULT (STDMETHODCALLTYPE *SetGuid)(INTERFACE *This, REFGUID guid); \ - HRESULT (STDMETHODCALLTYPE *SetDocString)(INTERFACE *This, LPOLESTR szDoc); \ - HRESULT (STDMETHODCALLTYPE *SetHelpFileName)(INTERFACE *This, LPOLESTR szHelpFileName); \ - HRESULT (STDMETHODCALLTYPE *SetHelpContext)(INTERFACE *This, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetLcid)(INTERFACE *This, LCID lcid); \ - HRESULT (STDMETHODCALLTYPE *SetLibFlags)(INTERFACE *This, UINT uLibFlags); \ - HRESULT (STDMETHODCALLTYPE *SaveAllChanges)(INTERFACE *This); - /*** IUnknown methods ***/ #define ICreateTypeLib_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ICreateTypeLib_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4888,6 +4887,24 @@ struct ICreateTypeLibVtbl { #endif +#define ICreateTypeLib_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ICreateTypeLib methods ***/ \ + STDMETHOD_(HRESULT,CreateTypeInfo)(THIS_ LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo** ppCTInfo) PURE; \ + STDMETHOD_(HRESULT,SetName)(THIS_ LPOLESTR szName) PURE; \ + STDMETHOD_(HRESULT,SetVersion)(THIS_ WORD wMajorVerNum, WORD wMinorVerNum) PURE; \ + STDMETHOD_(HRESULT,SetGuid)(THIS_ REFGUID guid) PURE; \ + STDMETHOD_(HRESULT,SetDocString)(THIS_ LPOLESTR szDoc) PURE; \ + STDMETHOD_(HRESULT,SetHelpFileName)(THIS_ LPOLESTR szHelpFileName) PURE; \ + STDMETHOD_(HRESULT,SetHelpContext)(THIS_ DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetLcid)(THIS_ LCID lcid) PURE; \ + STDMETHOD_(HRESULT,SetLibFlags)(THIS_ UINT uLibFlags) PURE; \ + STDMETHOD_(HRESULT,SaveAllChanges)(THIS) PURE; + HRESULT CALLBACK ICreateTypeLib_CreateTypeInfo_Proxy( ICreateTypeLib* This, LPOLESTR szName, @@ -5078,28 +5095,6 @@ struct ICreateTypeLib2Vtbl { }; -#define ICreateTypeLib2_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ICreateTypeLib methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateTypeInfo)(INTERFACE *This, LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo** ppCTInfo); \ - HRESULT (STDMETHODCALLTYPE *SetName)(INTERFACE *This, LPOLESTR szName); \ - HRESULT (STDMETHODCALLTYPE *SetVersion)(INTERFACE *This, WORD wMajorVerNum, WORD wMinorVerNum); \ - HRESULT (STDMETHODCALLTYPE *SetGuid)(INTERFACE *This, REFGUID guid); \ - HRESULT (STDMETHODCALLTYPE *SetDocString)(INTERFACE *This, LPOLESTR szDoc); \ - HRESULT (STDMETHODCALLTYPE *SetHelpFileName)(INTERFACE *This, LPOLESTR szHelpFileName); \ - HRESULT (STDMETHODCALLTYPE *SetHelpContext)(INTERFACE *This, DWORD dwHelpContext); \ - HRESULT (STDMETHODCALLTYPE *SetLcid)(INTERFACE *This, LCID lcid); \ - HRESULT (STDMETHODCALLTYPE *SetLibFlags)(INTERFACE *This, UINT uLibFlags); \ - HRESULT (STDMETHODCALLTYPE *SaveAllChanges)(INTERFACE *This); \ - /*** ICreateTypeLib2 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *DeleteTypeInfo)(INTERFACE *This, LPOLESTR szName); \ - HRESULT (STDMETHODCALLTYPE *SetCustData)(INTERFACE *This, REFGUID guid, VARIANT* pVarVal); \ - HRESULT (STDMETHODCALLTYPE *SetHelpStringContext)(INTERFACE *This, ULONG dwHelpStringContext); \ - HRESULT (STDMETHODCALLTYPE *SetHelpStringDll)(INTERFACE *This, LPOLESTR szFileName); - /*** IUnknown methods ***/ #define ICreateTypeLib2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ICreateTypeLib2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5123,6 +5118,29 @@ struct ICreateTypeLib2Vtbl { #endif +#define ICreateTypeLib2_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ICreateTypeLib methods ***/ \ + STDMETHOD_(HRESULT,CreateTypeInfo)(THIS_ LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo** ppCTInfo) PURE; \ + STDMETHOD_(HRESULT,SetName)(THIS_ LPOLESTR szName) PURE; \ + STDMETHOD_(HRESULT,SetVersion)(THIS_ WORD wMajorVerNum, WORD wMinorVerNum) PURE; \ + STDMETHOD_(HRESULT,SetGuid)(THIS_ REFGUID guid) PURE; \ + STDMETHOD_(HRESULT,SetDocString)(THIS_ LPOLESTR szDoc) PURE; \ + STDMETHOD_(HRESULT,SetHelpFileName)(THIS_ LPOLESTR szHelpFileName) PURE; \ + STDMETHOD_(HRESULT,SetHelpContext)(THIS_ DWORD dwHelpContext) PURE; \ + STDMETHOD_(HRESULT,SetLcid)(THIS_ LCID lcid) PURE; \ + STDMETHOD_(HRESULT,SetLibFlags)(THIS_ UINT uLibFlags) PURE; \ + STDMETHOD_(HRESULT,SaveAllChanges)(THIS) PURE; \ + /*** ICreateTypeLib2 methods ***/ \ + STDMETHOD_(HRESULT,DeleteTypeInfo)(THIS_ LPOLESTR szName) PURE; \ + STDMETHOD_(HRESULT,SetCustData)(THIS_ REFGUID guid, VARIANT* pVarVal) PURE; \ + STDMETHOD_(HRESULT,SetHelpStringContext)(THIS_ ULONG dwHelpStringContext) PURE; \ + STDMETHOD_(HRESULT,SetHelpStringDll)(THIS_ LPOLESTR szFileName) PURE; + HRESULT CALLBACK ICreateTypeLib2_DeleteTypeInfo_Proxy( ICreateTypeLib2* This, LPOLESTR szName); diff --git a/include/objbase.h b/include/objbase.h index 12ed88d06a2..f0588b9405b 100644 --- a/include/objbase.h +++ b/include/objbase.h @@ -75,15 +75,13 @@ * * #define INTERFACE IDirect3D * #define IDirect3D_METHODS \ + * IUnknown_METHODS \ * STDMETHOD(Initialize)(THIS_ REFIID) PURE; \ * STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK, LPVOID) PURE; \ * STDMETHOD(CreateLight)(THIS_ LPDIRECT3DLIGHT*, IUnknown*) PURE; \ * STDMETHOD(CreateMaterial)(THIS_ LPDIRECT3DMATERIAL*, IUnknown*) PURE; \ * STDMETHOD(CreateViewport)(THIS_ LPDIRECT3DVIEWPORT*, IUnknown*) PURE; \ * STDMETHOD(FindDevice)(THIS_ LPD3DFINDDEVICESEARCH, LPD3DFINDDEVICERESULT) PURE; - * #define IDirect3D_IMETHODS \ - * IUnknown_IMETHODS \ - * IDirect3D_METHODS * ICOM_DEFINE(IDirect3D,IUnknown) * #undef INTERFACE * @@ -107,16 +105,12 @@ * name everywhere. Note however that because of the way macros work, a macro like STDMETHOD * cannot use 'INTERFACE##_VTABLE' because this would give 'INTERFACE_VTABLE' and not * 'IDirect3D_VTABLE'. - * - ICOM_METHODS defines the methods specific to this interface. It is then aggregated with the - * inherited methods to form ICOM_IMETHODS. - * - ICOM_IMETHODS defines the list of methods that are inheritable from this interface. It must + * - ICOM_METHODS defines the list of methods that are inheritable from this interface. It must * be written manually (rather than using a macro to generate the equivalent code) to avoid - * macro recursion (which compilers don't like). + * macro recursion (which compilers don't like). It must start with the METHODS definition + * of the parent interface so that method inheritance works properly. * - The ICOM_DEFINE finally declares all the structures necessary for the interface. We have to * explicitly use the interface name for macro expansion reasons again. - * Inherited methods are inherited in C by using the IDirect3D_METHODS macro and the parent's - * Xxx_IMETHODS macro. In C++ we need only use the IDirect3D_METHODS since method inheritance - * is taken care of by the language. * - The 'undef INTERFACE' is here to remind you that using INTERFACE in the following macros * will not work. * - Finally the set of 'IDirect3D_Xxx' macros is a standard set of macros defined to ease access @@ -166,7 +160,7 @@ * the user needs to know to use the interface. Of course the structure we will define to * implement this interface will have more fields but the first one will match this pointer. * - The code generated by ICOM_DEFINE defines both the structure representing the interface and - * the structure for the jump table. ICOM_DEFINE uses the parent's Xxx_IMETHODS macro to + * the structure for the jump table. ICOM_DEFINE uses the parent's Xxx_METHODS macro to * automatically repeat the prototypes of all the inherited methods and then uses IDirect3D_METHODS * to define the IDirect3D methods. * - Each method is declared as a pointer to function field in the jump table. The implementation @@ -258,13 +252,6 @@ #define BEGIN_INTERFACE #define END_INTERFACE -/* Wine-specific macros */ - -#define ICOM_DEFINE(iface,ibase) \ - DECLARE_INTERFACE_(iface,ibase) { \ - iface##_METHODS \ - } ICOM_COM_INTERFACE_ATTRIBUTE; - #else /* __cplusplus && !CINTERFACE */ /* C interface */ @@ -302,14 +289,12 @@ #define BEGIN_INTERFACE #define END_INTERFACE +#endif /* __cplusplus && !CINTERFACE */ + /* Wine-specific macros */ #define ICOM_DEFINE(iface,ibase) \ - DECLARE_INTERFACE_(iface,ibase) { \ - ICOM_MSVTABLE_COMPAT_FIELDS \ - ibase##_IMETHODS \ - iface##_METHODS \ - }; + DECLARE_INTERFACE_(iface,ibase) { iface##_METHODS } ICOM_COM_INTERFACE_ATTRIBUTE; #define ICOM_VTABLE(iface) iface##Vtbl #define ICOM_VFIELD(iface) ICOM_VTABLE(iface)* lpVtbl @@ -320,8 +305,6 @@ #define ICOM_THIS_MULTI(impl,field,iface) impl* const This=(impl*)((char*)(iface) - offsetof(impl,field)) #define ICOM_CTHIS_MULTI(impl,field,iface) const impl* const This=(const impl*)((char*)(iface) - offsetof(impl,field)) -#endif /* __cplusplus && !CINTERFACE */ - #include "objidl.h" #ifndef RC_INVOKED diff --git a/include/objidl.h b/include/objidl.h index fcadda6aa4d..26964016c3c 100644 --- a/include/objidl.h +++ b/include/objidl.h @@ -125,19 +125,6 @@ struct IMarshalVtbl { }; -#define IMarshal_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IMarshal methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetUnmarshalClass)(INTERFACE *This, REFIID riid, void* pv, DWORD dwDestContext, void* pvDestContext, DWORD mshlflags, CLSID* pCid); \ - HRESULT (STDMETHODCALLTYPE *GetMarshalSizeMax)(INTERFACE *This, REFIID riid, void* pv, DWORD dwDestContext, void* pvDestContext, DWORD mshlflags, DWORD* pSize); \ - HRESULT (STDMETHODCALLTYPE *MarshalInterface)(INTERFACE *This, IStream* pStm, REFIID riid, void* pv, DWORD dwDestContext, void* pvDestContext, DWORD mshlflags); \ - HRESULT (STDMETHODCALLTYPE *UnmarshalInterface)(INTERFACE *This, IStream* pStm, REFIID riid, void** ppv); \ - HRESULT (STDMETHODCALLTYPE *ReleaseMarshalData)(INTERFACE *This, IStream* pStm); \ - HRESULT (STDMETHODCALLTYPE *DisconnectObject)(INTERFACE *This, DWORD dwReserved); - /*** IUnknown methods ***/ #define IMarshal_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IMarshal_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -152,6 +139,20 @@ struct IMarshalVtbl { #endif +#define IMarshal_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IMarshal methods ***/ \ + STDMETHOD_(HRESULT,GetUnmarshalClass)(THIS_ REFIID riid, void* pv, DWORD dwDestContext, void* pvDestContext, DWORD mshlflags, CLSID* pCid) PURE; \ + STDMETHOD_(HRESULT,GetMarshalSizeMax)(THIS_ REFIID riid, void* pv, DWORD dwDestContext, void* pvDestContext, DWORD mshlflags, DWORD* pSize) PURE; \ + STDMETHOD_(HRESULT,MarshalInterface)(THIS_ IStream* pStm, REFIID riid, void* pv, DWORD dwDestContext, void* pvDestContext, DWORD mshlflags) PURE; \ + STDMETHOD_(HRESULT,UnmarshalInterface)(THIS_ IStream* pStm, REFIID riid, void** ppv) PURE; \ + STDMETHOD_(HRESULT,ReleaseMarshalData)(THIS_ IStream* pStm) PURE; \ + STDMETHOD_(HRESULT,DisconnectObject)(THIS_ DWORD dwReserved) PURE; + HRESULT CALLBACK IMarshal_GetUnmarshalClass_Proxy( IMarshal* This, REFIID riid, @@ -263,14 +264,6 @@ struct IStdMarshalInfoVtbl { }; -#define IStdMarshalInfo_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IStdMarshalInfo methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassForHandler)(INTERFACE *This, DWORD dwDestContext, void* pvDestContext, CLSID* pClsid); - /*** IUnknown methods ***/ #define IStdMarshalInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IStdMarshalInfo_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -280,6 +273,15 @@ struct IStdMarshalInfoVtbl { #endif +#define IStdMarshalInfo_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IStdMarshalInfo methods ***/ \ + STDMETHOD_(HRESULT,GetClassForHandler)(THIS_ DWORD dwDestContext, void* pvDestContext, CLSID* pClsid) PURE; + HRESULT CALLBACK IStdMarshalInfo_GetClassForHandler_Proxy( IStdMarshalInfo* This, DWORD dwDestContext, @@ -351,15 +353,6 @@ struct IExternalConnectionVtbl { }; -#define IExternalConnection_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IExternalConnection methods ***/ \ - DWORD (STDMETHODCALLTYPE *AddConnection)(INTERFACE *This, DWORD extconn, DWORD reserved); \ - DWORD (STDMETHODCALLTYPE *ReleaseConnection)(INTERFACE *This, DWORD extconn, DWORD reserved, BOOL fLastReleaseCloses); - /*** IUnknown methods ***/ #define IExternalConnection_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IExternalConnection_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -370,6 +363,16 @@ struct IExternalConnectionVtbl { #endif +#define IExternalConnection_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IExternalConnection methods ***/ \ + STDMETHOD_(DWORD,AddConnection)(THIS_ DWORD extconn, DWORD reserved) PURE; \ + STDMETHOD_(DWORD,ReleaseConnection)(THIS_ DWORD extconn, DWORD reserved, BOOL fLastReleaseCloses) PURE; + DWORD CALLBACK IExternalConnection_AddConnection_Proxy( IExternalConnection* This, DWORD extconn, @@ -439,14 +442,6 @@ struct IMultiQIVtbl { }; -#define IMultiQI_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IMultiQI methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryMultipleInterfaces)(INTERFACE *This, ULONG cMQIs, MULTI_QI* pMQIs); - /*** IUnknown methods ***/ #define IMultiQI_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IMultiQI_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -456,6 +451,15 @@ struct IMultiQIVtbl { #endif +#define IMultiQI_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IMultiQI methods ***/ \ + STDMETHOD_(HRESULT,QueryMultipleInterfaces)(THIS_ ULONG cMQIs, MULTI_QI* pMQIs) PURE; + HRESULT CALLBACK IMultiQI_QueryMultipleInterfaces_Proxy( IMultiQI* This, ULONG cMQIs, @@ -543,19 +547,6 @@ struct IMallocVtbl { }; -#define IMalloc_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IMalloc methods ***/ \ - LPVOID (STDMETHODCALLTYPE *Alloc)(INTERFACE *This, ULONG cb); \ - LPVOID (STDMETHODCALLTYPE *Realloc)(INTERFACE *This, LPVOID pv, ULONG cb); \ - void (STDMETHODCALLTYPE *Free)(INTERFACE *This, LPVOID pv); \ - ULONG (STDMETHODCALLTYPE *GetSize)(INTERFACE *This, LPVOID pv); \ - int (STDMETHODCALLTYPE *DidAlloc)(INTERFACE *This, LPVOID pv); \ - void (STDMETHODCALLTYPE *HeapMinimize)(INTERFACE *This); - /*** IUnknown methods ***/ #define IMalloc_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IMalloc_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -570,6 +561,20 @@ struct IMallocVtbl { #endif +#define IMalloc_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IMalloc methods ***/ \ + STDMETHOD_(LPVOID,Alloc)(THIS_ ULONG cb) PURE; \ + STDMETHOD_(LPVOID,Realloc)(THIS_ LPVOID pv, ULONG cb) PURE; \ + STDMETHOD_(void,Free)(THIS_ LPVOID pv) PURE; \ + STDMETHOD_(ULONG,GetSize)(THIS_ LPVOID pv) PURE; \ + STDMETHOD_(int,DidAlloc)(THIS_ LPVOID pv) PURE; \ + STDMETHOD_(void,HeapMinimize)(THIS) PURE; + LPVOID CALLBACK IMalloc_Alloc_Proxy( IMalloc* This, ULONG cb); @@ -755,25 +760,6 @@ struct IMallocSpyVtbl { }; -#define IMallocSpy_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IMallocSpy methods ***/ \ - ULONG (STDMETHODCALLTYPE *PreAlloc)(INTERFACE *This, ULONG cbRequest); \ - LPVOID (STDMETHODCALLTYPE *PostAlloc)(INTERFACE *This, LPVOID pActual); \ - LPVOID (STDMETHODCALLTYPE *PreFree)(INTERFACE *This, LPVOID pRequest, BOOL fSpyed); \ - void (STDMETHODCALLTYPE *PostFree)(INTERFACE *This, BOOL fSpyed); \ - ULONG (STDMETHODCALLTYPE *PreRealloc)(INTERFACE *This, LPVOID pRequest, ULONG cbRequest, LPVOID* ppNewRequest, BOOL fSpyed); \ - LPVOID (STDMETHODCALLTYPE *PostRealloc)(INTERFACE *This, LPVOID pActual, BOOL fSpyed); \ - LPVOID (STDMETHODCALLTYPE *PreGetSize)(INTERFACE *This, LPVOID pRequest, BOOL fSpyed); \ - ULONG (STDMETHODCALLTYPE *PostGetSize)(INTERFACE *This, ULONG cbActual, BOOL fSpyed); \ - LPVOID (STDMETHODCALLTYPE *PreDidAlloc)(INTERFACE *This, LPVOID pRequest, BOOL fSpyed); \ - int (STDMETHODCALLTYPE *PostDidAlloc)(INTERFACE *This, LPVOID pRequest, BOOL fSpyed, int fActual); \ - void (STDMETHODCALLTYPE *PreHeapMinimize)(INTERFACE *This); \ - void (STDMETHODCALLTYPE *PostHeapMinimize)(INTERFACE *This); - /*** IUnknown methods ***/ #define IMallocSpy_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IMallocSpy_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -794,6 +780,26 @@ struct IMallocSpyVtbl { #endif +#define IMallocSpy_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IMallocSpy methods ***/ \ + STDMETHOD_(ULONG,PreAlloc)(THIS_ ULONG cbRequest) PURE; \ + STDMETHOD_(LPVOID,PostAlloc)(THIS_ LPVOID pActual) PURE; \ + STDMETHOD_(LPVOID,PreFree)(THIS_ LPVOID pRequest, BOOL fSpyed) PURE; \ + STDMETHOD_(void,PostFree)(THIS_ BOOL fSpyed) PURE; \ + STDMETHOD_(ULONG,PreRealloc)(THIS_ LPVOID pRequest, ULONG cbRequest, LPVOID* ppNewRequest, BOOL fSpyed) PURE; \ + STDMETHOD_(LPVOID,PostRealloc)(THIS_ LPVOID pActual, BOOL fSpyed) PURE; \ + STDMETHOD_(LPVOID,PreGetSize)(THIS_ LPVOID pRequest, BOOL fSpyed) PURE; \ + STDMETHOD_(ULONG,PostGetSize)(THIS_ ULONG cbActual, BOOL fSpyed) PURE; \ + STDMETHOD_(LPVOID,PreDidAlloc)(THIS_ LPVOID pRequest, BOOL fSpyed) PURE; \ + STDMETHOD_(int,PostDidAlloc)(THIS_ LPVOID pRequest, BOOL fSpyed, int fActual) PURE; \ + STDMETHOD_(void,PreHeapMinimize)(THIS) PURE; \ + STDMETHOD_(void,PostHeapMinimize)(THIS) PURE; + ULONG CALLBACK IMallocSpy_PreAlloc_Proxy( IMallocSpy* This, ULONG cbRequest); @@ -964,17 +970,6 @@ struct IEnumUnknownVtbl { }; -#define IEnumUnknown_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, IUnknown** rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumUnknown** ppenum); - /*** IUnknown methods ***/ #define IEnumUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumUnknown_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -987,6 +982,18 @@ struct IEnumUnknownVtbl { #endif +#define IEnumUnknown_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumUnknown methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, IUnknown** rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumUnknown** ppenum) PURE; + HRESULT CALLBACK IEnumUnknown_RemoteNext_Proxy( IEnumUnknown* This, ULONG celt, @@ -1078,15 +1085,6 @@ struct ISurrogateVtbl { }; -#define ISurrogate_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ISurrogate methods ***/ \ - HRESULT (STDMETHODCALLTYPE *LoadDllServer)(INTERFACE *This, REFCLSID Clsid); \ - HRESULT (STDMETHODCALLTYPE *FreeSurrogate)(INTERFACE *This); - /*** IUnknown methods ***/ #define ISurrogate_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ISurrogate_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1097,6 +1095,16 @@ struct ISurrogateVtbl { #endif +#define ISurrogate_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ISurrogate methods ***/ \ + STDMETHOD_(HRESULT,LoadDllServer)(THIS_ REFCLSID Clsid) PURE; \ + STDMETHOD_(HRESULT,FreeSurrogate)(THIS) PURE; + HRESULT CALLBACK ISurrogate_LoadDllServer_Proxy( ISurrogate* This, REFCLSID Clsid); @@ -1176,16 +1184,6 @@ struct IGlobalInterfaceTableVtbl { }; -#define IGlobalInterfaceTable_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IGlobalInterfaceTable methods ***/ \ - HRESULT (STDMETHODCALLTYPE *RegisterInterfaceInGlobal)(INTERFACE *This, IUnknown* pUnk, REFIID riid, DWORD* pdwCookie); \ - HRESULT (STDMETHODCALLTYPE *RevokeInterfaceFromGlobal)(INTERFACE *This, DWORD dwCookie); \ - HRESULT (STDMETHODCALLTYPE *GetInterfaceFromGlobal)(INTERFACE *This, DWORD dwCookie, REFIID riid, void** ppv); - /*** IUnknown methods ***/ #define IGlobalInterfaceTable_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IGlobalInterfaceTable_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1197,6 +1195,17 @@ struct IGlobalInterfaceTableVtbl { #endif +#define IGlobalInterfaceTable_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IGlobalInterfaceTable methods ***/ \ + STDMETHOD_(HRESULT,RegisterInterfaceInGlobal)(THIS_ IUnknown* pUnk, REFIID riid, DWORD* pdwCookie) PURE; \ + STDMETHOD_(HRESULT,RevokeInterfaceFromGlobal)(THIS_ DWORD dwCookie) PURE; \ + STDMETHOD_(HRESULT,GetInterfaceFromGlobal)(THIS_ DWORD dwCookie, REFIID riid, void** ppv) PURE; + HRESULT CALLBACK IGlobalInterfaceTable_RegisterInterfaceInGlobal_Proxy( IGlobalInterfaceTable* This, IUnknown* pUnk, @@ -1358,23 +1367,6 @@ struct IBindCtxVtbl { }; -#define IBindCtx_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IBindCtx methods ***/ \ - HRESULT (STDMETHODCALLTYPE *RegisterObjectBound)(INTERFACE *This, IUnknown* punk); \ - HRESULT (STDMETHODCALLTYPE *RevokeObjectBound)(INTERFACE *This, IUnknown* punk); \ - HRESULT (STDMETHODCALLTYPE *ReleaseBoundObjects)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *SetBindOptions)(INTERFACE *This, BIND_OPTS* pbindopts); \ - HRESULT (STDMETHODCALLTYPE *GetBindOptions)(INTERFACE *This, BIND_OPTS* pbindopts); \ - HRESULT (STDMETHODCALLTYPE *GetRunningObjectTable)(INTERFACE *This, IRunningObjectTable** pprot); \ - HRESULT (STDMETHODCALLTYPE *RegisterObjectParam)(INTERFACE *This, LPOLESTR pszKey, IUnknown* punk); \ - HRESULT (STDMETHODCALLTYPE *GetObjectParam)(INTERFACE *This, LPOLESTR pszKey, IUnknown** ppunk); \ - HRESULT (STDMETHODCALLTYPE *EnumObjectParam)(INTERFACE *This, IEnumString** ppenum); \ - HRESULT (STDMETHODCALLTYPE *RevokeObjectParam)(INTERFACE *This, LPOLESTR pszKey); - /*** IUnknown methods ***/ #define IBindCtx_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IBindCtx_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1393,6 +1385,24 @@ struct IBindCtxVtbl { #endif +#define IBindCtx_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IBindCtx methods ***/ \ + STDMETHOD_(HRESULT,RegisterObjectBound)(THIS_ IUnknown* punk) PURE; \ + STDMETHOD_(HRESULT,RevokeObjectBound)(THIS_ IUnknown* punk) PURE; \ + STDMETHOD_(HRESULT,ReleaseBoundObjects)(THIS) PURE; \ + STDMETHOD_(HRESULT,SetBindOptions)(THIS_ BIND_OPTS* pbindopts) PURE; \ + STDMETHOD_(HRESULT,GetBindOptions)(THIS_ BIND_OPTS* pbindopts) PURE; \ + STDMETHOD_(HRESULT,GetRunningObjectTable)(THIS_ IRunningObjectTable** pprot) PURE; \ + STDMETHOD_(HRESULT,RegisterObjectParam)(THIS_ LPOLESTR pszKey, IUnknown* punk) PURE; \ + STDMETHOD_(HRESULT,GetObjectParam)(THIS_ LPOLESTR pszKey, IUnknown** ppunk) PURE; \ + STDMETHOD_(HRESULT,EnumObjectParam)(THIS_ IEnumString** ppenum) PURE; \ + STDMETHOD_(HRESULT,RevokeObjectParam)(THIS_ LPOLESTR pszKey) PURE; + HRESULT CALLBACK IBindCtx_RegisterObjectBound_Proxy( IBindCtx* This, IUnknown* punk); @@ -1552,17 +1562,6 @@ struct IEnumMonikerVtbl { }; -#define IEnumMoniker_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumMoniker methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, IMoniker** rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumMoniker** ppenum); - /*** IUnknown methods ***/ #define IEnumMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumMoniker_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1575,6 +1574,18 @@ struct IEnumMonikerVtbl { #endif +#define IEnumMoniker_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumMoniker methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, IMoniker** rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumMoniker** ppenum) PURE; + HRESULT CALLBACK IEnumMoniker_RemoteNext_Proxy( IEnumMoniker* This, ULONG celt, @@ -1689,18 +1700,6 @@ struct IRunnableObjectVtbl { }; -#define IRunnableObject_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRunnableObject methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetRunningClass)(INTERFACE *This, LPCLSID lpClsid); \ - HRESULT (STDMETHODCALLTYPE *Run)(INTERFACE *This, LPBINDCTX pbc); \ - BOOL (STDMETHODCALLTYPE *IsRunning)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *LockRunning)(INTERFACE *This, BOOL fLock, BOOL fLastUnlockCloses); \ - HRESULT (STDMETHODCALLTYPE *SetContainedObject)(INTERFACE *This, BOOL fContained); - /*** IUnknown methods ***/ #define IRunnableObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRunnableObject_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1714,6 +1713,19 @@ struct IRunnableObjectVtbl { #endif +#define IRunnableObject_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRunnableObject methods ***/ \ + STDMETHOD_(HRESULT,GetRunningClass)(THIS_ LPCLSID lpClsid) PURE; \ + STDMETHOD_(HRESULT,Run)(THIS_ LPBINDCTX pbc) PURE; \ + STDMETHOD_(BOOL,IsRunning)(THIS) PURE; \ + STDMETHOD_(HRESULT,LockRunning)(THIS_ BOOL fLock, BOOL fLastUnlockCloses) PURE; \ + STDMETHOD_(HRESULT,SetContainedObject)(THIS_ BOOL fContained) PURE; + HRESULT CALLBACK IRunnableObject_GetRunningClass_Proxy( IRunnableObject* This, LPCLSID lpClsid); @@ -1856,20 +1868,6 @@ struct IRunningObjectTableVtbl { }; -#define IRunningObjectTable_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRunningObjectTable methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Register)(INTERFACE *This, DWORD grfFlags, IUnknown* punkObject, IMoniker* pmkObjectName, DWORD* pdwRegister); \ - HRESULT (STDMETHODCALLTYPE *Revoke)(INTERFACE *This, DWORD dwRegister); \ - HRESULT (STDMETHODCALLTYPE *IsRunning)(INTERFACE *This, IMoniker* pmkObjectName); \ - HRESULT (STDMETHODCALLTYPE *GetObject)(INTERFACE *This, IMoniker* pmkObjectName, IUnknown** ppunkObject); \ - HRESULT (STDMETHODCALLTYPE *NoteChangeTime)(INTERFACE *This, DWORD dwRegister, FILETIME* pfiletime); \ - HRESULT (STDMETHODCALLTYPE *GetTimeOfLastChange)(INTERFACE *This, IMoniker* pmkObjectName, FILETIME* pfiletime); \ - HRESULT (STDMETHODCALLTYPE *EnumRunning)(INTERFACE *This, IEnumMoniker** ppenumMoniker); - /*** IUnknown methods ***/ #define IRunningObjectTable_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRunningObjectTable_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -1885,6 +1883,21 @@ struct IRunningObjectTableVtbl { #endif +#define IRunningObjectTable_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRunningObjectTable methods ***/ \ + STDMETHOD_(HRESULT,Register)(THIS_ DWORD grfFlags, IUnknown* punkObject, IMoniker* pmkObjectName, DWORD* pdwRegister) PURE; \ + STDMETHOD_(HRESULT,Revoke)(THIS_ DWORD dwRegister) PURE; \ + STDMETHOD_(HRESULT,IsRunning)(THIS_ IMoniker* pmkObjectName) PURE; \ + STDMETHOD_(HRESULT,GetObject)(THIS_ IMoniker* pmkObjectName, IUnknown** ppunkObject) PURE; \ + STDMETHOD_(HRESULT,NoteChangeTime)(THIS_ DWORD dwRegister, FILETIME* pfiletime) PURE; \ + STDMETHOD_(HRESULT,GetTimeOfLastChange)(THIS_ IMoniker* pmkObjectName, FILETIME* pfiletime) PURE; \ + STDMETHOD_(HRESULT,EnumRunning)(THIS_ IEnumMoniker** ppenumMoniker) PURE; + HRESULT CALLBACK IRunningObjectTable_Register_Proxy( IRunningObjectTable* This, DWORD grfFlags, @@ -1989,14 +2002,6 @@ struct IPersistVtbl { }; -#define IPersist_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPersist methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassID)(INTERFACE *This, CLSID* pClassID); - /*** IUnknown methods ***/ #define IPersist_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPersist_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2006,6 +2011,15 @@ struct IPersistVtbl { #endif +#define IPersist_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPersist methods ***/ \ + STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; + HRESULT CALLBACK IPersist_GetClassID_Proxy( IPersist* This, CLSID* pClassID); @@ -2083,19 +2097,6 @@ struct IPersistStreamVtbl { }; -#define IPersistStream_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPersist methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassID)(INTERFACE *This, CLSID* pClassID); \ - /*** IPersistStream methods ***/ \ - HRESULT (STDMETHODCALLTYPE *IsDirty)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Load)(INTERFACE *This, IStream* pStm); \ - HRESULT (STDMETHODCALLTYPE *Save)(INTERFACE *This, IStream* pStm, BOOL fClearDirty); \ - HRESULT (STDMETHODCALLTYPE *GetSizeMax)(INTERFACE *This, ULARGE_INTEGER* pcbSize); - /*** IUnknown methods ***/ #define IPersistStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPersistStream_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2110,6 +2111,20 @@ struct IPersistStreamVtbl { #endif +#define IPersistStream_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPersist methods ***/ \ + STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \ + /*** IPersistStream methods ***/ \ + STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \ + STDMETHOD_(HRESULT,Load)(THIS_ IStream* pStm) PURE; \ + STDMETHOD_(HRESULT,Save)(THIS_ IStream* pStm, BOOL fClearDirty) PURE; \ + STDMETHOD_(HRESULT,GetSizeMax)(THIS_ ULARGE_INTEGER* pcbSize) PURE; + HRESULT CALLBACK IPersistStream_IsDirty_Proxy( IPersistStream* This); void __RPC_STUB IPersistStream_IsDirty_Stub( @@ -2368,35 +2383,6 @@ struct IMonikerVtbl { }; -#define IMoniker_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPersist methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassID)(INTERFACE *This, CLSID* pClassID); \ - /*** IPersistStream methods ***/ \ - HRESULT (STDMETHODCALLTYPE *IsDirty)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Load)(INTERFACE *This, IStream* pStm); \ - HRESULT (STDMETHODCALLTYPE *Save)(INTERFACE *This, IStream* pStm, BOOL fClearDirty); \ - HRESULT (STDMETHODCALLTYPE *GetSizeMax)(INTERFACE *This, ULARGE_INTEGER* pcbSize); \ - /*** IMoniker methods ***/ \ - HRESULT (STDMETHODCALLTYPE *BindToObject)(INTERFACE *This, IBindCtx* pbc, IMoniker* pmkToLeft, REFIID riidResult, void** ppvResult); \ - HRESULT (STDMETHODCALLTYPE *BindToStorage)(INTERFACE *This, IBindCtx* pbc, IMoniker* pmkToLeft, REFIID riid, void** ppvObj); \ - HRESULT (STDMETHODCALLTYPE *Reduce)(INTERFACE *This, IBindCtx* pbc, DWORD dwReduceHowFar, IMoniker** ppmkToLeft, IMoniker** ppmkReduced); \ - HRESULT (STDMETHODCALLTYPE *ComposeWith)(INTERFACE *This, IMoniker* pmkRight, BOOL fOnlyIfNotGeneric, IMoniker** ppmkComposite); \ - HRESULT (STDMETHODCALLTYPE *Enum)(INTERFACE *This, BOOL fForward, IEnumMoniker** ppenumMoniker); \ - HRESULT (STDMETHODCALLTYPE *IsEqual)(INTERFACE *This, IMoniker* pmkOtherMoniker); \ - HRESULT (STDMETHODCALLTYPE *Hash)(INTERFACE *This, DWORD* pdwHash); \ - HRESULT (STDMETHODCALLTYPE *IsRunning)(INTERFACE *This, IBindCtx* pbc, IMoniker* pmkToLeft, IMoniker* pmkNewlyRunning); \ - HRESULT (STDMETHODCALLTYPE *GetTimeOfLastChange)(INTERFACE *This, IBindCtx* pbc, IMoniker* pmkToLeft, FILETIME* pFileTime); \ - HRESULT (STDMETHODCALLTYPE *Inverse)(INTERFACE *This, IMoniker** ppmk); \ - HRESULT (STDMETHODCALLTYPE *CommonPrefixWith)(INTERFACE *This, IMoniker* pmkOther, IMoniker** ppmkPrefix); \ - HRESULT (STDMETHODCALLTYPE *RelativePathTo)(INTERFACE *This, IMoniker* pmkOther, IMoniker** ppmkRelPath); \ - HRESULT (STDMETHODCALLTYPE *GetDisplayName)(INTERFACE *This, IBindCtx* pbc, IMoniker* pmkToLeft, LPOLESTR* ppszDisplayName); \ - HRESULT (STDMETHODCALLTYPE *ParseDisplayName)(INTERFACE *This, IBindCtx* pbc, IMoniker* pmkToLeft, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut); \ - HRESULT (STDMETHODCALLTYPE *IsSystemMoniker)(INTERFACE *This, DWORD* pdwMksys); - /*** IUnknown methods ***/ #define IMoniker_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IMoniker_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2427,6 +2413,36 @@ struct IMonikerVtbl { #endif +#define IMoniker_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPersist methods ***/ \ + STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \ + /*** IPersistStream methods ***/ \ + STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \ + STDMETHOD_(HRESULT,Load)(THIS_ IStream* pStm) PURE; \ + STDMETHOD_(HRESULT,Save)(THIS_ IStream* pStm, BOOL fClearDirty) PURE; \ + STDMETHOD_(HRESULT,GetSizeMax)(THIS_ ULARGE_INTEGER* pcbSize) PURE; \ + /*** IMoniker methods ***/ \ + STDMETHOD_(HRESULT,BindToObject)(THIS_ IBindCtx* pbc, IMoniker* pmkToLeft, REFIID riidResult, void** ppvResult) PURE; \ + STDMETHOD_(HRESULT,BindToStorage)(THIS_ IBindCtx* pbc, IMoniker* pmkToLeft, REFIID riid, void** ppvObj) PURE; \ + STDMETHOD_(HRESULT,Reduce)(THIS_ IBindCtx* pbc, DWORD dwReduceHowFar, IMoniker** ppmkToLeft, IMoniker** ppmkReduced) PURE; \ + STDMETHOD_(HRESULT,ComposeWith)(THIS_ IMoniker* pmkRight, BOOL fOnlyIfNotGeneric, IMoniker** ppmkComposite) PURE; \ + STDMETHOD_(HRESULT,Enum)(THIS_ BOOL fForward, IEnumMoniker** ppenumMoniker) PURE; \ + STDMETHOD_(HRESULT,IsEqual)(THIS_ IMoniker* pmkOtherMoniker) PURE; \ + STDMETHOD_(HRESULT,Hash)(THIS_ DWORD* pdwHash) PURE; \ + STDMETHOD_(HRESULT,IsRunning)(THIS_ IBindCtx* pbc, IMoniker* pmkToLeft, IMoniker* pmkNewlyRunning) PURE; \ + STDMETHOD_(HRESULT,GetTimeOfLastChange)(THIS_ IBindCtx* pbc, IMoniker* pmkToLeft, FILETIME* pFileTime) PURE; \ + STDMETHOD_(HRESULT,Inverse)(THIS_ IMoniker** ppmk) PURE; \ + STDMETHOD_(HRESULT,CommonPrefixWith)(THIS_ IMoniker* pmkOther, IMoniker** ppmkPrefix) PURE; \ + STDMETHOD_(HRESULT,RelativePathTo)(THIS_ IMoniker* pmkOther, IMoniker** ppmkRelPath) PURE; \ + STDMETHOD_(HRESULT,GetDisplayName)(THIS_ IBindCtx* pbc, IMoniker* pmkToLeft, LPOLESTR* ppszDisplayName) PURE; \ + STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ IBindCtx* pbc, IMoniker* pmkToLeft, LPOLESTR pszDisplayName, ULONG* pchEaten, IMoniker** ppmkOut) PURE; \ + STDMETHOD_(HRESULT,IsSystemMoniker)(THIS_ DWORD* pdwMksys) PURE; + HRESULT CALLBACK IMoniker_RemoteBindToObject_Proxy( IMoniker* This, IBindCtx* pbc, @@ -2639,14 +2655,6 @@ struct IROTDataVtbl { }; -#define IROTData_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IROTData methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetComparisonData)(INTERFACE *This, byte* pbData, ULONG cbMax, ULONG* pcbData); - /*** IUnknown methods ***/ #define IROTData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IROTData_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2656,6 +2664,15 @@ struct IROTDataVtbl { #endif +#define IROTData_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IROTData methods ***/ \ + STDMETHOD_(HRESULT,GetComparisonData)(THIS_ byte* pbData, ULONG cbMax, ULONG* pcbData) PURE; + HRESULT CALLBACK IROTData_GetComparisonData_Proxy( IROTData* This, byte* pbData, @@ -2731,17 +2748,6 @@ struct IEnumStringVtbl { }; -#define IEnumString_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumString methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, LPOLESTR* rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumString** ppenum); - /*** IUnknown methods ***/ #define IEnumString_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumString_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2754,6 +2760,18 @@ struct IEnumStringVtbl { #endif +#define IEnumString_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumString methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, LPOLESTR* rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumString** ppenum) PURE; + HRESULT CALLBACK IEnumString_RemoteNext_Proxy( IEnumString* This, ULONG celt, @@ -2845,14 +2863,6 @@ struct IClassActivatorVtbl { }; -#define IClassActivator_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IClassActivator methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassObject)(INTERFACE *This, REFCLSID rclsid, DWORD dwClassContext, LCID locale, REFIID riid, void** ppv); - /*** IUnknown methods ***/ #define IClassActivator_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IClassActivator_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2862,6 +2872,15 @@ struct IClassActivatorVtbl { #endif +#define IClassActivator_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IClassActivator methods ***/ \ + STDMETHOD_(HRESULT,GetClassObject)(THIS_ REFCLSID rclsid, DWORD dwClassContext, LCID locale, REFIID riid, void** ppv) PURE; + HRESULT CALLBACK IClassActivator_GetClassObject_Proxy( IClassActivator* This, REFCLSID rclsid, @@ -2929,15 +2948,6 @@ struct ISequentialStreamVtbl { }; -#define ISequentialStream_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ISequentialStream methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Read)(INTERFACE *This, void* pv, ULONG cb, ULONG* pcbRead); \ - HRESULT (STDMETHODCALLTYPE *Write)(INTERFACE *This, const void* pv, ULONG cb, ULONG* pcbWritten); - /*** IUnknown methods ***/ #define ISequentialStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ISequentialStream_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -2948,6 +2958,16 @@ struct ISequentialStreamVtbl { #endif +#define ISequentialStream_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ISequentialStream methods ***/ \ + STDMETHOD_(HRESULT,Read)(THIS_ void* pv, ULONG cb, ULONG* pcbRead) PURE; \ + STDMETHOD_(HRESULT,Write)(THIS_ const void* pv, ULONG cb, ULONG* pcbWritten) PURE; + HRESULT CALLBACK ISequentialStream_RemoteRead_Proxy( ISequentialStream* This, byte* pv, @@ -3154,25 +3174,6 @@ struct IStreamVtbl { }; -#define IStream_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ISequentialStream methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Read)(INTERFACE *This, void* pv, ULONG cb, ULONG* pcbRead); \ - HRESULT (STDMETHODCALLTYPE *Write)(INTERFACE *This, const void* pv, ULONG cb, ULONG* pcbWritten); \ - /*** IStream methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Seek)(INTERFACE *This, LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER* plibNewPosition); \ - HRESULT (STDMETHODCALLTYPE *SetSize)(INTERFACE *This, ULARGE_INTEGER libNewSize); \ - HRESULT (STDMETHODCALLTYPE *CopyTo)(INTERFACE *This, IStream* pstm, ULARGE_INTEGER cb, ULARGE_INTEGER* pcbRead, ULARGE_INTEGER* pcbWritten); \ - HRESULT (STDMETHODCALLTYPE *Commit)(INTERFACE *This, DWORD grfCommitFlags); \ - HRESULT (STDMETHODCALLTYPE *Revert)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *LockRegion)(INTERFACE *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); \ - HRESULT (STDMETHODCALLTYPE *UnlockRegion)(INTERFACE *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); \ - HRESULT (STDMETHODCALLTYPE *Stat)(INTERFACE *This, STATSTG* pstatstg, DWORD grfStatFlag); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IStream** ppstm); - /*** IUnknown methods ***/ #define IStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IStream_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3193,6 +3194,26 @@ struct IStreamVtbl { #endif +#define IStream_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ISequentialStream methods ***/ \ + STDMETHOD_(HRESULT,Read)(THIS_ void* pv, ULONG cb, ULONG* pcbRead) PURE; \ + STDMETHOD_(HRESULT,Write)(THIS_ const void* pv, ULONG cb, ULONG* pcbWritten) PURE; \ + /*** IStream methods ***/ \ + STDMETHOD_(HRESULT,Seek)(THIS_ LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER* plibNewPosition) PURE; \ + STDMETHOD_(HRESULT,SetSize)(THIS_ ULARGE_INTEGER libNewSize) PURE; \ + STDMETHOD_(HRESULT,CopyTo)(THIS_ IStream* pstm, ULARGE_INTEGER cb, ULARGE_INTEGER* pcbRead, ULARGE_INTEGER* pcbWritten) PURE; \ + STDMETHOD_(HRESULT,Commit)(THIS_ DWORD grfCommitFlags) PURE; \ + STDMETHOD_(HRESULT,Revert)(THIS) PURE; \ + STDMETHOD_(HRESULT,LockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ + STDMETHOD_(HRESULT,UnlockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ + STDMETHOD_(HRESULT,Stat)(THIS_ STATSTG* pstatstg, DWORD grfStatFlag) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IStream** ppstm) PURE; + HRESULT CALLBACK IStream_RemoteSeek_Proxy( IStream* This, LARGE_INTEGER dlibMove, @@ -3438,25 +3459,6 @@ struct IStream16Vtbl { }; -#define IStream16_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ISequentialStream methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Read)(INTERFACE *This, void* pv, ULONG cb, ULONG* pcbRead); \ - HRESULT (STDMETHODCALLTYPE *Write)(INTERFACE *This, const void* pv, ULONG cb, ULONG* pcbWritten); \ - /*** IStream16 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Seek)(INTERFACE *This, LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER* plibNewPosition); \ - HRESULT (STDMETHODCALLTYPE *SetSize)(INTERFACE *This, ULARGE_INTEGER libNewSize); \ - HRESULT (STDMETHODCALLTYPE *CopyTo)(INTERFACE *This, IStream16* pstm, ULARGE_INTEGER cb, ULARGE_INTEGER* pcbRead, ULARGE_INTEGER* pcbWritten); \ - HRESULT (STDMETHODCALLTYPE *Commit)(INTERFACE *This, DWORD grfCommitFlags); \ - HRESULT (STDMETHODCALLTYPE *Revert)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *LockRegion)(INTERFACE *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); \ - HRESULT (STDMETHODCALLTYPE *UnlockRegion)(INTERFACE *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); \ - HRESULT (STDMETHODCALLTYPE *Stat)(INTERFACE *This, STATSTG* pstatstg, DWORD grfStatFlag); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IStream16** ppstm); - /*** IUnknown methods ***/ #define IStream16_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IStream16_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3477,6 +3479,26 @@ struct IStream16Vtbl { #endif +#define IStream16_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ISequentialStream methods ***/ \ + STDMETHOD_(HRESULT,Read)(THIS_ void* pv, ULONG cb, ULONG* pcbRead) PURE; \ + STDMETHOD_(HRESULT,Write)(THIS_ const void* pv, ULONG cb, ULONG* pcbWritten) PURE; \ + /*** IStream16 methods ***/ \ + STDMETHOD_(HRESULT,Seek)(THIS_ LARGE_INTEGER dlibMove, DWORD dwOrigin, ULARGE_INTEGER* plibNewPosition) PURE; \ + STDMETHOD_(HRESULT,SetSize)(THIS_ ULARGE_INTEGER libNewSize) PURE; \ + STDMETHOD_(HRESULT,CopyTo)(THIS_ IStream16* pstm, ULARGE_INTEGER cb, ULARGE_INTEGER* pcbRead, ULARGE_INTEGER* pcbWritten) PURE; \ + STDMETHOD_(HRESULT,Commit)(THIS_ DWORD grfCommitFlags) PURE; \ + STDMETHOD_(HRESULT,Revert)(THIS) PURE; \ + STDMETHOD_(HRESULT,LockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ + STDMETHOD_(HRESULT,UnlockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ + STDMETHOD_(HRESULT,Stat)(THIS_ STATSTG* pstatstg, DWORD grfStatFlag) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IStream16** ppstm) PURE; + HRESULT CALLBACK IStream16_RemoteSeek_Proxy( IStream16* This, LARGE_INTEGER dlibMove, @@ -3646,17 +3668,6 @@ struct IEnumSTATSTGVtbl { }; -#define IEnumSTATSTG_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumSTATSTG methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, STATSTG* rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumSTATSTG** ppenum); - /*** IUnknown methods ***/ #define IEnumSTATSTG_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumSTATSTG_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3669,6 +3680,18 @@ struct IEnumSTATSTGVtbl { #endif +#define IEnumSTATSTG_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumSTATSTG methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, STATSTG* rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSTATSTG** ppenum) PURE; + HRESULT CALLBACK IEnumSTATSTG_RemoteNext_Proxy( IEnumSTATSTG* This, ULONG celt, @@ -3929,28 +3952,6 @@ struct IStorageVtbl { }; -#define IStorage_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IStorage methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateStream)(INTERFACE *This, LPCOLESTR pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStream** ppstm); \ - HRESULT (STDMETHODCALLTYPE *OpenStream)(INTERFACE *This, LPCOLESTR pwcsName, void* reserved1, DWORD grfMode, DWORD reserved2, IStream** ppstm); \ - HRESULT (STDMETHODCALLTYPE *CreateStorage)(INTERFACE *This, LPCOLESTR pwcsName, DWORD grfMode, DWORD dwStgFmt, DWORD reserved2, IStorage** ppstg); \ - HRESULT (STDMETHODCALLTYPE *OpenStorage)(INTERFACE *This, LPCOLESTR pwcsName, IStorage* pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage** ppstg); \ - HRESULT (STDMETHODCALLTYPE *CopyTo)(INTERFACE *This, DWORD ciidExclude, const IID* rgiidExclude, SNB snbExclude, IStorage* pstgDest); \ - HRESULT (STDMETHODCALLTYPE *MoveElementTo)(INTERFACE *This, LPCOLESTR pwcsName, IStorage* pstgDest, LPCOLESTR pwcsNewName, DWORD grfFlags); \ - HRESULT (STDMETHODCALLTYPE *Commit)(INTERFACE *This, DWORD grfCommitFlags); \ - HRESULT (STDMETHODCALLTYPE *Revert)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *EnumElements)(INTERFACE *This, DWORD reserved1, void* reserved2, DWORD reserved3, IEnumSTATSTG** ppenum); \ - HRESULT (STDMETHODCALLTYPE *DestroyElement)(INTERFACE *This, LPCOLESTR pwcsName); \ - HRESULT (STDMETHODCALLTYPE *RenameElement)(INTERFACE *This, LPCOLESTR pwcsOldName, LPCOLESTR pwcsNewName); \ - HRESULT (STDMETHODCALLTYPE *SetElementTimes)(INTERFACE *This, LPCOLESTR pwcsName, const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime); \ - HRESULT (STDMETHODCALLTYPE *SetClass)(INTERFACE *This, REFCLSID clsid); \ - HRESULT (STDMETHODCALLTYPE *SetStateBits)(INTERFACE *This, DWORD grfStateBits, DWORD grfMask); \ - HRESULT (STDMETHODCALLTYPE *Stat)(INTERFACE *This, STATSTG* pstatstg, DWORD grfStatFlag); - /*** IUnknown methods ***/ #define IStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IStorage_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -3974,6 +3975,29 @@ struct IStorageVtbl { #endif +#define IStorage_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IStorage methods ***/ \ + STDMETHOD_(HRESULT,CreateStream)(THIS_ LPCOLESTR pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStream** ppstm) PURE; \ + STDMETHOD_(HRESULT,OpenStream)(THIS_ LPCOLESTR pwcsName, void* reserved1, DWORD grfMode, DWORD reserved2, IStream** ppstm) PURE; \ + STDMETHOD_(HRESULT,CreateStorage)(THIS_ LPCOLESTR pwcsName, DWORD grfMode, DWORD dwStgFmt, DWORD reserved2, IStorage** ppstg) PURE; \ + STDMETHOD_(HRESULT,OpenStorage)(THIS_ LPCOLESTR pwcsName, IStorage* pstgPriority, DWORD grfMode, SNB snbExclude, DWORD reserved, IStorage** ppstg) PURE; \ + STDMETHOD_(HRESULT,CopyTo)(THIS_ DWORD ciidExclude, const IID* rgiidExclude, SNB snbExclude, IStorage* pstgDest) PURE; \ + STDMETHOD_(HRESULT,MoveElementTo)(THIS_ LPCOLESTR pwcsName, IStorage* pstgDest, LPCOLESTR pwcsNewName, DWORD grfFlags) PURE; \ + STDMETHOD_(HRESULT,Commit)(THIS_ DWORD grfCommitFlags) PURE; \ + STDMETHOD_(HRESULT,Revert)(THIS) PURE; \ + STDMETHOD_(HRESULT,EnumElements)(THIS_ DWORD reserved1, void* reserved2, DWORD reserved3, IEnumSTATSTG** ppenum) PURE; \ + STDMETHOD_(HRESULT,DestroyElement)(THIS_ LPCOLESTR pwcsName) PURE; \ + STDMETHOD_(HRESULT,RenameElement)(THIS_ LPCOLESTR pwcsOldName, LPCOLESTR pwcsNewName) PURE; \ + STDMETHOD_(HRESULT,SetElementTimes)(THIS_ LPCOLESTR pwcsName, const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime) PURE; \ + STDMETHOD_(HRESULT,SetClass)(THIS_ REFCLSID clsid) PURE; \ + STDMETHOD_(HRESULT,SetStateBits)(THIS_ DWORD grfStateBits, DWORD grfMask) PURE; \ + STDMETHOD_(HRESULT,Stat)(THIS_ STATSTG* pstatstg, DWORD grfStatFlag) PURE; + HRESULT CALLBACK IStorage_CreateStream_Proxy( IStorage* This, LPCOLESTR pwcsName, @@ -4371,28 +4395,6 @@ struct IStorage16Vtbl { }; -#define IStorage16_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IStorage16 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateStream)(INTERFACE *This, LPCOLESTR16 pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStream16** ppstm); \ - HRESULT (STDMETHODCALLTYPE *OpenStream)(INTERFACE *This, LPCOLESTR16 pwcsName, void* reserved1, DWORD grfMode, DWORD reserved2, IStream16** ppstm); \ - HRESULT (STDMETHODCALLTYPE *CreateStorage)(INTERFACE *This, LPCOLESTR16 pwcsName, DWORD grfMode, DWORD dwStgFmt, DWORD reserved2, IStorage16** ppstg); \ - HRESULT (STDMETHODCALLTYPE *OpenStorage)(INTERFACE *This, LPCOLESTR16 pwcsName, IStorage16* pstgPriority, DWORD grfMode, SNB16 snbExclude, DWORD reserved, IStorage16** ppstg); \ - HRESULT (STDMETHODCALLTYPE *CopyTo)(INTERFACE *This, DWORD ciidExclude, const IID* rgiidExclude, SNB16 snbExclude, IStorage16* pstgDest); \ - HRESULT (STDMETHODCALLTYPE *MoveElementTo)(INTERFACE *This, LPCOLESTR16 pwcsName, IStorage16* pstgDest, LPCOLESTR16 pwcsNewName, DWORD grfFlags); \ - HRESULT (STDMETHODCALLTYPE *Commit)(INTERFACE *This, DWORD grfCommitFlags); \ - HRESULT (STDMETHODCALLTYPE *Revert)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *EnumElements)(INTERFACE *This, DWORD reserved1, void* reserved2, DWORD reserved3, IEnumSTATSTG** ppenum); \ - HRESULT (STDMETHODCALLTYPE *DestroyElement)(INTERFACE *This, LPCOLESTR16 pwcsName); \ - HRESULT (STDMETHODCALLTYPE *RenameElement)(INTERFACE *This, LPCOLESTR16 pwcsOldName, LPCOLESTR16 pwcsNewName); \ - HRESULT (STDMETHODCALLTYPE *SetElementTimes)(INTERFACE *This, LPCOLESTR16 pwcsName, const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime); \ - HRESULT (STDMETHODCALLTYPE *SetClass)(INTERFACE *This, REFCLSID clsid); \ - HRESULT (STDMETHODCALLTYPE *SetStateBits)(INTERFACE *This, DWORD grfStateBits, DWORD grfMask); \ - HRESULT (STDMETHODCALLTYPE *Stat)(INTERFACE *This, STATSTG* pstatstg, DWORD grfStatFlag); - /*** IUnknown methods ***/ #define IStorage16_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IStorage16_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4416,6 +4418,29 @@ struct IStorage16Vtbl { #endif +#define IStorage16_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IStorage16 methods ***/ \ + STDMETHOD_(HRESULT,CreateStream)(THIS_ LPCOLESTR16 pwcsName, DWORD grfMode, DWORD reserved1, DWORD reserved2, IStream16** ppstm) PURE; \ + STDMETHOD_(HRESULT,OpenStream)(THIS_ LPCOLESTR16 pwcsName, void* reserved1, DWORD grfMode, DWORD reserved2, IStream16** ppstm) PURE; \ + STDMETHOD_(HRESULT,CreateStorage)(THIS_ LPCOLESTR16 pwcsName, DWORD grfMode, DWORD dwStgFmt, DWORD reserved2, IStorage16** ppstg) PURE; \ + STDMETHOD_(HRESULT,OpenStorage)(THIS_ LPCOLESTR16 pwcsName, IStorage16* pstgPriority, DWORD grfMode, SNB16 snbExclude, DWORD reserved, IStorage16** ppstg) PURE; \ + STDMETHOD_(HRESULT,CopyTo)(THIS_ DWORD ciidExclude, const IID* rgiidExclude, SNB16 snbExclude, IStorage16* pstgDest) PURE; \ + STDMETHOD_(HRESULT,MoveElementTo)(THIS_ LPCOLESTR16 pwcsName, IStorage16* pstgDest, LPCOLESTR16 pwcsNewName, DWORD grfFlags) PURE; \ + STDMETHOD_(HRESULT,Commit)(THIS_ DWORD grfCommitFlags) PURE; \ + STDMETHOD_(HRESULT,Revert)(THIS) PURE; \ + STDMETHOD_(HRESULT,EnumElements)(THIS_ DWORD reserved1, void* reserved2, DWORD reserved3, IEnumSTATSTG** ppenum) PURE; \ + STDMETHOD_(HRESULT,DestroyElement)(THIS_ LPCOLESTR16 pwcsName) PURE; \ + STDMETHOD_(HRESULT,RenameElement)(THIS_ LPCOLESTR16 pwcsOldName, LPCOLESTR16 pwcsNewName) PURE; \ + STDMETHOD_(HRESULT,SetElementTimes)(THIS_ LPCOLESTR16 pwcsName, const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime) PURE; \ + STDMETHOD_(HRESULT,SetClass)(THIS_ REFCLSID clsid) PURE; \ + STDMETHOD_(HRESULT,SetStateBits)(THIS_ DWORD grfStateBits, DWORD grfMask) PURE; \ + STDMETHOD_(HRESULT,Stat)(THIS_ STATSTG* pstatstg, DWORD grfStatFlag) PURE; + HRESULT CALLBACK IStorage16_CreateStream_Proxy( IStorage16* This, LPCOLESTR16 pwcsName, @@ -4675,20 +4700,6 @@ struct IPersistFileVtbl { }; -#define IPersistFile_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPersist methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassID)(INTERFACE *This, CLSID* pClassID); \ - /*** IPersistFile methods ***/ \ - HRESULT (STDMETHODCALLTYPE *IsDirty)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Load)(INTERFACE *This, LPCOLESTR pszFileName, DWORD dwMode); \ - HRESULT (STDMETHODCALLTYPE *Save)(INTERFACE *This, LPCOLESTR pszFileName, BOOL fRemember); \ - HRESULT (STDMETHODCALLTYPE *SaveCompleted)(INTERFACE *This, LPCOLESTR pszFileName); \ - HRESULT (STDMETHODCALLTYPE *GetCurFile)(INTERFACE *This, LPOLESTR* ppszFileName); - /*** IUnknown methods ***/ #define IPersistFile_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPersistFile_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4704,6 +4715,21 @@ struct IPersistFileVtbl { #endif +#define IPersistFile_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPersist methods ***/ \ + STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \ + /*** IPersistFile methods ***/ \ + STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \ + STDMETHOD_(HRESULT,Load)(THIS_ LPCOLESTR pszFileName, DWORD dwMode) PURE; \ + STDMETHOD_(HRESULT,Save)(THIS_ LPCOLESTR pszFileName, BOOL fRemember) PURE; \ + STDMETHOD_(HRESULT,SaveCompleted)(THIS_ LPCOLESTR pszFileName) PURE; \ + STDMETHOD_(HRESULT,GetCurFile)(THIS_ LPOLESTR* ppszFileName) PURE; + HRESULT CALLBACK IPersistFile_IsDirty_Proxy( IPersistFile* This); void __RPC_STUB IPersistFile_IsDirty_Stub( @@ -4827,21 +4853,6 @@ struct IPersistStorageVtbl { }; -#define IPersistStorage_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPersist methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetClassID)(INTERFACE *This, CLSID* pClassID); \ - /*** IPersistStorage methods ***/ \ - HRESULT (STDMETHODCALLTYPE *IsDirty)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *InitNew)(INTERFACE *This, IStorage* pStg); \ - HRESULT (STDMETHODCALLTYPE *Load)(INTERFACE *This, IStorage* pStg); \ - HRESULT (STDMETHODCALLTYPE *Save)(INTERFACE *This, IStorage* pStgSave, BOOL fSameAsLoad); \ - HRESULT (STDMETHODCALLTYPE *SaveCompleted)(INTERFACE *This, IStorage* pStgNew); \ - HRESULT (STDMETHODCALLTYPE *HandsOffStorage)(INTERFACE *This); - /*** IUnknown methods ***/ #define IPersistStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPersistStorage_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4858,6 +4869,22 @@ struct IPersistStorageVtbl { #endif +#define IPersistStorage_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPersist methods ***/ \ + STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \ + /*** IPersistStorage methods ***/ \ + STDMETHOD_(HRESULT,IsDirty)(THIS) PURE; \ + STDMETHOD_(HRESULT,InitNew)(THIS_ IStorage* pStg) PURE; \ + STDMETHOD_(HRESULT,Load)(THIS_ IStorage* pStg) PURE; \ + STDMETHOD_(HRESULT,Save)(THIS_ IStorage* pStgSave, BOOL fSameAsLoad) PURE; \ + STDMETHOD_(HRESULT,SaveCompleted)(THIS_ IStorage* pStgNew) PURE; \ + STDMETHOD_(HRESULT,HandsOffStorage)(THIS) PURE; + HRESULT CALLBACK IPersistStorage_IsDirty_Proxy( IPersistStorage* This); void __RPC_STUB IPersistStorage_IsDirty_Stub( @@ -4947,14 +4974,6 @@ struct IRootStorageVtbl { }; -#define IRootStorage_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRootStorage methods ***/ \ - HRESULT (STDMETHODCALLTYPE *SwitchToFile)(INTERFACE *This, LPOLESTR pszFile); - /*** IUnknown methods ***/ #define IRootStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRootStorage_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -4964,6 +4983,15 @@ struct IRootStorageVtbl { #endif +#define IRootStorage_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRootStorage methods ***/ \ + STDMETHOD_(HRESULT,SwitchToFile)(THIS_ LPOLESTR pszFile) PURE; + HRESULT CALLBACK IRootStorage_SwitchToFile_Proxy( IRootStorage* This, LPOLESTR pszFile); @@ -5077,20 +5105,6 @@ struct ILockBytesVtbl { }; -#define ILockBytes_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ILockBytes methods ***/ \ - HRESULT (STDMETHODCALLTYPE *ReadAt)(INTERFACE *This, ULARGE_INTEGER ulOffset, void* pv, ULONG cb, ULONG* pcbRead); \ - HRESULT (STDMETHODCALLTYPE *WriteAt)(INTERFACE *This, ULARGE_INTEGER ulOffset, const void* pv, ULONG cb, ULONG* pcbWritten); \ - HRESULT (STDMETHODCALLTYPE *Flush)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *SetSize)(INTERFACE *This, ULARGE_INTEGER cb); \ - HRESULT (STDMETHODCALLTYPE *LockRegion)(INTERFACE *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); \ - HRESULT (STDMETHODCALLTYPE *UnlockRegion)(INTERFACE *This, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType); \ - HRESULT (STDMETHODCALLTYPE *Stat)(INTERFACE *This, STATSTG* pstatstg, DWORD grfStatFlag); - /*** IUnknown methods ***/ #define ILockBytes_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ILockBytes_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5106,6 +5120,21 @@ struct ILockBytesVtbl { #endif +#define ILockBytes_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ILockBytes methods ***/ \ + STDMETHOD_(HRESULT,ReadAt)(THIS_ ULARGE_INTEGER ulOffset, void* pv, ULONG cb, ULONG* pcbRead) PURE; \ + STDMETHOD_(HRESULT,WriteAt)(THIS_ ULARGE_INTEGER ulOffset, const void* pv, ULONG cb, ULONG* pcbWritten) PURE; \ + STDMETHOD_(HRESULT,Flush)(THIS) PURE; \ + STDMETHOD_(HRESULT,SetSize)(THIS_ ULARGE_INTEGER cb) PURE; \ + STDMETHOD_(HRESULT,LockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ + STDMETHOD_(HRESULT,UnlockRegion)(THIS_ ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType) PURE; \ + STDMETHOD_(HRESULT,Stat)(THIS_ STATSTG* pstatstg, DWORD grfStatFlag) PURE; + HRESULT CALLBACK ILockBytes_RemoteReadAt_Proxy( ILockBytes* This, ULARGE_INTEGER ulOffset, @@ -5267,17 +5296,6 @@ struct IFillLockBytesVtbl { }; -#define IFillLockBytes_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IFillLockBytes methods ***/ \ - HRESULT (STDMETHODCALLTYPE *FillAppend)(INTERFACE *This, const void* pv, ULONG cb, ULONG* pcbWritten); \ - HRESULT (STDMETHODCALLTYPE *FillAt)(INTERFACE *This, ULARGE_INTEGER ulOffset, const void* pv, ULONG cb, ULONG* pcbWritten); \ - HRESULT (STDMETHODCALLTYPE *SetFillSize)(INTERFACE *This, ULARGE_INTEGER ulSize); \ - HRESULT (STDMETHODCALLTYPE *Terminate)(INTERFACE *This, BOOL bCanceled); - /*** IUnknown methods ***/ #define IFillLockBytes_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IFillLockBytes_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5290,6 +5308,18 @@ struct IFillLockBytesVtbl { #endif +#define IFillLockBytes_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IFillLockBytes methods ***/ \ + STDMETHOD_(HRESULT,FillAppend)(THIS_ const void* pv, ULONG cb, ULONG* pcbWritten) PURE; \ + STDMETHOD_(HRESULT,FillAt)(THIS_ ULARGE_INTEGER ulOffset, const void* pv, ULONG cb, ULONG* pcbWritten) PURE; \ + STDMETHOD_(HRESULT,SetFillSize)(THIS_ ULARGE_INTEGER ulSize) PURE; \ + STDMETHOD_(HRESULT,Terminate)(THIS_ BOOL bCanceled) PURE; + HRESULT CALLBACK IFillLockBytes_RemoteFillAppend_Proxy( IFillLockBytes* This, const byte* pv, @@ -5395,14 +5425,6 @@ struct IProgressNotifyVtbl { }; -#define IProgressNotify_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IProgressNotify methods ***/ \ - HRESULT (STDMETHODCALLTYPE *OnProgress)(INTERFACE *This, DWORD dwProgressCurrent, DWORD dwProgressMaximum, BOOL fAccurate, BOOL fOwner); - /*** IUnknown methods ***/ #define IProgressNotify_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IProgressNotify_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5412,6 +5434,15 @@ struct IProgressNotifyVtbl { #endif +#define IProgressNotify_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IProgressNotify methods ***/ \ + STDMETHOD_(HRESULT,OnProgress)(THIS_ DWORD dwProgressCurrent, DWORD dwProgressMaximum, BOOL fAccurate, BOOL fOwner) PURE; + HRESULT CALLBACK IProgressNotify_OnProgress_Proxy( IProgressNotify* This, DWORD dwProgressCurrent, @@ -5500,18 +5531,6 @@ struct ILayoutStorageVtbl { }; -#define ILayoutStorage_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** ILayoutStorage methods ***/ \ - HRESULT (STDMETHODCALLTYPE *LayoutScript)(INTERFACE *This, StorageLayout* pStorageLayout, DWORD nEntries, DWORD glfInterleavedFlag); \ - HRESULT (STDMETHODCALLTYPE *BeginMonitor)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *EndMonitor)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *ReLayoutDocfile)(INTERFACE *This, OLECHAR* pwcsNewDfName); \ - HRESULT (STDMETHODCALLTYPE *ReLayoutDocfileOnILockBytes)(INTERFACE *This, ILockBytes* pILockBytes); - /*** IUnknown methods ***/ #define ILayoutStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ILayoutStorage_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5525,6 +5544,19 @@ struct ILayoutStorageVtbl { #endif +#define ILayoutStorage_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** ILayoutStorage methods ***/ \ + STDMETHOD_(HRESULT,LayoutScript)(THIS_ StorageLayout* pStorageLayout, DWORD nEntries, DWORD glfInterleavedFlag) PURE; \ + STDMETHOD_(HRESULT,BeginMonitor)(THIS) PURE; \ + STDMETHOD_(HRESULT,EndMonitor)(THIS) PURE; \ + STDMETHOD_(HRESULT,ReLayoutDocfile)(THIS_ OLECHAR* pwcsNewDfName) PURE; \ + STDMETHOD_(HRESULT,ReLayoutDocfileOnILockBytes)(THIS_ ILockBytes* pILockBytes) PURE; + HRESULT CALLBACK ILayoutStorage_LayoutScript_Proxy( ILayoutStorage* This, StorageLayout* pStorageLayout, @@ -5650,17 +5682,6 @@ struct IEnumFORMATETCVtbl { }; -#define IEnumFORMATETC_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumFORMATETC methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, FORMATETC* rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumFORMATETC** ppenum); - /*** IUnknown methods ***/ #define IEnumFORMATETC_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumFORMATETC_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5673,6 +5694,18 @@ struct IEnumFORMATETCVtbl { #endif +#define IEnumFORMATETC_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumFORMATETC methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, FORMATETC* rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumFORMATETC** ppenum) PURE; + HRESULT CALLBACK IEnumFORMATETC_RemoteNext_Proxy( IEnumFORMATETC* This, ULONG celt, @@ -5799,17 +5832,6 @@ struct IEnumSTATDATAVtbl { }; -#define IEnumSTATDATA_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumSTATDATA methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, STATDATA* rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumSTATDATA** ppenum); - /*** IUnknown methods ***/ #define IEnumSTATDATA_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumSTATDATA_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -5822,6 +5844,18 @@ struct IEnumSTATDATAVtbl { #endif +#define IEnumSTATDATA_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumSTATDATA methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, STATDATA* rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSTATDATA** ppenum) PURE; + HRESULT CALLBACK IEnumSTATDATA_RemoteNext_Proxy( IEnumSTATDATA* This, ULONG celt, @@ -6031,18 +6065,6 @@ struct IAdviseSinkVtbl { }; -#define IAdviseSink_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IAdviseSink methods ***/ \ - void (STDMETHODCALLTYPE *OnDataChange)(INTERFACE *This, FORMATETC* pFormatetc, STGMEDIUM* pStgmed); \ - void (STDMETHODCALLTYPE *OnViewChange)(INTERFACE *This, DWORD dwAspect, LONG lindex); \ - void (STDMETHODCALLTYPE *OnRename)(INTERFACE *This, IMoniker* pmk); \ - void (STDMETHODCALLTYPE *OnSave)(INTERFACE *This); \ - void (STDMETHODCALLTYPE *OnClose)(INTERFACE *This); - /*** IUnknown methods ***/ #define IAdviseSink_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IAdviseSink_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -6056,6 +6078,19 @@ struct IAdviseSinkVtbl { #endif +#define IAdviseSink_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IAdviseSink methods ***/ \ + STDMETHOD_(void,OnDataChange)(THIS_ FORMATETC* pFormatetc, STGMEDIUM* pStgmed) PURE; \ + STDMETHOD_(void,OnViewChange)(THIS_ DWORD dwAspect, LONG lindex) PURE; \ + STDMETHOD_(void,OnRename)(THIS_ IMoniker* pmk) PURE; \ + STDMETHOD_(void,OnSave)(THIS) PURE; \ + STDMETHOD_(void,OnClose)(THIS) PURE; + HRESULT CALLBACK IAdviseSink_RemoteOnDataChange_Proxy( IAdviseSink* This, IAsyncManager** ppIAM, @@ -6197,20 +6232,6 @@ struct IAdviseSink2Vtbl { }; -#define IAdviseSink2_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IAdviseSink methods ***/ \ - void (STDMETHODCALLTYPE *OnDataChange)(INTERFACE *This, FORMATETC* pFormatetc, STGMEDIUM* pStgmed); \ - void (STDMETHODCALLTYPE *OnViewChange)(INTERFACE *This, DWORD dwAspect, LONG lindex); \ - void (STDMETHODCALLTYPE *OnRename)(INTERFACE *This, IMoniker* pmk); \ - void (STDMETHODCALLTYPE *OnSave)(INTERFACE *This); \ - void (STDMETHODCALLTYPE *OnClose)(INTERFACE *This); \ - /*** IAdviseSink2 methods ***/ \ - void (STDMETHODCALLTYPE *OnLinkSrcChange)(INTERFACE *This, IMoniker* pmk); - /*** IUnknown methods ***/ #define IAdviseSink2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IAdviseSink2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -6226,6 +6247,21 @@ struct IAdviseSink2Vtbl { #endif +#define IAdviseSink2_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IAdviseSink methods ***/ \ + STDMETHOD_(void,OnDataChange)(THIS_ FORMATETC* pFormatetc, STGMEDIUM* pStgmed) PURE; \ + STDMETHOD_(void,OnViewChange)(THIS_ DWORD dwAspect, LONG lindex) PURE; \ + STDMETHOD_(void,OnRename)(THIS_ IMoniker* pmk) PURE; \ + STDMETHOD_(void,OnSave)(THIS) PURE; \ + STDMETHOD_(void,OnClose)(THIS) PURE; \ + /*** IAdviseSink2 methods ***/ \ + STDMETHOD_(void,OnLinkSrcChange)(THIS_ IMoniker* pmk) PURE; + HRESULT CALLBACK IAdviseSink2_RemoteOnLinkSrcChange_Proxy( IAdviseSink2* This, IAsyncManager** ppIAM, @@ -6363,22 +6399,6 @@ struct IDataObjectVtbl { }; -#define IDataObject_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IDataObject methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetData)(INTERFACE *This, FORMATETC* pformatetcIn, STGMEDIUM* pmedium); \ - HRESULT (STDMETHODCALLTYPE *GetDataHere)(INTERFACE *This, FORMATETC* pformatetc, STGMEDIUM* pmedium); \ - HRESULT (STDMETHODCALLTYPE *QueryGetData)(INTERFACE *This, FORMATETC* pformatetc); \ - HRESULT (STDMETHODCALLTYPE *GetCanonicalFormatEtc)(INTERFACE *This, FORMATETC* pformatectIn, FORMATETC* pformatetcOut); \ - HRESULT (STDMETHODCALLTYPE *SetData)(INTERFACE *This, FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease); \ - HRESULT (STDMETHODCALLTYPE *EnumFormatEtc)(INTERFACE *This, DWORD dwDirection, IEnumFORMATETC** ppenumFormatEtc); \ - HRESULT (STDMETHODCALLTYPE *DAdvise)(INTERFACE *This, FORMATETC* pformatetc, DWORD advf, IAdviseSink* pAdvSink, DWORD* pdwConnection); \ - HRESULT (STDMETHODCALLTYPE *DUnadvise)(INTERFACE *This, DWORD dwConnection); \ - HRESULT (STDMETHODCALLTYPE *EnumDAdvise)(INTERFACE *This, IEnumSTATDATA** ppenumAdvise); - /*** IUnknown methods ***/ #define IDataObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDataObject_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -6396,6 +6416,23 @@ struct IDataObjectVtbl { #endif +#define IDataObject_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IDataObject methods ***/ \ + STDMETHOD_(HRESULT,GetData)(THIS_ FORMATETC* pformatetcIn, STGMEDIUM* pmedium) PURE; \ + STDMETHOD_(HRESULT,GetDataHere)(THIS_ FORMATETC* pformatetc, STGMEDIUM* pmedium) PURE; \ + STDMETHOD_(HRESULT,QueryGetData)(THIS_ FORMATETC* pformatetc) PURE; \ + STDMETHOD_(HRESULT,GetCanonicalFormatEtc)(THIS_ FORMATETC* pformatectIn, FORMATETC* pformatetcOut) PURE; \ + STDMETHOD_(HRESULT,SetData)(THIS_ FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease) PURE; \ + STDMETHOD_(HRESULT,EnumFormatEtc)(THIS_ DWORD dwDirection, IEnumFORMATETC** ppenumFormatEtc) PURE; \ + STDMETHOD_(HRESULT,DAdvise)(THIS_ FORMATETC* pformatetc, DWORD advf, IAdviseSink* pAdvSink, DWORD* pdwConnection) PURE; \ + STDMETHOD_(HRESULT,DUnadvise)(THIS_ DWORD dwConnection) PURE; \ + STDMETHOD_(HRESULT,EnumDAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; + HRESULT CALLBACK IDataObject_RemoteGetData_Proxy( IDataObject* This, FORMATETC* pformatetcIn, @@ -6578,17 +6615,6 @@ struct IDataAdviseHolderVtbl { }; -#define IDataAdviseHolder_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IDataAdviseHolder methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Advise)(INTERFACE *This, IDataObject* pDataObject, FORMATETC* pFetc, DWORD advf, IAdviseSink* pAdvise, DWORD* pdwConnection); \ - HRESULT (STDMETHODCALLTYPE *Unadvise)(INTERFACE *This, DWORD dwConnection); \ - HRESULT (STDMETHODCALLTYPE *EnumAdvise)(INTERFACE *This, IEnumSTATDATA** ppenumAdvise); \ - HRESULT (STDMETHODCALLTYPE *SendOnDataChange)(INTERFACE *This, IDataObject* pDataObject, DWORD dwReserved, DWORD advf); - /*** IUnknown methods ***/ #define IDataAdviseHolder_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDataAdviseHolder_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -6601,6 +6627,18 @@ struct IDataAdviseHolderVtbl { #endif +#define IDataAdviseHolder_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IDataAdviseHolder methods ***/ \ + STDMETHOD_(HRESULT,Advise)(THIS_ IDataObject* pDataObject, FORMATETC* pFetc, DWORD advf, IAdviseSink* pAdvise, DWORD* pdwConnection) PURE; \ + STDMETHOD_(HRESULT,Unadvise)(THIS_ DWORD dwConnection) PURE; \ + STDMETHOD_(HRESULT,EnumAdvise)(THIS_ IEnumSTATDATA** ppenumAdvise) PURE; \ + STDMETHOD_(HRESULT,SendOnDataChange)(THIS_ IDataObject* pDataObject, DWORD dwReserved, DWORD advf) PURE; + HRESULT CALLBACK IDataAdviseHolder_Advise_Proxy( IDataAdviseHolder* This, IDataObject* pDataObject, @@ -6740,16 +6778,6 @@ struct IMessageFilterVtbl { }; -#define IMessageFilter_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IMessageFilter methods ***/ \ - DWORD (STDMETHODCALLTYPE *HandleInComingCall)(INTERFACE *This, DWORD dwCallType, HTASK htaskCaller, DWORD dwTickCount, LPINTERFACEINFO lpInterfaceInfo); \ - DWORD (STDMETHODCALLTYPE *RetryRejectedCall)(INTERFACE *This, HTASK htaskCallee, DWORD dwTickCount, DWORD dwRejectType); \ - DWORD (STDMETHODCALLTYPE *MessagePending)(INTERFACE *This, HTASK htaskCallee, DWORD dwTickCount, DWORD dwPendingType); - /*** IUnknown methods ***/ #define IMessageFilter_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IMessageFilter_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -6761,6 +6789,17 @@ struct IMessageFilterVtbl { #endif +#define IMessageFilter_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IMessageFilter methods ***/ \ + STDMETHOD_(DWORD,HandleInComingCall)(THIS_ DWORD dwCallType, HTASK htaskCaller, DWORD dwTickCount, LPINTERFACEINFO lpInterfaceInfo) PURE; \ + STDMETHOD_(DWORD,RetryRejectedCall)(THIS_ HTASK htaskCallee, DWORD dwTickCount, DWORD dwRejectType) PURE; \ + STDMETHOD_(DWORD,MessagePending)(THIS_ HTASK htaskCallee, DWORD dwTickCount, DWORD dwPendingType) PURE; + DWORD CALLBACK IMessageFilter_HandleInComingCall_Proxy( IMessageFilter* This, DWORD dwCallType, @@ -6881,18 +6920,6 @@ struct IRpcChannelBufferVtbl { }; -#define IRpcChannelBuffer_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRpcChannelBuffer methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetBuffer)(INTERFACE *This, RPCOLEMESSAGE* pMessage, REFIID riid); \ - HRESULT (STDMETHODCALLTYPE *SendReceive)(INTERFACE *This, RPCOLEMESSAGE* pMessage, ULONG* pStatus); \ - HRESULT (STDMETHODCALLTYPE *FreeBuffer)(INTERFACE *This, RPCOLEMESSAGE* pMessage); \ - HRESULT (STDMETHODCALLTYPE *GetDestCtx)(INTERFACE *This, DWORD* pdwDestContext, void** ppvDestContext); \ - HRESULT (STDMETHODCALLTYPE *IsConnected)(INTERFACE *This); - /*** IUnknown methods ***/ #define IRpcChannelBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRpcChannelBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -6906,6 +6933,19 @@ struct IRpcChannelBufferVtbl { #endif +#define IRpcChannelBuffer_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRpcChannelBuffer methods ***/ \ + STDMETHOD_(HRESULT,GetBuffer)(THIS_ RPCOLEMESSAGE* pMessage, REFIID riid) PURE; \ + STDMETHOD_(HRESULT,SendReceive)(THIS_ RPCOLEMESSAGE* pMessage, ULONG* pStatus) PURE; \ + STDMETHOD_(HRESULT,FreeBuffer)(THIS_ RPCOLEMESSAGE* pMessage) PURE; \ + STDMETHOD_(HRESULT,GetDestCtx)(THIS_ DWORD* pdwDestContext, void** ppvDestContext) PURE; \ + STDMETHOD_(HRESULT,IsConnected)(THIS) PURE; + HRESULT CALLBACK IRpcChannelBuffer_GetBuffer_Proxy( IRpcChannelBuffer* This, RPCOLEMESSAGE* pMessage, @@ -7013,20 +7053,6 @@ struct IRpcChannelBuffer2Vtbl { }; -#define IRpcChannelBuffer2_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRpcChannelBuffer methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetBuffer)(INTERFACE *This, RPCOLEMESSAGE* pMessage, REFIID riid); \ - HRESULT (STDMETHODCALLTYPE *SendReceive)(INTERFACE *This, RPCOLEMESSAGE* pMessage, ULONG* pStatus); \ - HRESULT (STDMETHODCALLTYPE *FreeBuffer)(INTERFACE *This, RPCOLEMESSAGE* pMessage); \ - HRESULT (STDMETHODCALLTYPE *GetDestCtx)(INTERFACE *This, DWORD* pdwDestContext, void** ppvDestContext); \ - HRESULT (STDMETHODCALLTYPE *IsConnected)(INTERFACE *This); \ - /*** IRpcChannelBuffer2 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)(INTERFACE *This, DWORD* pdwVersion); - /*** IUnknown methods ***/ #define IRpcChannelBuffer2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRpcChannelBuffer2_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -7042,6 +7068,21 @@ struct IRpcChannelBuffer2Vtbl { #endif +#define IRpcChannelBuffer2_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRpcChannelBuffer methods ***/ \ + STDMETHOD_(HRESULT,GetBuffer)(THIS_ RPCOLEMESSAGE* pMessage, REFIID riid) PURE; \ + STDMETHOD_(HRESULT,SendReceive)(THIS_ RPCOLEMESSAGE* pMessage, ULONG* pStatus) PURE; \ + STDMETHOD_(HRESULT,FreeBuffer)(THIS_ RPCOLEMESSAGE* pMessage) PURE; \ + STDMETHOD_(HRESULT,GetDestCtx)(THIS_ DWORD* pdwDestContext, void** ppvDestContext) PURE; \ + STDMETHOD_(HRESULT,IsConnected)(THIS) PURE; \ + /*** IRpcChannelBuffer2 methods ***/ \ + STDMETHOD_(HRESULT,GetProtocolVersion)(THIS_ DWORD* pdwVersion) PURE; + HRESULT CALLBACK IRpcChannelBuffer2_GetProtocolVersion_Proxy( IRpcChannelBuffer2* This, DWORD* pdwVersion); @@ -7180,28 +7221,6 @@ struct IRpcChannelBuffer3Vtbl { }; -#define IRpcChannelBuffer3_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRpcChannelBuffer methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetBuffer)(INTERFACE *This, RPCOLEMESSAGE* pMessage, REFIID riid); \ - HRESULT (STDMETHODCALLTYPE *SendReceive)(INTERFACE *This, RPCOLEMESSAGE* pMessage, ULONG* pStatus); \ - HRESULT (STDMETHODCALLTYPE *FreeBuffer)(INTERFACE *This, RPCOLEMESSAGE* pMessage); \ - HRESULT (STDMETHODCALLTYPE *GetDestCtx)(INTERFACE *This, DWORD* pdwDestContext, void** ppvDestContext); \ - HRESULT (STDMETHODCALLTYPE *IsConnected)(INTERFACE *This); \ - /*** IRpcChannelBuffer2 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetProtocolVersion)(INTERFACE *This, DWORD* pdwVersion); \ - /*** IRpcChannelBuffer3 methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Send)(INTERFACE *This, RPCOLEMESSAGE* pMsg, ULONG* pulStatus); \ - HRESULT (STDMETHODCALLTYPE *Receive)(INTERFACE *This, RPCOLEMESSAGE* pMsg, ULONG ulSize, ULONG* pulStatus); \ - HRESULT (STDMETHODCALLTYPE *Cancel)(INTERFACE *This, RPCOLEMESSAGE* pMsg); \ - HRESULT (STDMETHODCALLTYPE *GetCallContext)(INTERFACE *This, RPCOLEMESSAGE* pMsg, REFIID riid, void** pInterface); \ - HRESULT (STDMETHODCALLTYPE *GetDestCtxEx)(INTERFACE *This, RPCOLEMESSAGE* pMsg, DWORD* pdwDestContext, void** ppvDestContext); \ - HRESULT (STDMETHODCALLTYPE *GetState)(INTERFACE *This, RPCOLEMESSAGE* pMsg, DWORD* pState); \ - HRESULT (STDMETHODCALLTYPE *RegisterAsync)(INTERFACE *This, RPCOLEMESSAGE* pMsg, IAsyncManager* pAsyncMgr); - /*** IUnknown methods ***/ #define IRpcChannelBuffer3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRpcChannelBuffer3_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -7225,6 +7244,29 @@ struct IRpcChannelBuffer3Vtbl { #endif +#define IRpcChannelBuffer3_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRpcChannelBuffer methods ***/ \ + STDMETHOD_(HRESULT,GetBuffer)(THIS_ RPCOLEMESSAGE* pMessage, REFIID riid) PURE; \ + STDMETHOD_(HRESULT,SendReceive)(THIS_ RPCOLEMESSAGE* pMessage, ULONG* pStatus) PURE; \ + STDMETHOD_(HRESULT,FreeBuffer)(THIS_ RPCOLEMESSAGE* pMessage) PURE; \ + STDMETHOD_(HRESULT,GetDestCtx)(THIS_ DWORD* pdwDestContext, void** ppvDestContext) PURE; \ + STDMETHOD_(HRESULT,IsConnected)(THIS) PURE; \ + /*** IRpcChannelBuffer2 methods ***/ \ + STDMETHOD_(HRESULT,GetProtocolVersion)(THIS_ DWORD* pdwVersion) PURE; \ + /*** IRpcChannelBuffer3 methods ***/ \ + STDMETHOD_(HRESULT,Send)(THIS_ RPCOLEMESSAGE* pMsg, ULONG* pulStatus) PURE; \ + STDMETHOD_(HRESULT,Receive)(THIS_ RPCOLEMESSAGE* pMsg, ULONG ulSize, ULONG* pulStatus) PURE; \ + STDMETHOD_(HRESULT,Cancel)(THIS_ RPCOLEMESSAGE* pMsg) PURE; \ + STDMETHOD_(HRESULT,GetCallContext)(THIS_ RPCOLEMESSAGE* pMsg, REFIID riid, void** pInterface) PURE; \ + STDMETHOD_(HRESULT,GetDestCtxEx)(THIS_ RPCOLEMESSAGE* pMsg, DWORD* pdwDestContext, void** ppvDestContext) PURE; \ + STDMETHOD_(HRESULT,GetState)(THIS_ RPCOLEMESSAGE* pMsg, DWORD* pState) PURE; \ + STDMETHOD_(HRESULT,RegisterAsync)(THIS_ RPCOLEMESSAGE* pMsg, IAsyncManager* pAsyncMgr) PURE; + HRESULT CALLBACK IRpcChannelBuffer3_Send_Proxy( IRpcChannelBuffer3* This, RPCOLEMESSAGE* pMsg, @@ -7338,15 +7380,6 @@ struct IRpcProxyBufferVtbl { }; -#define IRpcProxyBuffer_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRpcProxyBuffer methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Connect)(INTERFACE *This, IRpcChannelBuffer* pRpcChannelBuffer); \ - void (STDMETHODCALLTYPE *Disconnect)(INTERFACE *This); - /*** IUnknown methods ***/ #define IRpcProxyBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRpcProxyBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -7357,6 +7390,16 @@ struct IRpcProxyBufferVtbl { #endif +#define IRpcProxyBuffer_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRpcProxyBuffer methods ***/ \ + STDMETHOD_(HRESULT,Connect)(THIS_ IRpcChannelBuffer* pRpcChannelBuffer) PURE; \ + STDMETHOD_(void,Disconnect)(THIS) PURE; + HRESULT CALLBACK IRpcProxyBuffer_Connect_Proxy( IRpcProxyBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer); @@ -7456,20 +7499,6 @@ struct IRpcStubBufferVtbl { }; -#define IRpcStubBuffer_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IRpcStubBuffer methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Connect)(INTERFACE *This, IUnknown* pUnkServer); \ - void (STDMETHODCALLTYPE *Disconnect)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Invoke)(INTERFACE *This, RPCOLEMESSAGE* _prpcmsg, IRpcChannelBuffer* _pRpcChannelBuffer); \ - IRpcStubBuffer* (STDMETHODCALLTYPE *IsIIDSupported)(INTERFACE *This, REFIID riid); \ - ULONG (STDMETHODCALLTYPE *CountRefs)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *DebugServerQueryInterface)(INTERFACE *This, void** ppv); \ - void (STDMETHODCALLTYPE *DebugServerRelease)(INTERFACE *This, void* pv); - /*** IUnknown methods ***/ #define IRpcStubBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IRpcStubBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -7485,6 +7514,21 @@ struct IRpcStubBufferVtbl { #endif +#define IRpcStubBuffer_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IRpcStubBuffer methods ***/ \ + STDMETHOD_(HRESULT,Connect)(THIS_ IUnknown* pUnkServer) PURE; \ + STDMETHOD_(void,Disconnect)(THIS) PURE; \ + STDMETHOD_(HRESULT,Invoke)(THIS_ RPCOLEMESSAGE* _prpcmsg, IRpcChannelBuffer* _pRpcChannelBuffer) PURE; \ + STDMETHOD_(IRpcStubBuffer*,IsIIDSupported)(THIS_ REFIID riid) PURE; \ + STDMETHOD_(ULONG,CountRefs)(THIS) PURE; \ + STDMETHOD_(HRESULT,DebugServerQueryInterface)(THIS_ void** ppv) PURE; \ + STDMETHOD_(void,DebugServerRelease)(THIS_ void* pv) PURE; + HRESULT CALLBACK IRpcStubBuffer_Connect_Proxy( IRpcStubBuffer* This, IUnknown* pUnkServer); @@ -7599,15 +7643,6 @@ struct IPSFactoryBufferVtbl { }; -#define IPSFactoryBuffer_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPSFactoryBuffer methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateProxy)(INTERFACE *This, IUnknown* pUnkOuter, REFIID riid, IRpcProxyBuffer** ppProxy, void** ppv); \ - HRESULT (STDMETHODCALLTYPE *CreateStub)(INTERFACE *This, REFIID riid, IUnknown* pUnkServer, IRpcStubBuffer** ppStub); - /*** IUnknown methods ***/ #define IPSFactoryBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPSFactoryBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -7618,6 +7653,16 @@ struct IPSFactoryBufferVtbl { #endif +#define IPSFactoryBuffer_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPSFactoryBuffer methods ***/ \ + STDMETHOD_(HRESULT,CreateProxy)(THIS_ IUnknown* pUnkOuter, REFIID riid, IRpcProxyBuffer** ppProxy, void** ppv) PURE; \ + STDMETHOD_(HRESULT,CreateStub)(THIS_ REFIID riid, IUnknown* pUnkServer, IRpcStubBuffer** ppStub) PURE; + HRESULT CALLBACK IPSFactoryBuffer_CreateProxy_Proxy( IPSFactoryBuffer* This, IUnknown* pUnkOuter, @@ -7767,19 +7812,6 @@ struct IChannelHookVtbl { }; -#define IChannelHook_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IChannelHook methods ***/ \ - void (STDMETHODCALLTYPE *ClientGetSize)(INTERFACE *This, REFGUID uExtent, REFIID riid, ULONG* pDataSize); \ - void (STDMETHODCALLTYPE *ClientFillBuffer)(INTERFACE *This, REFGUID uExtent, REFIID riid, ULONG* pDataSize, void* pDataBuffer); \ - void (STDMETHODCALLTYPE *ClientNotify)(INTERFACE *This, REFGUID uExtent, REFIID riid, ULONG cbDataSize, void* pDataBuffer, DWORD lDataRep, HRESULT hrFault); \ - void (STDMETHODCALLTYPE *ServerNotify)(INTERFACE *This, REFGUID uExtent, REFIID riid, ULONG cbDataSize, void* pDataBuffer, DWORD lDataRep); \ - void (STDMETHODCALLTYPE *ServerGetSize)(INTERFACE *This, REFGUID uExtent, REFIID riid, HRESULT hrFault, ULONG* pDataSize); \ - void (STDMETHODCALLTYPE *ServerFillBuffer)(INTERFACE *This, REFGUID uExtent, REFIID riid, ULONG* pDataSize, void* pDataBuffer, HRESULT hrFault); - /*** IUnknown methods ***/ #define IChannelHook_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IChannelHook_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -7794,6 +7826,20 @@ struct IChannelHookVtbl { #endif +#define IChannelHook_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IChannelHook methods ***/ \ + STDMETHOD_(void,ClientGetSize)(THIS_ REFGUID uExtent, REFIID riid, ULONG* pDataSize) PURE; \ + STDMETHOD_(void,ClientFillBuffer)(THIS_ REFGUID uExtent, REFIID riid, ULONG* pDataSize, void* pDataBuffer) PURE; \ + STDMETHOD_(void,ClientNotify)(THIS_ REFGUID uExtent, REFIID riid, ULONG cbDataSize, void* pDataBuffer, DWORD lDataRep, HRESULT hrFault) PURE; \ + STDMETHOD_(void,ServerNotify)(THIS_ REFGUID uExtent, REFIID riid, ULONG cbDataSize, void* pDataBuffer, DWORD lDataRep) PURE; \ + STDMETHOD_(void,ServerGetSize)(THIS_ REFGUID uExtent, REFIID riid, HRESULT hrFault, ULONG* pDataSize) PURE; \ + STDMETHOD_(void,ServerFillBuffer)(THIS_ REFGUID uExtent, REFIID riid, ULONG* pDataSize, void* pDataBuffer, HRESULT hrFault) PURE; + void CALLBACK IChannelHook_ClientGetSize_Proxy( IChannelHook* This, REFGUID uExtent, @@ -8215,25 +8261,6 @@ struct IPropertyStorageVtbl { }; -#define IPropertyStorage_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPropertyStorage methods ***/ \ - HRESULT (STDMETHODCALLTYPE *ReadMultiple)(INTERFACE *This, ULONG cpspec, const PROPSPEC rgpspec[], PROPVARIANT rgpropvar[]); \ - HRESULT (STDMETHODCALLTYPE *WriteMultiple)(INTERFACE *This, ULONG cpspec, const PROPSPEC rgpspec[], const PROPVARIANT rgpropvar[], PROPID propidNameFirst); \ - HRESULT (STDMETHODCALLTYPE *DeleteMultiple)(INTERFACE *This, ULONG cpspec, const PROPSPEC rgpspec[]); \ - HRESULT (STDMETHODCALLTYPE *ReadPropertyNames)(INTERFACE *This, ULONG cpropid, const PROPID rgpropid[], LPOLESTR rglpwstrName[]); \ - HRESULT (STDMETHODCALLTYPE *WritePropertyNames)(INTERFACE *This, ULONG cpropid, const PROPID rgpropid[], const LPOLESTR rglpwstrName[]); \ - HRESULT (STDMETHODCALLTYPE *DeletePropertyNames)(INTERFACE *This, ULONG cpropid, const PROPID rgpropid[]); \ - HRESULT (STDMETHODCALLTYPE *Commit)(INTERFACE *This, DWORD grfCommitFlags); \ - HRESULT (STDMETHODCALLTYPE *Revert)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Enum)(INTERFACE *This, IEnumSTATPROPSTG** ppenum); \ - HRESULT (STDMETHODCALLTYPE *SetTimes)(INTERFACE *This, const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime); \ - HRESULT (STDMETHODCALLTYPE *SetClass)(INTERFACE *This, REFCLSID clsid); \ - HRESULT (STDMETHODCALLTYPE *Stat)(INTERFACE *This, STATPROPSETSTG* statpsstg); - /*** IUnknown methods ***/ #define IPropertyStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPropertyStorage_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -8254,6 +8281,26 @@ struct IPropertyStorageVtbl { #endif +#define IPropertyStorage_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPropertyStorage methods ***/ \ + STDMETHOD_(HRESULT,ReadMultiple)(THIS_ ULONG cpspec, const PROPSPEC rgpspec[], PROPVARIANT rgpropvar[]) PURE; \ + STDMETHOD_(HRESULT,WriteMultiple)(THIS_ ULONG cpspec, const PROPSPEC rgpspec[], const PROPVARIANT rgpropvar[], PROPID propidNameFirst) PURE; \ + STDMETHOD_(HRESULT,DeleteMultiple)(THIS_ ULONG cpspec, const PROPSPEC rgpspec[]) PURE; \ + STDMETHOD_(HRESULT,ReadPropertyNames)(THIS_ ULONG cpropid, const PROPID rgpropid[], LPOLESTR rglpwstrName[]) PURE; \ + STDMETHOD_(HRESULT,WritePropertyNames)(THIS_ ULONG cpropid, const PROPID rgpropid[], const LPOLESTR rglpwstrName[]) PURE; \ + STDMETHOD_(HRESULT,DeletePropertyNames)(THIS_ ULONG cpropid, const PROPID rgpropid[]) PURE; \ + STDMETHOD_(HRESULT,Commit)(THIS_ DWORD grfCommitFlags) PURE; \ + STDMETHOD_(HRESULT,Revert)(THIS) PURE; \ + STDMETHOD_(HRESULT,Enum)(THIS_ IEnumSTATPROPSTG** ppenum) PURE; \ + STDMETHOD_(HRESULT,SetTimes)(THIS_ const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime) PURE; \ + STDMETHOD_(HRESULT,SetClass)(THIS_ REFCLSID clsid) PURE; \ + STDMETHOD_(HRESULT,Stat)(THIS_ STATPROPSETSTG* statpsstg) PURE; + HRESULT CALLBACK IPropertyStorage_ReadMultiple_Proxy( IPropertyStorage* This, ULONG cpspec, @@ -8437,17 +8484,6 @@ struct IPropertySetStorageVtbl { }; -#define IPropertySetStorage_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IPropertySetStorage methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Create)(INTERFACE *This, REFFMTID rfmtid, const CLSID* pclsid, DWORD grfFlags, DWORD grfMode, IPropertyStorage** ppprstg); \ - HRESULT (STDMETHODCALLTYPE *Open)(INTERFACE *This, REFFMTID rfmtid, DWORD grfMode, IPropertyStorage** ppprstg); \ - HRESULT (STDMETHODCALLTYPE *Delete)(INTERFACE *This, REFFMTID rfmtid); \ - HRESULT (STDMETHODCALLTYPE *Enum)(INTERFACE *This, IEnumSTATPROPSETSTG** ppenum); - /*** IUnknown methods ***/ #define IPropertySetStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IPropertySetStorage_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -8460,6 +8496,18 @@ struct IPropertySetStorageVtbl { #endif +#define IPropertySetStorage_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IPropertySetStorage methods ***/ \ + STDMETHOD_(HRESULT,Create)(THIS_ REFFMTID rfmtid, const CLSID* pclsid, DWORD grfFlags, DWORD grfMode, IPropertyStorage** ppprstg) PURE; \ + STDMETHOD_(HRESULT,Open)(THIS_ REFFMTID rfmtid, DWORD grfMode, IPropertyStorage** ppprstg) PURE; \ + STDMETHOD_(HRESULT,Delete)(THIS_ REFFMTID rfmtid) PURE; \ + STDMETHOD_(HRESULT,Enum)(THIS_ IEnumSTATPROPSETSTG** ppenum) PURE; + HRESULT CALLBACK IPropertySetStorage_Create_Proxy( IPropertySetStorage* This, REFFMTID rfmtid, @@ -8563,17 +8611,6 @@ struct IEnumSTATPROPSTGVtbl { }; -#define IEnumSTATPROPSTG_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumSTATPROPSTG methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, STATPROPSTG* rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumSTATPROPSTG** ppenum); - /*** IUnknown methods ***/ #define IEnumSTATPROPSTG_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumSTATPROPSTG_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -8586,6 +8623,18 @@ struct IEnumSTATPROPSTGVtbl { #endif +#define IEnumSTATPROPSTG_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumSTATPROPSTG methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, STATPROPSTG* rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSTATPROPSTG** ppenum) PURE; + HRESULT CALLBACK IEnumSTATPROPSTG_RemoteNext_Proxy( IEnumSTATPROPSTG* This, ULONG celt, @@ -8694,17 +8743,6 @@ struct IEnumSTATPROPSETSTGVtbl { }; -#define IEnumSTATPROPSETSTG_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IEnumSTATPROPSETSTG methods ***/ \ - HRESULT (STDMETHODCALLTYPE *Next)(INTERFACE *This, ULONG celt, STATPROPSETSTG* rgelt, ULONG* pceltFetched); \ - HRESULT (STDMETHODCALLTYPE *Skip)(INTERFACE *This, ULONG celt); \ - HRESULT (STDMETHODCALLTYPE *Reset)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *Clone)(INTERFACE *This, IEnumSTATPROPSETSTG** ppenum); - /*** IUnknown methods ***/ #define IEnumSTATPROPSETSTG_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IEnumSTATPROPSETSTG_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -8717,6 +8755,18 @@ struct IEnumSTATPROPSETSTGVtbl { #endif +#define IEnumSTATPROPSETSTG_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IEnumSTATPROPSETSTG methods ***/ \ + STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, STATPROPSETSTG* rgelt, ULONG* pceltFetched) PURE; \ + STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \ + STDMETHOD_(HRESULT,Reset)(THIS) PURE; \ + STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSTATPROPSETSTG** ppenum) PURE; + HRESULT CALLBACK IEnumSTATPROPSETSTG_RemoteNext_Proxy( IEnumSTATPROPSETSTG* This, ULONG celt, @@ -8862,16 +8912,6 @@ struct IClientSecurityVtbl { }; -#define IClientSecurity_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IClientSecurity methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryBlanket)(INTERFACE *This, IUnknown* pProxy, DWORD* pAuthnSvc, DWORD* pAuthzSvc, OLECHAR** pServerPrincName, DWORD* pAuthnLevel, DWORD* pImpLevel, void** pAuthInfo, DWORD* pCapabilites); \ - HRESULT (STDMETHODCALLTYPE *SetBlanket)(INTERFACE *This, IUnknown* pProxy, DWORD AuthnSvc, DWORD AuthzSvc, OLECHAR* pServerPrincName, DWORD AuthnLevel, DWORD ImpLevel, void* pAuthInfo, DWORD Capabilities); \ - HRESULT (STDMETHODCALLTYPE *CopyProxy)(INTERFACE *This, IUnknown* pProxy, IUnknown** ppCopy); - /*** IUnknown methods ***/ #define IClientSecurity_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IClientSecurity_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -8883,6 +8923,17 @@ struct IClientSecurityVtbl { #endif +#define IClientSecurity_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IClientSecurity methods ***/ \ + STDMETHOD_(HRESULT,QueryBlanket)(THIS_ IUnknown* pProxy, DWORD* pAuthnSvc, DWORD* pAuthzSvc, OLECHAR** pServerPrincName, DWORD* pAuthnLevel, DWORD* pImpLevel, void** pAuthInfo, DWORD* pCapabilites) PURE; \ + STDMETHOD_(HRESULT,SetBlanket)(THIS_ IUnknown* pProxy, DWORD AuthnSvc, DWORD AuthzSvc, OLECHAR* pServerPrincName, DWORD AuthnLevel, DWORD ImpLevel, void* pAuthInfo, DWORD Capabilities) PURE; \ + STDMETHOD_(HRESULT,CopyProxy)(THIS_ IUnknown* pProxy, IUnknown** ppCopy) PURE; + HRESULT CALLBACK IClientSecurity_QueryBlanket_Proxy( IClientSecurity* This, IUnknown* pProxy, @@ -8992,17 +9043,6 @@ struct IServerSecurityVtbl { }; -#define IServerSecurity_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IServerSecurity methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryBlanket)(INTERFACE *This, DWORD* pAuthnSvc, DWORD* pAuthzSvc, OLECHAR** pServerPrincName, DWORD* pAuthnLevel, DWORD* pImpLevel, void** pPrivs, DWORD* pCapabilities); \ - HRESULT (STDMETHODCALLTYPE *ImpersonateClient)(INTERFACE *This); \ - HRESULT (STDMETHODCALLTYPE *RevertToSelf)(INTERFACE *This); \ - BOOL (STDMETHODCALLTYPE *IsImpersonating)(INTERFACE *This); - /*** IUnknown methods ***/ #define IServerSecurity_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IServerSecurity_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -9015,6 +9055,18 @@ struct IServerSecurityVtbl { #endif +#define IServerSecurity_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IServerSecurity methods ***/ \ + STDMETHOD_(HRESULT,QueryBlanket)(THIS_ DWORD* pAuthnSvc, DWORD* pAuthzSvc, OLECHAR** pServerPrincName, DWORD* pAuthnLevel, DWORD* pImpLevel, void** pPrivs, DWORD* pCapabilities) PURE; \ + STDMETHOD_(HRESULT,ImpersonateClient)(THIS) PURE; \ + STDMETHOD_(HRESULT,RevertToSelf)(THIS) PURE; \ + STDMETHOD_(BOOL,IsImpersonating)(THIS) PURE; + HRESULT CALLBACK IServerSecurity_QueryBlanket_Proxy( IServerSecurity* This, DWORD* pAuthnSvc, @@ -9098,14 +9150,6 @@ struct IAsyncSetupVtbl { }; -#define IAsyncSetup_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IAsyncSetup methods ***/ \ - HRESULT (STDMETHODCALLTYPE *GetAsyncManager)(INTERFACE *This, REFIID riid, IUnknown* pOuter, DWORD dwFlags, IUnknown** ppInner, IAsyncManager** ppAsyncMgr); - /*** IUnknown methods ***/ #define IAsyncSetup_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IAsyncSetup_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -9115,6 +9159,15 @@ struct IAsyncSetupVtbl { #endif +#define IAsyncSetup_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IAsyncSetup methods ***/ \ + STDMETHOD_(HRESULT,GetAsyncManager)(THIS_ REFIID riid, IUnknown* pOuter, DWORD dwFlags, IUnknown** ppInner, IAsyncManager** ppAsyncMgr) PURE; + HRESULT CALLBACK IAsyncSetup_GetAsyncManager_Proxy( IAsyncSetup* This, REFIID riid, @@ -9188,16 +9241,6 @@ struct IAsyncManagerVtbl { }; -#define IAsyncManager_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IAsyncManager methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CompleteCall)(INTERFACE *This, HRESULT Result); \ - HRESULT (STDMETHODCALLTYPE *GetCallContext)(INTERFACE *This, REFIID riid, void** pInterface); \ - HRESULT (STDMETHODCALLTYPE *GetState)(INTERFACE *This, ULONG* pulStateFlags); - /*** IUnknown methods ***/ #define IAsyncManager_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IAsyncManager_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -9209,6 +9252,17 @@ struct IAsyncManagerVtbl { #endif +#define IAsyncManager_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IAsyncManager methods ***/ \ + STDMETHOD_(HRESULT,CompleteCall)(THIS_ HRESULT Result) PURE; \ + STDMETHOD_(HRESULT,GetCallContext)(THIS_ REFIID riid, void** pInterface) PURE; \ + STDMETHOD_(HRESULT,GetState)(THIS_ ULONG* pulStateFlags) PURE; + HRESULT CALLBACK IAsyncManager_CompleteCall_Proxy( IAsyncManager* This, HRESULT Result); diff --git a/include/oledlg.h b/include/oledlg.h index 6dbcaf3063d..5ee3af5472f 100644 --- a/include/oledlg.h +++ b/include/oledlg.h @@ -642,6 +642,7 @@ DECL_WINELIB_TYPE_AW(LPOLEUICHANGESOURCE) */ #define INTERFACE IOleUILinkContainerA #define IOleUILinkContainerA_METHODS \ + IUnknown_METHODS \ STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE; \ STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE; \ STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE; \ @@ -653,14 +654,12 @@ DECL_WINELIB_TYPE_AW(LPOLEUICHANGESOURCE) STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE; \ STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE; \ STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE; -#define IOleUILinkContainerA_IMETHODS \ - IUnknown_IMETHODS \ - IOleUILinkContainerA_METHODS ICOM_DEFINE(IOleUILinkContainerA, IUnknown) #undef INTERFACE #define INTERFACE IOleUILinkContainerW #define IOleUILinkContainerW_METHODS \ + IUnknown_METHODS \ STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE; \ STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE; \ STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE; \ @@ -672,9 +671,6 @@ ICOM_DEFINE(IOleUILinkContainerA, IUnknown) STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE; \ STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE; \ STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE; -#define IOleUILinkContainerW_IMETHODS \ - IUnknown_IMETHODS \ - IOleUILinkContainerW_METHODS ICOM_DEFINE(IOleUILinkContainerW, IUnknown) #undef INTERFACE @@ -704,19 +700,15 @@ DECL_WINELIB_TYPE_AW(LPOLEUILINKCONTAINER) */ #define INTERFACE IOleUILinkInfoA #define IOleUILinkInfoA_METHODS \ + IOleUILinkContainerA_METHODS \ STDMETHOD(GetLastUpdate)(THIS_ DWORD dwLink, FILETIME *lpLastUpdate) PURE; -#define IOleUILinkInfoA_IMETHODS \ - IOleUILinkContainerA_IMETHODS \ - IOleUILinkInfoA_METHODS ICOM_DEFINE(IOleUILinkInfoA, IOleUILinkContainerA) #undef INTERFACE #define INTERFACE IOleUILinkInfoW #define IOleUILinkInfoW_METHODS \ + IOleUILinkContainerW_METHODS \ STDMETHOD(GetLastUpdate)(THIS_ DWORD dwLink, FILETIME *lpLastUpdate) PURE; -#define IOleUILinkInfoW_IMETHODS \ - IOleUILinkContainerW_IMETHODS \ - IOleUILinkInfoW_METHODS ICOM_DEFINE(IOleUILinkInfoW, IOleUILinkContainerW) #undef INTERFACE @@ -748,6 +740,7 @@ DECL_WINELIB_TYPE_AW(LPOLEUILINKINFO) */ #define INTERFACE IOleUIObjInfoA #define IOleUIObjInfoA_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetObjectInfo)(THIS_ DWORD dwObject, DWORD *lpdwObjSize, LPSTR *lplpszLabel, \ LPSTR *lplpszType, LPSTR *lplpszShortType, LPSTR *lplpszLocation) PURE; \ STDMETHOD(GetConvertInfo)(THIS_ DWORD dwObject, CLSID *lpClassID, WORD *lpwFormat, \ @@ -756,14 +749,12 @@ DECL_WINELIB_TYPE_AW(LPOLEUILINKINFO) STDMETHOD(GetViewInfo)(THIS_ DWORD dwObject, HGLOBAL *phMetaPict, DWORD *pdvAspect, INT *pnCurrentScale) PURE; \ STDMETHOD(SetViewInfo)(THIS_ DWORD dwObject, HGLOBAL hMetaPict, DWORD dvAspect, \ INT nCurrentScale, BOOL bRelativeToOrig) PURE; -#define IOleUIObjInfoA_IMETHODS \ - IUnknown_IMETHODS \ - IOleUIObjInfoA_METHODS ICOM_DEFINE(IOleUIObjInfoA, IUnknown) #undef INTERFACE #define INTERFACE IOleUIObjInfoW #define IOleUIObjInfoW_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetObjectInfo)(THIS_ DWORD dwObject, DWORD *lpdwObjSize, LPWSTR *lplpszLabel, \ LPWSTR *lplpszType, LPWSTR *lplpszShortType, LPWSTR *lplpszLocation) PURE; \ STDMETHOD(GetConvertInfo)(THIS_ DWORD dwObject, CLSID *lpClassID, WORD *lpwFormat, \ @@ -772,9 +763,6 @@ ICOM_DEFINE(IOleUIObjInfoA, IUnknown) STDMETHOD(GetViewInfo)(THIS_ DWORD dwObject, HGLOBAL *phMetaPict, DWORD *pdvAspect, INT *pnCurrentScale) PURE; \ STDMETHOD(SetViewInfo)(THIS_ DWORD dwObject, HGLOBAL hMetaPict, DWORD dvAspect, \ INT nCurrentScale, BOOL bRelativeToOrig) PURE; -#define IOleUIObjInfoW_IMETHODS \ - IUnknown_IMETHODS \ - IOleUIObjInfoW_METHODS ICOM_DEFINE(IOleUIObjInfoW, IUnknown) #undef INTERFACE diff --git a/include/servprov.h b/include/servprov.h index 1785e9a1929..daeb6e04bf5 100644 --- a/include/servprov.h +++ b/include/servprov.h @@ -42,10 +42,8 @@ typedef struct IServiceProvider IServiceProvider,*LPSERVICEPROVIDER; */ #define INTERFACE IServiceProvider #define IServiceProvider_METHODS \ + IUnknown_METHODS \ STDMETHOD(QueryService)(THIS_ REFGUID guidService, REFIID riid, void **ppvObject) PURE; -#define IServiceProvider_IMETHODS \ - IUnknown_IMETHODS \ - IServiceProvider_METHODS ICOM_DEFINE(IServiceProvider,IUnknown) #undef INTERFACE diff --git a/include/shlobj.h b/include/shlobj.h index 04e392865a3..7be60e74ff9 100644 --- a/include/shlobj.h +++ b/include/shlobj.h @@ -124,10 +124,8 @@ typedef GUID SHELLVIEWID; #define INTERFACE IShellIcon #define IShellIcon_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetIconOf)(THIS_ LPCITEMIDLIST pidl, UINT flags, LPINT lpIconIndex) PURE; -#define IShellIcon_IMETHODS \ - IUnknown_IMETHODS \ - IShellIcon_METHODS ICOM_DEFINE(IShellIcon, IUnknown) #undef INTERFACE diff --git a/include/shlwapi.h b/include/shlwapi.h index 918238fa673..fb0f3f0c0f3 100644 --- a/include/shlwapi.h +++ b/include/shlwapi.h @@ -245,14 +245,12 @@ typedef struct IQueryAssociations IQueryAssociations,*LPQUERYASSOCIATIONS; #define INTERFACE IQueryAssociations #define IQueryAssociations_METHODS \ + IUnknown_METHODS \ STDMETHOD(Init)(THIS_ ASSOCF flags, LPCWSTR pszAssoc, HKEY hkProgid, HWND hwnd) PURE; \ STDMETHOD(GetString)(THIS_ ASSOCF flags, ASSOCSTR str, LPCWSTR pszExtra, LPWSTR pszOut, DWORD * pcchOut) PURE; \ STDMETHOD(GetKey)(THIS_ ASSOCF flags, ASSOCKEY key, LPCWSTR pszExtra, HKEY * phkeyOut) PURE; \ STDMETHOD(GetData)(THIS_ ASSOCF flags, ASSOCDATA data, LPCWSTR pszExtra, LPVOID pvOut, DWORD * pcbOut) PURE; \ STDMETHOD(GetEnum)(THIS_ ASSOCF flags, ASSOCENUM assocenum, LPCWSTR pszExtra, REFIID riid, LPVOID * ppvOut) PURE; -#define IQueryAssociations_IMETHODS \ - IUnknown_IMETHODS \ - IQueryAssociations_METHODS ICOM_DEFINE(IQueryAssociations,IUnknown) #undef INTERFACE @@ -843,7 +841,7 @@ VOID WINAPI ColorRGBToHLS(COLORREF,LPWORD,LPWORD,LPWORD); /* Stream functions */ -#if !defined(NO_SHLWAPI_STREAM) && defined(IStream_IMETHODS) +#if !defined(NO_SHLWAPI_STREAM) && defined(IStream_METHODS) IStream * WINAPI SHOpenRegStreamA(HKEY,LPCSTR,LPCSTR,DWORD); IStream * WINAPI SHOpenRegStreamW(HKEY,LPCWSTR,LPCWSTR,DWORD); @@ -880,7 +878,7 @@ HRESULT WINAPI SHCreateStreamWrapper(LPBYTE,DWORD,DWORD,IStream**); HRESULT WINAPI SHAutoComplete(HWND,DWORD); /* Threads */ -#if defined(IUnknown_IMETHODS) +#if defined(IUnknown_METHODS) HRESULT WINAPI SHGetThreadRef(IUnknown**); HRESULT WINAPI SHSetThreadRef(IUnknown*); #endif @@ -897,7 +895,7 @@ HRESULT WINAPI SHReleaseThreadRef(); BOOL WINAPI SHCreateThread(LPTHREAD_START_ROUTINE,void*,DWORD,LPTHREAD_START_ROUTINE); -#if defined(IBindCtx_IMETHODS) +#if defined(IBindCtx_METHODS) BOOL WINAPI SHSkipJunction(IBindCtx*,const CLSID*); #endif diff --git a/include/unknwn.h b/include/unknwn.h index ff835df7b70..f0b19d49ebf 100644 --- a/include/unknwn.h +++ b/include/unknwn.h @@ -8,22 +8,17 @@ extern "C" { #endif #include "wtypes.h" -#if defined(__cplusplus) && !defined(CINTERFACE) - #ifdef ICOM_USE_COM_INTERFACE_ATTRIBUTE - #define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface)) - #else - #define ICOM_COM_INTERFACE_ATTRIBUTE - #endif +#if defined(ICOM_USE_COM_INTERFACE_ATTRIBUTE) && defined(__cplusplus) && !defined(CINTERFACE) +# define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface)) #else - #ifdef ICOM_MSVTABLE_COMPAT - #define ICOM_MSVTABLE_COMPAT_FIELDS \ - long dummyRTTI1; \ - long dummyRTTI2; - #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0, - #else - #define ICOM_MSVTABLE_COMPAT_FIELDS - #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE - #endif +# define ICOM_COM_INTERFACE_ATTRIBUTE +#endif +#if defined(ICOM_MSVTABLE_COMPAT) && (!defined(__cplusplus) || defined(CINTERFACE)) +# define ICOM_MSVTABLE_COMPAT_FIELDS long dummyRTTI1,dummyRTTI2; +# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0, +#else +# define ICOM_MSVTABLE_COMPAT_FIELDS +# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE #endif typedef struct IUnknown IUnknown; typedef IUnknown *LPUNKNOWN; @@ -68,12 +63,6 @@ struct IUnknownVtbl { }; -#define IUnknown_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); - /*** IUnknown methods ***/ #define IUnknown_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IUnknown_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -81,6 +70,13 @@ struct IUnknownVtbl { #endif +#define IUnknown_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; + HRESULT CALLBACK IUnknown_QueryInterface_Proxy( IUnknown* This, REFIID riid, @@ -157,15 +153,6 @@ struct IClassFactoryVtbl { }; -#define IClassFactory_IMETHODS \ - /*** IUnknown methods ***/ \ - HRESULT (STDMETHODCALLTYPE *QueryInterface)(INTERFACE *This, REFIID riid, void** ppvObject); \ - ULONG (STDMETHODCALLTYPE *AddRef)(INTERFACE *This); \ - ULONG (STDMETHODCALLTYPE *Release)(INTERFACE *This); \ - /*** IClassFactory methods ***/ \ - HRESULT (STDMETHODCALLTYPE *CreateInstance)(INTERFACE *This, IUnknown* pUnkOuter, REFIID riid, void** ppvObject); \ - HRESULT (STDMETHODCALLTYPE *LockServer)(INTERFACE *This, BOOL fLock); - /*** IUnknown methods ***/ #define IClassFactory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IClassFactory_AddRef(p) (p)->lpVtbl->AddRef(p) @@ -176,6 +163,16 @@ struct IClassFactoryVtbl { #endif +#define IClassFactory_METHODS \ + ICOM_MSVTABLE_COMPAT_FIELDS \ + /*** IUnknown methods ***/ \ + STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(ULONG,AddRef)(THIS) PURE; \ + STDMETHOD_(ULONG,Release)(THIS) PURE; \ + /*** IClassFactory methods ***/ \ + STDMETHOD_(HRESULT,CreateInstance)(THIS_ IUnknown* pUnkOuter, REFIID riid, void** ppvObject) PURE; \ + STDMETHOD_(HRESULT,LockServer)(THIS_ BOOL fLock) PURE; + HRESULT CALLBACK IClassFactory_RemoteCreateInstance_Proxy( IClassFactory* This, REFIID riid, diff --git a/include/unknwn.idl b/include/unknwn.idl index 92ee79a57ff..805532013b8 100644 --- a/include/unknwn.idl +++ b/include/unknwn.idl @@ -21,22 +21,17 @@ import "wtypes.idl"; /* COM vtable compatibility macros for g++ */ /* Included here because the generated header needs them */ -cpp_quote("#if defined(__cplusplus) && !defined(CINTERFACE)") -cpp_quote(" #ifdef ICOM_USE_COM_INTERFACE_ATTRIBUTE") -cpp_quote(" #define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))") -cpp_quote(" #else") -cpp_quote(" #define ICOM_COM_INTERFACE_ATTRIBUTE") -cpp_quote(" #endif") +cpp_quote("#if defined(ICOM_USE_COM_INTERFACE_ATTRIBUTE) && defined(__cplusplus) && !defined(CINTERFACE)") +cpp_quote("# define ICOM_COM_INTERFACE_ATTRIBUTE __attribute__((com_interface))") cpp_quote("#else") -cpp_quote(" #ifdef ICOM_MSVTABLE_COMPAT") -cpp_quote(" #define ICOM_MSVTABLE_COMPAT_FIELDS \\") -cpp_quote(" long dummyRTTI1; \\") -cpp_quote(" long dummyRTTI2;") -cpp_quote(" #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,") -cpp_quote(" #else") -cpp_quote(" #define ICOM_MSVTABLE_COMPAT_FIELDS") -cpp_quote(" #define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE") -cpp_quote(" #endif") +cpp_quote("# define ICOM_COM_INTERFACE_ATTRIBUTE") +cpp_quote("#endif") +cpp_quote("#if defined(ICOM_MSVTABLE_COMPAT) && (!defined(__cplusplus) || defined(CINTERFACE))") +cpp_quote("# define ICOM_MSVTABLE_COMPAT_FIELDS long dummyRTTI1,dummyRTTI2;") +cpp_quote("# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE 0,0,") +cpp_quote("#else") +cpp_quote("# define ICOM_MSVTABLE_COMPAT_FIELDS") +cpp_quote("# define ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE") cpp_quote("#endif") /* Interfaces */ diff --git a/include/urlmon.h b/include/urlmon.h index b5ea48f4649..6be63c7a75e 100644 --- a/include/urlmon.h +++ b/include/urlmon.h @@ -172,15 +172,13 @@ typedef enum BINDSTATUS { */ #define INTERFACE IBinding #define IBinding_METHODS \ + IUnknown_METHODS \ STDMETHOD(Abort)(THIS) PURE; \ STDMETHOD(Suspend)(THIS) PURE; \ STDMETHOD(Resume)(THIS) PURE; \ STDMETHOD(SetPriority)(THIS_ LONG nPriority) PURE; \ STDMETHOD(GetPriority)(THIS_ LONG *pnPriority) PURE; \ STDMETHOD(GetBindResult)(THIS_ CLSID *pclsidProtocol, DWORD *pdwResult, LPOLESTR *pszResult, DWORD *pdwReserved) PURE; -#define IBinding_IMETHODS \ - IUnknown_IMETHODS \ - IBinding_METHODS ICOM_DEFINE(IBinding,IUnknown) #undef INTERFACE @@ -203,6 +201,7 @@ ICOM_DEFINE(IBinding,IUnknown) */ #define INTERFACE IBindStatusCallback #define IBindStatusCallback_METHODS \ + IUnknown_METHODS \ STDMETHOD(OnStartBinding)(THIS_ DWORD dwReserved, IBinding *pib) PURE; \ STDMETHOD(GetPriority)(THIS_ LONG *pnPriority) PURE; \ STDMETHOD(OnLowResource)(THIS) PURE; \ @@ -211,9 +210,6 @@ ICOM_DEFINE(IBinding,IUnknown) STDMETHOD(GetBindInfo)(THIS_ DWORD *grfBINDF, BINDINFO *pbindinfo) PURE; \ STDMETHOD(OnDataAvailable)(THIS_ DWORD grfBSCF, DWORD dwSize, FORMATETC *pformatetc, STGMEDIUM *pstgmed) PURE; \ STDMETHOD(OnObjectAvailable)(THIS_ REFIID iid, IUnknown *punk) PURE; -#define IBindStatusCallback_IMETHODS \ - IUnknown_IMETHODS \ - IBindStatusCallback_METHODS ICOM_DEFINE(IBindStatusCallback,IUnknown) #undef INTERFACE @@ -238,12 +234,10 @@ ICOM_DEFINE(IBindStatusCallback,IUnknown) */ #define INTERFACE IBindHost #define IBindHost_METHODS \ + IUnknown_METHODS \ STDMETHOD(CreateMoniker)(THIS_ LPOLESTR szName, IBindCtx *pBC, IMoniker **ppmk, DWORD dwReserved) PURE; \ STDMETHOD(MonikerBindToStorage)(THIS_ IMoniker *pMk, IBindCtx *pBC, IBindStatusCallback *pBSC, REFIID riid, LPVOID *ppvObj) PURE; \ STDMETHOD(MonikerBindToObject)(THIS_ IMoniker *pMk, IBindCtx *pBC, IBindStatusCallback *pBSC, REFIID riid, LPVOID *ppvObj) PURE; -#define IBindHost_IMETHODS \ - IUnknown_IMETHODS \ - IBindHost_METHODS ICOM_DEFINE(IBindHost,IUnknown) #undef INTERFACE @@ -281,10 +275,8 @@ typedef enum _tagQUERYOPTION { */ #define INTERFACE IWinInetInfo #define IWinInetInfo_METHODS \ + IUnknown_METHODS \ STDMETHOD(QueryOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD *pcbBuf) PURE; -#define IWinInetInfo_IMETHODS \ - IUnknown_IMETHODS \ - IWinInetInfo_METHODS ICOM_DEFINE(IWinInetInfo,IUnknown) #undef INTERFACE @@ -302,10 +294,8 @@ ICOM_DEFINE(IWinInetInfo,IUnknown) */ #define INTERFACE IWinInetHttpInfo #define IWinInetHttpInfo_METHODS \ + IWinInetInfo_METHODS \ STDMETHOD(QueryInfo)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD *pcbBuf, DWORD *pdwFlags, DWORD *pdwReserved) PURE; -#define IWinInetHttpInfo_IMETHODS \ - IWinInetInfo_IMETHODS \ - IWinInetHttpInfo_METHODS ICOM_DEFINE(IWinInetHttpInfo,IWinInetInfo) #undef INTERFACE diff --git a/include/vfw.h b/include/vfw.h index 14b1ef8a659..f0f9cf26487 100644 --- a/include/vfw.h +++ b/include/vfw.h @@ -988,7 +988,8 @@ DEFINE_AVIGUID(CLSID_AVIFile, 0x00020000, 0, 0); * IAVIStream interface */ #define INTERFACE IAVIStream -#define IAVIStream_METHODS \ +#define IAVIStream_METHODS \ + IUnknown_METHODS \ STDMETHOD(Create)(THIS_ LPARAM lParam1, LPARAM lParam2) PURE; \ STDMETHOD(Info)(THIS_ AVISTREAMINFOW *psi, LONG lSize) PURE; \ STDMETHOD_(LONG,FindSample)(THIS_ LONG lPos, LONG lFlags) PURE; \ @@ -1000,9 +1001,6 @@ DEFINE_AVIGUID(CLSID_AVIFile, 0x00020000, 0, 0); STDMETHOD(ReadData)(THIS_ DWORD fcc, LPVOID lpBuffer, LONG *lpcbBuffer) PURE; \ STDMETHOD(WriteData)(THIS_ DWORD fcc, LPVOID lpBuffer, LONG cbBuffer) PURE; \ STDMETHOD(SetInfo)(THIS_ AVISTREAMINFOW *plInfo, LONG cbInfo) PURE; -#define IAVIStream_IMETHODS \ - IUnknown_IMETHODS \ - IAVIStream_METHODS ICOM_DEFINE(IAVIStream, IUnknown) #undef INTERFACE @@ -1090,7 +1088,8 @@ LONG WINAPI AVIStreamTimeToSample(PAVISTREAM pstream, LONG lTime); */ /* In Win32 this interface uses UNICODE only */ #define INTERFACE IAVIFile -#define IAVIFile_METHODS \ +#define IAVIFile_METHODS \ + IUnknown_METHODS \ STDMETHOD(Info)(THIS_ AVIFILEINFOW *pfi, LONG lSize) PURE; \ STDMETHOD(GetStream)(THIS_ PAVISTREAM *ppStream, DWORD fccType, LONG lParam) PURE; \ STDMETHOD(CreateStream)(THIS_ PAVISTREAM *ppStream, AVISTREAMINFOW *psi) PURE; \ @@ -1098,9 +1097,6 @@ LONG WINAPI AVIStreamTimeToSample(PAVISTREAM pstream, LONG lTime); STDMETHOD(ReadData)(THIS_ DWORD fcc, LPVOID lpBuffer, LONG *lpcbBuffer) PURE; \ STDMETHOD(EndRecord)(THIS) PURE; \ STDMETHOD(DeleteStream)(THIS_ DWORD fccType, LONG lParam) PURE; -#define IAVIFile_IMETHODS \ - IUnknown_IMETHODS \ - IAVIFile_METHODS ICOM_DEFINE(IAVIFile,IUnknown) #undef INTERFACE @@ -1143,14 +1139,12 @@ HRESULT WINAPI AVIFileEndRecord(PAVIFILE pfile); * IGetFrame interface */ #define INTERFACE IGetFrame -#define IGetFrame_METHODS \ +#define IGetFrame_METHODS \ + IUnknown_METHODS \ STDMETHOD_(LPVOID,GetFrame)(THIS_ LONG lPos) PURE; \ STDMETHOD(Begin)(THIS_ LONG lStart, LONG lEnd, LONG lRate) PURE; \ STDMETHOD(End)(THIS) PURE; \ STDMETHOD(SetFormat)(THIS_ LPBITMAPINFOHEADER lpbi, LPVOID lpBits, INT x, INT y, INT dx, INT dy) PURE; -#define IGetFrame_IMETHODS \ - IUnknown_IMETHODS \ - IGetFrame_METHODS ICOM_DEFINE(IGetFrame,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_cache.h b/include/wine/obj_cache.h index faf396d7fb1..d71f866d624 100644 --- a/include/wine/obj_cache.h +++ b/include/wine/obj_cache.h @@ -50,14 +50,12 @@ typedef struct IOleCacheControl IOleCacheControl, *LPOLECACHECONTROL; */ #define INTERFACE IOleCache #define IOleCache_METHODS \ + IUnknown_METHODS \ STDMETHOD(Cache)(THIS_ FORMATETC *pformatetc, DWORD advf, DWORD * pdwConnection) PURE; \ STDMETHOD(Uncache)(THIS_ DWORD dwConnection) PURE; \ STDMETHOD(EnumCache)(THIS_ IEnumSTATDATA **ppenumSTATDATA) PURE; \ STDMETHOD(InitCache)(THIS_ IDataObject *pDataObject) PURE; \ STDMETHOD(SetData)(THIS_ FORMATETC *pformatetc, STGMEDIUM *pmedium, BOOL fRelease) PURE; -#define IOleCache_IMETHODS \ - IUnknown_IMETHODS \ - IOleCache_METHODS ICOM_DEFINE(IOleCache,IUnknown) #undef INTERFACE @@ -80,11 +78,9 @@ ICOM_DEFINE(IOleCache,IUnknown) */ #define INTERFACE IOleCache2 #define IOleCache2_METHODS \ + IOleCache_METHODS \ STDMETHOD(UpdateCache)(THIS_ LPDATAOBJECT pDataObject, DWORD grfUpdf, LPVOID pReserved) PURE; \ STDMETHOD(DiscardCache)(THIS_ DWORD dwDiscardOptions) PURE; -#define IOleCache2_IMETHODS \ - IOleCache_IMETHODS \ - IOleCache2_METHODS ICOM_DEFINE(IOleCache2,IOleCache) #undef INTERFACE @@ -110,11 +106,9 @@ ICOM_DEFINE(IOleCache2,IOleCache) */ #define INTERFACE IOleCacheControl #define IOleCacheControl_METHODS \ + IUnknown_METHODS \ STDMETHOD(OnRun)(THIS_ LPDATAOBJECT pDataObject) PURE; \ STDMETHOD(OnStop)(THIS) PURE; -#define IOleCacheControl_IMETHODS \ - IUnknown_IMETHODS \ - IOleCacheControl_METHODS ICOM_DEFINE(IOleCacheControl,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_comcat.h b/include/wine/obj_comcat.h index 7bac25c0858..9b6c99ca673 100644 --- a/include/wine/obj_comcat.h +++ b/include/wine/obj_comcat.h @@ -93,15 +93,13 @@ DEFINE_OLEGUID(CLSID_StdComponentCategoriesMgr, 0x0002E005L, 0, 0); */ #define INTERFACE ICatInformation #define ICatInformation_METHODS \ + IUnknown_METHODS \ STDMETHOD(EnumCategories)(THIS_ LCID lcid, IEnumCATEGORYINFO ** ppenumCatInfo) PURE; \ STDMETHOD(GetCategoryDesc)(THIS_ REFCATID rcatid, LCID lcid, PWCHAR * ppszDesc) PURE; \ STDMETHOD(EnumClassesOfCategories)(THIS_ ULONG cImplemented, CATID * rgcatidImpl, ULONG cRequired, CATID * rgcatidReq, IEnumCLSID ** ppenumCLSID) PURE; \ STDMETHOD(IsClassOfCategories)(THIS_ REFCLSID rclsid, ULONG cImplemented, CATID * rgcatidImpl, ULONG cRequired, CATID * rgcatidReq) PURE; \ STDMETHOD(EnumImplCategoriesOfClass)(THIS_ REFCLSID rclsid, IEnumCATID ** ppenumCATID) PURE; \ STDMETHOD(EnumReqCategoriesOfClass)(THIS_ REFCLSID rclsid, IEnumCATID ** ppenumCATID) PURE; -#define ICatInformation_IMETHODS \ - IUnknown_IMETHODS \ - ICatInformation_METHODS ICOM_DEFINE(ICatInformation,IUnknown) #undef INTERFACE @@ -124,15 +122,13 @@ ICOM_DEFINE(ICatInformation,IUnknown) */ #define INTERFACE ICatRegister #define ICatRegister_METHODS \ + IUnknown_METHODS \ STDMETHOD(RegisterCategories)(THIS_ ULONG cCategories, CATEGORYINFO * rgCategoryInfo) PURE; \ STDMETHOD(UnRegisterCategories)(THIS_ ULONG cCategories, CATID * rgcatid) PURE; \ STDMETHOD(RegisterClassImplCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; \ STDMETHOD(UnRegisterClassImplCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; \ STDMETHOD(RegisterClassReqCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; \ STDMETHOD(UnRegisterClassReqCategories)(THIS_ REFCLSID rclsid, ULONG cCategories, CATID * rgcatid) PURE; -#define ICatRegister_IMETHODS \ - IUnknown_IMETHODS \ - ICatRegister_METHODS ICOM_DEFINE(ICatRegister,IUnknown) #undef INTERFACE @@ -155,13 +151,11 @@ ICOM_DEFINE(ICatRegister,IUnknown) */ #define INTERFACE IEnumCATEGORYINFO #define IEnumCATEGORYINFO_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG celt, CATEGORYINFO * rgelt, ULONG * pceltFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumCATEGORYINFO ** ppenum) PURE; -#define IEnumCATEGORYINFO_IMETHODS \ - IUnknown_IMETHODS \ - IEnumCATEGORYINFO_METHODS ICOM_DEFINE(IEnumCATEGORYINFO,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_commdlgbrowser.h b/include/wine/obj_commdlgbrowser.h index b981ba92a53..55d9f9be91f 100644 --- a/include/wine/obj_commdlgbrowser.h +++ b/include/wine/obj_commdlgbrowser.h @@ -36,12 +36,10 @@ typedef struct ICommDlgBrowser ICommDlgBrowser, *LPCOMMDLGBROWSER; #define INTERFACE ICommDlgBrowser #define ICommDlgBrowser_METHODS \ + IUnknown_METHODS \ STDMETHOD(OnDefaultCommand)(THIS_ IShellView * IShellView) PURE; \ STDMETHOD(OnStateChange)(THIS_ IShellView * IShellView, ULONG uChange) PURE; \ STDMETHOD(IncludeObject)(THIS_ IShellView * IShellView, LPCITEMIDLIST pidl) PURE; -#define ICommDlgBrowser_IMETHODS \ - IUnknown_IMETHODS \ - ICommDlgBrowser_METHODS ICOM_DEFINE(ICommDlgBrowser,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_connection.h b/include/wine/obj_connection.h index 55a9f4c91f4..815604f8981 100644 --- a/include/wine/obj_connection.h +++ b/include/wine/obj_connection.h @@ -57,14 +57,12 @@ typedef struct IEnumConnectionPoints IEnumConnectionPoints, *LPENUMCONNECTIONPOI */ #define INTERFACE IConnectionPoint #define IConnectionPoint_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetConnectionInterface)(THIS_ IID *pIID) PURE; \ STDMETHOD(GetConnectionPointContainer)(THIS_ IConnectionPointContainer **ppCPC) PURE; \ STDMETHOD(Advise)(THIS_ IUnknown *pUnkSink, DWORD *pdwCookie) PURE; \ STDMETHOD(Unadvise)(THIS_ DWORD dwCookie) PURE; \ STDMETHOD(EnumConnections)(THIS_ IEnumConnections **ppEnum) PURE; -#define IConnectionPoint_IMETHODS \ - IUnknown_IMETHODS \ - IConnectionPoint_METHODS ICOM_DEFINE(IConnectionPoint,IUnknown) #undef INTERFACE @@ -87,11 +85,9 @@ ICOM_DEFINE(IConnectionPoint,IUnknown) */ #define INTERFACE IConnectionPointContainer #define IConnectionPointContainer_METHODS \ + IUnknown_METHODS \ STDMETHOD(EnumConnectionPoints)(THIS_ IEnumConnectionPoints **ppEnum) PURE; \ STDMETHOD(FindConnectionPoint)(THIS_ REFIID riid, IConnectionPoint **ppCP) PURE; -#define IConnectionPointContainer_IMETHODS \ - IUnknown_IMETHODS \ - IConnectionPointContainer_METHODS ICOM_DEFINE(IConnectionPointContainer,IUnknown) #undef INTERFACE @@ -111,13 +107,11 @@ ICOM_DEFINE(IConnectionPointContainer,IUnknown) */ #define INTERFACE IEnumConnections #define IEnumConnections_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG cConnections, LPCONNECTDATA rgcd, ULONG *pcFectched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG cConnections) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumConnections **ppEnum) PURE; -#define IEnumConnections_IMETHODS \ - IUnknown_IMETHODS \ - IEnumConnections_METHODS ICOM_DEFINE(IEnumConnections,IUnknown) #undef INTERFACE @@ -138,13 +132,11 @@ ICOM_DEFINE(IEnumConnections,IUnknown) */ #define INTERFACE IEnumConnectionPoints #define IEnumConnectionPoints_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG cConnections, LPCONNECTIONPOINT *ppCP, ULONG *pcFectched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG cConnections) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumConnections **ppEnum) PURE; -#define IEnumConnectionPoints_IMETHODS \ - IUnknown_IMETHODS \ - IEnumConnectionPoints_METHODS ICOM_DEFINE(IEnumConnectionPoints,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_contextmenu.h b/include/wine/obj_contextmenu.h index 31e70a2fc97..37c2ece1215 100644 --- a/include/wine/obj_contextmenu.h +++ b/include/wine/obj_contextmenu.h @@ -125,14 +125,12 @@ typedef struct tagCMInvokeCommandInfoEx #define INTERFACE IContextMenu #define IContextMenu_METHODS \ + IUnknown_METHODS \ STDMETHOD(QueryContextMenu)(THIS_ HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags) PURE; \ STDMETHOD(InvokeCommand)(THIS_ LPCMINVOKECOMMANDINFO lpici) PURE; \ STDMETHOD(GetCommandString)(THIS_ UINT idCmd, UINT uType, UINT * pwReserved, LPSTR pszName, UINT cchMax) PURE; \ STDMETHOD(HandleMenuMsg)(THIS_ UINT uMsg, WPARAM wParam, LPARAM lParam) PURE; \ void * guard; /*possibly another nasty entry from ContextMenu3 ?*/ -#define IContextMenu_IMETHODS \ - IUnknown_IMETHODS \ - IContextMenu_METHODS ICOM_DEFINE(IContextMenu,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_control.h b/include/wine/obj_control.h index 2c8602c37ed..3f2d203605f 100644 --- a/include/wine/obj_control.h +++ b/include/wine/obj_control.h @@ -180,13 +180,11 @@ typedef struct IProvideClassInfo2 IProvideClassInfo2, *LPPROVIDECLASSINFO2; */ #define INTERFACE IOleControl #define IOleControl_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetControlInfo)(THIS_ CONTROLINFO *pCI) PURE; \ STDMETHOD(OnMnemonic)(THIS_ struct tagMSG *pMsg) PURE; \ STDMETHOD(OnAmbientPropertyChange)(THIS_ DISPID dispID) PURE; \ STDMETHOD(FreezeEvents)(THIS_ BOOL bFreeze) PURE; -#define IOleControl_IMETHODS \ - IUnknown_IMETHODS \ - IOleControl_METHODS ICOM_DEFINE(IOleControl,IUnknown) #undef INTERFACE @@ -208,6 +206,7 @@ ICOM_DEFINE(IOleControl,IUnknown) */ #define INTERFACE IOleControlSite #define IOleControlSite_METHODS \ + IUnknown_METHODS \ STDMETHOD(OnControlInfoChanged)(THIS) PURE; \ STDMETHOD(LockInPlaceActive)(THIS_ BOOL fLock) PURE; \ STDMETHOD(GetExtendedControl)(THIS_ IDispatch **ppDisp) PURE; \ @@ -215,9 +214,6 @@ ICOM_DEFINE(IOleControl,IUnknown) STDMETHOD(TranslateAccelerator)(THIS_ struct tagMSG *pMsg, DWORD grfModifiers) PURE; \ STDMETHOD(OnFocus)(THIS_ BOOL fGotFocus) PURE; \ STDMETHOD(ShowPropertyFrame)(THIS) PURE; -#define IOleControlSite_IMETHODS \ - IUnknown_IMETHODS \ - IOleControlSite_METHODS ICOM_DEFINE(IOleControlSite,IUnknown) #undef INTERFACE @@ -242,12 +238,10 @@ ICOM_DEFINE(IOleControlSite,IUnknown) */ #define INTERFACE IOleInPlaceSiteEx #define IOleInPlaceSiteEx_METHODS \ + IOleInPlaceSite_METHODS \ STDMETHOD(OnInPlaceActivateEx)(THIS_ BOOL *pfNoRedraw, DWORD dwFlags) PURE; \ STDMETHOD(OnInPlaceDeactivateEx)(THIS_ BOOL fNoRedraw) PURE; \ STDMETHOD(RequestUIActivate)(THIS) PURE; -#define IOleInPlaceSiteEx_IMETHODS \ - IOleInPlaceSite_IMETHODS \ - IOleInPlaceSiteEx_METHODS ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite) #undef INTERFACE @@ -282,6 +276,7 @@ ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite) */ #define INTERFACE IOleInPlaceSiteWindowless #define IOleInPlaceSiteWindowless_METHODS \ + IOleInPlaceSite_METHODS \ STDMETHOD(CanWindowlessActivate)(THIS) PURE; \ STDMETHOD(GetCapture)(THIS) PURE; \ STDMETHOD(SetCapture)(THIS_ BOOL fCapture) PURE; \ @@ -294,9 +289,6 @@ ICOM_DEFINE(IOleInPlaceSiteEx,IOleInPlaceSite) STDMETHOD(ScrollRect)(THIS_ INT dx, INT dy, LPCRECT pRectScroll, LPCRECT pRectClip) PURE; \ STDMETHOD(AdjustRect)(THIS_ LPRECT prc) PURE; \ STDMETHOD(OnDefWindowMessage)(THIS_ UINT msg, WPARAM wParam, LPARAM lParam, LRESULT *plResult) PURE; -#define IOleInPlaceSiteWindowless_IMETHODS \ - IOleInPlaceSite_IMETHODS \ - IOleInPlaceSiteWindowless_METHODS ICOM_DEFINE(IOleInPlaceSiteWindowless,IOleInPlaceSite) #undef INTERFACE @@ -340,11 +332,9 @@ ICOM_DEFINE(IOleInPlaceSiteWindowless,IOleInPlaceSite) */ #define INTERFACE IOleInPlaceObjectWindowless #define IOleInPlaceObjectWindowless_METHODS \ + IOleInPlaceObject_METHODS \ STDMETHOD(OnWindowMessage)(THIS_ UINT msg, WPARAM wParam, LPARAM lParam, LRESULT *plResult) PURE; \ STDMETHOD(GetDropTarget)(THIS_ IDropTarget **ppDropTarget) PURE; -#define IOleInPlaceObjectWindowless_IMETHODS \ - IOleInPlaceObject_IMETHODS \ - IOleInPlaceObjectWindowless_METHODS ICOM_DEFINE(IOleInPlaceObjectWindowless,IOleInPlaceObject) #undef INTERFACE @@ -372,12 +362,10 @@ ICOM_DEFINE(IOleInPlaceObjectWindowless,IOleInPlaceObject) */ #define INTERFACE IClassFactory2 #define IClassFactory2_METHODS \ + IClassFactory_METHODS \ STDMETHOD(GetLicInfo)(THIS_ LICINFO *pLicInfo) PURE; \ STDMETHOD(RequestLicKey)(THIS_ DWORD dwReserved, BSTR *pBstrKey) PURE; \ STDMETHOD(CreateInstanceLic)(THIS_ IUnknown *pUnkOuter, IUnknown *pUnkReserved, REFIID riid, BSTR bstrKey, PVOID *ppvObj) PURE; -#define IClassFactory2_IMETHODS \ - IClassFactory_IMETHODS \ - IClassFactory2_METHODS ICOM_DEFINE(IClassFactory2,IClassFactory) #undef INTERFACE @@ -401,14 +389,12 @@ ICOM_DEFINE(IClassFactory2,IClassFactory) */ #define INTERFACE IViewObjectEx #define IViewObjectEx_METHODS \ + IViewObject2_METHODS \ STDMETHOD(GetRect)(THIS_ DWORD dwAspect, LPRECTL pRect) PURE; \ STDMETHOD(GetViewStatus)(THIS_ DWORD *pdwStatus) PURE; \ STDMETHOD(QueryHitPoint)(THIS_ DWORD dwAspect, LPCRECT pRectBounds, POINT ptlLoc, LONG lCloseHint, DWORD *pHitResult) PURE; \ STDMETHOD(QueryHitRect)(THIS_ DWORD dwAspect, LPCRECT pRectBounds, LPCRECT pRectLoc, LONG lCloseHint, DWORD *pHitResult) PURE; \ STDMETHOD(GetNaturalExtent)(THIS_ DWORD dwAspect, LONG lindex, DVTARGETDEVICE *ptd, HDC hicTargetDev, DVEXTENTINFO *pExtentInfo, LPSIZEL pSizel) PURE; -#define IViewObjectEx_IMETHODS \ - IViewObject2_IMETHODS \ - IViewObjectEx_METHODS ICOM_DEFINE(IViewObjectEx,IViewObject2) #undef INTERFACE @@ -444,10 +430,8 @@ ICOM_DEFINE(IViewObjectEx,IViewObject2) #define INTERFACE IProvideClassInfo #define IProvideClassInfo_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetClassInfo)(THIS_ ITypeInfo **ppTI) PURE; -#define IProvideClassInfo_IMETHODS \ - IUnknown_IMETHODS \ - IProvideClassInfo_METHODS ICOM_DEFINE(IProvideClassInfo,IUnknown) #undef INTERFACE @@ -467,10 +451,8 @@ ICOM_DEFINE(IProvideClassInfo,IUnknown) */ #define INTERFACE IProvideClassInfo2 #define IProvideClassInfo2_METHODS \ + IProvideClassInfo_METHODS \ STDMETHOD(GetGUID)(THIS_ DWORD dwGuidKind, GUID *pGUID) PURE; -#define IProvideClassInfo2_IMETHODS \ - IProvideClassInfo_IMETHODS \ - IProvideClassInfo2_METHODS ICOM_DEFINE(IProvideClassInfo2,IProvideClassInfo) #undef INTERFACE diff --git a/include/wine/obj_dockingwindowframe.h b/include/wine/obj_dockingwindowframe.h index 6dbb2f32149..873dd791b4b 100644 --- a/include/wine/obj_dockingwindowframe.h +++ b/include/wine/obj_dockingwindowframe.h @@ -34,12 +34,10 @@ DEFINE_GUID (IID_IDockingWindowFrame, 0x47D2657AL, 0x7B27, 0x11D0, 0x8C, 0xA9, 0 #define INTERFACE IDockingWindowFrame #define IDockingWindowFrame_METHODS \ + IOleWindow_METHODS \ STDMETHOD(AddToolbar)(THIS_ IUnknown * punkSrc, LPCWSTR pwszItem, DWORD dwAddFlags) PURE; \ STDMETHOD(RemoveToolbar)(THIS_ IUnknown * punkSrc, DWORD dwRemoveFlags) PURE; \ STDMETHOD(FindToolbar)(THIS_ LPCWSTR pwszItem, REFIID riid, LPVOID * ppvObj) PURE; -#define IDockingWindowFrame_IMETHODS \ - IOleWindow_IMETHODS \ - IDockingWindowFrame_METHODS ICOM_DEFINE(IDockingWindowFrame,IOleWindow) #undef INTERFACE diff --git a/include/wine/obj_dragdrop.h b/include/wine/obj_dragdrop.h index bf216ed2737..095694bbb35 100644 --- a/include/wine/obj_dragdrop.h +++ b/include/wine/obj_dragdrop.h @@ -54,11 +54,9 @@ typedef struct IDropTarget IDropTarget,*LPDROPTARGET; */ #define INTERFACE IDropSource #define IDropSource_METHODS \ + IUnknown_METHODS \ STDMETHOD(QueryContinueDrag)(THIS_ BOOL fEscapePressed, DWORD grfKeyState) PURE; \ STDMETHOD(GiveFeedback)(THIS_ DWORD dwEffect) PURE; -#define IDropSource_IMETHODS \ - IUnknown_IMETHODS \ - IDropSource_METHODS ICOM_DEFINE(IDropSource,IUnknown) #undef INTERFACE @@ -77,13 +75,11 @@ ICOM_DEFINE(IDropSource,IUnknown) */ #define INTERFACE IDropTarget #define IDropTarget_METHODS \ + IUnknown_METHODS \ STDMETHOD(DragEnter)(THIS_ IDataObject * pDataObject, DWORD grfKeyState, POINTL pt, DWORD * pdwEffect) PURE; \ STDMETHOD(DragOver)(THIS_ DWORD grfKeyState, POINTL pt, DWORD * pdwEffect) PURE; \ STDMETHOD(DragLeave)(THIS) PURE; \ STDMETHOD(Drop)(THIS_ IDataObject * pDataObject, DWORD grfKeyState, POINTL pt, DWORD * pdwEffect) PURE; -#define IDropTarget_IMETHODS \ - IUnknown_IMETHODS \ - IDropTarget_METHODS ICOM_DEFINE(IDropTarget,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_dragdrophelper.h b/include/wine/obj_dragdrophelper.h index 5f74bcbf725..bcd7e14daf2 100644 --- a/include/wine/obj_dragdrophelper.h +++ b/include/wine/obj_dragdrophelper.h @@ -48,11 +48,9 @@ typedef struct { #define INTERFACE IDragSourceHelper #define IDragSourceHelper_METHODS \ + IUnknown_METHODS \ STDMETHOD(InitializeFromBitmap)(THIS_ LPSHDRAGIMAGE pshdi, IDataObject * pDataObject) PURE; \ STDMETHOD(InitializeFromWindow)(THIS_ HWND hwnd, POINT * ppt, IDataObject * pDataObject) PURE; -#define IDragSourceHelper_IMETHODS \ - IUnknown_IMETHODS \ - IDragSourceHelper_METHODS ICOM_DEFINE(IDragSourceHelper,IUnknown) #undef INTERFACE @@ -72,14 +70,12 @@ ICOM_DEFINE(IDragSourceHelper,IUnknown) */ #define INTERFACE IDropTargetHelper #define IDropTargetHelper_METHODS \ + IUnknown_METHODS \ STDMETHOD(DragEnter)(THIS_ HWND hwndTarget, IDataObject * pDataObject, POINT * ppt, DWORD dwEffect) PURE; \ STDMETHOD(DragLeave)(THIS) PURE; \ STDMETHOD(DragOver)(THIS_ POINT * ppt, DWORD dwEffect) PURE; \ STDMETHOD(Drop)(THIS_ IDataObject * pDataObject, POINT * ppt,DWORD dwEffect) PURE; \ STDMETHOD(Show)(THIS_ BOOL fShow) PURE; -#define IDropTargetHelper_IMETHODS \ - IUnknown_IMETHODS \ - IDropTargetHelper_METHODS ICOM_DEFINE(IDropTargetHelper,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_enumguid.h b/include/wine/obj_enumguid.h index 62e660519c1..779a668d382 100644 --- a/include/wine/obj_enumguid.h +++ b/include/wine/obj_enumguid.h @@ -38,13 +38,11 @@ typedef struct IEnumGUID IEnumGUID, *LPENUMGUID; */ #define INTERFACE IEnumGUID #define IEnumGUID_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG celt, GUID * rgelt, ULONG * pceltFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumGUID ** ppenum) PURE; -#define IEnumGUID_IMETHODS \ - IUnknown_IMETHODS \ - IEnumGUID_METHODS ICOM_DEFINE(IEnumGUID,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_enumidlist.h b/include/wine/obj_enumidlist.h index c362669258e..578e6509ea9 100644 --- a/include/wine/obj_enumidlist.h +++ b/include/wine/obj_enumidlist.h @@ -34,13 +34,11 @@ typedef struct IEnumIDList IEnumIDList, *LPENUMIDLIST; #define INTERFACE IEnumIDList #define IEnumIDList_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG celt, LPITEMIDLIST * rgelt, ULONG * pceltFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumIDList ** ppenum) PURE; -#define IEnumIDList_IMETHODS \ - IUnknown_IMETHODS \ - IEnumIDList_METHODS ICOM_DEFINE(IEnumIDList,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_extracticon.h b/include/wine/obj_extracticon.h index d28de9c119f..8b2f6bfc3fa 100644 --- a/include/wine/obj_extracticon.h +++ b/include/wine/obj_extracticon.h @@ -46,11 +46,9 @@ typedef struct IExtractIconW IExtractIconW,*LPEXTRACTICONW; #define INTERFACE IExtractIconA #define IExtractIconA_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetIconLocation)(THIS_ UINT uFlags, LPSTR szIconFile, UINT cchMax, INT * piIndex, UINT * pwFlags) PURE; \ STDMETHOD(Extract)(THIS_ LPCSTR pszFile, UINT nIconIndex, HICON * phiconLarge, HICON * phiconSmall, UINT nIconSize) PURE; -#define IExtractIconA_IMETHODS \ - IUnknown_IMETHODS \ - IExtractIconA_METHODS ICOM_DEFINE(IExtractIconA,IUnknown) #undef INTERFACE @@ -65,11 +63,9 @@ ICOM_DEFINE(IExtractIconA,IUnknown) #define INTERFACE IExtractIconW #define IExtractIconW_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetIconLocation)(THIS_ UINT uFlags, LPWSTR szIconFile, UINT cchMax, INT * piIndex, UINT * pwFlags) PURE; \ STDMETHOD(Extract)(THIS_ LPCWSTR pszFile, UINT nIconIndex, HICON * phiconLarge, HICON * phiconSmall, UINT nIconSize) PURE; -#define IExtractIconW_IMETHODS \ - IUnknown_IMETHODS \ - IExtractIconW_METHODS ICOM_DEFINE(IExtractIconW,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_inplace.h b/include/wine/obj_inplace.h index cd1420eabe6..9a9853d1167 100644 --- a/include/wine/obj_inplace.h +++ b/include/wine/obj_inplace.h @@ -165,11 +165,9 @@ typedef struct IOleLink IOleLink, *LPOLELINK; */ #define INTERFACE IOleWindow #define IOleWindow_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetWindow)(THIS_ HWND *phwnd) PURE; \ STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL fEnterMode) PURE; -#define IOleWindow_IMETHODS \ - IUnknown_IMETHODS \ - IOleWindow_METHODS ICOM_DEFINE(IOleWindow,IUnknown) #undef INTERFACE @@ -189,13 +187,11 @@ ICOM_DEFINE(IOleWindow,IUnknown) */ #define INTERFACE IOleInPlaceObject #define IOleInPlaceObject_METHODS \ + IOleWindow_METHODS \ STDMETHOD(InPlaceDeactivate)(THIS) PURE; \ STDMETHOD(UIDeactivate)(THIS) PURE; \ STDMETHOD(SetObjectRects)(THIS_ LPCRECT lprcPosRect, LPCRECT lprcClipRect) PURE; \ STDMETHOD(ReactivateAndUndo)(THIS) PURE; -#define IOleInPlaceObject_IMETHODS \ - IOleWindow_IMETHODS \ - IOleInPlaceObject_METHODS ICOM_DEFINE(IOleInPlaceObject,IOleWindow) #undef INTERFACE @@ -219,14 +215,12 @@ ICOM_DEFINE(IOleInPlaceObject,IOleWindow) */ #define INTERFACE IOleInPlaceActiveObject #define IOleInPlaceActiveObject_METHODS \ + IOleWindow_METHODS \ STDMETHOD(TranslateAccelerator)(THIS_ struct tagMSG *lpmsg) PURE; \ STDMETHOD(OnFrameWindowActivate)(THIS_ BOOL fActivate) PURE; \ STDMETHOD(OnDocWindowActivate)(THIS_ BOOL fActivate) PURE; \ STDMETHOD(ResizeBorder)(THIS_ LPCRECT prcBorder, IOleInPlaceUIWindow *pUIWindow, BOOL fWindowFrame) PURE; \ STDMETHOD(EnableModeless)(THIS_ BOOL fEnable) PURE; -#define IOleInPlaceActiveObject_IMETHODS \ - IOleWindow_IMETHODS \ - IOleInPlaceActiveObject_METHODS ICOM_DEFINE(IOleInPlaceActiveObject,IOleWindow) #undef INTERFACE @@ -251,13 +245,11 @@ ICOM_DEFINE(IOleInPlaceActiveObject,IOleWindow) */ #define INTERFACE IOleInPlaceUIWindow #define IOleInPlaceUIWindow_METHODS \ + IOleWindow_METHODS \ STDMETHOD(GetBorder)(THIS_ LPRECT lprectBorder) PURE; \ STDMETHOD(RequestBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \ STDMETHOD(SetBorderSpace)(THIS_ LPCBORDERWIDTHS pborderwidths) PURE; \ STDMETHOD(SetActiveObject)(THIS_ IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName) PURE; -#define IOleInPlaceUIWindow_IMETHODS \ - IOleWindow_IMETHODS \ - IOleInPlaceUIWindow_METHODS ICOM_DEFINE(IOleInPlaceUIWindow,IOleWindow) #undef INTERFACE @@ -282,15 +274,13 @@ ICOM_DEFINE(IOleInPlaceUIWindow,IOleWindow) */ #define INTERFACE IOleInPlaceFrame #define IOleInPlaceFrame_METHODS \ + IOleInPlaceUIWindow_METHODS \ STDMETHOD(InsertMenus)(THIS_ HMENU hemnuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \ STDMETHOD(SetMenu)(THIS_ HMENU hemnuShared, HOLEMENU holemenu, HWND hwndActiveObject) PURE; \ STDMETHOD(RemoveMenus)(THIS_ HMENU hemnuShared) PURE; \ STDMETHOD(SetStatusText)(THIS_ LPCOLESTR pszStatusText) PURE; \ STDMETHOD(EnableModeless)(THIS_ BOOL fEnable) PURE; \ STDMETHOD(TranslateAccelerator)(THIS_ struct tagMSG *lpmsg, WORD wID) PURE; -#define IOleInPlaceFrame_IMETHODS \ - IOleInPlaceUIWindow_IMETHODS \ - IOleInPlaceFrame_METHODS ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow) #undef INTERFACE @@ -322,6 +312,7 @@ ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow) */ #define INTERFACE IOleInPlaceSite #define IOleInPlaceSite_METHODS \ + IOleWindow_METHODS \ STDMETHOD(CanInPlaceActivate)(THIS) PURE; \ STDMETHOD(OnInPlaceActivate)(THIS) PURE; \ STDMETHOD(OnUIActivate)(THIS) PURE; \ @@ -332,9 +323,6 @@ ICOM_DEFINE(IOleInPlaceFrame,IOleInPlaceUIWindow) STDMETHOD(DiscardUndoState)(THIS) PURE; \ STDMETHOD(DeactivateAndUndo)(THIS) PURE; \ STDMETHOD(OnPosRectChange)(THIS_ LPCRECT lprcPosRect) PURE; -#define IOleInPlaceSite_IMETHODS \ - IOleWindow_IMETHODS \ - IOleInPlaceSite_METHODS ICOM_DEFINE(IOleInPlaceSite,IOleWindow) #undef INTERFACE @@ -365,15 +353,13 @@ ICOM_DEFINE(IOleInPlaceSite,IOleWindow) */ #define INTERFACE IOleClientSite #define IOleClientSite_METHODS \ + IUnknown_METHODS \ STDMETHOD(SaveObject)(THIS) PURE; \ STDMETHOD(GetMoniker)(THIS_ DWORD dwAssign, DWORD dwWhichMoniker, IMoniker **ppmk) PURE; \ STDMETHOD(GetContainer)(THIS_ IOleContainer **ppContainer) PURE; \ STDMETHOD(ShowObject)(THIS) PURE; \ STDMETHOD(OnShowWindow)(THIS_ BOOL fShow) PURE; \ STDMETHOD(RequestNewObjectLayout)(THIS) PURE; -#define IOleClientSite_IMETHODS \ - IUnknown_IMETHODS \ - IOleClientSite_METHODS ICOM_DEFINE(IOleClientSite,IUnknown) #undef INTERFACE @@ -397,10 +383,8 @@ ICOM_DEFINE(IOleClientSite,IUnknown) */ #define INTERFACE IParseDisplayName #define IParseDisplayName_METHODS \ + IUnknown_METHODS \ STDMETHOD(ParseDisplayName)(THIS_ IBindCtx *pbc, LPOLESTR pszDisplayName, ULONG *pchEaten, IMoniker **ppmkOut) PURE; -#define IParseDisplayName_IMETHODS \ - IUnknown_IMETHODS \ - IParseDisplayName_METHODS ICOM_DEFINE(IParseDisplayName,IUnknown) #undef INTERFACE @@ -419,11 +403,9 @@ ICOM_DEFINE(IParseDisplayName,IUnknown) */ #define INTERFACE IOleContainer #define IOleContainer_METHODS \ + IParseDisplayName_METHODS \ STDMETHOD(EnumObjects)(THIS_ DWORD grfFlags, IEnumUnknown **ppenum) PURE; \ STDMETHOD(LockContainer)(THIS_ BOOL fLock) PURE; -#define IOleContainer_IMETHODS \ - IParseDisplayName_IMETHODS \ - IOleContainer_METHODS ICOM_DEFINE(IOleContainer,IParseDisplayName) #undef INTERFACE @@ -449,12 +431,10 @@ ICOM_DEFINE(IOleContainer,IParseDisplayName) #define INTERFACE IOleItemContainer #define IOleItemContainer_METHODS \ + IOleContainer_METHODS \ STDMETHOD(GetObject)(THIS_ LPOLESTR pszItem, DWORD dwSpeedNeeded, IBindCtx *pbc, REFIID riid, void **ppvObject) PURE; \ STDMETHOD(GetObjectStorage)(THIS_ LPOLESTR pszItem, IBindCtx *pbc, REFIID riid, void **ppvStorage) PURE; \ STDMETHOD(IsRunning)(THIS_ LPOLESTR pszItem) PURE; -#define IOleItemContainer_IMETHODS \ - IOleContainer_IMETHODS \ - IOleItemContainer_METHODS ICOM_DEFINE(IOleItemContainer,IOleContainer) #undef INTERFACE @@ -475,6 +455,7 @@ ICOM_DEFINE(IOleItemContainer,IOleContainer) */ #define INTERFACE IOleLink #define IOleLink_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetUpdateOptions)(THIS_ DWORD dwUpdateOpt) PURE; \ STDMETHOD(GetUpdateOptions)(THIS_ DWORD *pdwUpdateOpt) PURE; \ STDMETHOD(SetSourceMoniker)(THIS_ IMoniker *pmk, REFCLSID rclsid) PURE; \ @@ -486,9 +467,6 @@ ICOM_DEFINE(IOleItemContainer,IOleContainer) STDMETHOD(GetBoundSource)(THIS_ IUnknown **ppunk) PURE; \ STDMETHOD(UnBindSource)(THIS) PURE; \ STDMETHOD(Update)(THIS_ IBindCtx *pbc) PURE; -#define IOleLink_IMETHODS \ - IUnknown_IMETHODS \ - IOleLink_METHODS ICOM_DEFINE(IOleLink,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_olefont.h b/include/wine/obj_olefont.h index 836fe23a9a1..e4d55c5c596 100644 --- a/include/wine/obj_olefont.h +++ b/include/wine/obj_olefont.h @@ -43,6 +43,7 @@ typedef TEXTMETRICW TEXTMETRICOLE; */ #define INTERFACE IFont #define IFont_METHODS \ + IUnknown_METHODS \ STDMETHOD(get_Name)(THIS_ BSTR * pname) PURE; \ STDMETHOD(put_Name)(THIS_ BSTR name) PURE; \ STDMETHOD(get_Size)(THIS_ CY * psize) PURE; \ @@ -67,9 +68,6 @@ typedef TEXTMETRICW TEXTMETRICOLE; STDMETHOD(AddRefHfont)(THIS_ HFONT hfont) PURE; \ STDMETHOD(ReleaseHfont)(THIS_ HFONT hfont) PURE; \ STDMETHOD(SetHdc)(THIS_ HDC hdc) PURE; -#define IFont_IMETHODS \ - IUnknown_IMETHODS \ - IFont_METHODS ICOM_DEFINE(IFont,IUnknown) #undef INTERFACE @@ -110,10 +108,8 @@ ICOM_DEFINE(IFont,IUnknown) * IFont interface */ #define INTERFACE IFontDisp -#define IFontDisp_METHODS -#define IFontDisp_IMETHODS \ - IUnknown_IMETHODS \ - IFontDisp_METHODS +#define IFontDisp_METHODS \ + IDispatch_METHODS ICOM_DEFINE(IFontDisp,IDispatch) #undef INTERFACE diff --git a/include/wine/obj_oleobj.h b/include/wine/obj_oleobj.h index 14b0648cb6e..2a8f50bd885 100644 --- a/include/wine/obj_oleobj.h +++ b/include/wine/obj_oleobj.h @@ -94,6 +94,7 @@ typedef struct IEnumOLEVERB IEnumOLEVERB, *LPENUMOLEVERB; */ #define INTERFACE IOleObject #define IOleObject_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetClientSite)(THIS_ IOleClientSite *pClientSite) PURE; \ STDMETHOD(GetClientSite)(THIS_ IOleClientSite **ppClientSite) PURE; \ STDMETHOD(SetHostNames)(THIS_ LPCOLESTR szContainerApp, LPCOLESTR szContainerObj) PURE; \ @@ -115,9 +116,6 @@ typedef struct IEnumOLEVERB IEnumOLEVERB, *LPENUMOLEVERB; STDMETHOD(EnumAdvise)(THIS_ IEnumSTATDATA **ppenumAdvise) PURE; \ STDMETHOD(GetMiscStatus)(THIS_ DWORD dwAspect, DWORD *pdwStatus) PURE; \ STDMETHOD(SetColorScheme)(THIS_ struct tagLOGPALETTE *pLogpal) PURE; -#define IOleObject_IMETHODS \ - IUnknown_IMETHODS \ - IOleObject_METHODS ICOM_DEFINE(IOleObject,IUnknown) #undef INTERFACE @@ -156,15 +154,13 @@ ICOM_DEFINE(IOleObject,IUnknown) */ #define INTERFACE IOleAdviseHolder #define IOleAdviseHolder_METHODS \ + IUnknown_METHODS \ STDMETHOD(Advise)(THIS_ IAdviseSink *pAdvise, DWORD *pdwConnection) PURE; \ STDMETHOD(Unadvise)(THIS_ DWORD dwConnection) PURE; \ STDMETHOD(EnumAdvise)(THIS_ IEnumSTATDATA **ppenumAdvise) PURE; \ STDMETHOD(SendOnRename)(THIS_ IMoniker *pmk) PURE; \ STDMETHOD(SendOnSave)(THIS) PURE; \ STDMETHOD(SendOnClose)(THIS) PURE; -#define IOleAdviseHolder_IMETHODS \ - IUnknown_IMETHODS \ - IOleAdviseHolder_METHODS ICOM_DEFINE(IOleAdviseHolder,IUnknown) #undef INTERFACE @@ -188,13 +184,11 @@ ICOM_DEFINE(IOleAdviseHolder,IUnknown) */ #define INTERFACE IEnumOLEVERB #define IEnumOLEVERB_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG celt, LPOLEVERB rgelt, ULONG *pceltFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumOLEVERB **ppenum) PURE; -#define IEnumOLEVERB_IMETHODS \ - IUnknown_IMETHODS \ - IEnumOLEVERB_METHODS ICOM_DEFINE(IEnumOLEVERB,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_oleundo.h b/include/wine/obj_oleundo.h index 4612e5cd87d..de47426038b 100644 --- a/include/wine/obj_oleundo.h +++ b/include/wine/obj_oleundo.h @@ -101,12 +101,10 @@ typedef struct tagQACONTAINER */ #define INTERFACE IQuickActivate #define IQuickActivate_METHODS \ + IUnknown_METHODS \ STDMETHOD(QuickActivate)(THIS_ QACONTAINER *pQaContainer, QACONTROL *pQaControl) PURE; \ STDMETHOD(SetContentExtent)(THIS_ LPSIZEL pSizel) PURE; \ STDMETHOD(GetContentExtent)(THIS_ LPSIZEL pSizel) PURE; -#define IQuickActivate_IMETHODS \ - IUnknown_IMETHODS \ - IQuickActivate_METHODS ICOM_DEFINE(IQuickActivate,IUnknown) #undef INTERFACE @@ -127,12 +125,10 @@ ICOM_DEFINE(IQuickActivate,IUnknown) */ #define INTERFACE IPointerInactive #define IPointerInactive_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetActivationPolicy)(THIS_ DWORD *pdwPolicy) PURE; \ STDMETHOD(OnInactiveMouseMove)(THIS_ LPCRECT pRectBounds, LONG x, LONG y, DWORD grfKeyState) PURE; \ STDMETHOD(OnInactiveSetCursor)(THIS_ LPCRECT pRectBounds, LONG x, LONG y, DWORD dwMouseMsg, BOOL fSetAlways) PURE; -#define IPointerInactive_IMETHODS \ - IUnknown_IMETHODS \ - IPointerInactive_METHODS ICOM_DEFINE(IPointerInactive,IUnknown) #undef INTERFACE @@ -153,10 +149,8 @@ ICOM_DEFINE(IPointerInactive,IUnknown) */ #define INTERFACE IAdviseSinkEx #define IAdviseSinkEx_METHODS \ + IAdviseSink_METHODS \ STDMETHOD(OnViewStatusChange)(THIS_ DWORD dwViewStatus) PURE; -#define IAdviseSinkEx_IMETHODS \ - IAdviseSink_IMETHODS \ - IAdviseSinkEx_METHODS ICOM_DEFINE(IAdviseSinkEx,IAdviseSink) #undef INTERFACE @@ -181,6 +175,7 @@ ICOM_DEFINE(IAdviseSinkEx,IAdviseSink) */ #define INTERFACE IOleUndoManager #define IOleUndoManager_METHODS \ + IUnknown_METHODS \ STDMETHOD(Open)(THIS_ IOleParentUndoUnit *pPUU) PURE; \ STDMETHOD(Close)(THIS_ IOleParentUndoUnit *pPUU, BOOL fCommit) PURE; \ STDMETHOD(Add)(THIS_ IOleUndoUnit *pUU) PURE; \ @@ -193,9 +188,6 @@ ICOM_DEFINE(IAdviseSinkEx,IAdviseSink) STDMETHOD(GetLastUndoDescription)(THIS_ BSTR *pBstr) PURE; \ STDMETHOD(GetLastRedoDescription)(THIS_ BSTR *pBstr) PURE; \ STDMETHOD(Enable)(THIS_ BOOL fEnable) PURE; -#define IOleUndoManager_IMETHODS \ - IUnknown_IMETHODS \ - IOleUndoManager_METHODS ICOM_DEFINE(IOleUndoManager,IUnknown) #undef INTERFACE @@ -225,13 +217,11 @@ ICOM_DEFINE(IOleUndoManager,IUnknown) */ #define INTERFACE IOleUndoUnit #define IOleUndoUnit_METHODS \ + IUnknown_METHODS \ STDMETHOD(Do)(THIS_ IOleUndoManager *pUndoManager) PURE; \ STDMETHOD(GetDescription)(THIS_ BSTR *pBstr) PURE; \ STDMETHOD(GetUnitType)(THIS_ CLSID *pClsid, LONG *plID) PURE; \ STDMETHOD(OnNextAdd)(THIS) PURE; -#define IOleUndoUnit_IMETHODS \ - IUnknown_IMETHODS \ - IOleUndoUnit_METHODS ICOM_DEFINE(IOleUndoUnit,IUnknown) #undef INTERFACE @@ -254,14 +244,12 @@ ICOM_DEFINE(IOleUndoUnit,IUnknown) */ #define INTERFACE IOleParentUndoUnit #define IOleParentUndoUnit_METHODS \ + IOleUndoUnit_METHODS \ STDMETHOD(Open)(THIS_ IOleParentUndoUnit *pPUU) PURE; \ STDMETHOD(Close)(THIS_ IOleParentUndoUnit *pPUU, BOOL fCommit) PURE; \ STDMETHOD(Add)(THIS_ IOleUndoUnit *pUU) PURE; \ STDMETHOD(FindUnit)(THIS_ IOleUndoUnit *pUU) PURE; \ STDMETHOD(GetParentState)(THIS_ DWORD *pdwState) PURE; -#define IOleParentUndoUnit_IMETHODS \ - IOleUndoUnit_IMETHODS \ - IOleParentUndoUnit_METHODS ICOM_DEFINE(IOleParentUndoUnit,IOleUndoUnit) #undef INTERFACE @@ -289,13 +277,11 @@ ICOM_DEFINE(IOleParentUndoUnit,IOleUndoUnit) */ #define INTERFACE IEnumOleUndoUnits #define IEnumOleUndoUnits_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG cElt, IOleUndoUnit **rgElt, ULONG *pcEltFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG cElt) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumOleUndoUnits **ppEnum) PURE; -#define IEnumOleUndoUnits_IMETHODS \ - IUnknown_IMETHODS \ - IEnumOleUndoUnits_METHODS ICOM_DEFINE(IEnumOleUndoUnits,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_oleview.h b/include/wine/obj_oleview.h index affe82dcaa2..2b3474e5172 100644 --- a/include/wine/obj_oleview.h +++ b/include/wine/obj_oleview.h @@ -49,15 +49,13 @@ typedef BOOL (CALLBACK *IVO_ContCallback)(DWORD); #define INTERFACE IViewObject #define IViewObject_METHODS \ + IUnknown_METHODS \ STDMETHOD(Draw)(THIS_ DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, IVO_ContCallback pfnContinue, DWORD dwContinue) PURE; \ STDMETHOD(GetColorSet)(THIS_ DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDevice, struct tagLOGPALETTE **ppColorSet) PURE; \ STDMETHOD(Freeze)(THIS_ DWORD dwDrawAspect, LONG lindex, void *pvAspect, DWORD *pdwFreeze) PURE; \ STDMETHOD(Unfreeze)(THIS_ DWORD dwFreeze) PURE; \ STDMETHOD(SetAdvise)(THIS_ DWORD aspects, DWORD advf, IAdviseSink *pAdvSink) PURE; \ STDMETHOD(GetAdvise)(THIS_ DWORD *pAspects, DWORD *pAdvf, IAdviseSink **ppAdvSink) PURE; -#define IViewObject_IMETHODS \ - IUnknown_IMETHODS \ - IViewObject_METHODS ICOM_DEFINE(IViewObject,IUnknown) #undef INTERFACE @@ -82,10 +80,8 @@ ICOM_DEFINE(IViewObject,IUnknown) */ #define INTERFACE IViewObject2 #define IViewObject2_METHODS \ + IViewObject_METHODS \ STDMETHOD(GetExtent)(THIS_ DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE *ptd, LPSIZEL lpsizel) PURE; -#define IViewObject2_IMETHODS \ - IViewObject_IMETHODS \ - IViewObject2_METHODS ICOM_DEFINE(IViewObject2,IViewObject) #undef INTERFACE diff --git a/include/wine/obj_picture.h b/include/wine/obj_picture.h index d37da7a6e73..8f8e505018e 100644 --- a/include/wine/obj_picture.h +++ b/include/wine/obj_picture.h @@ -55,6 +55,7 @@ typedef struct IPictureDisp IPictureDisp, *LPPICTUREDISP; */ #define INTERFACE IPicture #define IPicture_METHODS \ + IUnknown_METHODS \ STDMETHOD(get_Handle)(THIS_ OLE_HANDLE *pHandle) PURE; \ STDMETHOD(get_hPal)(THIS_ OLE_HANDLE *phPal) PURE; \ STDMETHOD(get_Type)(THIS_ SHORT *pType) PURE; \ @@ -69,9 +70,6 @@ typedef struct IPictureDisp IPictureDisp, *LPPICTUREDISP; STDMETHOD(PictureChanged)(THIS) PURE; \ STDMETHOD(SaveAsFile)(THIS_ LPSTREAM pStream, BOOL fSaveMemCopy, LONG *pCbSize) PURE; \ STDMETHOD(get_Attributes)(THIS_ DWORD *pDwAttr) PURE; -#define IPicture_IMETHODS \ - IUnknown_IMETHODS \ - IPicture_METHODS ICOM_DEFINE(IPicture,IUnknown) #undef INTERFACE @@ -102,10 +100,8 @@ ICOM_DEFINE(IPicture,IUnknown) * IPictureDisp interface */ #define INTERFACE IPictureDisp -#define IPictureDisp_METHODS -#define IPictureDisp_IMETHODS \ - IDispatch_IMETHODS \ - IPictureDisp_METHODS +#define IPictureDisp_METHODS \ + IDispatch_METHODS ICOM_DEFINE(IPictureDisp,IDispatch) #undef INTERFACE diff --git a/include/wine/obj_property.h b/include/wine/obj_property.h index 28c4cb2f59d..8d2de3a62ed 100644 --- a/include/wine/obj_property.h +++ b/include/wine/obj_property.h @@ -138,6 +138,7 @@ typedef struct IPerPropertyBrowsing IPerPropertyBrowsing,*LPPERPROPERTYBROWSING; */ #define INTERFACE IPropertyPage #define IPropertyPage_METHODS \ + IUnknown_METHODS \ STDMETHOD(SetPageSite)(THIS_ IPropertyPageSite *pPageSite) PURE; \ STDMETHOD(Activate)(THIS_ HWND hWndParent, LPCRECT pRect, BOOL bModal) PURE; \ STDMETHOD(Deactivate)(THIS) PURE; \ @@ -149,9 +150,6 @@ typedef struct IPerPropertyBrowsing IPerPropertyBrowsing,*LPPERPROPERTYBROWSING; STDMETHOD(Apply)(THIS) PURE; \ STDMETHOD(Help)(THIS_ LPCOLESTR pszHelpDir) PURE; \ STDMETHOD(TranslateAccelerator)(THIS_ MSG *pMsg) PURE; -#define IPropertyPage_IMETHODS \ - IUnknown_IMETHODS \ - IPropertyPage_METHODS ICOM_DEFINE(IPropertyPage,IUnknown) #undef INTERFACE @@ -180,10 +178,8 @@ ICOM_DEFINE(IPropertyPage,IUnknown) */ #define INTERFACE IPropertyPage2 #define IPropertyPage2_METHODS \ + IPropertyPage_METHODS \ STDMETHOD(EditProperty)(THIS_ DISPID dispID) PURE; -#define IPropertyPage2_IMETHODS \ - IPropertyPage_IMETHODS \ - IPropertyPage2_METHODS ICOM_DEFINE(IPropertyPage2,IPropertyPage) #undef INTERFACE @@ -214,13 +210,11 @@ ICOM_DEFINE(IPropertyPage2,IPropertyPage) */ #define INTERFACE IPropertyPageSite #define IPropertyPageSite_METHODS \ + IUnknown_METHODS \ STDMETHOD(OnStatusChange)(THIS_ DWORD dwFlags) PURE; \ STDMETHOD(GetLocaleID)(THIS_ LCID *pLocaleID) PURE; \ STDMETHOD(GetPageContainer)(THIS_ IUnknown **ppUnk) PURE; \ STDMETHOD(TranslateAccelerator)(THIS_ MSG *pMsg) PURE; -#define IPropertyPageSite_IMETHODS \ - IUnknown_IMETHODS \ - IPropertyPageSite_METHODS ICOM_DEFINE(IPropertyPageSite,IUnknown) #undef INTERFACE @@ -242,11 +236,9 @@ ICOM_DEFINE(IPropertyPageSite,IUnknown) */ #define INTERFACE IPropertyNotifySink #define IPropertyNotifySink_METHODS \ + IUnknown_METHODS \ STDMETHOD(OnChanged)(THIS_ DISPID dispID) PURE; \ STDMETHOD(OnRequestEdit)(THIS_ DISPID dispID) PURE; -#define IPropertyNotifySink_IMETHODS \ - IUnknown_IMETHODS \ - IPropertyNotifySink_METHODS ICOM_DEFINE(IPropertyNotifySink,IUnknown) #undef INTERFACE @@ -266,11 +258,9 @@ ICOM_DEFINE(IPropertyNotifySink,IUnknown) */ #define INTERFACE ISimpleFrameSite #define ISimpleFrameSite_METHODS \ + IUnknown_METHODS \ STDMETHOD(PreMessageFilter)(THIS_ HWND hWnd, UINT msg, WPARAM wp, LPARAM lp, LRESULT *plResult, DWORD *pwdCookie) PURE; \ STDMETHOD(PostMessageFilter)(THIS_ HWND hWnd, UINT msg, WPARAM wp, LPARAM lp, LRESULT *plResult, DWORD pwdCookie) PURE; -#define ISimpleFrameSite_IMETHODS \ - IUnknown_IMETHODS \ - ISimpleFrameSite_METHODS ICOM_DEFINE(ISimpleFrameSite,IUnknown) #undef INTERFACE @@ -290,14 +280,12 @@ ICOM_DEFINE(ISimpleFrameSite,IUnknown) */ #define INTERFACE IPersistStreamInit #define IPersistStreamInit_METHODS \ + IPersist_METHODS \ STDMETHOD(IsDirty)(THIS) PURE; \ STDMETHOD(Load)(THIS_ LPSTREAM pStm) PURE; \ STDMETHOD(Save)(THIS_ LPSTREAM pStm, BOOL fClearDirty) PURE; \ STDMETHOD(GetSizeMax)(THIS_ ULARGE_INTEGER *pcbSize) PURE; \ STDMETHOD(InitNew)(THIS) PURE; -#define IPersistStreamInit_IMETHODS \ - IPersist_IMETHODS \ - IPersistStreamInit_METHODS ICOM_DEFINE(IPersistStreamInit,IPersist) #undef INTERFACE @@ -322,14 +310,12 @@ ICOM_DEFINE(IPersistStreamInit,IPersist) */ #define INTERFACE IPersistMemory #define IPersistMemory_METHODS \ + IPersist_METHODS \ STDMETHOD(IsDirty)(THIS) PURE; \ STDMETHOD(Load)(THIS_ LPVOID pMem, ULONG cbSize) PURE; \ STDMETHOD(Save)(THIS_ LPVOID pMem, BOOL fClearDirty, ULONG cbSize) PURE; \ STDMETHOD(GetSizeMax)(THIS_ ULONG *pCbSize) PURE; \ STDMETHOD(InitNew)(THIS) PURE; -#define IPersistMemory_IMETHODS \ - IPersist_IMETHODS \ - IPersistMemory_METHODS ICOM_DEFINE(IPersistMemory,IPersist) #undef INTERFACE @@ -354,12 +340,10 @@ ICOM_DEFINE(IPersistMemory,IPersist) */ #define INTERFACE IPersistPropertyBag #define IPersistPropertyBag_METHODS \ + IPersist_METHODS \ STDMETHOD(InitNew)(THIS) PURE; \ STDMETHOD(Load)(THIS_ IPropertyBag *pPropBag, IErrorLog *pErrorLog) PURE; \ STDMETHOD(Save)(THIS_ IPropertyBag *pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) PURE; -#define IPersistPropertyBag_IMETHODS \ - IPersist_IMETHODS \ - IPersistPropertyBag_METHODS ICOM_DEFINE(IPersistPropertyBag,IPersist) #undef INTERFACE @@ -382,13 +366,11 @@ ICOM_DEFINE(IPersistPropertyBag,IPersist) */ #define INTERFACE IPersistPropertyBag2 #define IPersistPropertyBag2_METHODS \ + IPersist_METHODS \ STDMETHOD(InitNew)(THIS) PURE; \ STDMETHOD(Load)(THIS_ IPropertyBag2 *pPropBag, IErrorLog *pErrorLog) PURE; \ STDMETHOD(Save)(THIS_ IPropertyBag2 *pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) PURE; \ - STDMETHOD(IsDirty)(THIS) PURE; -#define IPersistPropertyBag2_IMETHODS \ - IPersist_IMETHODS \ - IPersistPropertyBag2_METHODS + STDMETHOD(IsDirty)(THIS) PURE; ICOM_DEFINE(IPersistPropertyBag2,IPersist) #undef INTERFACE @@ -412,10 +394,8 @@ ICOM_DEFINE(IPersistPropertyBag2,IPersist) */ #define INTERFACE IErrorLog #define IErrorLog_METHODS \ + IUnknown_METHODS \ STDMETHOD(AddError)(THIS_ LPCOLESTR pszPropName, EXCEPINFO *pExcepInfo) PURE; -#define IErrorLog_IMETHODS \ - IUnknown_IMETHODS \ - IErrorLog_METHODS ICOM_DEFINE(IErrorLog,IUnknown) #undef INTERFACE @@ -434,11 +414,9 @@ ICOM_DEFINE(IErrorLog,IUnknown) */ #define INTERFACE IPropertyBag #define IPropertyBag_METHODS \ + IUnknown_METHODS \ STDMETHOD(Read)(THIS_ LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog) PURE; \ STDMETHOD(Write)(THIS_ LPCOLESTR pszPropName, VARIANT *pVar) PURE; -#define IPropertyBag_IMETHODS \ - IUnknown_IMETHODS \ - IPropertyBag_METHODS ICOM_DEFINE(IPropertyBag,IUnknown) #undef INTERFACE @@ -458,14 +436,12 @@ ICOM_DEFINE(IPropertyBag,IUnknown) */ #define INTERFACE IPropertyBag2 #define IPropertyBag2_METHODS \ + IUnknown_METHODS \ STDMETHOD(Read)(THIS_ ULONG cProperties, PROPBAG2 *pPropBag, IErrorLog *pErrLog, VARIANT *pvarValue, HRESULT *phrError) PURE; \ STDMETHOD(Write)(THIS_ ULONG cProperties, PROPBAG2 *pPropBag, VARIANT *pvarValue) PURE; \ STDMETHOD(CountProperties)(THIS_ ULONG *pcProperties) PURE; \ STDMETHOD(GetPropertyInfo)(THIS_ ULONG iProperty, ULONG cProperties, PROPBAG2 *pPropBag, ULONG *pcProperties) PURE; \ STDMETHOD(LoadObject)(THIS_ LPCOLESTR pstrName, DWORD dwHint, IUnknown *pUnkObject, IErrorLog *pErrLog) PURE; -#define IPropertyBag2_IMETHODS \ - IUnknown_IMETHODS \ - IPropertyBag2_METHODS ICOM_DEFINE(IPropertyBag2,IUnknown) #undef INTERFACE @@ -488,10 +464,8 @@ ICOM_DEFINE(IPropertyBag2,IUnknown) */ #define INTERFACE ISpecifyPropertyPages #define ISpecifyPropertyPages_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetPages)(THIS_ CAUUID *pPages) PURE; -#define ISpecifyPropertyPages_IMETHODS \ - IUnknown_IMETHODS \ - ISpecifyPropertyPages_METHODS ICOM_DEFINE(ISpecifyPropertyPages,IUnknown) #undef INTERFACE @@ -510,13 +484,11 @@ ICOM_DEFINE(ISpecifyPropertyPages,IUnknown) */ #define INTERFACE IPerPropertyBrowsing #define IPerPropertyBrowsing_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetDisplayString)(THIS_ DISPID dispID, BSTR *pBstr) PURE; \ STDMETHOD(MapPropertyToPage)(THIS_ DISPID dispID, CLSID *pClsid) PURE; \ STDMETHOD(GetPredefinedStrings)(THIS_ DISPID dispID, CALPOLESTR *pCaStringsOut, CADWORD *pCaCookiesOut) PURE; \ STDMETHOD(GetPredefinedValue)(THIS_ DISPID dispID, DWORD dwCookie, VARIANT *pVarOut) PURE; -#define IPerPropertyBrowsing_IMETHODS \ - IUnknown_IMETHODS \ - IPerPropertyBrowsing_METHODS ICOM_DEFINE(IPerPropertyBrowsing,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_serviceprovider.h b/include/wine/obj_serviceprovider.h index 4795e11f4ee..d518aed47bc 100644 --- a/include/wine/obj_serviceprovider.h +++ b/include/wine/obj_serviceprovider.h @@ -42,10 +42,8 @@ typedef struct IServiceProvider IServiceProvider, *LPSERVICEPROVIDER; */ #define INTERFACE IServiceProvider #define IServiceProvider_METHODS \ + IUnknown_METHODS \ STDMETHOD(QueryService)(THIS_ REFGUID guidService, REFIID riid, void ** ppv) PURE; -#define IServiceProvider_IMETHODS \ - IUnknown_IMETHODS \ - IServiceProvider_METHODS ICOM_DEFINE(IServiceProvider,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_shellbrowser.h b/include/wine/obj_shellbrowser.h index 36e4dcb0e76..1f2d70c35c2 100644 --- a/include/wine/obj_shellbrowser.h +++ b/include/wine/obj_shellbrowser.h @@ -68,6 +68,7 @@ DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00, #define INTERFACE IShellBrowser #define IShellBrowser_METHODS \ + IOleWindow_METHODS \ STDMETHOD(InsertMenusSB)(THIS_ HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths) PURE; \ STDMETHOD(SetMenuSB)(THIS_ HMENU hmenuShared, HOLEMENU holemenuReserved, HWND hwndActiveObject) PURE; \ STDMETHOD(RemoveMenusSB)(THIS_ HMENU hmenuShared) PURE; \ @@ -81,9 +82,6 @@ DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00, STDMETHOD(QueryActiveShellView)(THIS_ IShellView ** IShellView) PURE; \ STDMETHOD(OnViewWindowActive)(THIS_ IShellView * IShellView) PURE; \ STDMETHOD(SetToolbarItems)(THIS_ LPTBBUTTON lpButtons, UINT nButtons, UINT uFlags) PURE; -#define IShellBrowser_IMETHODS \ - IOleWindow_IMETHODS \ - IShellBrowser_METHODS ICOM_DEFINE(IShellBrowser,IOleWindow) #undef INTERFACE diff --git a/include/wine/obj_shellextinit.h b/include/wine/obj_shellextinit.h index 99378c37856..1c2b0b0e2cf 100644 --- a/include/wine/obj_shellextinit.h +++ b/include/wine/obj_shellextinit.h @@ -29,10 +29,8 @@ typedef struct IShellExtInit IShellExtInit, *LPSHELLEXTINIT; #define INTERFACE IShellExtInit #define IShellExtInit_METHODS \ + IUnknown_METHODS \ STDMETHOD(Initialize)(THIS_ LPCITEMIDLIST pidlFolder, LPDATAOBJECT lpdobj, HKEY hkeyProgID) PURE; -#define IShellExtInit_IMETHODS \ - IUnknown_IMETHODS \ - IShellExtInit_METHODS ICOM_DEFINE(IShellExtInit,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_shellfolder.h b/include/wine/obj_shellfolder.h index 31dcac5aae0..3a72483fb94 100644 --- a/include/wine/obj_shellfolder.h +++ b/include/wine/obj_shellfolder.h @@ -80,13 +80,11 @@ typedef struct #define INTERFACE IEnumExtraSearch #define IEnumExtraSearch_METHODS \ + IUnknown_METHODS \ STDMETHOD(Next)(THIS_ ULONG celt, LPEXTRASEARCH * rgelt, ULONG * pceltFetched) PURE; \ STDMETHOD(Skip)(THIS_ ULONG celt) PURE; \ STDMETHOD(Reset)(THIS) PURE; \ STDMETHOD(Clone)(THIS_ IEnumExtraSearch ** ppenum) PURE; -#define IEnumExtraSearch_IMETHODS \ - IUnknown_IMETHODS \ - IEnumExtraSearch_METHODS ICOM_DEFINE(IEnumExtraSearch,IUnknown) #undef INTERFACE @@ -200,6 +198,7 @@ DWORD WINAPI SHGetDesktopFolder(IShellFolder * *); */ #define INTERFACE IShellFolder #define IShellFolder_METHODS \ + IUnknown_METHODS \ STDMETHOD(ParseDisplayName)(THIS_ HWND hwndOwner,LPBC pbcReserved, LPOLESTR lpszDisplayName, ULONG * pchEaten, LPITEMIDLIST * ppidl, ULONG * pdwAttributes) PURE; \ STDMETHOD(EnumObjects)(THIS_ HWND hwndOwner, DWORD grfFlags, LPENUMIDLIST * ppenumIDList) PURE;\ STDMETHOD(BindToObject)(THIS_ LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, LPVOID * ppvOut) PURE;\ @@ -210,9 +209,6 @@ DWORD WINAPI SHGetDesktopFolder(IShellFolder * *); STDMETHOD(GetUIObjectOf)(THIS_ HWND hwndOwner, UINT cidl, LPCITEMIDLIST * apidl, REFIID riid, UINT * prgfInOut, LPVOID * ppvOut) PURE;\ STDMETHOD(GetDisplayNameOf)(THIS_ LPCITEMIDLIST pidl, DWORD uFlags, LPSTRRET lpName) PURE;\ STDMETHOD(SetNameOf)(THIS_ HWND hwndOwner, LPCITEMIDLIST pidl,LPCOLESTR lpszName, DWORD uFlags,LPITEMIDLIST * ppidlOut) PURE; -#define IShellFolder_IMETHODS \ - IUnknown_IMETHODS \ - IShellFolder_METHODS ICOM_DEFINE(IShellFolder,IUnknown) #undef INTERFACE @@ -274,6 +270,7 @@ typedef struct #define INTERFACE IShellFolder2 #define IShellFolder2_METHODS \ + IShellFolder_METHODS \ STDMETHOD(GetDefaultSearchGUID)(THIS_ LPGUID lpguid) PURE;\ STDMETHOD(EnumSearches)(THIS_ LPENUMEXTRASEARCH * ppEnum) PURE; \ STDMETHOD(GetDefaultColumn)(THIS_ DWORD dwReserved, ULONG * pSort, ULONG * pDisplay) PURE;\ @@ -281,9 +278,6 @@ typedef struct STDMETHOD(GetDetailsEx)(THIS_ LPCITEMIDLIST pidl, const SHCOLUMNID * pscid, VARIANT * pv) PURE;\ STDMETHOD(GetDetailsOf)(THIS_ LPCITEMIDLIST pidl, UINT iColumn, LPSHELLDETAILS pDetails) PURE;\ STDMETHOD(MapNameToSCID)(THIS_ LPCWSTR pwszName, SHCOLUMNID * pscid) PURE; -#define IShellFolder2_IMETHODS \ - IShellFolder_METHODS \ - IShellFolder2_METHODS ICOM_DEFINE(IShellFolder2, IShellFolder) #undef INTERFACE @@ -319,10 +313,8 @@ ICOM_DEFINE(IShellFolder2, IShellFolder) #define INTERFACE IPersistFolder #define IPersistFolder_METHODS \ + IPersist_METHODS \ STDMETHOD(Initialize)(THIS_ LPCITEMIDLIST pidl) PURE; -#define IPersistFolder_IMETHODS \ - IPersist_IMETHODS \ - IPersistFolder_METHODS ICOM_DEFINE(IPersistFolder, IPersist) #undef INTERFACE @@ -343,11 +335,8 @@ ICOM_DEFINE(IPersistFolder, IPersist) #define INTERFACE IPersistFolder2 #define IPersistFolder2_METHODS \ - STDMETHOD(GetCurFolder)(THIS_ LPITEMIDLIST * pidl) PURE; -#define IPersistFolder2_IMETHODS \ - IPersist_IMETHODS \ IPersistFolder_METHODS \ - IPersistFolder2_METHODS + STDMETHOD(GetCurFolder)(THIS_ LPITEMIDLIST * pidl) PURE; ICOM_DEFINE(IPersistFolder2, IPersistFolder) #undef INTERFACE @@ -379,13 +368,9 @@ typedef struct { #define INTERFACE IPersistFolder3 #define IPersistFolder3_METHODS \ + IPersistFolder2_METHODS \ STDMETHOD(InitializeEx)(THIS_ IBindCtx * pbc, LPCITEMIDLIST pidlRoot, const PERSIST_FOLDER_TARGET_INFO * ppfti) PURE;\ STDMETHOD(GetFolderTargetInfo)(THIS_ PERSIST_FOLDER_TARGET_INFO * ppfti) PURE; -#define IPersistFolder3_IMETHODS \ - IPersist_IMETHODS \ - IPersistFolder_METHODS \ - IPersistFolder2_METHODS \ - IPersistFolder3_METHODS ICOM_DEFINE(IPersistFolder3, IPersistFolder2) #undef INTERFACE diff --git a/include/wine/obj_shelllink.h b/include/wine/obj_shelllink.h index fb652eed918..82066119622 100644 --- a/include/wine/obj_shelllink.h +++ b/include/wine/obj_shelllink.h @@ -54,6 +54,7 @@ typedef enum */ #define INTERFACE IShellLinkA #define IShellLinkA_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetPath)(THIS_ LPSTR pszFile, INT cchMaxPath, WIN32_FIND_DATAA * pfd, DWORD fFlags) PURE; \ STDMETHOD(GetIDList)(THIS_ LPITEMIDLIST * ppidl) PURE; \ STDMETHOD(SetIDList)(THIS_ LPCITEMIDLIST pidl) PURE; \ @@ -72,9 +73,6 @@ typedef enum STDMETHOD(SetRelativePath)(THIS_ LPCSTR pszPathRel, DWORD dwReserved) PURE; \ STDMETHOD(Resolve)(THIS_ HWND hwnd, DWORD fFlags) PURE; \ STDMETHOD(SetPath)(THIS_ LPCSTR pszFile) PURE; -#define IShellLinkA_IMETHODS \ - IUnknown_IMETHODS \ - IShellLinkA_METHODS ICOM_DEFINE(IShellLinkA,IUnknown) #undef INTERFACE @@ -109,6 +107,7 @@ ICOM_DEFINE(IShellLinkA,IUnknown) */ #define INTERFACE IShellLinkW #define IShellLinkW_METHODS \ + IUnknown_METHODS \ STDMETHOD(GetPath)(THIS_ LPWSTR pszFile, INT cchMaxPath, WIN32_FIND_DATAA * pfd, DWORD fFlags) PURE; \ STDMETHOD(GetIDList)(THIS_ LPITEMIDLIST * ppidl) PURE; \ STDMETHOD(SetIDList)(THIS_ LPCITEMIDLIST pidl) PURE; \ @@ -127,9 +126,6 @@ ICOM_DEFINE(IShellLinkA,IUnknown) STDMETHOD(SetRelativePath)(THIS_ LPCWSTR pszPathRel, DWORD dwReserved) PURE; \ STDMETHOD(Resolve)(THIS_ HWND hwnd, DWORD fFlags) PURE; \ STDMETHOD(SetPath)(THIS_ LPCWSTR pszFile) PURE; -#define IShellLinkW_IMETHODS \ - IUnknown_IMETHODS \ - IShellLinkW_METHODS ICOM_DEFINE(IShellLinkW,IUnknown) #undef INTERFACE diff --git a/include/wine/obj_shellview.h b/include/wine/obj_shellview.h index 8087bacd599..93162f2b667 100644 --- a/include/wine/obj_shellview.h +++ b/include/wine/obj_shellview.h @@ -129,6 +129,7 @@ typedef enum #define INTERFACE IShellView #define IShellView_METHODS \ + IOleWindow_METHODS \ STDMETHOD(TranslateAccelerator)(THIS_ LPMSG lpmsg) PURE; \ STDMETHOD(EnableModeless)(THIS_ BOOL fEnable) PURE; \ STDMETHOD(UIActivate)(THIS_ UINT uState) PURE; \ @@ -141,9 +142,6 @@ typedef enum STDMETHOD(SelectItem)(THIS_ LPCITEMIDLIST pidlItem, UINT uFlags) PURE; \ STDMETHOD(GetItemObject)(THIS_ UINT uItem, REFIID riid, LPVOID * ppv) PURE; \ STDMETHOD(EditItem)(THIS_ LPCITEMIDLIST pidlItem) PURE; -#define IShellView_IMETHODS \ - IOleWindow_IMETHODS \ - IShellView_METHODS ICOM_DEFINE(IShellView,IOleWindow) #undef INTERFACE diff --git a/include/wine/obj_webbrowser.h b/include/wine/obj_webbrowser.h index 4e23ed475a7..65886790183 100644 --- a/include/wine/obj_webbrowser.h +++ b/include/wine/obj_webbrowser.h @@ -65,6 +65,7 @@ typedef enum RefreshConstants */ #define INTERFACE IWebBrowser #define IWebBrowser_METHODS \ + IDispatch_METHODS \ STDMETHOD(GoBack)(THIS) PURE; \ STDMETHOD(GoForward)(THIS) PURE; \ STDMETHOD(GoHome)(THIS) PURE; \ @@ -91,9 +92,6 @@ typedef enum RefreshConstants STDMETHOD(get_LocationName)(THIS_ BSTR *LocationName) PURE; \ STDMETHOD(get_LocationURL)(THIS_ BSTR *LocationURL) PURE; \ STDMETHOD(get_Busy)(THIS_ VARIANT *pBool) PURE; -#define IWebBrowser_IMETHODS \ - IDispatch_IMETHODS \ - IWebBrowser_METHODS ICOM_DEFINE(IWebBrowser,IDispatch) #undef INTERFACE @@ -137,6 +135,7 @@ ICOM_DEFINE(IWebBrowser,IDispatch) #define INTERFACE IWebBrowserApp #define IWebBrowserApp_METHODS \ + IWebBrowser_METHODS \ STDMETHOD(Quit)(THIS) PURE; \ STDMETHOD(ClientToWindow)(THIS_ int *pcx,int *pcy) PURE; \ STDMETHOD(PutProperty)(THIS_ BSTR szProperty,VARIANT vtValue) PURE; \ @@ -157,10 +156,6 @@ ICOM_DEFINE(IWebBrowser,IDispatch) STDMETHOD(put_MenuBar)(THIS_ VARIANT_BOOL Value) PURE; \ STDMETHOD(get_FullScreen)(THIS_ VARIANT_BOOL *pbFullScreen) PURE; \ STDMETHOD(put_FullScreen)(THIS_ VARIANT_BOOL bFullScreen) PURE; -#define IWebBrowserApp_IMETHODS \ - IDispatch_IMETHODS \ - IWebBrowser_METHODS \ - IWebBrowserApp_METHODS ICOM_DEFINE(IWebBrowserApp,IWebBrowser) #undef INTERFACE diff --git a/tools/widl/header.c b/tools/widl/header.c index 1d60b21135a..bae0c53df94 100644 --- a/tools/widl/header.c +++ b/tools/widl/header.c @@ -438,20 +438,20 @@ static void write_icom_method_def(type_t *iface) arg = NEXT_LINK(arg); } } - fprintf(header, " \\\n "); + fprintf(header, " \\\n STDMETHOD_("); write_type(header, def->type, def, def->tname); - fprintf(header, " (STDMETHODCALLTYPE *"); + fprintf(header, ","); write_name(header, def); - fprintf(header, ")(INTERFACE *This"); + fprintf(header, ")(%s", arg ? "THIS_ " : "THIS" ); while (arg) { - fprintf(header, ", "); write_type(header, arg->type, arg, arg->tname); fprintf(header, " "); write_name(header,arg); write_array(header, arg->array, 0); arg = PREV_LINK(arg); + if (arg) fprintf(header, ", "); } - fprintf(header, ");"); + fprintf(header, ") PURE;"); } cur = PREV_LINK(cur); } @@ -711,15 +711,16 @@ void write_com_interface(type_t *iface) indentation--; fprintf(header, "};\n"); fprintf(header, "\n"); - if (compat_icom) { - fprintf(header, "#define %s_IMETHODS", iface->name); - write_icom_method_def(iface); - fprintf(header, "\n\n"); - } write_method_macro(iface, iface->name); fprintf(header, "\n"); fprintf(header, "#endif\n"); fprintf(header, "\n"); + if (compat_icom) { + fprintf(header, "#define %s_METHODS \\\n", iface->name); + fprintf(header, " ICOM_MSVTABLE_COMPAT_FIELDS"); + write_icom_method_def(iface); + fprintf(header, "\n\n"); + } write_method_proto(iface); fprintf(header, "\n");