2 * Copyright © 2014 Jon Turney
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
24 #ifndef WINDOWSDRISTR_H
25 #define WINDOWSDRISTR_H
27 #include "windowsdriconst.h"
29 #define WINDOWSDRINAME "Windows-DRI"
31 #define WINDOWS_DRI_MAJOR_VERSION 1 /* current version numbers */
32 #define WINDOWS_DRI_MINOR_VERSION 0
33 #define WINDOWS_DRI_PATCH_VERSION 0
35 typedef struct _WindowsDRIQueryVersion
37 CARD8 reqType
; /* always DRIReqCode */
38 CARD8 driReqType
; /* always X_DRIQueryVersion */
40 } xWindowsDRIQueryVersionReq
;
41 #define sz_xWindowsDRIQueryVersionReq 4
45 BYTE type
; /* X_Reply */
47 CARD16 sequenceNumber B16
;
49 CARD16 majorVersion B16
; /* major version of DRI protocol */
50 CARD16 minorVersion B16
; /* minor version of DRI protocol */
51 CARD32 patchVersion B32
; /* patch version of DRI protocol */
56 } xWindowsDRIQueryVersionReply
;
57 #define sz_xWindowsDRIQueryVersionReply 32
59 typedef struct _WindowsDRIQueryDirectRenderingCapable
61 CARD8 reqType
; /* always DRIReqCode */
62 CARD8 driReqType
; /* X_DRIQueryDirectRenderingCapable */
65 } xWindowsDRIQueryDirectRenderingCapableReq
;
66 #define sz_xWindowsDRIQueryDirectRenderingCapableReq 8
70 BYTE type
; /* X_Reply */
72 CARD16 sequenceNumber B16
;
83 } xWindowsDRIQueryDirectRenderingCapableReply
;
84 #define sz_xWindowsDRIQueryDirectRenderingCapableReply 32
86 typedef struct _WindowsDRINotify
88 BYTE type
; /* always eventBase + event type */
90 CARD16 sequenceNumber B16
;
91 CARD32 time B32
; /* time of change */
98 } xWindowsDRINotifyEvent
;
99 #define sz_xWindowsDRINotifyEvent 32
101 typedef struct _WindowsDRIQueryDrawable
103 CARD8 reqType
; /* always DRIReqCode */
104 CARD8 driReqType
; /* always X_DRIQueryDrawable */
108 } xWindowsDRIQueryDrawableReq
;
109 #define sz_xWindowsDRIQueryDrawableReq 12
113 BYTE type
; /* X_Reply */
115 CARD16 sequenceNumber B16
;
117 CARD32 drawable_type B32
;
123 } xWindowsDRIQueryDrawableReply
;
124 #define sz_xWindowsDRIQueryDrawableReply 32
126 typedef struct _WindowsDRIFBConfigToPixelFormat
128 CARD8 reqType
; /* always DRIReqCode */
129 CARD8 driReqType
; /* always X_DRIFBConfigToPixelFormat */
132 CARD32 fbConfigID B32
;
133 } xWindowsDRIFBConfigToPixelFormatReq
;
135 #define sz_xWindowsDRIFBConfigToPixelFormatReq 12
139 BYTE type
; /* X_Reply */
141 CARD16 sequenceNumber B16
;
143 CARD32 pixelFormatIndex B32
;
149 } xWindowsDRIFBConfigToPixelFormatReply
;
150 #define sz_xWindowsDRIFBConfigToPixelFormatReply 32
152 #endif /* WINDOWSDRISTR_H */