XvMClibint.h revision 356f6deb
1#ifndef _XVMCLIBINT_H
2#define _XVMCLIBINT_H
3
4#include <X11/Xlibint.h>
5#include <X11/extensions/Xvproto.h>
6#include <X11/extensions/XvMCproto.h>
7#include <X11/extensions/XvMClib.h>
8
9#define XvMCCheckExtension(dpy, i, val) \
10  XextCheckExtension(dpy, i, xvmc_extension_name, val)
11
12
13#if !defined(UNIXCPP)
14#define XvMCGetReq(name, req) \
15        WORD64ALIGN\
16	if ((dpy->bufptr + sizeof(xvmc##name##Req)) > dpy->bufmax)\
17		_XFlush(dpy);\
18	req = (xvmc##name##Req *)(dpy->last_req = dpy->bufptr);\
19	req->reqType = info->codes->major_opcode;\
20        req->xvmcReqType = xvmc_##name; \
21        req->length = sizeof(xvmc##name##Req)>>2;\
22	dpy->bufptr += sizeof(xvmc##name##Req);\
23	dpy->request++
24#else
25#define XvMCGetReq(name, req) \
26        WORD64ALIGN\
27	if ((dpy->bufptr + sizeof(xvmc/**/name/**/Req)) > dpy->bufmax)\
28		_XFlush(dpy);\
29	req = (xvmc/**/name/**/Req *)(dpy->last_req = dpy->bufptr);\
30	req->reqType = info->codes->major_opcode;\
31	req->xvmcReqType = xvmc_/**/name;\
32	req->length = sizeof(xvmc/**/name/**/Req)>>2;\
33	dpy->bufptr += sizeof(xvmc/**/name/**/Req);\
34	dpy->request++
35#endif
36
37_XFUNCPROTOBEGIN
38
39Status _xvmc_create_context(
40    Display *		/* dpy */,
41    XvMCContext *	/* context */,
42    int *		/* priv_count */,
43    CARD32 **		/* priv_data */
44);
45
46Status _xvmc_destroy_context(
47    Display *		/* dpy */,
48    XvMCContext *	/* context */
49);
50
51Status _xvmc_create_surface (
52    Display *		/* dpy */,
53    XvMCContext *	/* context */,
54    XvMCSurface *	/* surface */,
55    int *		/* priv_count */,
56    CARD32 **		/* priv_data */
57);
58
59Status _xvmc_destroy_surface (
60    Display *		/* dpy */,
61    XvMCSurface *	/* surface */
62);
63
64Status _xvmc_create_subpicture (
65    Display *		/* dpy */,
66    XvMCContext *	/* context */,
67    XvMCSubpicture *	/* subpicture */,
68    int *		/* priv_count */,
69    CARD32 **		/* priv_data */
70);
71
72Status _xvmc_destroy_subpicture(
73    Display *		/* dpy */,
74    XvMCSubpicture *	/* subpicture */
75);
76
77_XFUNCPROTOEND
78
79#endif /* XVMCLIBINT_H */
80