summaryrefslogtreecommitdiff
path: root/xc/include
diff options
context:
space:
mode:
Diffstat (limited to 'xc/include')
-rw-r--r--xc/include/GL/Imakefile5
-rw-r--r--xc/include/GL/glu.h4
-rw-r--r--xc/include/GL/glx.h4
-rw-r--r--xc/include/GL/glxmd.h45
-rw-r--r--xc/include/GL/glxproto.h878
-rw-r--r--xc/include/GL/glxtokens.h5
-rw-r--r--xc/include/XF86keysym.h36
-rw-r--r--xc/include/Xos_r.h13
-rw-r--r--xc/include/Xosdefs.h6
-rw-r--r--xc/include/extensions/Imakefile19
-rw-r--r--xc/include/extensions/XKBsrv.h3
-rw-r--r--xc/include/extensions/Xext.h9
-rw-r--r--xc/include/extensions/XvMC.h117
-rw-r--r--xc/include/extensions/XvMClib.h145
-rw-r--r--xc/include/extensions/XvMCproto.h204
-rw-r--r--xc/include/fonts/fontproto.h11
16 files changed, 1353 insertions, 151 deletions
diff --git a/xc/include/GL/Imakefile b/xc/include/GL/Imakefile
index 750b4953f..fc6458972 100644
--- a/xc/include/GL/Imakefile
+++ b/xc/include/GL/Imakefile
@@ -1,12 +1,13 @@
-XCOMM $XFree86: xc/include/GL/Imakefile,v 1.10 2000/08/04 03:51:40 tsi Exp $
+XCOMM $XFree86: xc/include/GL/Imakefile,v 1.12 2001/03/22 21:48:52 dawes Exp $
LinkSourceFile(gl.h, ../../extras/Mesa/include/GL)
LinkSourceFile(glext.h, ../../extras/Mesa/include/GL)
LinkSourceFile(osmesa.h, ../../extras/Mesa/include/GL)
#if BuildGLXLibrary
-GLXHEADERS = gl.h glext.h glx.h glxint.h glxtokens.h osmesa.h
+GLXHEADERS = gl.h glext.h glu.h glx.h glxint.h glxmd.h glxproto.h \
+ glxtokens.h osmesa.h
#endif
HEADERS = $(GLXHEADERS)
diff --git a/xc/include/GL/glu.h b/xc/include/GL/glu.h
index e2eaf5a15..bc5d8bba4 100644
--- a/xc/include/GL/glu.h
+++ b/xc/include/GL/glu.h
@@ -1,4 +1,4 @@
-/* $XFree86: xc/include/GL/glu.h,v 1.1 2001/01/15 22:17:50 dawes Exp $ */
+/* $XFree86: xc/include/GL/glu.h,v 1.2 2001/04/03 02:18:39 dawes Exp $ */
/*
** License Applicability. Except to the extent portions of this file are
@@ -256,7 +256,7 @@ typedef struct GLUtesselator GLUtriangulatorObj;
#define GLU_TESS_MAX_COORD 1.0e150
/* Internal convenience typedefs */
-typedef void (*_GLUfuncptr)();
+typedef GLvoid (*_GLUfuncptr)(GLvoid);
extern void gluBeginCurve (GLUnurbs* nurb);
extern void gluBeginPolygon (GLUtesselator* tess);
diff --git a/xc/include/GL/glx.h b/xc/include/GL/glx.h
index ac7284edc..93b13d0f2 100644
--- a/xc/include/GL/glx.h
+++ b/xc/include/GL/glx.h
@@ -1,11 +1,11 @@
#ifndef __GLX_glx_h__
#define __GLX_glx_h__
-/* $XFree86: xc/include/GL/glx.h,v 1.7 2000/06/30 18:27:00 dawes Exp $ */
+/* $XFree86: xc/include/GL/glx.h,v 1.8 2001/03/21 15:51:38 dawes Exp $ */
/*
** License Applicability. Except to the extent portions of this file are
** made subject to an alternative license as permitted in the SGI Free
-** Software License B, Version 1.0 (the "License"), the contents of this
+** Software License B, Version 1.1 (the "License"), the contents of this
** file are subject only to the provisions of the License. You may not use
** this file except in compliance with the License. You may obtain a copy
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
diff --git a/xc/include/GL/glxmd.h b/xc/include/GL/glxmd.h
index 9b634840e..3c4dc6570 100644
--- a/xc/include/GL/glxmd.h
+++ b/xc/include/GL/glxmd.h
@@ -1,26 +1,39 @@
#ifndef _GLX_glxmd_h_
#define _GLX_glxmd_h_
-/* $XFree86: xc/include/GL/glxmd.h,v 1.2 1999/06/14 07:23:28 dawes Exp $ */
+/* $XFree86: xc/include/GL/glxmd.h,v 1.3 2001/03/21 15:51:38 dawes Exp $ */
/*
-** The contents of this file are subject to the GLX Public License Version 1.0
-** (the "License"). You may not use this file except in compliance with the
-** License. You may obtain a copy of the License at Silicon Graphics, Inc.,
-** attn: Legal Services, 2011 N. Shoreline Blvd., Mountain View, CA 94043
-** or at http://www.sgi.com/software/opensource/glx/license.html.
+** License Applicability. Except to the extent portions of this file are
+** made subject to an alternative license as permitted in the SGI Free
+** Software License B, Version 1.1 (the "License"), the contents of this
+** file are subject only to the provisions of the License. You may not use
+** this file except in compliance with the License. You may obtain a copy
+** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
+** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
**
-** Software distributed under the License is distributed on an "AS IS"
-** basis. ALL WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY
-** IMPLIED WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR
-** PURPOSE OR OF NON- INFRINGEMENT. See the License for the specific
-** language governing rights and limitations under the License.
+** http://oss.sgi.com/projects/FreeB
**
-** The Original Software is GLX version 1.2 source code, released February,
-** 1999. The developer of the Original Software is Silicon Graphics, Inc.
-** Those portions of the Subject Software created by Silicon Graphics, Inc.
-** are Copyright (c) 1991-9 Silicon Graphics, Inc. All Rights Reserved.
+** Note that, as provided in the License, the Software is distributed on an
+** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
+** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
+** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
+** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
**
-** $SGI$
+** Original Code. The Original Code is: OpenGL Sample Implementation,
+** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
+** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
+** Copyright in any portions created by third parties is as indicated
+** elsewhere herein. All Rights Reserved.
+**
+** Additional Notice Provisions: The application programming interfaces
+** established by SGI in conjunction with the Original Code are The
+** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
+** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
+** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
+** Window System(R) (Version 1.3), released October 19, 1998. This software
+** was created using the OpenGL(R) version 1.2.1 Sample Implementation
+** published by SGI, but has not been independently verified as being
+** compliant with the OpenGL(R) version 1.2.1 Specification.
*/
/*
diff --git a/xc/include/GL/glxproto.h b/xc/include/GL/glxproto.h
index a6659cde1..e63d98089 100644
--- a/xc/include/GL/glxproto.h
+++ b/xc/include/GL/glxproto.h
@@ -1,26 +1,39 @@
#ifndef _GLX_glxproto_h_
#define _GLX_glxproto_h_
-/* $XFree86: xc/include/GL/glxproto.h,v 1.2 1999/06/14 07:23:29 dawes Exp $ */
+/* $XFree86: xc/include/GL/glxproto.h,v 1.3 2001/03/21 15:51:38 dawes Exp $ */
/*
-** The contents of this file are subject to the GLX Public License Version 1.0
-** (the "License"). You may not use this file except in compliance with the
-** License. You may obtain a copy of the License at Silicon Graphics, Inc.,
-** attn: Legal Services, 2011 N. Shoreline Blvd., Mountain View, CA 94043
-** or at http://www.sgi.com/software/opensource/glx/license.html.
+** License Applicability. Except to the extent portions of this file are
+** made subject to an alternative license as permitted in the SGI Free
+** Software License B, Version 1.1 (the "License"), the contents of this
+** file are subject only to the provisions of the License. You may not use
+** this file except in compliance with the License. You may obtain a copy
+** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
+** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
**
-** Software distributed under the License is distributed on an "AS IS"
-** basis. ALL WARRANTIES ARE DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY
-** IMPLIED WARRANTIES OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR
-** PURPOSE OR OF NON- INFRINGEMENT. See the License for the specific
-** language governing rights and limitations under the License.
+** http://oss.sgi.com/projects/FreeB
**
-** The Original Software is GLX version 1.2 source code, released February,
-** 1999. The developer of the Original Software is Silicon Graphics, Inc.
-** Those portions of the Subject Software created by Silicon Graphics, Inc.
-** are Copyright (c) 1991-9 Silicon Graphics, Inc. All Rights Reserved.
+** Note that, as provided in the License, the Software is distributed on an
+** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
+** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
+** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
+** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
**
-** $SGI$
+** Original Code. The Original Code is: OpenGL Sample Implementation,
+** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
+** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
+** Copyright in any portions created by third parties is as indicated
+** elsewhere herein. All Rights Reserved.
+**
+** Additional Notice Provisions: The application programming interfaces
+** established by SGI in conjunction with the Original Code are The
+** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
+** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
+** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
+** Window System(R) (Version 1.3), released October 19, 1998. This software
+** was created using the OpenGL(R) version 1.2.1 Sample Implementation
+** published by SGI, but has not been independently verified as being
+** compliant with the OpenGL(R) version 1.2.1 Specification.
*/
#include "GL/glxmd.h"
@@ -29,19 +42,32 @@
/*
** Errrors.
-*/
-#define GLXBadContext 0
+*/
+#define GLXBadContext 0
#define GLXBadContextState 1
#define GLXBadDrawable 2
#define GLXBadPixmap 3
#define GLXBadContextTag 4
#define GLXBadCurrentWindow 5
-#define GLXBadRenderRequest 6
+#define GLXBadRenderRequest 6
#define GLXBadLargeRequest 7
#define GLXUnsupportedPrivateRequest 8
+#define GLXBadFBConfig 9
+#define GLXBadPbuffer 10
+#define GLXBadCurrentDrawable 11
+#define GLXBadWindow 12
-#define __GLX_NUMBER_ERRORS 8
-#define __GLX_NUMBER_EVENTS 1
+#define __GLX_NUMBER_ERRORS 12
+
+/*
+** Events.
+** __GLX_NUMBER_EVENTS is set to 17 to account for the BufferClobberSGIX
+** event - this helps initialization if the server supports the pbuffer
+** extension and the client doesn't.
+*/
+#define GLX_PbufferClobber 0
+
+#define __GLX_NUMBER_EVENTS 17
#define GLX_EXTENSION_NAME "GLX"
#define GLX_EXTENSION_ALIAS "SGI-GLX"
@@ -62,6 +88,11 @@
#define GLXContextID CARD32
#define GLXPixmap CARD32
#define GLXDrawable CARD32
+#define GLXPbuffer CARD32
+#define GLXWindow CARD32
+#define GLXFBConfigID CARD32
+#define GLXFBConfigIDSGIX CARD32
+#define GLXPbufferSGIX CARD32
/*
** ContextTag is not exposed to the API.
@@ -106,7 +137,7 @@ typedef struct GLXRender {
/*
** Large render command request. A single large rendering command
-** is output in multiple X extension requests. The first packet
+** is output in multiple X extension requests. The first packet
** contains an opcode dependent header (see below) that describes
** the data that follows.
*/
@@ -122,7 +153,7 @@ typedef struct GLXRenderLarge {
#define sz_xGLXRenderLargeReq 16
/*
-** GLX single request. Commands that go over as single GLX protocol
+** GLX single request. Commands that go over as single GLX protocol
** requests use this structure. The glxCode will be one of the X_GLsop
** opcodes.
*/
@@ -192,7 +223,7 @@ typedef struct GLXMakeCurrent {
CARD8 reqType;
CARD8 glxCode;
CARD16 length B16;
- GLXDrawable drawable B32;
+ GLXDrawable drawable B32;
GLXContextID context B32;
GLXContextTag oldContextTag B32;
} xGLXMakeCurrentReq;
@@ -242,7 +273,7 @@ typedef struct GLXSwapBuffers {
CARD8 glxCode;
CARD16 length B16;
GLXContextTag contextTag B32;
- GLXDrawable drawable B32;
+ GLXDrawable drawable B32;
} xGLXSwapBuffersReq;
#define sz_xGLXSwapBuffersReq 12
@@ -331,10 +362,10 @@ typedef struct GLXVendorPrivateWithReply {
** glXQueryExtensionsString request
*/
typedef struct GLXQueryExtensionsString {
- CARD8 reqType;
- CARD8 glxCode;
- CARD16 length B16;
- CARD32 screen B32;
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 screen B32;
} xGLXQueryExtensionsStringReq;
#define sz_xGLXQueryExtensionsStringReq 8
@@ -342,11 +373,11 @@ typedef struct GLXQueryExtensionsString {
** glXQueryServerString request
*/
typedef struct GLXQueryServerString {
- CARD8 reqType;
- CARD8 glxCode;
- CARD16 length B16;
- CARD32 screen B32;
- CARD32 name B32;
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 screen B32;
+ CARD32 name B32;
} xGLXQueryServerStringReq;
#define sz_xGLXQueryServerStringReq 12
@@ -354,29 +385,174 @@ typedef struct GLXQueryServerString {
** glXClientInfo request
*/
typedef struct GLXClientInfo {
- CARD8 reqType;
- CARD8 glxCode;
- CARD16 length B16;
- CARD32 major B32;
- CARD32 minor B32;
- CARD32 numbytes B32;
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 major B32;
+ CARD32 minor B32;
+ CARD32 numbytes B32;
} xGLXClientInfoReq;
#define sz_xGLXClientInfoReq 16
+/*** Start of GLX 1.3 requests */
+
/*
-** glXQueryContextInfoEXT request
+** glXGetFBConfigs request
*/
-typedef struct GLXQueryContextInfoEXT {
+typedef struct GLXGetFBConfigs {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 screen B32;
+} xGLXGetFBConfigsReq;
+#define sz_xGLXGetFBConfigsReq 8
+
+/*
+** glXCreatePixmap request
+*/
+typedef struct GLXCreatePixmap {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 screen B32;
+ GLXFBConfigID fbconfig B32;
+ CARD32 pixmap B32;
+ GLXPixmap glxpixmap B32;
+ CARD32 numAttribs B32;
+ /* followed by attribute list */
+} xGLXCreatePixmapReq;
+#define sz_xGLXCreatePixmapReq 24
+
+/*
+** glXDestroyPixmap request
+*/
+typedef struct GLXDestroyPixmap {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXPixmap glxpixmap B32;
+} xGLXDestroyPixmapReq;
+#define sz_xGLXDestroyPixmapReq 8
+
+/*
+** glXCreateNewContext request
+*/
+typedef struct GLXCreateNewContext {
CARD8 reqType;
CARD8 glxCode;
CARD16 length B16;
- CARD32 vendorCode B32; /* vendor-specific opcode */
- CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
GLXContextID context B32;
-} xGLXQueryContextInfoEXTReq;
-#define sz_xGLXQueryContextInfoEXTReq 16
+ GLXFBConfigID fbconfig B32;
+ CARD32 screen B32;
+ CARD32 renderType;
+ GLXContextID shareList B32;
+ BOOL isDirect;
+ CARD8 reserved1;
+ CARD16 reserved2 B16;
+} xGLXCreateNewContextReq;
+#define sz_xGLXCreateNewContextReq 28
-/************************************************************************/
+/*
+** glXQueryContext request
+*/
+typedef struct GLXQueryContext {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXContextID context B32;
+} xGLXQueryContextReq;
+#define sz_xGLXQueryContextReq 8
+
+/*
+** glXMakeContextCurrent request
+*/
+typedef struct GLXMakeContextCurrent {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXContextTag oldContextTag B32;
+ GLXDrawable drawable B32;
+ GLXDrawable readdrawable B32;
+ GLXContextID context B32;
+} xGLXMakeContextCurrentReq;
+#define sz_xGLXMakeContextCurrentReq 20
+
+/*
+** glXCreatePbuffer request
+*/
+typedef struct GLXCreatePbuffer {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 screen B32;
+ GLXFBConfigID fbconfig B32;
+ GLXPbuffer pbuffer B32;
+ CARD32 numAttribs B32;
+ /* followed by attribute list */
+} xGLXCreatePbufferReq;
+#define sz_xGLXCreatePbufferReq 20
+
+/*
+** glXDestroyPbuffer request
+*/
+typedef struct GLXDestroyPbuffer {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXPbuffer pbuffer B32;
+} xGLXDestroyPbufferReq;
+#define sz_xGLXDestroyPbufferReq 8
+
+/*
+** glXGetDrawableAttributes request
+*/
+typedef struct GLXGetDrawableAttributes {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXDrawable drawable B32;
+} xGLXGetDrawableAttributesReq;
+#define sz_xGLXGetDrawableAttributesReq 8
+
+/*
+** glXChangeDrawableAttributes request
+*/
+typedef struct GLXChangeDrawableAttributes {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXDrawable drawable B32;
+ CARD32 numAttribs B32;
+ /* followed by attribute list */
+} xGLXChangeDrawableAttributesReq;
+#define sz_xGLXChangeDrawableAttributesReq 12
+
+/*
+** glXCreateWindow request
+*/
+typedef struct GLXCreateWindow {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 screen B32;
+ GLXFBConfigID fbconfig B32;
+ CARD32 window B32;
+ GLXWindow glxwindow B32;
+ CARD32 numAttribs B32;
+ /* followed by attribute list */
+} xGLXCreateWindowReq;
+#define sz_xGLXCreateWindowReq 24
+
+/*
+** glXDestroyWindow request
+*/
+typedef struct GLXDestroyWindow {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ GLXWindow glxwindow B32;
+} xGLXDestroyWindowReq;
+#define sz_xGLXDestroyWindowReq 8
/* Replies */
@@ -431,7 +607,7 @@ typedef struct {
CARD32 pad2 B32;
CARD32 width B32;
CARD32 height B32;
- CARD32 pad5 B32;
+ CARD32 depth B32;
CARD32 pad6 B32;
} xGLXGetTexImageReply;
#define sz_xGLXGetTexImageReply 32
@@ -441,6 +617,62 @@ typedef struct {
CARD8 unused; /* not used */
CARD16 sequenceNumber B16;
CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 width B32;
+ CARD32 height B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetSeparableFilterReply;
+#define sz_xGLXGetSeparableFilterReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 width B32;
+ CARD32 height B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetConvolutionFilterReply;
+#define sz_xGLXGetConvolutionFilterReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 width B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetHistogramReply;
+#define sz_xGLXGetHistogramReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetMinmaxReply;
+#define sz_xGLXGetMinmaxReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
CARD32 retval B32;
CARD32 size B32;
CARD32 newMode B32;
@@ -520,16 +752,16 @@ typedef struct {
** the number of words of data which follow the header.
*/
typedef struct {
- BYTE type; /* X_Reply */
- CARD8 unused; /* not used */
- CARD16 sequenceNumber B16;
- CARD32 length B32;
- CARD32 retval B32;
- CARD32 size B32;
- CARD32 pad3 B32;
- CARD32 pad4 B32;
- CARD32 pad5 B32;
- CARD32 pad6 B32;
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 retval B32;
+ CARD32 size B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
} xGLXVendorPrivReply;
#define sz_xGLXVendorPrivReply 32
@@ -538,16 +770,16 @@ typedef struct {
** n indicates the number of bytes to be returned.
*/
typedef struct {
- BYTE type; /* X_Reply */
- CARD8 unused; /* not used */
- CARD16 sequenceNumber B16;
- CARD32 length B32;
- CARD32 pad1 B32;
- CARD32 n B32;
- CARD32 pad3 B32;
- CARD32 pad4 B32;
- CARD32 pad5 B32;
- CARD32 pad6 B32;
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 n B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
} xGLXQueryExtensionsStringReply;
#define sz_xGLXQueryExtensionsStringReply 32
@@ -556,19 +788,142 @@ typedef struct {
** n indicates the number of bytes to be returned.
*/
typedef struct {
- BYTE type; /* X_Reply */
- CARD8 unused; /* not used */
- CARD16 sequenceNumber B16;
- CARD32 length B32;
- CARD32 pad1 B32;
- CARD32 n B32;
- CARD32 pad3 B32; /* NOTE: may hold a single value */
- CARD32 pad4 B32; /* NOTE: may hold half a double */
- CARD32 pad5 B32;
- CARD32 pad6 B32;
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 n B32;
+ CARD32 pad3 B32; /* NOTE: may hold a single value */
+ CARD32 pad4 B32; /* NOTE: may hold half a double */
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
} xGLXQueryServerStringReply;
#define sz_xGLXQueryServerStringReply 32
+/*** Start of GLX 1.3 replies */
+
+/*
+** glXGetFBConfigs reply
+*/
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 numFBConfigs B32;
+ CARD32 numAttribs B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetFBConfigsReply;
+#define sz_xGLXGetFBConfigsReply 32
+
+/*
+** glXQueryContext reply
+*/
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 n B32; /* number of attribute/value pairs */
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXQueryContextReply;
+#define sz_xGLXQueryContextReply 32
+
+/*
+** glXMakeContextCurrent reply
+*/
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ GLXContextTag contextTag B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXMakeContextCurrentReply;
+#define sz_xGLXMakeContextCurrentReply 32
+
+/*
+** glXCreateGLXPbuffer reply
+** This is used only in the direct rendering case on SGIs - otherwise
+** CreateGLXPbuffer has no reply. It is not part of GLX 1.3.
+*/
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 success;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXCreateGLXPbufferReply;
+#define sz_xGLXCreateGLXPbufferReply 32
+
+/*
+** glXGetDrawableAttributes reply
+*/
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 numAttribs B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetDrawableAttributesReply;
+#define sz_xGLXGetDrawableAttributesReply 32
+
+/*
+** glXGetColorTable reply
+*/
+typedef struct {
+ BYTE type; /* X_Reply */
+ CARD8 unused; /* not used */
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 width B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGLXGetColorTableReply;
+#define sz_xGLXGetColorTableReply 32
+
+/************************************************************************/
+
+/* GLX extension requests and replies */
+
+/*
+** glXQueryContextInfoEXT request
+*/
+typedef struct GLXQueryContextInfoEXT {
+ CARD8 reqType;
+ CARD8 glxCode;
+ CARD16 length B16;
+ CARD32 vendorCode B32; /* vendor-specific opcode */
+ CARD32 pad1 B32; /* unused; corresponds to contextTag in header */
+ GLXContextID context B32;
+} xGLXQueryContextInfoEXTReq;
+#define sz_xGLXQueryContextInfoEXTReq 16
+
/*
** glXQueryContextInfoEXT reply
*/
@@ -577,7 +932,7 @@ typedef struct {
CARD8 unused; /* not used */
CARD16 sequenceNumber B16;
CARD32 length B32;
- CARD32 n B32; /* number of attribute/value pairs */
+ CARD32 n B32; /* number of attribute/value pairs */
CARD32 pad2 B32;
CARD32 pad3 B32;
CARD32 pad4 B32;
@@ -589,6 +944,29 @@ typedef struct {
/************************************************************************/
/*
+** Events
+*/
+
+typedef struct {
+ BYTE type;
+ BYTE pad;
+ CARD16 sequenceNumber B16;
+ CARD16 event_type B16; /*** was clobber_class */
+ CARD16 draw_type B16;
+ CARD32 drawable B32;
+ CARD32 buffer_mask B32; /*** was mask */
+ CARD16 aux_buffer B16;
+ CARD16 x B16;
+ CARD16 y B16;
+ CARD16 width B16;
+ CARD16 height B16;
+ CARD16 count B16;
+ CARD32 unused2 B32;
+} xGLXPbufferClobberEvent;
+
+/************************************************************************/
+
+/*
** Size of the standard X request header.
*/
#define __GLX_SINGLE_HDR_SIZE sz_xGLXSingleReq
@@ -617,7 +995,8 @@ typedef struct {
/*
** The glBitmap, glPolygonStipple, glTexImage[12]D, glTexSubImage[12]D
** and glDrawPixels calls all have a pixel header transmitted after the
-** Render or RenderLarge header and before their own opcode specific headers.
+** Render or RenderLarge header and before their own opcode specific
+** headers.
*/
#define __GLX_PIXEL_HDR \
BOOL swapBytes; \
@@ -626,7 +1005,7 @@ typedef struct {
CARD8 reserved1; \
CARD32 rowLength B32; \
CARD32 skipRows B32; \
- CARD32 skipPixels B32; \
+ CARD32 skipPixels B32; \
CARD32 alignment B32
#define __GLX_PIXEL_HDR_SIZE 20
@@ -636,6 +1015,27 @@ typedef struct {
} __GLXpixelHeader;
/*
+** glTexImage[34]D and glTexSubImage[34]D calls
+** all have a pixel header transmitted after the Render or RenderLarge
+** header and before their own opcode specific headers.
+*/
+#define __GLX_PIXEL_3D_HDR \
+ BOOL swapBytes; \
+ BOOL lsbFirst; \
+ CARD8 reserved0; \
+ CARD8 reserved1; \
+ CARD32 rowLength B32; \
+ CARD32 imageHeight B32; \
+ CARD32 imageDepth B32; \
+ CARD32 skipRows B32; \
+ CARD32 skipImages B32; \
+ CARD32 skipVolumes B32; \
+ CARD32 skipPixels B32; \
+ CARD32 alignment B32
+
+#define __GLX_PIXEL_3D_HDR_SIZE 36
+
+/*
** Data that is specific to a glBitmap call. The data is sent in the
** following order:
** Render or RenderLarge header
@@ -683,19 +1083,18 @@ typedef struct {
#define __GLX_POLYGONSTIPPLE_CMD_HDR_SIZE \
(__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE)
-
/*
** Data that is specific to a glTexImage1D or glTexImage2D call. The
** data is sent in the following order:
-** Render or RenderLarge header
-** Pixel header
-** TexImage header
+** Render or RenderLarge header
+** Pixel header
+** TexImage header
** When a glTexImage1D call the height field is unexamined by the server.
*/
#define __GLX_TEXIMAGE_HDR \
CARD32 target B32; \
CARD32 level B32; \
- CARD32 components B32; \
+ CARD32 components B32; \
CARD32 width B32; \
CARD32 height B32; \
CARD32 border B32; \
@@ -728,12 +1127,62 @@ typedef struct {
} __GLXdispatchTexImageHeader;
/*
-** Data that is specific to a glTexSubImage1D or glTexSubImage2D call. The
+** Data that is specific to a glTexImage3D or glTexImage4D call. The
** data is sent in the following order:
-** Render or RenderLarge header
-** Pixel header
-** TexSubImage header
-** When a glTexSubImage1D call is made, the yoffset and height fields
+** Render or RenderLarge header
+** Pixel 3D header
+** TexImage 3D header
+** When a glTexImage3D call the size4d and woffset fields are unexamined
+** by the server.
+** Could be used by all TexImage commands and perhaps should be in the
+** future.
+*/
+#define __GLX_TEXIMAGE_3D_HDR \
+ CARD32 target B32; \
+ CARD32 level B32; \
+ CARD32 internalformat B32; \
+ CARD32 width B32; \
+ CARD32 height B32; \
+ CARD32 depth B32; \
+ CARD32 size4d B32; \
+ CARD32 border B32; \
+ CARD32 format B32; \
+ CARD32 type B32; \
+ CARD32 nullimage B32
+
+#define __GLX_TEXIMAGE_3D_HDR_SIZE 44
+
+#define __GLX_TEXIMAGE_3D_CMD_HDR_SIZE \
+ (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_3D_HDR_SIZE + \
+ __GLX_TEXIMAGE_3D_HDR_SIZE)
+
+#define __GLX_TEXIMAGE_3D_CMD_DISPATCH_HDR_SIZE \
+ (__GLX_PIXEL_3D_HDR_SIZE + __GLX_TEXIMAGE_3D_HDR_SIZE)
+
+typedef struct {
+ __GLX_RENDER_HDR;
+ __GLX_PIXEL_3D_HDR;
+ __GLX_TEXIMAGE_3D_HDR;
+} __GLXtexImage3DHeader;
+
+typedef struct {
+ __GLX_RENDER_LARGE_HDR;
+ __GLX_PIXEL_3D_HDR;
+ __GLX_TEXIMAGE_3D_HDR;
+} __GLXtexImage3DLargeHeader;
+
+typedef struct {
+ __GLX_PIXEL_3D_HDR;
+ __GLX_TEXIMAGE_3D_HDR;
+} __GLXdispatchTexImage3DHeader;
+
+/*
+** Data that is specific to a glTexSubImage1D or glTexSubImage2D call. The
+** data is sent in the following order:
+** Render or RenderLarge header
+** Pixel header
+** TexSubImage header
+** When a glTexSubImage1D call is made, the yoffset and height fields
** are unexamined by the server and are considered to be padding.
*/
#define __GLX_TEXSUBIMAGE_HDR \
@@ -773,11 +1222,61 @@ typedef struct {
} __GLXdispatchTexSubImageHeader;
/*
+** Data that is specific to a glTexSubImage3D and 4D calls. The
+** data is sent in the following order:
+** Render or RenderLarge header
+** Pixel 3D header
+** TexSubImage 3D header
+** When a glTexSubImage3D call is made, the woffset and size4d fields
+** are unexamined by the server and are considered to be padding.
+*/
+#define __GLX_TEXSUBIMAGE_3D_HDR \
+ CARD32 target B32; \
+ CARD32 level B32; \
+ CARD32 xoffset B32; \
+ CARD32 yoffset B32; \
+ CARD32 zoffset B32; \
+ CARD32 woffset B32; \
+ CARD32 width B32; \
+ CARD32 height B32; \
+ CARD32 depth B32; \
+ CARD32 size4d B32; \
+ CARD32 format B32; \
+ CARD32 type B32; \
+ CARD32 nullImage \
+
+#define __GLX_TEXSUBIMAGE_3D_HDR_SIZE 52
+
+#define __GLX_TEXSUBIMAGE_3D_CMD_HDR_SIZE \
+ (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_3D_HDR_SIZE + \
+ __GLX_TEXSUBIMAGE_3D_HDR_SIZE)
+
+#define __GLX_TEXSUBIMAGE_3D_CMD_DISPATCH_HDR_SIZE \
+ (__GLX_PIXEL_3D_HDR_SIZE + __GLX_TEXSUBIMAGE_3D_HDR_SIZE)
+
+typedef struct {
+ __GLX_RENDER_HDR;
+ __GLX_PIXEL_3D_HDR;
+ __GLX_TEXSUBIMAGE_3D_HDR;
+} __GLXtexSubImage3DHeader;
+
+typedef struct {
+ __GLX_RENDER_LARGE_HDR;
+ __GLX_PIXEL_3D_HDR;
+ __GLX_TEXSUBIMAGE_3D_HDR;
+} __GLXtexSubImage3DLargeHeader;
+
+typedef struct {
+ __GLX_PIXEL_3D_HDR;
+ __GLX_TEXSUBIMAGE_3D_HDR;
+} __GLXdispatchTexSubImage3DHeader;
+
+/*
** Data that is specific to a glDrawPixels call. The data is sent in the
** following order:
** Render or RenderLarge header
** Pixel header
-** Bitmap header
+** DrawPixels header
*/
#define __GLX_DRAWPIXELS_HDR \
CARD32 width B32; \
@@ -811,6 +1310,46 @@ typedef struct {
} __GLXdispatchDrawPixelsHeader;
/*
+** Data that is specific to a glConvolutionFilter1D or glConvolutionFilter2D
+** call. The data is sent in the following order:
+** Render or RenderLarge header
+** Pixel header
+** ConvolutionFilter header
+** When a glConvolutionFilter1D call the height field is unexamined by the server.
+*/
+#define __GLX_CONV_FILT_HDR \
+ CARD32 target B32; \
+ CARD32 internalformat B32; \
+ CARD32 width B32; \
+ CARD32 height B32; \
+ CARD32 format B32; \
+ CARD32 type B32
+
+#define __GLX_CONV_FILT_HDR_SIZE 24
+
+#define __GLX_CONV_FILT_CMD_HDR_SIZE \
+ (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_CONV_FILT_HDR_SIZE)
+
+#define __GLX_CONV_FILT_CMD_DISPATCH_HDR_SIZE \
+ (__GLX_PIXEL_HDR_SIZE + __GLX_CONV_FILT_HDR_SIZE)
+typedef struct {
+ __GLX_RENDER_HDR;
+ __GLX_PIXEL_HDR;
+ __GLX_CONV_FILT_HDR;
+} __GLXConvolutionFilterHeader;
+
+typedef struct {
+ __GLX_RENDER_LARGE_HDR;
+ __GLX_PIXEL_HDR;
+ __GLX_CONV_FILT_HDR;
+} __GLXConvolutionFilterLargeHeader;
+
+typedef struct {
+ __GLX_PIXEL_HDR;
+ __GLX_CONV_FILT_HDR;
+} __GLXdispatchConvolutionFilterHeader;
+
+/*
** Data that is specific to a glDrawArraysEXT call. The data is sent in the
** following order:
** Render or RenderLarge header
@@ -822,7 +1361,7 @@ typedef struct {
#define __GLX_DRAWARRAYS_HDR \
CARD32 numVertexes B32; \
CARD32 numComponents B32; \
- CARD32 primType B32
+ CARD32 primType B32
#define __GLX_DRAWARRAYS_HDR_SIZE 12
@@ -846,7 +1385,7 @@ typedef struct {
#define __GLX_COMPONENT_HDR \
CARD32 datatype B32; \
INT32 numVals B32; \
- CARD32 component B32
+ CARD32 component B32
typedef struct {
__GLX_COMPONENT_HDR;
@@ -854,6 +1393,81 @@ typedef struct {
#define __GLX_COMPONENT_HDR_SIZE 12
+/*
+** Data that is specific to a glColorTable call
+** The data is sent in the following order:
+** Render or RenderLarge header
+** Pixel header
+** ColorTable header
+*/
+
+#define __GLX_COLOR_TABLE_HDR \
+ CARD32 target B32; \
+ CARD32 internalformat B32; \
+ CARD32 width B32; \
+ CARD32 format B32; \
+ CARD32 type B32
+
+#define __GLX_COLOR_TABLE_HDR_SIZE 20
+
+#define __GLX_COLOR_TABLE_CMD_HDR_SIZE \
+ (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + __GLX_COLOR_TABLE_HDR_SIZE)
+
+typedef struct {
+ __GLX_RENDER_HDR;
+ __GLX_PIXEL_HDR;
+ __GLX_COLOR_TABLE_HDR;
+} __GLXColorTableHeader;
+
+typedef struct {
+ __GLX_RENDER_LARGE_HDR;
+ __GLX_PIXEL_HDR;
+ __GLX_COLOR_TABLE_HDR;
+} __GLXColorTableLargeHeader;
+
+typedef struct {
+ __GLX_PIXEL_HDR;
+ __GLX_COLOR_TABLE_HDR;
+} __GLXdispatchColorTableHeader;
+
+/*
+** Data that is specific to a glColorSubTable call
+** The data is sent in the following order:
+** Render or RenderLarge header
+** Pixel header
+** ColorTable header
+*/
+
+#define __GLX_COLOR_SUBTABLE_HDR \
+ CARD32 target B32; \
+ CARD32 start B32; \
+ CARD32 count B32; \
+ CARD32 format B32; \
+ CARD32 type B32
+
+#define __GLX_COLOR_SUBTABLE_HDR_SIZE 20
+
+#define __GLX_COLOR_SUBTABLE_CMD_HDR_SIZE \
+ (__GLX_RENDER_HDR_SIZE + __GLX_PIXEL_HDR_SIZE + \
+ __GLX_COLOR_SUBTABLE_HDR_SIZE)
+
+typedef struct {
+ __GLX_RENDER_HDR;
+ __GLX_PIXEL_HDR;
+ __GLX_COLOR_SUBTABLE_HDR;
+} __GLXColorSubTableHeader;
+
+typedef struct {
+ __GLX_RENDER_LARGE_HDR;
+ __GLX_PIXEL_HDR;
+ __GLX_COLOR_SUBTABLE_HDR;
+} __GLXColorSubTableLargeHeader;
+
+typedef struct {
+ __GLX_PIXEL_HDR;
+ __GLX_COLOR_SUBTABLE_HDR;
+} __GLXdispatchColorSubTableHeader;
+
/*****************************************************************************/
@@ -863,6 +1477,11 @@ typedef struct {
#undef GLXContextID
#undef GLXPixmap
#undef GLXDrawable
+#undef GLXPbuffer
+#undef GLXWindow
+#undef GLXFBConfigID
+#undef GLXFBConfigIDSGIX
+#undef GLXPbufferSGIX
/* Opcodes for GLX commands */
@@ -933,6 +1552,23 @@ typedef struct {
#define X_GLsop_GetTexLevelParameteriv 139
#define X_GLsop_IsEnabled 140
#define X_GLsop_IsList 141
+#define X_GLsop_AreTexturesResident 143
+#define X_GLsop_DeleteTextures 144
+#define X_GLsop_GenTextures 145
+#define X_GLsop_IsTexture 146
+#define X_GLsop_GetColorTable 147
+#define X_GLsop_GetColorTableParameterfv 148
+#define X_GLsop_GetColorTableParameteriv 149
+#define X_GLsop_GetConvolutionFilter 150
+#define X_GLsop_GetConvolutionParameterfv 151
+#define X_GLsop_GetConvolutionParameteriv 152
+#define X_GLsop_GetSeparableFilter 153
+#define X_GLsop_GetHistogram 154
+#define X_GLsop_GetHistogramParameterfv 155
+#define X_GLsop_GetHistogramParameteriv 156
+#define X_GLsop_GetMinmax 157
+#define X_GLsop_GetMinmaxParameterfv 158
+#define X_GLsop_GetMinmaxParameteriv 159
/* Opcodes for rendering commands */
@@ -1127,8 +1763,8 @@ typedef struct {
#define X_GLrop_Translated 189
#define X_GLrop_Translatef 190
#define X_GLrop_Viewport 191
-#define X_GLrop_DrawArrays 4116
-#define X_GLrop_PolygonOffset 4098
+#define X_GLrop_DrawArrays 193
+#define X_GLrop_PolygonOffset 192
#define X_GLrop_CopyTexImage1D 4119
#define X_GLrop_CopyTexImage2D 4120
#define X_GLrop_CopyTexSubImage1D 4121
@@ -1138,14 +1774,56 @@ typedef struct {
#define X_GLrop_BindTexture 4117
#define X_GLrop_PrioritizeTextures 4118
#define X_GLrop_Indexubv 194
+#define X_GLrop_BlendColor 4096
+#define X_GLrop_BlendEquation 4097
+#define X_GLrop_ColorTable 2053
+#define X_GLrop_ColorTableParameterfv 2054
+#define X_GLrop_ColorTableParameteriv 2055
+#define X_GLrop_CopyColorTable 2056
+#define X_GLrop_ColorSubTable 195
+#define X_GLrop_CopyColorSubTable 196
+#define X_GLrop_ConvolutionFilter1D 4101
+#define X_GLrop_ConvolutionFilter2D 4102
+#define X_GLrop_ConvolutionParameterf 4103
+#define X_GLrop_ConvolutionParameterfv 4104
+#define X_GLrop_ConvolutionParameteri 4105
+#define X_GLrop_ConvolutionParameteriv 4106
+#define X_GLrop_CopyConvolutionFilter1D 4107
+#define X_GLrop_CopyConvolutionFilter2D 4108
+#define X_GLrop_SeparableFilter2D 4109
+#define X_GLrop_Histogram 4110
+#define X_GLrop_Minmax 4111
+#define X_GLrop_ResetHistogram 4112
+#define X_GLrop_ResetMinmax 4113
+#define X_GLrop_TexImage3D 4114
+#define X_GLrop_TexSubImage3D 4115
+#define X_GLrop_CopyTexSubImage3D 4123
+#define X_GLrop_ActiveTextureARB 197
+#define X_GLrop_MultiTexCoord1dvARB 198
+#define X_GLrop_MultiTexCoord1fvARB 199
+#define X_GLrop_MultiTexCoord1ivARB 200
+#define X_GLrop_MultiTexCoord1svARB 201
+#define X_GLrop_MultiTexCoord2dvARB 202
+#define X_GLrop_MultiTexCoord2fvARB 203
+#define X_GLrop_MultiTexCoord2ivARB 204
+#define X_GLrop_MultiTexCoord2svARB 205
+#define X_GLrop_MultiTexCoord3dvARB 206
+#define X_GLrop_MultiTexCoord3fvARB 207
+#define X_GLrop_MultiTexCoord3ivARB 208
+#define X_GLrop_MultiTexCoord3svARB 209
+#define X_GLrop_MultiTexCoord4dvARB 210
+#define X_GLrop_MultiTexCoord4fvARB 211
+#define X_GLrop_MultiTexCoord4ivARB 212
+#define X_GLrop_MultiTexCoord4svARB 213
+#define X_GLrop_DrawArraysEXT 4116
/* Opcodes for Vendor Private commands */
-#define X_GLvop_AreTexturesResident 11
-#define X_GLvop_DeleteTextures 12
-#define X_GLvop_GenTextures 13
-#define X_GLvop_IsTexture 14
+#define X_GLvop_AreTexturesResidentEXT 11
+#define X_GLvop_DeleteTexturesEXT 12
+#define X_GLvop_GenTexturesEXT 13
+#define X_GLvop_IsTextureEXT 14
/* Opcodes for GLX vendor private commands */
diff --git a/xc/include/GL/glxtokens.h b/xc/include/GL/glxtokens.h
index 8c4f2185a..661a5db5c 100644
--- a/xc/include/GL/glxtokens.h
+++ b/xc/include/GL/glxtokens.h
@@ -1,11 +1,11 @@
#ifndef __GLX_glxtokens_h__
#define __GLX_glxtokens_h__
-/* $XFree86: xc/include/GL/glxtokens.h,v 1.4 2000/06/17 00:02:46 martin Exp $ */
+/* $XFree86: xc/include/GL/glxtokens.h,v 1.5 2001/03/21 15:51:38 dawes Exp $ */
/*
** License Applicability. Except to the extent portions of this file are
** made subject to an alternative license as permitted in the SGI Free
-** Software License B, Version 1.0 (the "License"), the contents of this
+** Software License B, Version 1.1 (the "License"), the contents of this
** file are subject only to the provisions of the License. You may not use
** this file except in compliance with the License. You may obtain a copy
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
@@ -223,7 +223,6 @@ extern "C" {
#define GLX_EXT_visual_rating 1
#define GLX_ARB_get_proc_address 1
-
#ifdef __cplusplus
}
#endif
diff --git a/xc/include/XF86keysym.h b/xc/include/XF86keysym.h
index 4e86e81f7..d372b5f0c 100644
--- a/xc/include/XF86keysym.h
+++ b/xc/include/XF86keysym.h
@@ -1,4 +1,4 @@
-/* $XFree86: xc/include/XF86keysym.h,v 1.6 2000/11/02 02:51:09 dawes Exp $ */
+/* $XFree86: xc/include/XF86keysym.h,v 1.11 2001/04/06 02:16:21 dawes Exp $ */
/*
* XFree86 vendor specific keysyms.
@@ -57,12 +57,12 @@
#define XF86XK_Forward 0x1008FF27
#define XF86XK_Stop 0x1008FF28
#define XF86XK_Refresh 0x1008FF29
-#define XF86XK_PowerOff 0x1008FF1A
-#define XF86XK_WakeUp 0x1008FF1B
-
-/* Note, 0x1008FF2C - 0x1008FF2F are free and should be used next */
-
-/* Some more ... */
+#define XF86XK_PowerOff 0x1008FF2A
+#define XF86XK_WakeUp 0x1008FF2B
+#define XF86XK_Eject 0x1008FF2C
+#define XF86XK_ScreenSaver 0x1008FF2D
+#define XF86XK_WWW 0x1008FF2E
+#define XF86XK_Sleep 0x1008FF2F
#define XF86XK_Favorites 0x1008FF30
#define XF86XK_AudioPause 0x1008FF31
#define XF86XK_AudioMedia 0x1008FF32
@@ -70,5 +70,27 @@
#define XF86XK_VendorHome 0x1008FF34
#define XF86XK_LightBulb 0x1008FF35
#define XF86XK_Shop 0x1008FF36
+#define XF86XK_History 0x1008FF37
+#define XF86XK_OpenURL 0x1008FF38
+#define XF86XK_AddFavorite 0x1008FF39
+#define XF86XK_HotLinks 0x1008FF3A
+#define XF86XK_BrightnessAdjust 0x1008FF3B
+/* Allocate 0x1008FF3C-F next */
+#define XF86XK_Launch0 0x1008FF40
+#define XF86XK_Launch1 0x1008FF41
+#define XF86XK_Launch2 0x1008FF42
+#define XF86XK_Launch3 0x1008FF43
+#define XF86XK_Launch4 0x1008FF44
+#define XF86XK_Launch5 0x1008FF45
+#define XF86XK_Launch6 0x1008FF46
+#define XF86XK_Launch7 0x1008FF47
+#define XF86XK_Launch8 0x1008FF48
+#define XF86XK_Launch9 0x1008FF49
+#define XF86XK_LaunchA 0x1008FF4A
+#define XF86XK_LaunchB 0x1008FF4B
+#define XF86XK_LaunchC 0x1008FF4C
+#define XF86XK_LaunchD 0x1008FF4D
+#define XF86XK_LaunchE 0x1008FF4E
+#define XF86XK_LaunchF 0x1008FF4F
diff --git a/xc/include/Xos_r.h b/xc/include/Xos_r.h
index be068c100..41bee4d00 100644
--- a/xc/include/Xos_r.h
+++ b/xc/include/Xos_r.h
@@ -18,7 +18,7 @@ Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
*/
-/* $XFree86: xc/include/Xos_r.h,v 1.8 2001/01/17 17:53:11 dawes Exp $ */
+/* $XFree86: xc/include/Xos_r.h,v 1.10 2001/03/03 09:53:00 herrb Exp $ */
/*
* Various and sundry Thread-Safe functions used by X11, Motif, and CDE.
@@ -146,7 +146,7 @@ extern void (*_XUnlockMutex_fn)(
# endif
# endif
# elif defined(XOS_USE_XT_LOCKING)
-extern void (*_XtProcessLock)();
+extern void (*_XtProcessLock)(void);
# ifndef _XtintrinsicP_h
# include <X11/Xfuncproto.h> /* for NeedFunctionPrototypes */
extern void XtProcessLock(
@@ -243,9 +243,12 @@ typedef struct {
size_t len;
} _Xgetpwparams;
-/* NetBSD, at least, is missing several of the unixware passwd fields. */
+/*
+ * NetBSD and FreeBSD, at least, are missing several of the unixware passwd
+ * fields.
+ */
-#if defined(__NetBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__) || defined(__OpenBSD__)
__inline__ void _Xpw_copyPasswd(_Xgetpwparams p)
{
memcpy(&(p).pws, (p).pwp, sizeof(struct passwd));
@@ -412,7 +415,7 @@ typedef int _Xgetservbynameparams; /* dummy */
/* UnixWare 2.0, or other systems with thread support but no _r API. */
/* WARNING: The h_addr_list and s_aliases values are *not* copied! */
-#if defined(__NetBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
#include <sys/param.h>
#endif
diff --git a/xc/include/Xosdefs.h b/xc/include/Xosdefs.h
index 84733d19a..1dfcd8794 100644
--- a/xc/include/Xosdefs.h
+++ b/xc/include/Xosdefs.h
@@ -21,7 +21,7 @@ Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
*/
-/* $XFree86: xc/include/Xosdefs.h,v 3.16 2001/01/17 17:53:11 dawes Exp $ */
+/* $XFree86: xc/include/Xosdefs.h,v 3.17 2001/03/07 15:54:11 dawes Exp $ */
#ifndef _XOSDEFS_H_
#define _XOSDEFS_H_
@@ -120,8 +120,12 @@ in this Software without prior written authorization from The Open Group.
#endif
#ifdef __GNU__
+#ifndef PATH_MAX
#define PATH_MAX 4096
+#endif
+#ifndef MAXPATHLEN
#define MAXPATHLEN 4096
#endif
+#endif
#endif /* _XOSDEFS_H_ */
diff --git a/xc/include/extensions/Imakefile b/xc/include/extensions/Imakefile
index 496bb4f38..5f698cb90 100644
--- a/xc/include/extensions/Imakefile
+++ b/xc/include/extensions/Imakefile
@@ -3,31 +3,32 @@ XCOMM $Xorg: Imakefile,v 1.3 2000/08/18 04:05:44 coskrey Exp $
-XCOMM $XFree86: xc/include/extensions/Imakefile,v 3.37 2001/01/17 17:53:15 dawes Exp $
+XCOMM $XFree86: xc/include/extensions/Imakefile,v 3.39 2001/03/25 05:31:58 tsi Exp $
-#if BuildScreenSaverLibrary
+#if BuildScreenSaverExt
SCREENSAVERHEADERS = saver.h saverproto.h scrnsaver.h
#endif
-#if BuildXF86MiscLibrary
+#if BuildXF86MiscExt
XF86MISCHEADERS = xf86misc.h xf86mscstr.h
#endif
#if BuildXF86BigfontExt
XF86BIGFONTHEADERS = xf86bigfont.h xf86bigfstr.h
#endif
-#if BuildXF86VidModeLibrary
+#if BuildXF86VidModeExt
XF86VIDMODEHEADERS = xf86vmode.h xf86vmstr.h
#endif
-#if BuildXF86DGALibrary
+#if BuildXF86DGA
XF86DGAHEADERS = xf86dga.h xf86dgastr.h xf86dga1.h xf86dga1str.h
#endif
#if BuildLBX
LBXHEADERS = lbxbuf.h lbxbufstr.h lbxdeltastr.h lbximage.h lbxopts.h lbxstr.h lbxzlib.h
#endif
-#if BuildXvLibrary
+#if BuildXvExt
XVHEADERS = Xv.h Xvlib.h Xvproto.h
+XVMCHEADERS = XvMC.h XvMClib.h XvMCproto.h
#endif
-#if BuildXF86RushLibrary
+#if BuildXF86RushExt
XF86RUSHHEADERS = xf86rush.h xf86rushstr.h
#endif
#if BuildFontCache
@@ -36,13 +37,13 @@ FONTCACHEHEADERS = fontcache.h fontcacheP.h fontcachstr.h
#if BuildXinerama
XINERAMAHEADERS = panoramiXext.h panoramiXproto.h Xinerama.h
#endif
-#if BuildRenderLibrary
+#if BuildRender
RENDERHEADERS = render.h renderproto.h
#endif
EXTRAHEADERS = $(SCREENSAVERHEADERS) $(XF86MISCHEADERS) $(XF86BIGFONTHEADERS) \
$(XF86VIDMODEHEADERS) $(XF86DGAHEADERS) $(XINERAMAHEADERS) \
- $(LBXHEADERS) $(XVHEADERS) $(XF86RUSHHEADERS) \
+ $(LBXHEADERS) $(XVHEADERS) $(XVMCHEADERS) $(XF86RUSHHEADERS) \
$(FONTCACHEHEADERS) $(RENDERHEADERS)
diff --git a/xc/include/extensions/XKBsrv.h b/xc/include/extensions/XKBsrv.h
index eb8cfcc0e..d070c26d2 100644
--- a/xc/include/extensions/XKBsrv.h
+++ b/xc/include/extensions/XKBsrv.h
@@ -24,7 +24,7 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
THE USE OR PERFORMANCE OF THIS SOFTWARE.
********************************************************/
-/* $XFree86: xc/include/extensions/XKBsrv.h,v 3.18 2001/01/17 17:53:18 dawes Exp $ */
+/* $XFree86: xc/include/extensions/XKBsrv.h,v 3.19 2001/03/25 05:31:59 tsi Exp $ */
#ifndef _XKBSRV_H_
#define _XKBSRV_H_
@@ -291,6 +291,7 @@ extern int DeviceButtonPress,DeviceButtonRelease;
(c)->curKeySyms.minKeyCode+1)
#define XConvertCase(s,l,u) XkbConvertCase(s,l,u)
+#undef IsKeypadKey
#define IsKeypadKey(s) XkbKSIsKeypad(s)
#define Status int
diff --git a/xc/include/extensions/Xext.h b/xc/include/extensions/Xext.h
index e7dc8faf1..48c543328 100644
--- a/xc/include/extensions/Xext.h
+++ b/xc/include/extensions/Xext.h
@@ -19,6 +19,7 @@ Except as contained in this notice, the name of The Open Group shall not be
used in advertising or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from The Open Group.
*/
+/* $XFree86: xc/include/extensions/Xext.h,v 1.3 2001/04/01 13:59:59 tsi Exp $ */
#ifndef _XEXT_H_
#define _XEXT_H_
@@ -37,7 +38,13 @@ extern int (*XSetExtensionErrorHandler(
#endif
)
#endif
-))();
+))(
+#if NeedNestedPrototypes
+ Display *,
+ char *,
+ char *
+#endif
+);
extern int XMissingExtension(
#if NeedFunctionPrototypes
diff --git a/xc/include/extensions/XvMC.h b/xc/include/extensions/XvMC.h
new file mode 100644
index 000000000..2503ef11c
--- /dev/null
+++ b/xc/include/extensions/XvMC.h
@@ -0,0 +1,117 @@
+/* $XFree86: xc/include/extensions/XvMC.h,v 1.3 2001/04/01 13:59:59 tsi Exp $ */
+
+#ifndef _XVMC_H_
+#define _XVMC_H_
+
+#include <X11/X.h>
+#include <X11/extensions/Xv.h>
+
+#define XvMCName "XVideo-MotionCompensation"
+#define XvMCNumEvents 0
+#define XvMCNumErrors 3
+#define XvMCVersion 0
+#define XvMCRevision 1
+
+#define XvMCBadContext 0
+#define XvMCBadSurface 1
+#define XvMCBadSubpicture 2
+
+/* Chroma formats */
+#define XVMC_CHROMA_FORMAT_420 0x00000001
+#define XVMC_CHROMA_FORMAT_422 0x00000002
+#define XVMC_CHROMA_FORMAT_444 0x00000003
+
+/* XvMCSurfaceInfo Flags */
+#define XVMC_OVERLAID_SURFACE 0x00000001
+#define XVMC_BACKEND_SUBPICTURE 0x00000002
+#define XVMC_SUBPICTURE_INDEPENDENT_SCALING 0x00000004
+
+/* Motion Compensation types */
+#define XVMC_IDCT 0x00010000
+
+#define XVMC_MPEG_1 0x00000001
+#define XVMC_MPEG_2 0x00000002
+#define XVMC_H263 0x00000003
+#define XVMC_MPEG_4 0x00000004
+
+#define XVMC_MB_TYPE_QUANT 0x01
+#define XVMC_MB_TYPE_MOTION_FORWARD 0x02
+#define XVMC_MB_TYPE_MOTION_BACKWARD 0x04
+#define XVMC_MB_TYPE_PATTERN 0x08
+#define XVMC_MB_TYPE_INTRA 0x10
+
+#define XVMC_PREDICTION_FIELD 0x01
+#define XVMC_PREDICTION_FRAME 0x02
+#define XVMC_PREDICTION_DUAL_PRIME 0x03
+#define XVMC_PREDICTION_16x8 0x02
+#define XVMC_PREDICTION_4MV 0x04
+
+#define XVMC_SELECT_FIRST_FORWARD 0x01
+#define XVMC_SELECT_FIRST_BACKWARD 0x02
+#define XVMC_SELECT_SECOND_FORWARD 0x04
+#define XVMC_SELECT_SECOND_BACKWARD 0x08
+
+#define XVMC_DCT_TYPE_FRAME 0x00
+#define XVMC_DCT_TYPE_FIELD 0x01
+
+#define XVMC_TOP_FIELD 0x00000001
+#define XVMC_BOTTOM_FIELD 0x00000002
+#define XVMC_FRAME_PICTURE (XVMC_TOP_FIELD | XVMC_BOTTOM_FIELD)
+#define XVMC_TOP_FIELD_FIRST 0x00000001
+#define XVMC_PROGRESSIVE_FRAME 0x00000002
+
+#define XVMC_DIRECT 0x00000001
+
+#define XVMC_SCAN_ORDER_ZIG_ZAG 0x00000000
+#define XVMC_SCAN_ORDER_ALTERNATIVE_HORIZONTAL 0x00000001
+#define XVMC_SCAN_ORDER_ALTERNATIVE_VERTICAL 0x00000002
+#define XVMC_SCAN_ORDER_RASTER 0x00000003
+
+#define XVMC_RENDERING 0x00000001
+#define XVMC_DISPLAYING 0x00000002
+
+
+typedef struct {
+ int surface_type_id;
+ int chroma_format;
+ int color_description;
+ unsigned short max_width;
+ unsigned short max_height;
+ unsigned short subpicture_max_width;
+ unsigned short subpicture_max_height;
+ int mc_type;
+ int flags;
+} XvMCSurfaceInfo;
+
+typedef struct {
+ XID context_id;
+ int surface_type_id;
+ unsigned short width;
+ unsigned short height;
+ XvPortID port;
+ int flags;
+ void * privData; /* private to the library */
+} XvMCContext;
+
+typedef struct {
+ XID surface_id;
+ XID context_id;
+ int surface_type_id;
+ unsigned short width;
+ unsigned short height;
+ void *privData; /* private to the library */
+} XvMCSurface;
+
+typedef struct {
+ XID subpicture_id;
+ XID context_id;
+ int xvimage_id;
+ unsigned short width;
+ unsigned short height;
+ int num_palette_entries;
+ int entry_bytes;
+ char component_order[4];
+ void *privData; /* private to the library */
+} XvMCSubpicture;
+
+#endif
diff --git a/xc/include/extensions/XvMClib.h b/xc/include/extensions/XvMClib.h
new file mode 100644
index 000000000..4ac8ff43e
--- /dev/null
+++ b/xc/include/extensions/XvMClib.h
@@ -0,0 +1,145 @@
+/* $XFree86: xc/include/extensions/XvMClib.h,v 1.3 2001/04/01 13:59:59 tsi Exp $ */
+
+#ifndef _XVMCLIB_H_
+#define _XVMCLIB_H_
+
+#include <X11/extensions/Xvlib.h>
+#include <X11/extensions/XvMC.h>
+
+Bool XvMCQueryExtension (Display *display, int *eventBase, int *errBase);
+Status XvMCQueryVersion (Display *display, int *major, int *minor);
+
+XvMCSurfaceInfo * XvMCListSurfaceTypes(Display *dpy, XvPortID port, int *num);
+
+Status XvMCCreateContext (
+ Display *display,
+ XvPortID port,
+ int surface_type_id,
+ int width,
+ int height,
+ int flags,
+ XvMCContext * context
+);
+
+Status XvMCDestroyContext (Display *display, XvMCContext * context);
+
+Status
+XvMCCreateSurface(
+ Display *display,
+ XvMCContext * context,
+ XvMCSurface * surface
+);
+
+Status XvMCDestroySurface(Display *display, XvMCSurface *surface);
+
+XvImageFormatValues * XvMCListSubpictureTypes (
+ Display * display,
+ XvPortID port,
+ int surface_type_id,
+ int *count_return
+);
+
+Status
+XvMCPutSurface(
+ Display *display,
+ XvMCSurface *surface,
+ Drawable draw,
+ short srcx,
+ short srcy,
+ unsigned short srcw,
+ unsigned short srch,
+ short destx,
+ short desty,
+ unsigned short destw,
+ unsigned short desth,
+ int flags
+);
+
+Status XvMCHideSurface(Display *display, XvMCSurface *surface);
+
+Status
+XvMCCreateSubpicture (
+ Display *display,
+ XvMCContext *context,
+ XvMCSubpicture *subpicture,
+ unsigned short width,
+ unsigned short height,
+ int xvimage_id
+);
+
+
+Status
+XvMCClearSubpicture (
+ Display *display,
+ XvMCSubpicture *subpicture,
+ short x,
+ short y,
+ unsigned short width,
+ unsigned short height,
+ unsigned int color
+);
+
+Status
+XvMCCompositeSubpicture (
+ Display *display,
+ XvMCSubpicture *subpicture,
+ XvImage *image,
+ short srcx,
+ short srcy,
+ unsigned short width,
+ unsigned short height,
+ short dstx,
+ short dsty
+);
+
+Status
+XvMCDestroySubpicture (Display *display, XvMCSubpicture *subpicture);
+
+Status
+XvMCSetSubpicturePalette (
+ Display *display,
+ XvMCSubpicture *subpicture,
+ unsigned char *palette
+);
+
+Status
+XvMCBlendSubpicture (
+ Display *display,
+ XvMCSurface *target_surface,
+ XvMCSubpicture *subpicture,
+ short subx,
+ short suby,
+ unsigned short subw,
+ unsigned short subh,
+ short surfx,
+ short surfy,
+ unsigned short surfw,
+ unsigned short surfh
+);
+
+Status
+XvMCBlendSubpicture2 (
+ Display *display,
+ XvMCSurface *source_surface,
+ XvMCSurface *target_surface,
+ XvMCSubpicture *subpicture,
+ short subx,
+ short suby,
+ unsigned short subw,
+ unsigned short subh,
+ short surfx,
+ short surfy,
+ unsigned short surfw,
+ unsigned short surfh
+);
+
+Status XvMCSyncSurface (Display *display, XvMCSurface *surface);
+Status XvMCFlushSurface (Display *display, XvMCSurface *surface);
+Status XvMCGetSurfaceStatus (Display *display, XvMCSurface *surface, int *stat);
+
+Status XvMCSyncSubpicture (Display *display, XvMCSubpicture *subpicture);
+Status XvMCFlushSubpicture (Display *display, XvMCSubpicture *subpicture);
+Status
+XvMCGetSubpictureStatus (Display *display, XvMCSubpicture *subpic, int *stat);
+
+#endif
diff --git a/xc/include/extensions/XvMCproto.h b/xc/include/extensions/XvMCproto.h
new file mode 100644
index 000000000..34405f056
--- /dev/null
+++ b/xc/include/extensions/XvMCproto.h
@@ -0,0 +1,204 @@
+/* $XFree86: xc/include/extensions/XvMCproto.h,v 1.3 2001/04/01 13:59:59 tsi Exp $ */
+
+#ifndef _XVMCPROTO_H_
+#define _XVMCPROTO_H_
+
+#define xvmc_QueryVersion 0
+#define xvmc_ListSurfaceTypes 1
+#define xvmc_CreateContext 2
+#define xvmc_DestroyContext 3
+#define xvmc_CreateSurface 4
+#define xvmc_DestroySurface 5
+#define xvmc_CreateSubpicture 6
+#define xvmc_DestroySubpicture 7
+#define xvmc_ListSubpictureTypes 8
+#define xvmc_LastRequest xvmc_ListSubpictureTypes
+
+#define xvmcNumRequest (xvmc_LastRequest + 1)
+
+
+typedef struct {
+ CARD32 surface_type_id B32;
+ CARD16 chroma_format B16;
+ CARD16 color_description B16;
+ CARD16 max_width B16;
+ CARD16 max_height B16;
+ CARD16 subpicture_max_width B16;
+ CARD16 subpicture_max_height B16;
+ CARD32 mc_type B32;
+ CARD32 flags B32;
+} xvmcSurfaceInfo;
+#define sz_xvmcSurfaceInfo 24;
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+} xvmcQueryVersionReq;
+#define sz_xvmcQueryVersionReq 4;
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE padb1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 major B32;
+ CARD32 minor B32;
+ CARD32 padl4 B32;
+ CARD32 padl5 B32;
+ CARD32 padl6 B32;
+ CARD32 padl7 B32;
+} xvmcQueryVersionReply;
+#define sz_xvmcQueryVersionReply 32
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 port B32;
+} xvmcListSurfaceTypesReq;
+#define sz_xvmcListSurfaceTypesReq 8;
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE padb1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 num B32;
+ CARD32 padl3 B32;
+ CARD32 padl4 B32;
+ CARD32 padl5 B32;
+ CARD32 padl6 B32;
+ CARD32 padl7 B32;
+} xvmcListSurfaceTypesReply;
+#define sz_xvmcListSurfaceTypesReply 32
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 context_id B32;
+ CARD32 port B32;
+ CARD32 surface_type_id B32;
+ CARD16 width B16;
+ CARD16 height B16;
+ CARD32 flags B32;
+} xvmcCreateContextReq;
+#define sz_xvmcCreateContextReq 24;
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE padb1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD16 width_actual B16;
+ CARD16 height_actual B16;
+ CARD32 flags_return B32;
+ CARD32 padl4 B32;
+ CARD32 padl5 B32;
+ CARD32 padl6 B32;
+ CARD32 padl7 B32;
+} xvmcCreateContextReply;
+#define sz_xvmcCreateContextReply 32
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 context_id B32;
+} xvmcDestroyContextReq;
+#define sz_xvmcDestroyContextReq 8;
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 surface_id B32;
+ CARD32 context_id B32;
+} xvmcCreateSurfaceReq;
+#define sz_xvmcCreateSurfaceReq 12;
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE padb1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 padl2 B32;
+ CARD32 padl3 B32;
+ CARD32 padl4 B32;
+ CARD32 padl5 B32;
+ CARD32 padl6 B32;
+ CARD32 padl7 B32;
+} xvmcCreateSurfaceReply;
+#define sz_xvmcCreateSurfaceReply 32
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 surface_id B32;
+} xvmcDestroySurfaceReq;
+#define sz_xvmcDestroySurfaceReq 8;
+
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 subpicture_id B32;
+ CARD32 context_id B32;
+ CARD32 xvimage_id B32;
+ CARD16 width B16;
+ CARD16 height B16;
+} xvmcCreateSubpictureReq;
+#define sz_xvmcCreateSubpictureReq 20;
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE padb1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD16 width_actual B16;
+ CARD16 height_actual B16;
+ CARD16 num_palette_entries B16;
+ CARD16 entry_bytes B16;
+ CARD8 component_order[4];
+ CARD32 padl5 B32;
+ CARD32 padl6 B32;
+ CARD32 padl7 B32;
+} xvmcCreateSubpictureReply;
+#define sz_xvmcCreateSubpictureReply 32
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 subpicture_id B32;
+} xvmcDestroySubpictureReq;
+#define sz_xvmcDestroySubpictureReq 8;
+
+typedef struct {
+ CARD8 reqType;
+ CARD8 xvmcReqType;
+ CARD16 length B16;
+ CARD32 port B32;
+ CARD32 surface_type_id B32;
+} xvmcListSubpictureTypesReq;
+#define sz_xvmcListSubpictureTypesReq 12;
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE padb1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 num B32;
+ CARD32 padl2 B32;
+ CARD32 padl3 B32;
+ CARD32 padl4 B32;
+ CARD32 padl5 B32;
+ CARD32 padl6 B32;
+ CARD32 padl7 B32;
+} xvmcListSubpictureTypesReply;
+#define sz_xvmcListSubpictureTypesReply 32
+
+#endif
diff --git a/xc/include/fonts/fontproto.h b/xc/include/fonts/fontproto.h
index 12f1e4503..e30cae18d 100644
--- a/xc/include/fonts/fontproto.h
+++ b/xc/include/fonts/fontproto.h
@@ -1,4 +1,4 @@
-/* $XFree86: xc/include/fonts/fontproto.h,v 1.2 1999/09/04 09:14:08 dawes Exp $ */
+/* $XFree86: xc/include/fonts/fontproto.h,v 1.3 2001/04/05 17:42:26 dawes Exp $ */
/***********************************************************
@@ -25,7 +25,8 @@ authorization from The XFree86 Project Inc..
#ifndef _FONTPROTO_H
#define _FONTPROTO_H
-/* Functions defined by the server and used in lib/fonts */
+/* Externally provided functions required by libXfont */
+
extern int RegisterFPEFunctions ( NameCheckFunc name_func,
InitFpeFunc init_func,
FreeFpeFunc free_func,
@@ -60,9 +61,15 @@ extern Bool ClientSignal ( ClientPtr client );
extern void DeleteFontClientID ( Font id );
extern Font GetNewFontClientID ( void );
extern int StoreFontClientFont ( FontPtr pfont, Font id );
+extern void FontFileRegisterFpeFunctions ( void );
+extern void FontFileCheckRegisterFpeFunctions ( void );
extern Bool XpClientIsBitmapClient ( ClientPtr client );
extern Bool XpClientIsPrintClient( ClientPtr client, FontPathElementPtr fpe );
+extern void PrinterFontRegisterFpeFunctions ( void );
+
+extern void fs_register_fpe_functions ( void );
+extern void check_fs_register_fpe_functions ( void );
/* util/private.c */
extern FontPtr CreateFontRec (void);