Commit ef527d81 authored by Christian Costa's avatar Christian Costa Committed by Alexandre Julliard

d3drm: Add definitions for IDirect3DRMViewport.

parent 6c9cd6cb
......@@ -27,6 +27,14 @@
extern "C" {
#endif
typedef struct _D3DRMVECTOR4D
{
D3DVALUE x;
D3DVALUE y;
D3DVALUE z;
D3DVALUE w;
} D3DRMVECTOR4D, *LPD3DRMVECTOR4D;
typedef D3DVALUE D3DRMMATRIX4D[4][4];
typedef struct _D3DRMQUATERNION {
......@@ -87,6 +95,14 @@ typedef enum _D3DRMWRAPTYPE {
D3DRMWRAP_BOX
} D3DRMWRAPTYPE, *LPD3DRMWRAPTYPE;
typedef enum _D3DRMPROJECTIONTYPE
{
D3DRMPROJECT_PERSPECTIVE,
D3DRMPROJECT_ORTHOGRAPHIC,
D3DRMPROJECT_RIGHTHANDPERSPECTIVE,
D3DRMPROJECT_RIGHTHANDORTHOGRAPHIC
} D3DRMPROJECTIONTYPE, *LPD3DRMPROJECTIONTYPE;
typedef DWORD D3DRMLOADOPTIONS;
typedef enum _D3DRMUSERVISUALREASON {
......
......@@ -710,6 +710,146 @@ DECLARE_INTERFACE_(IDirect3DRMDevice3,IDirect3DRMObject)
#define IDirect3DRMDevice3_SetStateChangeOptions(p,a,b,c) (p)->SetStateChangeOptions(a,b,c)
#endif
/*****************************************************************************
* IDirect3DRMViewport interface
*/
#define INTERFACE IDirect3DRMViewport
DECLARE_INTERFACE_(IDirect3DRMViewport,IDirect3DRMObject)
{
/*** 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;
/*** IDirect3DRMViewport methods ***/
STDMETHOD(Init) (THIS_ LPDIRECT3DRMDEVICE dev, LPDIRECT3DRMFRAME camera, DWORD xpos, DWORD ypos,
DWORD width, DWORD height) PURE;
STDMETHOD(Clear)(THIS) PURE;
STDMETHOD(Render)(THIS_ LPDIRECT3DRMFRAME) PURE;
STDMETHOD(SetFront)(THIS_ D3DVALUE) PURE;
STDMETHOD(SetBack)(THIS_ D3DVALUE) PURE;
STDMETHOD(SetField)(THIS_ D3DVALUE) PURE;
STDMETHOD(SetUniformScaling)(THIS_ BOOL) PURE;
STDMETHOD(SetCamera)(THIS_ LPDIRECT3DRMFRAME) PURE;
STDMETHOD(SetProjection)(THIS_ D3DRMPROJECTIONTYPE) PURE;
STDMETHOD(Transform)(THIS_ D3DRMVECTOR4D *d, D3DVECTOR *s) PURE;
STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DRMVECTOR4D *s) PURE;
STDMETHOD(Configure)(THIS_ LONG x, LONG y, DWORD width, DWORD height) PURE;
STDMETHOD(ForceUpdate)(THIS_ DWORD x1, DWORD y1, DWORD x2, DWORD y2) PURE;
STDMETHOD(SetPlane)(THIS_ D3DVALUE left, D3DVALUE right, D3DVALUE bottom, D3DVALUE top) PURE;
STDMETHOD(GetCamera)(THIS_ LPDIRECT3DRMFRAME *) PURE;
STDMETHOD(GetDevice)(THIS_ LPDIRECT3DRMDEVICE *) PURE;
STDMETHOD(GetPlane)(THIS_ D3DVALUE *left, D3DVALUE *right, D3DVALUE *bottom, D3DVALUE *top) PURE;
STDMETHOD(Pick)(THIS_ LONG x, LONG y, LPDIRECT3DRMPICKEDARRAY *return_visuals) PURE;
STDMETHOD_(BOOL, GetUniformScaling)(THIS) PURE;
STDMETHOD_(LONG, GetX)(THIS) PURE;
STDMETHOD_(LONG, GetY)(THIS) PURE;
STDMETHOD_(DWORD, GetWidth)(THIS) PURE;
STDMETHOD_(DWORD, GetHeight)(THIS) PURE;
STDMETHOD_(D3DVALUE, GetField)(THIS) PURE;
STDMETHOD_(D3DVALUE, GetBack)(THIS) PURE;
STDMETHOD_(D3DVALUE, GetFront)(THIS) PURE;
STDMETHOD_(D3DRMPROJECTIONTYPE, GetProjection)(THIS) PURE;
STDMETHOD(GetDirect3DViewport)(THIS_ LPDIRECT3DVIEWPORT *) PURE;
};
#undef INTERFACE
#if !defined(__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDirect3DRMViewport_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDirect3DRMViewport_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IDirect3DRMViewport_Release(p) (p)->lpVtbl->Release(p)
/*** IDirect3DRMObject methods ***/
#define IDirect3DRMViewport_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c)
#define IDirect3DRMViewport_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b)
#define IDirect3DRMViewport_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b)
#define IDirect3DRMViewport_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a)
#define IDirect3DRMViewport_GetAppData(p) (p)->lpVtbl->GetAppData(p)
#define IDirect3DRMViewport_SetName(p,a) (p)->lpVtbl->SetName(p,a)
#define IDirect3DRMViewport_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b)
#define IDirect3DRMViewport_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b)
/*** IDirect3DRMViewport methods ***/
#define IDirect3DRMViewport_Init(p,a,b,c,d) (p)->lpVtbl->Init(p,a,b,c,d)
#define IDirect3DRMViewport_Clear(p) (p)->lpVtbl->Clear(p)
#define IDirect3DRMViewport_Render(p,a) (p)->lpVtbl->Render(p,a)
#define IDirect3DRMViewport_SetFront(p,a) (p)->lpVtbl->SetFront(p,a)
#define IDirect3DRMViewport_SetBack(p,a) (p)->lpVtbl->(p,a)
#define IDirect3DRMViewport_SetField(p,a) (p)->lpVtbl->(p,a)
#define IDirect3DRMViewport_SetUniformScaling(p,a) (p)->lpVtbl->SetUniformScaling(p,a)
#define IDirect3DRMViewport_SetCamera(p,a) (p)->lpVtbl->SetCamera(p,a)
#define IDirect3DRMViewport_SetProjection(p,a) (p)->lpVtbl->SetProjection(p,a)
#define IDirect3DRMViewport_Transform(p,a,b) (p)->lpVtbl->Transform(p,a,b)
#define IDirect3DRMViewport_InverseTransform(p,a,b) (p)->lpVtbl->(p,a,b)
#define IDirect3DRMViewport_Configure(p,a,b,c,d) (p)->lpVtbl->Configure(p,a,b,c,d)
#define IDirect3DRMViewport_ForceUpdate(p,a,b,c,d) (p)->lpVtbl->ForceUpdate(p,a,b,c,d)
#define IDirect3DRMViewport_SetPlane(p,a,b,c,d) (p)->lpVtbl->SetPlane(p,a,b,c,d)
#define IDirect3DRMViewport_GetCamera(p,a) (p)->lpVtbl->(p,a)
#define IDirect3DRMViewport_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a)
#define IDirect3DRMViewport_GetPlane(p,a,b,c,d) (p)->lpVtbl->GetPlane(p,a,b,c,d)
#define IDirect3DRMViewport_Pick(p,a,b,c) (p)->lpVtbl->Pick(p,a,b,c)
#define IDirect3DRMViewport_GetUniformScaling(p) (p)->lpVtbl->GetUniformScaling(p)
#define IDirect3DRMViewport_GetX(p) (p)->lpVtbl->GetX(p)
#define IDirect3DRMViewport_GetY(p) (p)->lpVtbl->GetY(p)
#define IDirect3DRMViewport_GetWidth(p) (p)->lpVtbl->GetWidth(p)
#define IDirect3DRMViewport_GetHeight(p) (p)->lpVtbl->GetHeight(p)
#define IDirect3DRMViewport_GetField(p) (p)->lpVtbl->GetField(p)
#define IDirect3DRMViewport_GetBack(p) (p)->lpVtbl->GetBack(p)
#define IDirect3DRMViewport_GetFront(p) (p)->lpVtbl->GetFront(p)
#define IDirect3DRMViewport_GetProjection(p) (p)->lpVtbl->GetProjection(p)
#define IDirect3DRMViewport_GetDirect3DViewport(p,a) (p)->lpVtbl->GetDirect3DViewport(p,a)
#else
/*** IUnknown methods ***/
#define IDirect3DRMViewport_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
#define IDirect3DRMViewport_AddRef(p) (p)->AddRef()
#define IDirect3DRMViewport_Release(p) (p)->Release()
/*** IDirect3DRMObject methods ***/
#define IDirect3DRMViewport_Clone(p,a,b,c) (p)->Clone(a,b,c)
#define IDirect3DRMViewport_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b)
#define IDirect3DRMViewport_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b)
#define IDirect3DRMViewport_SetAppData(p,a) (p)->SetAppData(a)
#define IDirect3DRMViewport_GetAppData(p) (p)->GetAppData()
#define IDirect3DRMViewport_SetName(p,a) (p)->SetName(a)
#define IDirect3DRMViewport_GetName(p,a,b) (p)->GetName(a,b)
#define IDirect3DRMViewport_GetClassName(p,a,b) (p)->GetClassName(a,b)
/*** IDirect3DRMViewport methods ***/
#define IDirect3DRMViewport_Init(p,a,b,c,d) (p)->Init(p,a,b,c,d)
#define IDirect3DRMViewport_Clear(p) (p)->Clear(p)
#define IDirect3DRMViewport_Render(p,a) (p)->Render(p,a)
#define IDirect3DRMViewport_SetFront(p,a) (p)->SetFront(p,a)
#define IDirect3DRMViewport_SetBack(p,a) (p)->(p,a)
#define IDirect3DRMViewport_SetField(p,a) (p)->(p,a)
#define IDirect3DRMViewport_SetUniformScaling(p,a) (p)->SetUniformScaling(p,a)
#define IDirect3DRMViewport_SetCamera(p,a) (p)->SetCamera(p,a)
#define IDirect3DRMViewport_SetProjection(p,a) (p)->SetProjection(p,a)
#define IDirect3DRMViewport_Transform(p,a,b) (p)->Transform(p,a,b)
#define IDirect3DRMViewport_InverseTransform(p,a,b) (p)->(p,a,b)
#define IDirect3DRMViewport_Configure(p,a,b,c,d) (p)->Configure(p,a,b,c,d)
#define IDirect3DRMViewport_ForceUpdate(p,a,b,c,d) (p)->ForceUpdate(p,a,b,c,d)
#define IDirect3DRMViewport_SetPlane(p,a,b,c,d) (p)->SetPlane(p,a,b,c,d)
#define IDirect3DRMViewport_GetCamera(p,a) (p)->GetCamera(p,a)
#define IDirect3DRMViewport_GetDevice(p,a) (p)->GetDevice(p,a)
#define IDirect3DRMViewport_GetPlane(p,a,b,c,d) (p)->GetPlane(p,a,b,c,d)
#define IDirect3DRMViewport_Pick(p,a,b,c) (p)->Pick(p,a,b,c)
#define IDirect3DRMViewport_GetUniformScaling(p) (p)->GetUniformScaling(p)
#define IDirect3DRMViewport_GetX(p) (p)->GetX(p)
#define IDirect3DRMViewport_GetY(p) (p)->GetY(p)
#define IDirect3DRMViewport_GetWidth(p) (p)->GetWidth(p)
#define IDirect3DRMViewport_GetHeight(p) (p)->GetHeight(p)
#define IDirect3DRMViewport_GetField(p) (p)->GetField(p)
#define IDirect3DRMViewport_GetBack(p) (p)->GetBack(p)
#define IDirect3DRMViewport_GetFront(p) (p)->GetFront(p)
#define IDirect3DRMViewport_GetProjection(p) (p)->GetProjection(p)
#define IDirect3DRMViewport_GetDirect3DViewport(p,a) (p)->GetDirect3DViewport(p,a)
#endif
#ifdef __cplusplus
};
#endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment