[PATCH 2/4] d3drm: Add definitions for IDirect3DRMProgressiveMesh
Christian Costa
titan.costa at wanadoo.fr
Mon Jan 18 16:23:11 CST 2010
---
include/d3drmdef.h | 11 +++++
include/d3drmobj.h | 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 121 insertions(+), 0 deletions(-)
-------------- next part --------------
diff --git a/include/d3drmdef.h b/include/d3drmdef.h
index d780105..170ba75 100644
--- a/include/d3drmdef.h
+++ b/include/d3drmdef.h
@@ -172,6 +172,17 @@ typedef struct _D3DRMMATERIALOVERRIDE {
typedef DWORD D3DRMLOADOPTIONS;
+typedef struct _D3DRMPMESHLOADSTATUS {
+ DWORD dwSize;
+ DWORD dwPMeshSize;
+ DWORD dwBaseMeshSize;
+ DWORD dwBytesLoaded;
+ DWORD dwVerticesLoaded;
+ DWORD dwFacesLoaded;
+ HRESULT dwLoadResult;
+ DWORD dwFlags;
+} D3DRMPMESHLOADSTATUS, *LPD3DRMPMESHLOADSTATUS;
+
typedef enum _D3DRMUSERVISUALREASON {
D3DRMUSERVISUAL_CANSEE,
D3DRMUSERVISUAL_RENDER
diff --git a/include/d3drmobj.h b/include/d3drmobj.h
index 7017f3c..1da7c90 100644
--- a/include/d3drmobj.h
+++ b/include/d3drmobj.h
@@ -1924,6 +1924,116 @@ DECLARE_INTERFACE_(IDirect3DRMMesh,IDirect3DRMVisual)
#define IDirect3DRMMesh_GetGroupTexture(p,a,b) (p)->lpVtbl->GetGroupTexture(a,b)
#endif
+/*****************************************************************************
+ * IDirect3DRMProgressiveMesh interface
+ */
+#define INTERFACE IDirect3DRMProgressiveMesh
+DECLARE_INTERFACE_(IDirect3DRMProgressiveMesh,IDirect3DRMVisual)
+{
+ /*** IUnknown methods ***/
+ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
+ STDMETHOD_(ULONG,AddRef)(THIS) PURE;
+ STDMETHOD_(ULONG,Release)(THIS) PURE;
+ /*** IDirect3DRMObject methods ***/
+ STDMETHOD(Clone)(THIS_ LPUNKNOWN pUnkOuter, REFIID riid, LPVOID *ppvObj) PURE;
+ STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
+ STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK, LPVOID argument) PURE;
+ STDMETHOD(SetAppData)(THIS_ DWORD data) PURE;
+ STDMETHOD_(DWORD, GetAppData)(THIS) PURE;
+ STDMETHOD(SetName)(THIS_ LPCSTR) PURE;
+ STDMETHOD(GetName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
+ STDMETHOD(GetClassName)(THIS_ LPDWORD lpdwSize, LPSTR lpName) PURE;
+ /*** IDirect3DRMProgressiveMesh methods ***/
+ STDMETHOD(Load) (THIS_ LPVOID pObjLocation, LPVOID pObjId, D3DRMLOADOPTIONS dloLoadflags,
+ D3DRMLOADTEXTURECALLBACK pCallback, LPVOID lpArg) PURE;
+ STDMETHOD(GetLoadStatus) (THIS_ LPD3DRMPMESHLOADSTATUS pStatus) PURE;
+ STDMETHOD(SetMinRenderDetail) (THIS_ D3DVALUE d3dVal) PURE;
+ STDMETHOD(Abort) (THIS_ DWORD flags) PURE;
+ STDMETHOD(GetFaceDetail) (THIS_ LPDWORD pCount) PURE;
+ STDMETHOD(GetVertexDetail) (THIS_ LPDWORD pCount) PURE;
+ STDMETHOD(SetFaceDetail) (THIS_ DWORD count) PURE;
+ STDMETHOD(SetVertexDetail) (THIS_ DWORD count) PURE;
+ STDMETHOD(GetFaceDetailRange) (THIS_ LPDWORD pMin, LPDWORD pMax) PURE;
+ STDMETHOD(GetVertexDetailRange) (THIS_ LPDWORD pMin, LPDWORD pMax) PURE;
+ STDMETHOD(GetDetail) (THIS_ D3DVALUE *pdvVal) PURE;
+ STDMETHOD(SetDetail) (THIS_ D3DVALUE d3dVal) PURE;
+ STDMETHOD(RegisterEvents) (THIS_ HANDLE event, DWORD flags, DWORD reserved) PURE;
+ STDMETHOD(CreateMesh) (THIS_ LPDIRECT3DRMMESH *ppD3DRMMesh) PURE;
+ STDMETHOD(Duplicate) (THIS_ LPDIRECT3DRMPROGRESSIVEMESH *ppD3DRMPMesh) PURE;
+ STDMETHOD(GetBox) (THIS_ LPD3DRMBOX pBBox) PURE;
+ STDMETHOD(SetQuality) (THIS_ D3DRMRENDERQUALITY) PURE;
+ STDMETHOD(GetQuality) (THIS_ LPD3DRMRENDERQUALITY pQuality) PURE;
+};
+#undef INTERFACE
+
+#if !defined(__cplusplus) || defined(CINTERFACE)
+/*** IUnknown methods ***/
+#define IDirect3DRMProgressiveMesh_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
+#define IDirect3DRMProgressiveMesh_AddRef(p) (p)->lpVtbl->AddRef(p)
+#define IDirect3DRMProgressiveMesh_Release(p) (p)->lpVtbl->Release(p)
+/*** IDirect3DRMObject methods ***/
+#define IDirect3DRMProgressiveMesh_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c)
+#define IDirect3DRMProgressiveMesh_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b)
+#define IDirect3DRMProgressiveMesh_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
+#define IDirect3DRMProgressiveMesh_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a)
+#define IDirect3DRMProgressiveMesh_GetAppData(p) (p)->lpVtbl->GetAppData(p)
+#define IDirect3DRMProgressiveMesh_SetName(p,a) (p)->lpVtbl->SetName(p,a)
+#define IDirect3DRMProgressiveMesh_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
+#define IDirect3DRMProgressiveMesh_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b)
+/*** IDirect3DRMProgressiveMesh methods ***/
+#define IDirect3DRMProgressiveMesh_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e)
+#define IDirect3DRMProgressiveMesh_GetLoadStatus(p,a) (p)->lpVtbl->GetLoadStatus(p,a)
+#define IDirect3DRMProgressiveMesh_SetMinRenderDetail(p,a) (p)->lpVtbl->SetMinRenderDetail(p,a)
+#define IDirect3DRMProgressiveMesh_Abort(p,a) (p)->lpVtbl->Abort(p,a)
+#define IDirect3DRMProgressiveMesh_GetFaceDetail(p,a) (p)->lpVtbl->GetFaceDetail(p,a)
+#define IDirect3DRMProgressiveMesh_GetVertexDetail(p,a) (p)->lpVtbl->GetVertexDetail(p,a)
+#define IDirect3DRMProgressiveMesh_SetFaceDetail(p,a) (p)->lpVtbl->SetFaceDetail(p,a)
+#define IDirect3DRMProgressiveMesh_SetVertexDetail(p,a) (p)->lpVtbl->SetVertexDetail(p,a)
+#define IDirect3DRMProgressiveMesh_GetFaceDetailRange(p,a,b) (p)->lpVtbl->GetFaceDetailRange(p,a,b)
+#define IDirect3DRMProgressiveMesh_GetVertexDetailRange(p,a,b) (p)->lpVtbl->GetVertexDetailRange(p,a,b)
+#define IDirect3DRMProgressiveMesh_GetDetail(p,a) (p)->lpVtbl->GetDetail(p,a)
+#define IDirect3DRMProgressiveMesh_SetDetail(p,a) (p)->lpVtbl->SetDetail(p,a)
+#define IDirect3DRMProgressiveMesh_RegisterEvents(p,a,b,c) (p)->lpVtbl->RegisterEvents(p,a,b,c)
+#define IDirect3DRMProgressiveMesh_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a)
+#define IDirect3DRMProgressiveMesh_Duplicate(p,a) (p)->lpVtbl->Duplicate(p,a)
+#define IDirect3DRMProgressiveMesh_GetBox(p,a) (p)->lpVtbl->GetBox(p,a)
+#define IDirect3DRMProgressiveMesh_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a)
+#define IDirect3DRMProgressiveMesh_GetQuality(p,a) (p)->lpVtbl->GetQuality(p,a)
+#else
+/*** IUnknown methods ***/
+#define IDirect3DRMProgressiveMesh_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
+#define IDirect3DRMProgressiveMesh_AddRef(p) (p)->AddRef()
+#define IDirect3DRMProgressiveMesh_Release(p) (p)->Release()
+/*** IDirect3DRMObject methods ***/
+#define IDirect3DRMProgressiveMesh_Clone(p,a,b,c) (p)->Clone(a,b,c)
+#define IDirect3DRMProgressiveMesh_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b)
+#define IDirect3DRMProgressiveMesh_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
+#define IDirect3DRMProgressiveMesh_SetAppData(p,a) (p)->SetAppData(a)
+#define IDirect3DRMProgressiveMesh_GetAppData(p) (p)->GetAppData()
+#define IDirect3DRMProgressiveMesh_SetName(p,a) (p)->SetName(a)
+#define IDirect3DRMProgressiveMesh_GetName(p,a,b) (p)->GetName(a,b)
+#define IDirect3DRMProgressiveMesh_GetClassName(p,a,b) (p)->GetClassName(a,b)
+/*** IDirect3DRMProgressiveMesh methods ***/
+#define IDirect3DRMProgressiveMesh_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e)
+#define IDirect3DRMProgressiveMesh_GetLoadStatus(p,a) (p)->GetLoadStatus(a)
+#define IDirect3DRMProgressiveMesh_SetMinRenderDetail(p,a) (p)->SetMinRenderDetail(a)
+#define IDirect3DRMProgressiveMesh_Abort(p,a) (p)->Abort(a)
+#define IDirect3DRMProgressiveMesh_GetFaceDetail(p,a) (p)->GetFaceDetail(a)
+#define IDirect3DRMProgressiveMesh_GetVertexDetail(p,a) (p)->GetVertexDetail(a)
+#define IDirect3DRMProgressiveMesh_SetFaceDetail(p,a) (p)->SetFaceDetail(a)
+#define IDirect3DRMProgressiveMesh_SetVertexDetail(p,a) (p)->SetVertexDetail(a)
+#define IDirect3DRMProgressiveMesh_GetFaceDetailRange(p,a,b) (p)->GetFaceDetailRange(a,b)
+#define IDirect3DRMProgressiveMesh_GetVertexDetailRange(p,a,b) (p)->GetVertexDetailRange(a,b)
+#define IDirect3DRMProgressiveMesh_GetDetail(p,a) (p)->GetDetail(a)
+#define IDirect3DRMProgressiveMesh_SetDetail(p,a) (p)->SetDetail(a)
+#define IDirect3DRMProgressiveMesh_RegisterEvents(p,a,b,c) (p)->RegisterEvents(a,b,c)
+#define IDirect3DRMProgressiveMesh_CreateMesh(p,a) (p)->CreateMesh(a)
+#define IDirect3DRMProgressiveMesh_Duplicate(p,a) (p)->Duplicate(a)
+#define IDirect3DRMProgressiveMesh_GetBox(p,a) (p)->GetBox(a)
+#define IDirect3DRMProgressiveMesh_SetQuality(p,a) (p)->SetQuality(a)
+#define IDirect3DRMProgressiveMesh_GetQuality(p,a) (p)->GetQuality(a)
+#endif
+
#ifdef __cplusplus
};
#endif
More information about the wine-patches
mailing list