101e04c3fSmrg/*
201e04c3fSmrg * Copyright © 2014 Jon Turney
301e04c3fSmrg *
401e04c3fSmrg * Permission is hereby granted, free of charge, to any person obtaining a
501e04c3fSmrg * copy of this software and associated documentation files (the "Software"),
601e04c3fSmrg * to deal in the Software without restriction, including without limitation
701e04c3fSmrg * the rights to use, copy, modify, merge, publish, distribute, sublicense,
801e04c3fSmrg * and/or sell copies of the Software, and to permit persons to whom the
901e04c3fSmrg * Software is furnished to do so, subject to the following conditions:
1001e04c3fSmrg *
1101e04c3fSmrg * The above copyright notice and this permission notice (including the next
1201e04c3fSmrg * paragraph) shall be included in all copies or substantial portions of the
1301e04c3fSmrg * Software.
1401e04c3fSmrg *
1501e04c3fSmrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1601e04c3fSmrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1701e04c3fSmrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
1801e04c3fSmrg * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1901e04c3fSmrg * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
2001e04c3fSmrg * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
2101e04c3fSmrg * IN THE SOFTWARE.
2201e04c3fSmrg */
2301e04c3fSmrg
2401e04c3fSmrg#ifndef XWINDOWSDRI_H
2501e04c3fSmrg#define XWINDOWSDRI_H
2601e04c3fSmrg
2701e04c3fSmrg#include <X11/Xfuncproto.h>
2801e04c3fSmrg#include <X11/Xlib.h>
2901e04c3fSmrg
3001e04c3fSmrgtypedef struct
3101e04c3fSmrg{
3201e04c3fSmrg   int type;                    /* of event */
3301e04c3fSmrg   unsigned long serial;        /* # of last request processed by server */
3401e04c3fSmrg   Bool send_event;             /* true if this came frome a SendEvent request */
3501e04c3fSmrg   Display *display;            /* Display the event was read from */
3601e04c3fSmrg   Window window;               /* window of event */
3701e04c3fSmrg   Time time;                   /* server timestamp when event happened */
3801e04c3fSmrg   int kind;                    /* subtype of event */
3901e04c3fSmrg   int arg;
4001e04c3fSmrg} XWindowsDRINotifyEvent;
4101e04c3fSmrg
4201e04c3fSmrg_XFUNCPROTOBEGIN
4301e04c3fSmrgBool XWindowsDRIQueryExtension(Display * dpy, int *event_base,
4401e04c3fSmrg                              int *error_base);
4501e04c3fSmrg
4601e04c3fSmrgBool XWindowsDRIQueryVersion(Display * dpy, int *majorVersion,
4701e04c3fSmrg                            int *minorVersion, int *patchVersion);
4801e04c3fSmrg
4901e04c3fSmrgBool XWindowsDRIQueryDirectRenderingCapable(Display * dpy, int screen,
5001e04c3fSmrg                                          Bool *isCapable);
5101e04c3fSmrg
5201e04c3fSmrgBool XWindowsDRIQueryDrawable(Display * dpy, int screen, Drawable drawable,
5301e04c3fSmrg                             unsigned int *type, void ** handle);
5401e04c3fSmrg
5501e04c3fSmrgBool XWindowsDRIFBConfigToPixelFormat(Display *dpy, int screen, int fbConfigID,
5601e04c3fSmrg                                     int *pxfi);
5701e04c3fSmrg_XFUNCPROTOEND
5801e04c3fSmrg
5901e04c3fSmrg#endif /* XWINDOWSDRI_H */
60