19#ifndef __WINE_DXDIAG_H
20#define __WINE_DXDIAG_H
31#define DXDIAG_DX9_SDK_VERSION 111
33#define _FACDXDIAG 0x007
34#define MAKE_DXDIAGHRESULT( code ) MAKE_HRESULT( 1, _FACDXDIAG, code )
39#define DXDIAG_E_INSUFFICIENT_BUFFER MAKE_DXDIAGHRESULT(0x007A)
57DEFINE_GUID(CLSID_DxDiagProvider, 0xA65B8071, 0x3BFE, 0x4213, 0x9A, 0x5B, 0x49, 0x1D, 0xA4, 0x46, 0x1C, 0xA7);
60DEFINE_GUID(IID_IDxDiagProvider, 0x9C6B4CB0, 0x23F8, 0x49CC, 0xA3, 0xED, 0x45, 0xA5, 0x50, 0x00, 0xA6, 0xD2);
61DEFINE_GUID(IID_IDxDiagContainer, 0x7D0F462F, 0x4064, 0x4862, 0xBC, 0x7F, 0x93, 0x3E, 0x50, 0x58, 0xC1, 0x0F);
70#ifdef WINE_NO_UNICODE_MACROS
74#define INTERFACE IDxDiagContainer
91#if !defined(__cplusplus) || defined(CINTERFACE)
93#define IDxDiagContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
94#define IDxDiagContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
95#define IDxDiagContainer_Release(p) (p)->lpVtbl->Release(p)
97#define IDxDiagContainer_GetNumberOfChildContainers(p,a) (p)->lpVtbl->GetNumberOfChildContainers(p,a)
98#define IDxDiagContainer_EnumChildContainerNames(p,a,b,c) (p)->lpVtbl->EnumChildContainerNames(p,a,b,c)
99#define IDxDiagContainer_GetChildContainer(p,a,b) (p)->lpVtbl->GetChildContainer(p,a,b)
100#define IDxDiagContainer_GetNumberOfProps(p,a) (p)->lpVtbl->GetNumberOfProps(p,a)
101#define IDxDiagContainer_EnumPropNames(p,a,b,c) (p)->lpVtbl->EnumPropNames(p,a,b,c)
102#define IDxDiagContainer_GetProp(p,a,b) (p)->lpVtbl->GetProp(p,a,b)
105#define IDxDiagContainer_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
106#define IDxDiagContainer_AddRef(p) (p)->AddRef()
107#define IDxDiagContainer_Release(p) (p)->Release()
109#define IDxDiagContainer_GetNumberOfChildContainers(p,a) (p)->GetNumberOfChildContainers(a)
110#define IDxDiagContainer_EnumChildContainerNames(p,a,b,c) (p)->EnumChildContainerNames(a,b,c)
111#define IDxDiagContainer_GetChildContainer(p,a,b) (p)->GetChildContainer(a,b)
112#define IDxDiagContainer_GetNumberOfProps(p,a) (p)->GetNumberOfProps(a)
113#define IDxDiagContainer_EnumPropNames(p,a,b,c) (p)->EnumPropNames(a,b,c)
114#define IDxDiagContainer_GetProp(p,a,b) (p)->GetProp(a,b)
120#define INTERFACE IDxDiagProvider
133#if !defined(__cplusplus) || defined(CINTERFACE)
135#define IDxDiagProvider_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
136#define IDxDiagProvider_AddRef(p) (p)->lpVtbl->AddRef(p)
137#define IDxDiagProvider_Release(p) (p)->lpVtbl->Release(p)
139#define IDxDiagProvider_Initialize(p,a) (p)->lpVtbl->Initialize(p,a)
140#define IDxDiagProvider_GetRootContainer(p,a) (p)->lpVtbl->GetRootContainer(p,a)
143#define IDxDiagProvider_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
144#define IDxDiagProvider_AddRef(p) (p)->AddRef()
145#define IDxDiagProvider_Release(p) (p)->Release()
147#define IDxDiagProvider_Initialize(p,a) (p)->Initialize(a)
148#define IDxDiagProvider_GetRootContainer(p,a) (p)->GetRootContainer(a)
#define DECLARE_INTERFACE_(i, b)
struct _DXDIAG_INIT_PARAMS DXDIAG_INIT_PARAMS
struct IDxDiagProvider * PDXDIAGPROVIDER
struct IDxDiagContainer * LPDXDIAGCONTAINER
struct IDxDiagContainer * PDXDIAGCONTAINER
struct IDxDiagProvider * LPDXDIAGPROVIDER
static HRESULT QueryInterface(REFIID, void **)
static ULONG WINAPI AddRef(IStream *iface)
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
DWORD dwDxDiagHeaderVersion
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject