Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
3ac5064b
Commit
3ac5064b
authored
Jan 01, 2010
by
Christian Costa
Committed by
Alexandre Julliard
Jan 04, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
d3drm: Add some definitions.
parent
e4a936a2
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
203 additions
and
2 deletions
+203
-2
d3drm.h
include/d3drm.h
+134
-0
d3drmdef.h
include/d3drmdef.h
+51
-2
d3drmobj.h
include/d3drmobj.h
+18
-0
No files found.
include/d3drm.h
View file @
3ac5064b
...
...
@@ -35,6 +35,140 @@ typedef void *LPDIRECT3DRM;
HRESULT
WINAPI
Direct3DRMCreate
(
LPDIRECT3DRM
*
ppDirect3DRM
);
/*****************************************************************************
* IDirect3DRMObject interface
*/
#ifdef WINE_NO_UNICODE_MACROS
#undef GetClassName
#endif
#define INTERFACE IDirect3DRM
DECLARE_INTERFACE_
(
IDirect3DRM
,
IUnknown
)
{
/*** IUnknown methods ***/
STDMETHOD_
(
HRESULT
,
QueryInterface
)(
THIS_
REFIID
riid
,
void
**
ppvObject
)
PURE
;
STDMETHOD_
(
ULONG
,
AddRef
)(
THIS
)
PURE
;
STDMETHOD_
(
ULONG
,
Release
)(
THIS
)
PURE
;
/*** IDirect3DRM methods ***/
STDMETHOD
(
CreateObject
)(
THIS_
REFCLSID
rclsid
,
LPUNKNOWN
pUnkOuter
,
REFIID
riid
,
LPVOID
*
ppvObj
)
PURE
;
STDMETHOD
(
CreateFrame
)(
THIS_
LPDIRECT3DRMFRAME
,
LPDIRECT3DRMFRAME
*
)
PURE
;
STDMETHOD
(
CreateMesh
)(
THIS_
LPDIRECT3DRMMESH
*
)
PURE
;
STDMETHOD
(
CreateMeshBuilder
)(
THIS_
LPDIRECT3DRMMESHBUILDER
*
)
PURE
;
STDMETHOD
(
CreateFace
)(
THIS_
LPDIRECT3DRMFACE
*
)
PURE
;
STDMETHOD
(
CreateAnimation
)(
THIS_
LPDIRECT3DRMANIMATION
*
)
PURE
;
STDMETHOD
(
CreateAnimationSet
)(
THIS_
LPDIRECT3DRMANIMATIONSET
*
)
PURE
;
STDMETHOD
(
CreateTexture
)(
THIS_
LPD3DRMIMAGE
,
LPDIRECT3DRMTEXTURE
*
)
PURE
;
STDMETHOD
(
CreateLight
)(
THIS_
D3DRMLIGHTTYPE
,
D3DCOLOR
,
LPDIRECT3DRMLIGHT
*
)
PURE
;
STDMETHOD
(
CreateLightRGB
)(
THIS_
D3DRMLIGHTTYPE
,
D3DVALUE
,
D3DVALUE
,
D3DVALUE
,
LPDIRECT3DRMLIGHT
*
)
PURE
;
STDMETHOD
(
CreateMaterial
)(
THIS_
D3DVALUE
,
LPDIRECT3DRMMATERIAL
*
)
PURE
;
STDMETHOD
(
CreateDevice
)(
THIS_
DWORD
,
DWORD
,
LPDIRECT3DRMDEVICE
*
)
PURE
;
STDMETHOD
(
CreateDeviceFromSurface
)(
THIS_
LPGUID
pGUID
,
LPDIRECTDRAW
pDD
,
LPDIRECTDRAWSURFACE
pDDSBack
,
LPDIRECT3DRMDEVICE
*
)
PURE
;
STDMETHOD
(
CreateDeviceFromD3D
)(
THIS_
LPDIRECT3D
pD3D
,
LPDIRECT3DDEVICE
pD3DDev
,
LPDIRECT3DRMDEVICE
*
)
PURE
;
STDMETHOD
(
CreateDeviceFromClipper
)(
THIS_
LPDIRECTDRAWCLIPPER
pDDClipper
,
LPGUID
pGUID
,
int
width
,
int
height
,
LPDIRECT3DRMDEVICE
*
)
PURE
;
STDMETHOD
(
CreateShadow
)(
THIS_
LPDIRECT3DRMVISUAL
,
LPDIRECT3DRMLIGHT
,
D3DVALUE
px
,
D3DVALUE
py
,
D3DVALUE
pz
,
D3DVALUE
nx
,
D3DVALUE
ny
,
D3DVALUE
nz
,
LPDIRECT3DRMVISUAL
*
)
PURE
;
STDMETHOD
(
CreateTextureFromSurface
)(
THIS_
LPDIRECTDRAWSURFACE
pDDS
,
LPDIRECT3DRMTEXTURE
*
)
PURE
;
STDMETHOD
(
CreateViewport
)(
THIS_
LPDIRECT3DRMDEVICE
,
LPDIRECT3DRMFRAME
,
DWORD
,
DWORD
,
DWORD
,
DWORD
,
LPDIRECT3DRMVIEWPORT
*
)
PURE
;
STDMETHOD
(
CreateWrap
)(
THIS_
D3DRMWRAPTYPE
,
LPDIRECT3DRMFRAME
,
D3DVALUE
ox
,
D3DVALUE
oy
,
D3DVALUE
oz
,
D3DVALUE
dx
,
D3DVALUE
dy
,
D3DVALUE
dz
,
D3DVALUE
ux
,
D3DVALUE
uy
,
D3DVALUE
uz
,
D3DVALUE
ou
,
D3DVALUE
ov
,
D3DVALUE
su
,
D3DVALUE
sv
,
LPDIRECT3DRMWRAP
*
)
PURE
;
STDMETHOD
(
CreateUserVisual
)(
THIS_
D3DRMUSERVISUALCALLBACK
,
LPVOID
pArg
,
LPDIRECT3DRMUSERVISUAL
*
)
PURE
;
STDMETHOD
(
LoadTexture
)(
THIS_
const
char
*
,
LPDIRECT3DRMTEXTURE
*
)
PURE
;
STDMETHOD
(
LoadTextureFromResource
)(
THIS_
HRSRC
rs
,
LPDIRECT3DRMTEXTURE
*
)
PURE
;
STDMETHOD
(
SetSearchPath
)(
THIS_
LPCSTR
)
PURE
;
STDMETHOD
(
AddSearchPath
)(
THIS_
LPCSTR
)
PURE
;
STDMETHOD
(
GetSearchPath
)(
THIS_
DWORD
*
size_return
,
LPSTR
path_return
)
PURE
;
STDMETHOD
(
SetDefaultTextureColors
)(
THIS_
DWORD
)
PURE
;
STDMETHOD
(
SetDefaultTextureShades
)(
THIS_
DWORD
)
PURE
;
STDMETHOD
(
GetDevices
)(
THIS_
LPDIRECT3DRMDEVICEARRAY
*
)
PURE
;
STDMETHOD
(
GetNamedObject
)(
THIS_
const
char
*
,
LPDIRECT3DRMOBJECT
*
)
PURE
;
STDMETHOD
(
EnumerateObjects
)(
THIS_
D3DRMOBJECTCALLBACK
,
LPVOID
)
PURE
;
STDMETHOD
(
Load
)(
THIS_
LPVOID
,
LPVOID
,
LPIID
*
,
DWORD
,
D3DRMLOADOPTIONS
,
D3DRMLOADCALLBACK
,
LPVOID
,
D3DRMLOADTEXTURECALLBACK
,
LPVOID
,
LPDIRECT3DRMFRAME
)
PURE
;
STDMETHOD
(
Tick
)(
THIS_
D3DVALUE
)
PURE
;
};
#undef INTERFACE
#if !defined(__cplusplus) || defined(CINTERFACE)
/*** IUnknown methods ***/
#define IDirect3DRM_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDirect3DRM_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IDirect3DRM_Release(p) (p)->lpVtbl->Release(p)
/*** IDirect3DRM methods ***/
#define IDirect3DRM_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,d)
#define IDirect3DRM_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b)
#define IDirect3DRM_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a)
#define IDirect3DRM_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a)
#define IDirect3DRM_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a)
#define IDirect3DRM_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a)
#define IDirect3DRM_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a)
#define IDirect3DRM_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b)
#define IDirect3DRM_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c)
#define IDirect3DRM_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e)
#define IDirect3DRM_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b)
#define IDirect3DRM_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c)
#define IDirect3DRM_CreateDeviceFromSurface(p,a,b,c,d) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d)
#define IDirect3DRM_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c)
#define IDirect3DRM_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e)
#define IDirect3DRM_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b)
#define IDirect3DRM_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i)
#define IDirect3DRM_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g)
#define IDirect3DRM_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q)
#define IDirect3DRM_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c)
#define IDirect3DRM_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b)
#define IDirect3DRM_LoadTextureFromResource(p,a,b) (p)->lpVtbl->LoadTextureFromResource(p,a,b)
#define IDirect3DRM_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a)
#define IDirect3DRM_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a)
#define IDirect3DRM_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b)
#define IDirect3DRM_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a)
#define IDirect3DRM_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a)
#define IDirect3DRM_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a)
#define IDirect3DRM_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b)
#define IDirect3DRM_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b)
#define IDirect3DRM_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j)
#define IDirect3DRM_Tick(p,a) (p)->lpVtbl->Tick(p,a)
#else
/*** IUnknown methods ***/
#define IDirect3DRM_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
#define IDirect3DRM_AddRef(p) (p)->AddRef()
#define IDirect3DRM_Release(p) (p)->Release()
/*** IDirect3DRM methods ***/
#define IDirect3DRM_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,d)
#define IDirect3DRM_CreateFrame(p,a,b) (p)->CreateFrame(a,b)
#define IDirect3DRM_CreateMesh(p,a) (p)->CreateMesh(a)
#define IDirect3DRM_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a)
#define IDirect3DRM_CreateFace(p,a) (p)->CreateFace(a)
#define IDirect3DRM_CreateAnimation(p,a) (p)->CreateAnimation(a)
#define IDirect3DRM_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a)
#define IDirect3DRM_CreateTexture(p,a,b) (p)->CreateTexture(a,b)
#define IDirect3DRM_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c)
#define IDirect3DRM_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e)
#define IDirect3DRM_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b)
#define IDirect3DRM_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c)
#define IDirect3DRM_CreateDeviceFromSurface(p,a,b,c,d) (p)->CreateDeviceFromSurface(a,b,c,d)
#define IDirect3DRM_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c)
#define IDirect3DRM_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e)
#define IDirect3DRM_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b)
#define IDirect3DRM_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i)
#define IDirect3DRM_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g)
#define IDirect3DRM_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p)
#define IDirect3DRM_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c)
#define IDirect3DRM_LoadTexture(p,a,b) (p)->LoadTexture(a,b)
#define IDirect3DRM_LoadTextureFromResource(p,a,b) (p)->LoadTextureFromResource(a,b)
#define IDirect3DRM_SetSearchPath(p,a) (p)->SetSearchPath(a)
#define IDirect3DRM_AddSearchPath(p,a) (p)->AddSearchPath(a)
#define IDirect3DRM_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b)
#define IDirect3DRM_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a)
#define IDirect3DRM_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a)
#define IDirect3DRM_GetDevices(p,a) (p)->GetDevices(a)
#define IDirect3DRM_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b)
#define IDirect3DRM_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b)
#define IDirect3DRM_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j)
#define IDirect3DRM_Tick(p,a) (p)->Tick(a)
#endif
#define D3DRM_OK DD_OK
#define D3DRMERR_BADOBJECT MAKE_DDHRESULT(781)
#define D3DRMERR_BADTYPE MAKE_DDHRESULT(782)
...
...
include/d3drmdef.h
View file @
3ac5064b
...
...
@@ -28,12 +28,61 @@ extern "C" {
#endif
typedef
D3DVALUE
D3DRMMATRIX4D
[
4
][
4
];
typedef
struct
_D3DRMQUATERNION
{
typedef
struct
_D3DRMQUATERNION
{
D3DVALUE
s
;
D3DVECTOR
v
;
}
D3DRMQUATERNION
,
*
LPD3DRMQUATERNION
;
typedef
enum
_D3DRMLIGHTTYPE
{
D3DRMLIGHT_AMBIENT
,
D3DRMLIGHT_POINT
,
D3DRMLIGHT_SPOT
,
D3DRMLIGHT_DIRECTIONAL
,
D3DRMLIGHT_PARALLELPOINT
}
D3DRMLIGHTTYPE
,
*
LPD3DRMLIGHTTYPE
;
typedef
struct
_D3DRMPALETTEENTRY
{
unsigned
char
red
;
unsigned
char
green
;
unsigned
char
blue
;
unsigned
char
flags
;
}
D3DRMPALETTEENTRY
,
*
LPD3DRMPALETTEENTRY
;
typedef
struct
_D3DRMIMAGE
{
int
width
;
int
height
;
int
aspectx
;
int
aspecty
;
int
depth
;
int
rgb
;
int
bytes_per_line
;
void
*
buffer1
;
void
*
buffer2
;
unsigned
long
red_mask
;
unsigned
long
green_mask
;
unsigned
long
blue_mask
;
unsigned
long
alpha_mask
;
int
palette_size
;
D3DRMPALETTEENTRY
*
palette
;
}
D3DRMIMAGE
,
*
LPD3DRMIMAGE
;
typedef
enum
_D3DRMWRAPTYPE
{
D3DRMWRAP_FLAT
,
D3DRMWRAP_CYLINDER
,
D3DRMWRAP_SPHERE
,
D3DRMWRAP_CHROME
,
D3DRMWRAP_SHEET
,
D3DRMWRAP_BOX
}
D3DRMWRAPTYPE
,
*
LPD3DRMWRAPTYPE
;
typedef
DWORD
D3DRMLOADOPTIONS
;
typedef
enum
_D3DRMUSERVISUALREASON
{
D3DRMUSERVISUAL_CANSEE
,
D3DRMUSERVISUAL_RENDER
}
D3DRMUSERVISUALREASON
,
*
LPD3DRMUSERVISUALREASON
;
void
WINAPI
D3DRMMatrixFromQuaternion
(
D3DRMMATRIX4D
,
LPD3DRMQUATERNION
);
LPD3DRMQUATERNION
WINAPI
D3DRMQuaternionFromRotation
(
LPD3DRMQUATERNION
,
LPD3DVECTOR
,
D3DVALUE
);
...
...
include/d3drmobj.h
View file @
3ac5064b
...
...
@@ -36,13 +36,31 @@ DEFINE_GUID(IID_IDirect3DRMObject, 0xeb16cb00, 0xd271, 0x11ce, 0xac, 0x
DEFINE_GUID
(
IID_IDirect3DRMVisual
,
0xeb16cb04
,
0xd271
,
0x11ce
,
0xac
,
0x48
,
0x00
,
0x00
,
0xc0
,
0x38
,
0x25
,
0xa1
);
typedef
struct
IDirect3DRMObject
*
LPDIRECT3DRMOBJECT
,
**
LPLPDIRECT3DRMOBJECT
;
typedef
struct
IDirect3DRMDevice
*
LPDIRECT3DRMDEVICE
,
**
LPLPDIRECT3DRMDEVICE
;
typedef
struct
IDirect3DRMViewport
*
LPDIRECT3DRMVIEWPORT
,
**
LPLPDIRECT3DRMVIEWPORT
;
typedef
struct
IDirect3DRMFrame
*
LPDIRECT3DRMFRAME
,
**
LPLPDIRECT3DRMFRAME
;
typedef
struct
IDirect3DRMVisual
*
LPDIRECT3DRMVISUAL
,
**
LPLPDIRECT3DRMVISUAL
;
typedef
struct
IDirect3DRMMesh
*
LPDIRECT3DRMMESH
,
**
LPLPDIRECT3DRMMESH
;
typedef
struct
IDirect3DRMMeshBuilder
*
LPDIRECT3DRMMESHBUILDER
,
**
LPLPDIRECT3DRMMESHBUILDER
;
typedef
struct
IDirect3DRMFace
*
LPDIRECT3DRMFACE
,
**
LPLPDIRECT3DRMFACE
;
typedef
struct
IDirect3DRMLight
*
LPDIRECT3DRMLIGHT
,
**
LPLPDIRECT3DRMLIGHT
;
typedef
struct
IDirect3DRMTexture
*
LPDIRECT3DRMTEXTURE
,
**
LPLPDIRECT3DRMTEXTURE
;
typedef
struct
IDirect3DRMWrap
*
LPDIRECT3DRMWRAP
,
**
LPLPDIRECT3DRMWRAP
;
typedef
struct
IDirect3DRMMaterial
*
LPDIRECT3DRMMATERIAL
,
**
LPLPDIRECT3DRMMATERIAL
;
typedef
struct
IDirect3DRMAnimation
*
LPDIRECT3DRMANIMATION
,
**
LPLPDIRECT3DRMANIMATION
;
typedef
struct
IDirect3DRMAnimationSet
*
LPDIRECT3DRMANIMATIONSET
,
**
LPLPDIRECT3DRMANIMATIONSET
;
typedef
struct
IDirect3DRMUserVisual
*
LPDIRECT3DRMUSERVISUAL
,
**
LPLPDIRECT3DRMUSERVISUAL
;
typedef
struct
IDirect3DRMDeviceArray
*
LPDIRECT3DRMDEVICEARRAY
,
**
LPLPDIRECT3DRMDEVICEARRAY
;
/* ********************************************************************
Types and structures
******************************************************************** */
typedef
void
(
__cdecl
*
D3DRMOBJECTCALLBACK
)(
LPDIRECT3DRMOBJECT
obj
,
LPVOID
arg
);
typedef
int
(
__cdecl
*
D3DRMUSERVISUALCALLBACK
)(
LPDIRECT3DRMUSERVISUAL
obj
,
LPVOID
arg
,
D3DRMUSERVISUALREASON
reason
,
LPDIRECT3DRMDEVICE
dev
,
LPDIRECT3DRMVIEWPORT
view
);
typedef
HRESULT
(
__cdecl
*
D3DRMLOADTEXTURECALLBACK
)(
char
*
tex_name
,
void
*
arg
,
LPDIRECT3DRMTEXTURE
*
);
typedef
void
(
__cdecl
*
D3DRMLOADCALLBACK
)(
LPDIRECT3DRMOBJECT
object
,
REFIID
objectguid
,
LPVOID
arg
);
typedef
struct
_D3DRMPICKDESC
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment