diff options
Diffstat (limited to 'src/glx/windows/windowsdristr.h')
-rw-r--r-- | src/glx/windows/windowsdristr.h | 152 |
1 files changed, 152 insertions, 0 deletions
diff --git a/src/glx/windows/windowsdristr.h b/src/glx/windows/windowsdristr.h new file mode 100644 index 00000000000..07ab2310c82 --- /dev/null +++ b/src/glx/windows/windowsdristr.h @@ -0,0 +1,152 @@ +/* + * Copyright © 2014 Jon Turney + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#ifndef WINDOWSDRISTR_H +#define WINDOWSDRISTR_H + +#include "windowsdriconst.h" + +#define WINDOWSDRINAME "Windows-DRI" + +#define WINDOWS_DRI_MAJOR_VERSION 1 /* current version numbers */ +#define WINDOWS_DRI_MINOR_VERSION 0 +#define WINDOWS_DRI_PATCH_VERSION 0 + +typedef struct _WindowsDRIQueryVersion +{ + CARD8 reqType; /* always DRIReqCode */ + CARD8 driReqType; /* always X_DRIQueryVersion */ + CARD16 length B16; +} xWindowsDRIQueryVersionReq; +#define sz_xWindowsDRIQueryVersionReq 4 + +typedef struct +{ + BYTE type; /* X_Reply */ + BOOL pad1; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD16 majorVersion B16; /* major version of DRI protocol */ + CARD16 minorVersion B16; /* minor version of DRI protocol */ + CARD32 patchVersion B32; /* patch version of DRI protocol */ + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xWindowsDRIQueryVersionReply; +#define sz_xWindowsDRIQueryVersionReply 32 + +typedef struct _WindowsDRIQueryDirectRenderingCapable +{ + CARD8 reqType; /* always DRIReqCode */ + CARD8 driReqType; /* X_DRIQueryDirectRenderingCapable */ + CARD16 length B16; + CARD32 screen B32; +} xWindowsDRIQueryDirectRenderingCapableReq; +#define sz_xWindowsDRIQueryDirectRenderingCapableReq 8 + +typedef struct +{ + BYTE type; /* X_Reply */ + BOOL pad1; + CARD16 sequenceNumber B16; + CARD32 length B32; + BOOL isCapable; + BOOL pad2; + BOOL pad3; + BOOL pad4; + CARD32 pad5 B32; + CARD32 pad6 B32; + CARD32 pad7 B32; + CARD32 pad8 B32; + CARD32 pad9 B32; +} xWindowsDRIQueryDirectRenderingCapableReply; +#define sz_xWindowsDRIQueryDirectRenderingCapableReply 32 + +typedef struct _WindowsDRINotify +{ + BYTE type; /* always eventBase + event type */ + BYTE kind; + CARD16 sequenceNumber B16; + CARD32 time B32; /* time of change */ + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xWindowsDRINotifyEvent; +#define sz_xWindowsDRINotifyEvent 32 + +typedef struct _WindowsDRIQueryDrawable +{ + CARD8 reqType; /* always DRIReqCode */ + CARD8 driReqType; /* always X_DRIQueryDrawable */ + CARD16 length B16; + CARD32 screen B32; + CARD32 drawable B32; +} xWindowsDRIQueryDrawableReq; +#define sz_xWindowsDRIQueryDrawableReq 12 + +typedef struct +{ + BYTE type; /* X_Reply */ + BOOL pad1; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD32 drawable_type B32; + CARD32 handle B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xWindowsDRIQueryDrawableReply; +#define sz_xWindowsDRIQueryDrawableReply 32 + +typedef struct _WindowsDRIFBConfigToPixelFormat +{ + CARD8 reqType; /* always DRIReqCode */ + CARD8 driReqType; /* always X_DRIFBConfigToPixelFormat */ + CARD16 length B16; + CARD32 screen B32; + CARD32 fbConfigID B32; +} xWindowsDRIFBConfigToPixelFormatReq; + +#define sz_xWindowsDRIFBConfigToPixelFormatReq 12 + +typedef struct +{ + BYTE type; /* X_Reply */ + BOOL pad1; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD32 pixelFormatIndex B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xWindowsDRIFBConfigToPixelFormatReply; +#define sz_xWindowsDRIFBConfigToPixelFormatReply 32 + +#endif /* WINDOWSDRISTR_H */ |