d3drm: Add definitions for IDirect3DRMMesh.
This commit is contained in:
parent
d9b83e8bb2
commit
6a41b3fe60
|
@ -1,6 +1,7 @@
|
|||
/*
|
||||
* Copyright 2007 Vijay Kiran Kamuju
|
||||
* Copyright 2007 David ADAM
|
||||
* Copyright 2010 Christian Costa
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -176,6 +177,18 @@ typedef enum _D3DRMUSERVISUALREASON {
|
|||
D3DRMUSERVISUAL_RENDER
|
||||
} D3DRMUSERVISUALREASON, *LPD3DRMUSERVISUALREASON;
|
||||
|
||||
typedef DWORD D3DRMMAPPING;
|
||||
|
||||
typedef struct _D3DRMVERTEX {
|
||||
D3DVECTOR position;
|
||||
D3DVECTOR normal;
|
||||
D3DVALUE tu;
|
||||
D3DVALUE tv;
|
||||
D3DCOLOR color;
|
||||
} D3DRMVERTEX, *LPD3DRMVERTEX;
|
||||
|
||||
typedef LONG D3DRMGROUPINDEX;
|
||||
|
||||
void WINAPI D3DRMMatrixFromQuaternion(D3DRMMATRIX4D, LPD3DRMQUATERNION);
|
||||
|
||||
LPD3DRMQUATERNION WINAPI D3DRMQuaternionFromRotation(LPD3DRMQUATERNION ,LPD3DVECTOR,D3DVALUE);
|
||||
|
|
|
@ -1809,6 +1809,121 @@ DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual)
|
|||
#define IDirect3DRMFrame3_GetMaterialOverride(p,a) (p)->GetMaterialOverride(a)
|
||||
#endif
|
||||
|
||||
/*****************************************************************************
|
||||
* IDirect3DRMMesh interface
|
||||
*/
|
||||
#define INTERFACE IDirect3DRMMesh
|
||||
DECLARE_INTERFACE_(IDirect3DRMMesh,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;
|
||||
/*** IDirect3DRMMesh methods ***/
|
||||
STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE;
|
||||
STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE;
|
||||
STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE;
|
||||
STDMETHOD(AddGroup)(THIS_ unsigned vCount, unsigned fCount, unsigned vPerFace, unsigned *fData,
|
||||
D3DRMGROUPINDEX *returnId) PURE;
|
||||
STDMETHOD(SetVertices)(THIS_ D3DRMGROUPINDEX id, unsigned index, unsigned count,
|
||||
D3DRMVERTEX *values) PURE;
|
||||
STDMETHOD(SetGroupColor)(THIS_ D3DRMGROUPINDEX id, D3DCOLOR value) PURE;
|
||||
STDMETHOD(SetGroupColorRGB)(THIS_ D3DRMGROUPINDEX id, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE;
|
||||
STDMETHOD(SetGroupMapping)(THIS_ D3DRMGROUPINDEX id, D3DRMMAPPING value) PURE;
|
||||
STDMETHOD(SetGroupQuality)(THIS_ D3DRMGROUPINDEX id, D3DRMRENDERQUALITY value) PURE;
|
||||
STDMETHOD(SetGroupMaterial)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMMATERIAL value) PURE;
|
||||
STDMETHOD(SetGroupTexture)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMTEXTURE value) PURE;
|
||||
STDMETHOD_(unsigned, GetGroupCount)(THIS) PURE;
|
||||
STDMETHOD(GetGroup)(THIS_ D3DRMGROUPINDEX id, unsigned *vCount, unsigned *fCount, unsigned *vPerFace,
|
||||
DWORD *fDataSize, unsigned *fData) PURE;
|
||||
STDMETHOD(GetVertices)(THIS_ D3DRMGROUPINDEX id, DWORD index, DWORD count, D3DRMVERTEX *returnPtr) PURE;
|
||||
STDMETHOD_(D3DCOLOR, GetGroupColor)(THIS_ D3DRMGROUPINDEX id) PURE;
|
||||
STDMETHOD_(D3DRMMAPPING, GetGroupMapping)(THIS_ D3DRMGROUPINDEX id) PURE;
|
||||
STDMETHOD_(D3DRMRENDERQUALITY, GetGroupQuality)(THIS_ D3DRMGROUPINDEX id) PURE;
|
||||
STDMETHOD(GetGroupMaterial)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMMATERIAL *returnPtr) PURE;
|
||||
STDMETHOD(GetGroupTexture)(THIS_ D3DRMGROUPINDEX id, LPDIRECT3DRMTEXTURE *returnPtr) PURE;
|
||||
};
|
||||
#undef INTERFACE
|
||||
|
||||
#if !defined(__cplusplus) || defined(CINTERFACE)
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirect3DRMMesh_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
||||
#define IDirect3DRMMesh_AddRef(p) (p)->lpVtbl->AddRef(p)
|
||||
#define IDirect3DRMMesh_Release(p) (p)->lpVtbl->Release(p)
|
||||
/*** IDirect3DRMObject methods ***/
|
||||
#define IDirect3DRMMesh_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c)
|
||||
#define IDirect3DRMMesh_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b)
|
||||
#define IDirect3DRMMesh_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
|
||||
#define IDirect3DRMMesh_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a)
|
||||
#define IDirect3DRMMesh_GetAppData(p) (p)->lpVtbl->GetAppData(p)
|
||||
#define IDirect3DRMMesh_SetName(p,a) (p)->lpVtbl->SetName(p,a)
|
||||
#define IDirect3DRMMesh_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
|
||||
#define IDirect3DRMMesh_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b)
|
||||
/*** IDirect3DRMMesh methods ***/
|
||||
#define IDirect3DRMMesh_Scale(p,a,b,c) (p)->lpVtbl->Scale(p,a,b,c)
|
||||
#define IDirect3DRMMesh_Translate(p,a,b,c) (p)->lpVtbl->Translate(p,a,b,c)
|
||||
#define IDirect3DRMMesh_GetBox(p,a) (p)->lpVtbl->GetBox(p,a)
|
||||
#define IDirect3DRMMesh_AddGroup(p,a,b,c,d,e) (p)->lpVtbl->AddGroup(p,a,b,c,d,e)
|
||||
#define IDirect3DRMMesh_SetVertices(p,a,b,c,d) (p)->lpVtbl->SetVertices(p,a,b,c,d)
|
||||
#define IDirect3DRMMesh_SetGroupColor(p,a,b) (p)->lpVtbl->SetGroupColor(p,a,b)
|
||||
#define IDirect3DRMMesh_SetGroupColorRGB(p,a,b,c,d) (p)->lpVtbl->SetGroupColorRGB(p,a,b,c,d)
|
||||
#define IDirect3DRMMesh_SetGroupMapping(p,a,b) (p)->lpVtbl->SetGroupMapping(p,a,b)
|
||||
#define IDirect3DRMMesh_SetGroupQuality(p,a,b) (p)->lpVtbl->SetGroupQuality(p,a,b)
|
||||
#define IDirect3DRMMesh_SetGroupMaterial(p,a,b) (p)->lpVtbl->SetGroupMaterial(p,a,b)
|
||||
#define IDirect3DRMMesh_SetGroupTexture(p,a,b) (p)->lpVtbl->SetGroupTexture(p,a,b)
|
||||
#define IDirect3DRMMesh_GetGroupCount(p) (p)->lpVtbl->GetGroupCount(p)
|
||||
#define IDirect3DRMMesh_GetGroup(p,a,b,c,d,e,f) (p)->lpVtbl->GetGroup(p,a,b,c,d,e,f)
|
||||
#define IDirect3DRMMesh_GetVertices(p,a,b,c,d) (p)->lpVtbl->GetVertices(p,a,b,c,d)
|
||||
#define IDirect3DRMMesh_GetGroupColor(p,a) (p)->lpVtbl->GetGroupColor(p,a)
|
||||
#define IDirect3DRMMesh_GetGroupMapping(p,a) (p)->lpVtbl->GetGroupMapping(p,a)
|
||||
#define IDirect3DRMMesh_GetGroupQuality(p,a) (p)->lpVtbl->GetGroupQuality(p,a)
|
||||
#define IDirect3DRMMesh_GetGroupMaterial(p,a,b) (p)->lpVtbl->GetGroupMaterial(p,a,b)
|
||||
#define IDirect3DRMMesh_GetGroupTexture(p,a,b) (p)->lpVtbl->GetGroupTexture(p,a,b)
|
||||
#else
|
||||
/*** IUnknown methods ***/
|
||||
#define IDirect3DRMMesh_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
|
||||
#define IDirect3DRMMesh_AddRef(p) (p)->AddRef()
|
||||
#define IDirect3DRMMesh_Release(p) (p)->Release()
|
||||
/*** IDirect3DRMObject methods ***/
|
||||
#define IDirect3DRMMesh_Clone(p,a,b,c) (p)->Clone(a,b,c)
|
||||
#define IDirect3DRMMesh_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b)
|
||||
#define IDirect3DRMMesh_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
|
||||
#define IDirect3DRMMesh_SetAppData(p,a) (p)->SetAppData(a)
|
||||
#define IDirect3DRMMesh_GetAppData(p) (p)->GetAppData()
|
||||
#define IDirect3DRMMesh_SetName(p,a) (p)->SetName(a)
|
||||
#define IDirect3DRMMesh_GetName(p,a,b) (p)->GetName(a,b)
|
||||
#define IDirect3DRMMesh_GetClassName(p,a,b) (p)->GetClassName(a,b)
|
||||
/*** IDirect3DRMMesh methods ***/
|
||||
#define IDirect3DRMMesh_Scale(p,a,b,c) (p)->Scale(a,b,c)
|
||||
#define IDirect3DRMMesh_Translate(p,a,b,c) (p)->Translate(a,b,c)
|
||||
#define IDirect3DRMMesh_GetBox(p,a) (p)->GetBox(a)
|
||||
#define IDirect3DRMMesh_AddGroup(p,a,b,c,d,e) (p)->AddGroup(a,b,c,d,e)
|
||||
#define IDirect3DRMMesh_SetVertices(p,a,b,c,d) (p)->SetVertices(a,b,c,d)
|
||||
#define IDirect3DRMMesh_SetGroupColor(p,a,b) (p)->SetGroupColor(a,b)
|
||||
#define IDirect3DRMMesh_SetGroupColorRGB(p,a,b,c,d) (p)->SetGroupColorRGB(a,b,c,d)
|
||||
#define IDirect3DRMMesh_SetGroupMapping(p,a,b) (p)->SetGroupMapping(a,b)
|
||||
#define IDirect3DRMMesh_SetGroupQuality(p,a,b) (p)->SetGroupQuality(a,b)
|
||||
#define IDirect3DRMMesh_SetGroupMaterial(p,a,b) (p)->SetGroupMaterial(a,b)
|
||||
#define IDirect3DRMMesh_SetGroupTexture(p,a,b) (p)->SetGroupTexture(a,b)
|
||||
#define IDirect3DRMMesh_GetGroupCount(p) (p)->GetGroupCount()
|
||||
#define IDirect3DRMMesh_GetGroup(p,a,b,c,d,e,f) (p)->GetGroup(a,b,c,d,e,f)
|
||||
#define IDirect3DRMMesh_GetVertices(p,a,b,c,d) (p)->GetVertices(a,b,c,d)
|
||||
#define IDirect3DRMMesh_GetGroupColor(p,a) (p)->GetGroupColor(a)
|
||||
#define IDirect3DRMMesh_GetGroupMapping(p,a) (p)->GetGroupMapping(a)
|
||||
#define IDirect3DRMMesh_GetGroupQuality(p,a) (p)->GetGroupQuality(a)
|
||||
#define IDirect3DRMMesh_GetGroupMaterial(p,a,b) (p)->lpVtbl->GetGroupMaterial(a,b)
|
||||
#define IDirect3DRMMesh_GetGroupTexture(p,a,b) (p)->lpVtbl->GetGroupTexture(a,b)
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue