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/* names in XvMCproto.h don't match the expectation of Xlib's GetReq* macros,
13   so we have to provide our own implementation */
14#define XvMCGetReq(name, req) \
15        req = (xvmc##name##Req *) _XGetRequest(                               \
16            dpy, (CARD8) info->codes->major_opcode, sizeof(xvmc##name##Req)); \
17        req->xvmcReqType = xvmc_##name
18
19_XFUNCPROTOBEGIN
20
21Status _xvmc_create_context(
22    Display *           /* dpy */,
23    XvMCContext *       /* context */,
24    int *               /* priv_count */,
25    CARD32 **           /* priv_data */
26);
27
28Status _xvmc_destroy_context(
29    Display *           /* dpy */,
30    XvMCContext *       /* context */
31);
32
33Status _xvmc_create_surface(
34    Display *           /* dpy */,
35    XvMCContext *       /* context */,
36    XvMCSurface *       /* surface */,
37    int *               /* priv_count */,
38    CARD32 **           /* priv_data */
39);
40
41Status _xvmc_destroy_surface(
42    Display *           /* dpy */,
43    XvMCSurface *       /* surface */
44);
45
46Status _xvmc_create_subpicture(
47    Display *           /* dpy */,
48    XvMCContext *       /* context */,
49    XvMCSubpicture *    /* subpicture */,
50    int *               /* priv_count */,
51    CARD32 **           /* priv_data */
52);
53
54Status _xvmc_destroy_subpicture(
55    Display *           /* dpy */,
56    XvMCSubpicture *    /* subpicture */
57);
58
59_XFUNCPROTOEND
60
61#endif /* XVMCLIBINT_H */
62