ReactOS 0.4.15-dev-7953-g1f49173
dxapi_driver.h
Go to the documentation of this file.
1#include <wdm.h>
2
3#include <windef.h>
4#include <winerror.h>
5#include <wingdi.h>
6#include <winddi.h>
7
8#include <ddkmapi.h>
9
10/* Prototypes */
11VOID DxGetVersionNumber(PVOID lpvInBuffer, LPDDGETVERSIONNUMBER lpvOutBuffer);
12VOID DxCloseHandle(PVOID lpvInBuffer, PVOID lpvOutBuffer);
13VOID DxOpenDirectDraw(PVOID lpvInBuffer, PVOID lpvOutBuffer);
14VOID DxOpenSurface(PVOID lpvInBuffer, PVOID lpvOutBuffer);
15VOID DxOpenVideoPort(PVOID lpvInBuffer, PVOID lpvOutBuffer);
16VOID DxGetKernelCaps(PVOID lpvInBuffer, PVOID lpvOutBuffer);
17VOID DxGetFieldNumber(PVOID lpvInBuffer, PVOID lpvOutBuffer);
18VOID DxSetFieldNumber(PVOID lpvInBuffer, PVOID lpvOutBuffer);
19VOID DxSetSkipPattern(PVOID lpvInBuffer, PVOID lpvOutBuffer);
20VOID DxGetSurfaceState(PVOID lpvInBuffer, PVOID lpvOutBuffer);
21VOID DxSetSurfaceState(PVOID lpvInBuffer, PVOID lpvOutBuffer);
22VOID DxLock(PVOID lpvInBuffer, PVOID lpvOutBuffer);
23VOID DxFlipOverlay(PVOID lpvInBuffer, PVOID lpvOutBuffer);
24VOID DxFlipVideoPort(PVOID lpvInBuffer, PVOID lpvOutBuffer);
25VOID DxGetCurrentAutoflip(PVOID lpvInBuffer, PVOID lpvOutBuffer);
26VOID DxGetPreviousAutoflip(PVOID lpvInBuffer, PVOID lpvOutBuffer);
27VOID DxRegisterEvent(PVOID lpvInBuffer, PVOID lpvOutBuffer);
28VOID DxUnregisterEvent(PVOID lpvInBuffer, PVOID lpvOutBuffer);
29VOID DxGetPolarity(PVOID lpvInBuffer, PVOID lpvOutBuffer);
30VOID DxOpenVpCatureDevice(PVOID lpvInBuffer, PVOID lpvOutBuffer);
31VOID DxAddVpCaptureBuffer(PVOID lpvInBuffer, PVOID lpvOutBuffer);
32VOID DxFlushVpCaptureBuffs(PVOID lpvInBuffer, PVOID lpvOutBuffer);
33
34/* Internal driver table being use as looking up table for correct size of structs */
36{
37 /* DD_DXAPI_GETVERSIONNUMBER */
38 0,
39 /* DD_DXAPI_CLOSEHANDLE */
40 sizeof(DDCLOSEHANDLE),
41 0, // DD_DXAPI_OPENDIRECTDRAW
42 0, // DD_DXAPI_OPENSURFACE
43 0, // DD_DXAPI_OPENVIDEOPORT
44 /* DD_DXAPI_GETKERNELCAPS */
45 sizeof(HANDLE),
46 /* DD_DXAPI_GET_VP_FIELD_NUMBER */
47 sizeof(DDGETFIELDNUMIN),
48 0, // DD_DXAPI_SET_VP_FIELD_NUMBER
49 0, // DD_DXAPI_SET_VP_SKIP_FIELD
50 0, // DD_DXAPI_GET_SURFACE_STATE
51 0, // DD_DXAPI_SET_SURFACE_STATE
52 0, // DD_DXAPI_LOCK
53 /* DD_DXAPI_FLIP_OVERLAY */
54 sizeof(DDFLIPOVERLAY),
55 /* DD_DXAPI_FLIP_VP */
56 sizeof(DDFLIPVIDEOPORT),
57 /* DD_DXAPI_GET_CURRENT_VP_AUTOFLIP_SURFACE */
58 sizeof(DDGETAUTOFLIPIN),
59 /* DD_DXAPI_GET_LAST_VP_AUTOFLIP_SURFACE */
60 sizeof(DDGETAUTOFLIPIN),
61 /* DD_DXAPI_REGISTER_CALLBACK */
62 sizeof(DDREGISTERCALLBACK),
63 /* DD_DXAPI_UNREGISTER_CALLBACK */
64 sizeof(DDREGISTERCALLBACK),
65 /* DD_DXAPI_GET_POLARITY */
66 sizeof(DDGETPOLARITYIN),
67 /* DD_DXAPI_OPENVPCAPTUREDEVICE */
69 /* DD_DXAPI_ADDVPCAPTUREBUFFER */
70 sizeof(DDADDVPCAPTUREBUFF),
71 /* DD_DXAPI_FLUSHVPCAPTUREBUFFERS */
72 sizeof(HANDLE)
73};
74
76{
77 /* DD_DXAPI_GETVERSIONNUMBER */
78 sizeof(DDGETVERSIONNUMBER),
79 /* DD_DXAPI_CLOSEHANDLE */
80 sizeof(DWORD),
81 0, // DD_DXAPI_OPENDIRECTDRAW
82 0, // DD_DXAPI_OPENSURFACE
83 0, // DD_DXAPI_OPENVIDEOPORT
84 /* DD_DXAPI_GETKERNELCAPS */
85 sizeof(DDGETKERNELCAPSOUT),
86 /* DD_DXAPI_GET_VP_FIELD_NUMBER */
87 sizeof(DDGETFIELDNUMOUT),
88 0, // DD_DXAPI_SET_VP_FIELD_NUMBER
89 0, // DD_DXAPI_SET_VP_SKIP_FIELD
90 0, // DD_DXAPI_GET_SURFACE_STATE
91 0, // DD_DXAPI_SET_SURFACE_STATE
92 0, // DD_DXAPI_LOCK
93 /* DD_DXAPI_FLIP_OVERLAY */
94 sizeof(DWORD),
95 /* DD_DXAPI_FLIP_VP */
96 sizeof(DWORD),
97 /* DD_DXAPI_GET_CURRENT_VP_AUTOFLIP_SURFACE */
98 sizeof(DDGETAUTOFLIPOUT),
99 /* DD_DXAPI_GET_LAST_VP_AUTOFLIP_SURFACE */
100 sizeof(DDGETAUTOFLIPOUT),
101 /* DD_DXAPI_REGISTER_CALLBACK */
102 sizeof(DWORD),
103 /* DD_DXAPI_UNREGISTER_CALLBACK */
104 sizeof(DWORD),
105 /* DD_DXAPI_GET_POLARITY */
106 sizeof(DDGETPOLARITYOUT),
107 /* DD_DXAPI_OPENVPCAPTUREDEVICE */
109 /* DD_DXAPI_ADDVPCAPTUREBUFFER */
110 sizeof(DWORD),
111 /* DD_DXAPI_FLUSHVPCAPTUREBUFFERS */
112 sizeof(DWORD)
113};
114
115/* Internal driver function */
117{
140};
#define DD_DXAPI_GETVERSIONNUMBER
Definition: ddkmapi.h:34
#define DD_DXAPI_FLIP_OVERLAY
Definition: ddkmapi.h:46
#define DD_DXAPI_REGISTER_CALLBACK
Definition: ddkmapi.h:50
#define DD_DXAPI_CLOSEHANDLE
Definition: ddkmapi.h:35
struct _DDFLIPVIDEOPORT DDFLIPVIDEOPORT
#define DD_DXAPI_GET_SURFACE_STATE
Definition: ddkmapi.h:43
#define DD_DXAPI_OPENVIDEOPORT
Definition: ddkmapi.h:38
#define DD_DXAPI_GET_CURRENT_VP_AUTOFLIP_SURFACE
Definition: ddkmapi.h:48
struct _DDGETAUTOFLIPIN DDGETAUTOFLIPIN
#define DD_DXAPI_GETKERNELCAPS
Definition: ddkmapi.h:39
#define DD_DXAPI_SET_SURFACE_STATE
Definition: ddkmapi.h:44
#define DD_DXAPI_OPENDIRECTDRAW
Definition: ddkmapi.h:36
#define DD_DXAPI_ADDVPCAPTUREBUFFER
Definition: ddkmapi.h:54
#define DD_DXAPI_SET_VP_SKIP_FIELD
Definition: ddkmapi.h:42
#define DD_DXAPI_FLUSHVPCAPTUREBUFFERS
Definition: ddkmapi.h:55
struct _DDGETFIELDNUMIN DDGETFIELDNUMIN
#define DD_FIRST_DXAPI
Definition: ddkmapi.h:33
#define DD_DXAPI_GET_LAST_VP_AUTOFLIP_SURFACE
Definition: ddkmapi.h:49
struct _DDGETVERSIONNUMBER DDGETVERSIONNUMBER
#define DD_DXAPI_LOCK
Definition: ddkmapi.h:45
struct _DDGETAUTOFLIPOUT DDGETAUTOFLIPOUT
#define DD_DXAPI_OPENSURFACE
Definition: ddkmapi.h:37
struct _DDREGISTERCALLBACK DDREGISTERCALLBACK
#define DD_DXAPI_GET_POLARITY
Definition: ddkmapi.h:52
#define DD_DXAPI_FLIP_VP
Definition: ddkmapi.h:47
#define DD_DXAPI_GET_VP_FIELD_NUMBER
Definition: ddkmapi.h:40
struct _DDOPENVPCAPTUREDEVICEIN DDOPENVPCAPTUREDEVICEIN
#define DD_DXAPI_OPENVPCAPTUREDEVICE
Definition: ddkmapi.h:53
struct _DDCLOSEHANDLE DDCLOSEHANDLE
#define DD_DXAPI_SET_VP_FIELD_NUMBER
Definition: ddkmapi.h:41
struct _DDGETPOLARITYOUT DDGETPOLARITYOUT
struct _DDGETKERNELCAPSOUT DDGETKERNELCAPSOUT
#define DD_DXAPI_UNREGISTER_CALLBACK
Definition: ddkmapi.h:51
VOID DxGetSurfaceState(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:247
DWORD tblCheckOutBuffer[]
Definition: dxapi_driver.h:75
VOID DxFlushVpCaptureBuffs(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:319
VOID DxFlipOverlay(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:265
VOID DxGetVersionNumber(PVOID lpvInBuffer, LPDDGETVERSIONNUMBER lpvOutBuffer)
Definition: main.c:191
VOID DxGetFieldNumber(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:229
VOID DxRegisterEvent(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:289
DWORD tblCheckInBuffer[]
Definition: dxapi_driver.h:35
VOID DxOpenSurface(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:211
VOID DxFlipVideoPort(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:271
VOID DxOpenVpCatureDevice(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:307
VOID DxLock(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:259
VOID DxCloseHandle(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:199
VOID DxSetFieldNumber(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:235
VOID DxGetCurrentAutoflip(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:277
VOID DxSetSurfaceState(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:253
VOID DxSetSkipPattern(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:241
VOID DxGetKernelCaps(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:223
VOID DxGetPolarity(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:301
VOID DxOpenDirectDraw(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:205
VOID DxOpenVideoPort(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:217
VOID DxGetPreviousAutoflip(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:283
VOID DxUnregisterEvent(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:295
VOID DxAddVpCaptureBuffer(PVOID lpvInBuffer, PVOID lpvOutBuffer)
Definition: main.c:313
DRVFN gDxApiEntryPoint[]
Definition: dxapi_driver.h:116
unsigned long DWORD
Definition: ntddk_ex.h:95
#define DWORD
Definition: nt_native.h:44
Definition: winddi.h:529
PVOID HANDLE
Definition: typedefs.h:73
LONG_PTR(APIENTRY * PFN)()
Definition: winddi.h:133