DECLARE_INTERFACE_(INTERFACE, IShellExecuteHookW) { STDMETHOD(QueryInterface)(THIS_ REFIID, PVOID *); STDMETHOD_(ULONG,AddRef)(THIS); STDMETHOD_(ULONG,Release)(THIS); STDMETHOD(ExecuteW)(THIS_ LPSHELLEXECUTEINFOW); };
DECLARE_INTERFACE_(IPropertyStoreCapabilities,IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(IsPropertyWritable)(THIS_ REFPROPERTYKEY key) PURE; };
DECLARE_INTERFACE_(IInitializeWithStream,IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(Initialize)(THIS_ IStream *pstream, DWORD grfMode) PURE; };
DECLARE_INTERFACE_(IPropertyStore,IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetCount)(THIS_ DWORD *cProps) PURE; STDMETHOD(GetAt)(THIS_ DWORD iProp, PROPERTYKEY *pkey) PURE; STDMETHOD(GetValue)(THIS_ REFPROPERTYKEY key, PROPVARIANT *pv) PURE; STDMETHOD(SetValue)(THIS_ REFPROPERTYKEY key, REFPROPVARIANT propvar) PURE; STDMETHOD(Commit)(THIS) PURE; };
DECLARE_INTERFACE_( IGlobalOptions, IUnknown ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IGlobalOptions methods */ STDMETHOD( Set )( THIS_ GLOBALOPT_PROPERTIES, ULONG_PTR ) PURE; STDMETHOD( Query )( THIS_ GLOBALOPT_PROPERTIES, ULONG_PTR * ) PURE; };
DECLARE_INTERFACE_(IHTMLFramesCollection2,IDispatch) { STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE; STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE; STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID*) PURE; STDMETHOD(Invoke)(THIS_ DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE; STDMETHOD(item)(THIS_ VARIANT*,VARIANT*) PURE; STDMETHOD(get_length)(THIS_ long*) PURE; };
DECLARE_INTERFACE_ ( INTERFACE, IDispatch ) { // IUnknown functions STDMETHOD ( QueryInterface ) ( THIS_ REFIID, void ** ) PURE; STDMETHOD_ ( ULONG, AddRef ) ( THIS ) PURE; STDMETHOD_ ( ULONG, Release ) ( THIS ) PURE; // IDispatch functions STDMETHOD_ ( ULONG, GetTypeInfoCount ) ( THIS_ UINT * ) PURE; STDMETHOD_ ( ULONG, GetTypeInfo ) ( THIS_ UINT, LCID, ITypeInfo ** ) PURE; STDMETHOD_ ( ULONG, GetIDsOfNames ) ( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE; STDMETHOD_ ( ULONG, Invoke ) ( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE; };
DECLARE_INTERFACE_(IDirectSound, IUnknown) { STDMETHOD(QueryInterface) (THIS_ REFIID, LPVOID*) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; STDMETHOD(CreateSoundBuffer) (THIS_ DSBUFFERDESC*, IDirectSoundBuffer**, LPUNKNOWN) PURE; STDMETHOD(GetCaps) (THIS_ void*) PURE; STDMETHOD(DuplicateSoundBuffer) (THIS_ IDirectSoundBuffer*, IDirectSoundBuffer**) PURE; STDMETHOD(SetCooperativeLevel) (THIS_ HWND, DWORD) PURE; STDMETHOD(Compact) (THIS) PURE; STDMETHOD(GetSpeakerConfig) (THIS_ LPDWORD) PURE; STDMETHOD(SetSpeakerConfig) (THIS_ DWORD) PURE; STDMETHOD(Initialize) (THIS_ const GUID*) PURE; };
DECLARE_INTERFACE_(IUniformResourceLocatorW, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, PVOID *ppvObject) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; STDMETHOD(SetURL)(THIS_ LPCWSTR pcszURL, DWORD dwInFlags) PURE; STDMETHOD(GetURL)(THIS_ LPWSTR *ppszURL) PURE; STDMETHOD(InvokeCommand)(THIS_ PURLINVOKECOMMANDINFOW purlici) PURE; };
DECLARE_INTERFACE_(IDWriteFontFileEnumerator_MinGW,IUnknown) { BEGIN_INTERFACE /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* IDWriteFontFileEnumerator methods */ STDMETHOD_(HRESULT,MoveNext)(THIS_ WINBOOL * hasCurrentFile) PURE; STDMETHOD_(HRESULT,GetCurrentFontFile)(THIS_ IDWriteFontFile ** fontFile) PURE; END_INTERFACE };
DECLARE_INTERFACE_(ID3DXMatrixStack, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID * ppvObj) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(Pop)(THIS) PURE; STDMETHOD(Push)(THIS) PURE; STDMETHOD(LoadIdentity)(THIS) PURE; STDMETHOD(LoadMatrix)(THIS_ CONST D3DXMATRIX* pM ) PURE; STDMETHOD(MultMatrix)(THIS_ CONST D3DXMATRIX* pM ) PURE; STDMETHOD(MultMatrixLocal)(THIS_ CONST D3DXMATRIX* pM ) PURE; STDMETHOD(RotateAxis)(THIS_ CONST D3DXVECTOR3* pV, FLOAT Angle) PURE; STDMETHOD(RotateAxisLocal)(THIS_ CONST D3DXVECTOR3* pV, FLOAT Angle) PURE; STDMETHOD(RotateYawPitchRoll)(THIS_ FLOAT Yaw, FLOAT Pitch, FLOAT Roll) PURE; STDMETHOD(RotateYawPitchRollLocal)(THIS_ FLOAT Yaw, FLOAT Pitch, FLOAT Roll) PURE; STDMETHOD(Scale)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; STDMETHOD(ScaleLocal)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; STDMETHOD(Translate)(THIS_ FLOAT x, FLOAT y, FLOAT z ) PURE; STDMETHOD(TranslateLocal)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; STDMETHOD_(D3DXMATRIX*, GetTop)(THIS) PURE; };
DECLARE_INTERFACE_(IGroupPolicyObject, IUnknown) { STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID *ppvObj) PURE; STDMETHOD_(ULONG, AddRef) (THIS) PURE; STDMETHOD_(ULONG, Release) (THIS) PURE; STDMETHOD(New) (THIS_ LPOLESTR pszDomainName, LPOLESTR pszDisplayName, DWORD dwFlags) PURE; STDMETHOD(OpenDSGPO) (THIS_ LPOLESTR pszPath, DWORD dwFlags) PURE; STDMETHOD(OpenLocalMachineGPO) (THIS_ DWORD dwFlags) PURE; STDMETHOD(OpenRemoteMachineGPO) (THIS_ LPOLESTR pszComputerName, DWORD dwFlags) PURE; STDMETHOD(Save) (THIS_ BOOL bMachine, BOOL bAdd,GUID *pGuidExtension, GUID *pGuid) PURE; STDMETHOD(Delete) (THIS) PURE; STDMETHOD(GetName) (THIS_ LPOLESTR pszName, int cchMaxLength) PURE; STDMETHOD(GetDisplayName) (THIS_ LPOLESTR pszName, int cchMaxLength) PURE; STDMETHOD(SetDisplayName) (THIS_ LPOLESTR pszName) PURE; STDMETHOD(GetPath) (THIS_ LPOLESTR pszPath, int cchMaxPath) PURE; STDMETHOD(GetDSPath) (THIS_ DWORD dwSection, LPOLESTR pszPath ,int cchMaxPath) PURE; STDMETHOD(GetFileSysPath) (THIS_ DWORD dwSection, LPOLESTR pszPath, int cchMaxPath) PURE; STDMETHOD(GetRegistryKey) (THIS_ DWORD dwSection, HKEY *hKey) PURE; STDMETHOD(GetOptions) (THIS_ DWORD *dwOptions) PURE; STDMETHOD(SetOptions) (THIS_ DWORD dwOptions, DWORD dwMask) PURE; STDMETHOD(GetType) (THIS_ GROUP_POLICY_OBJECT_TYPE *gpoType) PURE; STDMETHOD(GetMachineName) (THIS_ LPOLESTR pszName, int cchMaxLength) PURE; STDMETHOD(GetPropertySheetPages) (THIS_ HPROPSHEETPAGE **hPages, UINT *uPageCount) PURE; };
DECLARE_INTERFACE_(IDirectSoundBuffer, IUnknown) { STDMETHOD(QueryInterface) (THIS_ REFIID, LPVOID*) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; STDMETHOD(GetCaps) (THIS_ void*) PURE; STDMETHOD(GetCurrentPosition) (THIS_ LPDWORD, LPDWORD) PURE; STDMETHOD(GetFormat) (THIS_ LPWAVEFORMATEX, DWORD, LPDWORD) PURE; STDMETHOD(GetVolume) (THIS_ LPLONG) PURE; STDMETHOD(GetPan) (THIS_ LPLONG) PURE; STDMETHOD(GetFrequency) (THIS_ LPDWORD) PURE; STDMETHOD(GetStatus) (THIS_ LPDWORD) PURE; STDMETHOD(Initialize) (THIS_ IDirectSound*, DSBUFFERDESC*) PURE; STDMETHOD(Lock) (THIS_ DWORD, DWORD, LPVOID*, LPDWORD, LPVOID*, LPDWORD, DWORD) PURE; STDMETHOD(Play) (THIS_ DWORD, DWORD, DWORD) PURE; STDMETHOD(SetCurrentPosition) (THIS_ DWORD) PURE; STDMETHOD(SetFormat) (THIS_ const WAVEFORMATEX*) PURE; STDMETHOD(SetVolume) (THIS_ LONG) PURE; STDMETHOD(SetPan) (THIS_ LONG) PURE; STDMETHOD(SetFrequency) (THIS_ DWORD) PURE; STDMETHOD(Stop) (THIS) PURE; STDMETHOD(Unlock) (THIS_ LPVOID, DWORD, LPVOID, DWORD) PURE; STDMETHOD(Restore) (THIS) PURE; };
DECLARE_INTERFACE_(IHTMLWindow2,IHTMLFramesCollection2) { STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE; STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE; STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID*) PURE; STDMETHOD(Invoke)(THIS_ DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE; STDMETHOD(item)(THIS_ VARIANT*,VARIANT*) PURE; STDMETHOD(get_length)(THIS_ long*) PURE; STDMETHOD(get_frames)(THIS_ IHTMLFramesCollection2**) PURE; STDMETHOD(put_defaultStatus)(THIS_ BSTR) PURE; STDMETHOD(get_defaultStatus)(THIS_ BSTR*) PURE; STDMETHOD(put_status)(THIS_ BSTR) PURE; STDMETHOD(get_status)(THIS_ BSTR*) PURE; STDMETHOD(setTimeout)(THIS_ BSTR,long,VARIANT*,long*) PURE; STDMETHOD(clearTimeout)(THIS_ long) PURE; STDMETHOD(alert)(THIS_ BSTR) PURE; STDMETHOD(confirm)(THIS_ BSTR,VARIANT_BOOL*) PURE; STDMETHOD(prompt)(THIS_ BSTR,BSTR,VARIANT*) PURE; STDMETHOD(get_Image)(THIS_ LPHTMLIMAGEELEMENTFACTORY*) PURE; STDMETHOD(get_location)(THIS_ LPHTMLLOCATION*) PURE; STDMETHOD(get_history)(THIS_ LPOMHISTORY*) PURE; STDMETHOD(close)(THIS) PURE; STDMETHOD(put_opener)(THIS_ VARIANT) PURE; STDMETHOD(get_opener)(THIS_ VARIANT*) PURE; STDMETHOD(get_navigator)(THIS_ LPOMNAVIGATOR*) PURE; STDMETHOD(put_name)(THIS_ BSTR) PURE; STDMETHOD(get_name)(THIS_ BSTR*) PURE; STDMETHOD(get_parent)(THIS_ LPHTMLWINDOW2*) PURE; STDMETHOD(open)(THIS_ BSTR,BSTR,BSTR,VARIANT_BOOL,LPHTMLWINDOW2*) PURE; STDMETHOD(get_self)(THIS_ LPHTMLWINDOW2*) PURE; STDMETHOD(get_top)(THIS_ LPHTMLWINDOW2*) PURE; STDMETHOD(get_window)(THIS_ LPHTMLWINDOW2*) PURE; STDMETHOD(navigate)(THIS_ BSTR) PURE; STDMETHOD(put_onfocus)(THIS_ VARIANT) PURE; STDMETHOD(get_onfocus)(THIS_ VARIANT*) PURE; STDMETHOD(put_onblur)(THIS_ VARIANT) PURE; STDMETHOD(get_onblur)(THIS_ VARIANT*) PURE; STDMETHOD(put_onload)(THIS_ VARIANT) PURE; STDMETHOD(get_onload)(THIS_ VARIANT*) PURE; STDMETHOD(put_onbeforeunload)(THIS_ VARIANT) PURE; STDMETHOD(get_onbeforeunload)(THIS_ VARIANT*) PURE; STDMETHOD(put_onunload)(THIS_ VARIANT) PURE; STDMETHOD(get_onunload)(THIS_ VARIANT*) PURE; STDMETHOD(put_onhelp)(THIS_ VARIANT) PURE; STDMETHOD(get_onhelp)(THIS_ VARIANT*) PURE; STDMETHOD(put_onerror)(THIS_ VARIANT) PURE; STDMETHOD(get_onerror)(THIS_ VARIANT*) PURE; STDMETHOD(put_onresize)(THIS_ VARIANT) PURE; STDMETHOD(get_onresize)(THIS_ VARIANT*) PURE; STDMETHOD(put_onscroll)(THIS_ VARIANT) PURE; STDMETHOD(get_onscroll)(THIS_ VARIANT*) PURE; STDMETHOD(get_document)(THIS_ IHTMLDocument2**) PURE; STDMETHOD(get_event)(THIS_ LPHTMLEVENTOBJ*) PURE; STDMETHOD(get__newEnum)(THIS_ IUnknown**) PURE; STDMETHOD(showModalDialog)(THIS_ BSTR,VARIANT*,VARIANT*,VARIANT*) PURE; STDMETHOD(showHelp)(THIS_ BSTR,VARIANT,BSTR) PURE; STDMETHOD(get_screen)(THIS_ LPHTMLSCREEN*) PURE; STDMETHOD(get_Option)(THIS_ LPHTMLOPTIONELEMENTFACTORY*) PURE; STDMETHOD(focus)(THIS) PURE; STDMETHOD(get_closed)(THIS_ VARIANT_BOOL*) PURE; STDMETHOD(blur)(THIS) PURE; STDMETHOD(scroll)(THIS_ long,long) PURE; STDMETHOD(get_clientInformation)(THIS_ LPOMNAVIGATOR*) PURE; STDMETHOD(setInterval)(THIS_ BSTR,long,VARIANT*,long*) PURE; STDMETHOD(clearInterval)(THIS_ long) PURE; STDMETHOD(put_offscreenBuffering)(THIS_ VARIANT) PURE; STDMETHOD(get_offscreenBuffering)(THIS_ VARIANT*) PURE; STDMETHOD(execScript)(THIS_ BSTR,BSTR,VARIANT*) PURE; STDMETHOD(toString)(THIS_ BSTR*) PURE; STDMETHOD(scrollBy)(THIS_ long,long) PURE; STDMETHOD(scrollTo)(THIS_ long,long) PURE; STDMETHOD(moveTo)(THIS_ long,long) PURE; STDMETHOD(moveBy)(THIS_ long,long) PURE; STDMETHOD(resizeTo)(THIS_ long,long) PURE; STDMETHOD(resizeBy)(THIS_ long,long) PURE; STDMETHOD(get_external)(THIS_ IDispatch**) PURE; };
DECLARE_INTERFACE_(IWineASIO,IUnknown) { STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD_(long,init)(THIS_ void *sysHandle) PURE; STDMETHOD_(void,getDriverName)(THIS_ char *name) PURE; STDMETHOD_(long,getDriverVersion)(THIS) PURE; STDMETHOD_(void,getErrorMessage)(THIS_ char *string) PURE; STDMETHOD_(ASIOError,start)(THIS) PURE; STDMETHOD_(ASIOError,stop)(THIS) PURE; STDMETHOD_(ASIOError,getChannels)(THIS_ long *numInputChannels, long *numOutputChannels) PURE; STDMETHOD_(ASIOError,getLatencies)(THIS_ long *inputLatency, long *outputLatency) PURE; STDMETHOD_(ASIOError,getBufferSize)(THIS_ long *minSize, long *maxSize, long *preferredSize, long *granularity) PURE; STDMETHOD_(ASIOError,canSampleRate)(THIS_ ASIOSampleRate sampleRate) PURE; STDMETHOD_(ASIOError,getSampleRate)(THIS_ ASIOSampleRate *sampleRate) PURE; STDMETHOD_(ASIOError,setSampleRate)(THIS_ ASIOSampleRate sampleRate) PURE; STDMETHOD_(ASIOError,getClockSources)(THIS_ ASIOClockSource *clocks, long *numSources) PURE; STDMETHOD_(ASIOError,setClockSource)(THIS_ long reference) PURE; STDMETHOD_(ASIOError,getSamplePosition)(THIS_ ASIOSamples *sPos, ASIOTimeStamp *tStamp) PURE; STDMETHOD_(ASIOError,getChannelInfo)(THIS_ ASIOChannelInfo *info) PURE; STDMETHOD_(ASIOError,createBuffers)(THIS_ ASIOBufferInfo *bufferInfos, long numChannels, long bufferSize, ASIOCallbacks *callbacks) PURE; STDMETHOD_(ASIOError,disposeBuffers)(THIS) PURE; STDMETHOD_(ASIOError,controlPanel)(THIS) PURE; STDMETHOD_(ASIOError,future)(THIS_ long selector,void *opt) PURE; STDMETHOD_(ASIOError,outputReady)(THIS) PURE; };