From 84736c3ad33c8d49c4d9c9fc27c7667691510748 Mon Sep 17 00:00:00 2001 From: the_fiddler Date: Tue, 10 Oct 2006 20:50:28 +0000 Subject: [PATCH] --- Source/OpenGL/Bind/Main.cs | 2 +- Specifications/enumglu.spec | 251 ++++++ Specifications/{gl_types.txt => gl.tm} | 0 Specifications/glu.spec | 438 +++++++++++ Specifications/glx.spec | 621 +++++++++++++++ Specifications/glx.tm | 43 + Specifications/glxenum.spec | 324 ++++++++ Specifications/glxenumext.spec | 412 ++++++++++ Specifications/glxext.spec | 1003 ++++++++++++++++++++++++ Specifications/wgl.spec | 187 +++++ Specifications/wgl.tm | 24 + Specifications/wglenum.spec | 359 +++++++++ Specifications/wglenumext.spec | 382 +++++++++ Specifications/wglext.spec | 746 ++++++++++++++++++ 14 files changed, 4791 insertions(+), 1 deletion(-) create mode 100644 Specifications/enumglu.spec rename Specifications/{gl_types.txt => gl.tm} (100%) create mode 100644 Specifications/glu.spec create mode 100644 Specifications/glx.spec create mode 100644 Specifications/glx.tm create mode 100644 Specifications/glxenum.spec create mode 100644 Specifications/glxenumext.spec create mode 100644 Specifications/glxext.spec create mode 100644 Specifications/wgl.spec create mode 100644 Specifications/wgl.tm create mode 100644 Specifications/wglenum.spec create mode 100644 Specifications/wglenumext.spec create mode 100644 Specifications/wglext.spec diff --git a/Source/OpenGL/Bind/Main.cs b/Source/OpenGL/Bind/Main.cs index bb5450c8..26022730 100644 --- a/Source/OpenGL/Bind/Main.cs +++ b/Source/OpenGL/Bind/Main.cs @@ -87,7 +87,7 @@ namespace OpenTK.OpenGL.Bind ((Enum)enums[e.Name]).ConstantCollection.Add(c.Name, c); } - Translation.GLtypes = SpecReader.ReadTypeMap("gl_types.txt"); + Translation.GLtypes = SpecReader.ReadTypeMap("gl.tm"); Translation.CStypes = SpecReader.ReadTypeMap("cs_types.txt"); Translation.TranslateFunctions(functions, enums, out wrappers); diff --git a/Specifications/enumglu.spec b/Specifications/enumglu.spec new file mode 100644 index 00000000..e8624b8b --- /dev/null +++ b/Specifications/enumglu.spec @@ -0,0 +1,251 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2002 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. + +############################################################################### +Extensions define: + EXT_object_space_tess = 1 + EXT_nurbs_tessellator = 1 + +############################################################################### + +Boolean enum: + FALSE = 0 + TRUE = 1 + +############################################################################### + +Version enum: + VERSION_1_1 = 1 + VERSION_1_2 = 1 + VERSION_1_3 = 1 + +############################################################################### + +StringName enum: + VERSION = 100800 + EXTENSIONS = 100801 + +############################################################################### + +ErrorCode enum: + INVALID_ENUM = 100900 + INVALID_VALUE = 100901 + OUT_OF_MEMORY = 100902 +########INCOMPATIBLE_GL_VERSION = 100903 + INVALID_OPERATION = 100904 + +############################################################################### + +Filter4TypeSGIS enum: + LAGRANGIAN_SGI = 100300 + MITCHELL_NETRAVALI_SGI = 100301 + +############################################################################### + +NurbsDisplay enum: + use QuadricDrawStyle FILL + OUTLINE_POLYGON = 100240 + OUTLINE_PATCH = 100241 + +NurbsCallback enum: + NURBS_ERROR = 100103 + ERROR = 100103 + + NURBS_BEGIN = 100164 + NURBS_BEGIN_EXT = 100164 + NURBS_VERTEX = 100165 + NURBS_VERTEX_EXT = 100165 + NURBS_NORMAL = 100166 + NURBS_NORMAL_EXT = 100166 + NURBS_COLOR = 100167 + NURBS_COLOR_EXT = 100167 + NURBS_TEXTURE_COORD = 100168 + NURBS_TEXTURE_COORD_EXT = 100168 + NURBS_END = 100169 + NURBS_END_EXT = 100169 + + NURBS_BEGIN_DATA = 100170 + NURBS_BEGIN_DATA_EXT = 100170 + NURBS_VERTEX_DATA = 100171 + NURBS_VERTEX_DATA_EXT = 100171 + NURBS_NORMAL_DATA = 100172 + NURBS_NORMAL_DATA_EXT = 100172 + NURBS_COLOR_DATA = 100173 + NURBS_COLOR_DATA_EXT = 100173 + NURBS_TEXTURE_COORD_DATA = 100174 + NURBS_TEXTURE_COORD_DATA_EXT = 100174 + NURBS_END_DATA = 100175 + NURBS_END_DATA_EXT = 100175 + +NurbsError enum: + NURBS_ERROR1 = 100251 + NURBS_ERROR2 = 100252 + NURBS_ERROR3 = 100253 + NURBS_ERROR4 = 100254 + NURBS_ERROR5 = 100255 + NURBS_ERROR6 = 100256 + NURBS_ERROR7 = 100257 + NURBS_ERROR8 = 100258 + NURBS_ERROR9 = 100259 + NURBS_ERROR10 = 100260 + NURBS_ERROR11 = 100261 + NURBS_ERROR12 = 100262 + NURBS_ERROR13 = 100263 + NURBS_ERROR14 = 100264 + NURBS_ERROR15 = 100265 + NURBS_ERROR16 = 100266 + NURBS_ERROR17 = 100267 + NURBS_ERROR18 = 100268 + NURBS_ERROR19 = 100269 + NURBS_ERROR20 = 100270 + NURBS_ERROR21 = 100271 + NURBS_ERROR22 = 100272 + NURBS_ERROR23 = 100273 + NURBS_ERROR24 = 100274 + NURBS_ERROR25 = 100275 + NURBS_ERROR26 = 100276 + NURBS_ERROR27 = 100277 + NURBS_ERROR28 = 100278 + NURBS_ERROR29 = 100279 + NURBS_ERROR30 = 100280 + NURBS_ERROR31 = 100281 + NURBS_ERROR32 = 100282 + NURBS_ERROR33 = 100283 + NURBS_ERROR34 = 100284 + NURBS_ERROR35 = 100285 + NURBS_ERROR36 = 100286 + NURBS_ERROR37 = 100287 + +NurbsProperty enum: + AUTO_LOAD_MATRIX = 100200 + CULLING = 100201 + SAMPLING_TOLERANCE = 100203 + DISPLAY_MODE = 100204 + PARAMETRIC_TOLERANCE = 100202 + SAMPLING_METHOD = 100205 + U_STEP = 100206 + V_STEP = 100207 + + NURBS_MODE = 100160 + NURBS_MODE_EXT = 100160 + NURBS_TESSELLATOR = 100161 + NURBS_TESSELLATOR_EXT = 100161 + NURBS_RENDERER = 100162 + NURBS_RENDERER_EXT = 100162 + +NurbsSampling enum: + OBJECT_PARAMETRIC_ERROR = 100208 + OBJECT_PARAMETRIC_ERROR_EXT = 100208 + OBJECT_PATH_LENGTH = 100209 + OBJECT_PATH_LENGTH_EXT = 100209 + + PATH_LENGTH = 100215 + PARAMETRIC_ERROR = 100216 + DOMAIN_DISTANCE = 100217 + +NurbsTrim enum: + MAP1_TRIM_2 = 100210 + MAP1_TRIM_3 = 100211 + +############################################################################### + +QuadricDrawStyle enum: + POINT = 100010 + LINE = 100011 + FILL = 100012 + SILHOUETTE = 100013 + +QuadricCallback enum: + use NurbsCallback ERROR + +QuadricNormal enum: + SMOOTH = 100000 + FLAT = 100001 + NONE = 100002 + +QuadricOrientation enum: + OUTSIDE = 100020 + INSIDE = 100021 + +############################################################################### + +TessCallback enum: + TESS_BEGIN = 100100 + BEGIN = 100100 + TESS_VERTEX = 100101 + VERTEX = 100101 + TESS_END = 100102 + END = 100102 + TESS_ERROR = 100103 + ERROR = 100103 + TESS_EDGE_FLAG = 100104 + EDGE_FLAG = 100104 + TESS_COMBINE = 100105 + TESS_BEGIN_DATA = 100106 + TESS_VERTEX_DATA = 100107 + TESS_END_DATA = 100108 + TESS_ERROR_DATA = 100109 + TESS_EDGE_FLAG_DATA = 100110 + TESS_COMBINE_DATA = 100111 + +TessContour enum: + CW = 100120 + CCW = 100121 + INTERIOR = 100122 + EXTERIOR = 100123 + UNKNOWN = 100124 + +TessProperty enum: + TESS_WINDING_RULE = 100140 + TESS_BOUNDARY_ONLY = 100141 + TESS_TOLERANCE = 100142 + +TessError enum: + TESS_ERROR1 = 100151 + TESS_ERROR2 = 100152 + TESS_ERROR3 = 100153 + TESS_ERROR4 = 100154 + TESS_ERROR5 = 100155 + TESS_ERROR6 = 100156 + TESS_ERROR7 = 100157 + TESS_ERROR8 = 100158 + TESS_MISSING_BEGIN_POLYGON = 100151 + TESS_MISSING_BEGIN_CONTOUR = 100152 + TESS_MISSING_END_POLYGON = 100153 + TESS_MISSING_END_CONTOUR = 100154 + TESS_COORD_TOO_LARGE = 100155 + TESS_NEED_COMBINE_CALLBACK = 100156 + +TessWinding enum: + TESS_WINDING_ODD = 100130 + TESS_WINDING_NONZERO = 100131 + TESS_WINDING_POSITIVE = 100132 + TESS_WINDING_NEGATIVE = 100133 + TESS_WINDING_ABS_GEQ_TWO = 100134 + +############################################################################### + diff --git a/Specifications/gl_types.txt b/Specifications/gl.tm similarity index 100% rename from Specifications/gl_types.txt rename to Specifications/gl.tm diff --git a/Specifications/glu.spec b/Specifications/glu.spec new file mode 100644 index 00000000..a38a74b0 --- /dev/null +++ b/Specifications/glu.spec @@ -0,0 +1,438 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2002 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. + +param: retval retained +version: 1.0 + +BeginCurve(nurb) + return void + param nurb NurbsObj in value + +BeginPolygon(tess) + return void + param tess TesselatorObj in value + +BeginSurface(nurb) + return void + param nurb NurbsObj in value + +BeginTrim(nurb) + return void + param nurb NurbsObj in value + +Build1DMipmapLevels(target, internalFormat, width, format, type, level, base, max, data); + return Int32 + param target TextureTarget in value + param internalFormat Int32 in value + param width SizeI in value + param format PixelFormat in value + param type PixelType in value + param level Int32 in value + param base Int32 in value + param max Int32 in value + param data void in reference + +Build1DMipmaps(target, internalFormat, width, format, type, data); + return Int32 + param target TextureTarget in value + param internalFormat Int32 in value + param width SizeI in value + param format PixelFormat in value + param type PixelType in value + param data void in reference + +Build2DMipmapLevels(target, internalFormat, width, height, format, type, level, base, max, data); + return Int32 + param target TextureTarget in value + param internalFormat Int32 in value + param width SizeI in value + param height SizeI in value + param format PixelFormat in value + param type PixelType in value + param level Int32 in value + param base Int32 in value + param max Int32 in value + param data void in reference + +Build2DMipmaps(target, internalFormat, width, height, format, type, data); + return Int32 + param target TextureTarget in value + param internalFormat Int32 in value + param width SizeI in value + param height SizeI in value + param format PixelFormat in value + param type PixelType in value + param data void in reference + +Build3DMipmapLevels(target, internalFormat, width, height, depth, format, type, level, base, max, data); + return Int32 + param target TextureTarget in value + param internalFormat Int32 in value + param width SizeI in value + param height SizeI in value + param depth SizeI in value + param format PixelFormat in value + param type PixelType in value + param level Int32 in value + param base Int32 in value + param max Int32 in value + param data void in reference + +Build3DMipmaps(target, internalFormat, width, height, depth, format, type, data); + return Int32 + param target TextureTarget in value + param internalFormat Int32 in value + param width SizeI in value + param height SizeI in value + param depth SizeI in value + param format PixelFormat in value + param type PixelType in value + param data void in reference + +CheckExtension(extName, extString) + return Boolean + param extName UInt8 in array [COMPSIZE()] + param extString UInt8 in array [COMPSIZE()] + +Cylinder(quad, base, top, height, slices, stacks); + return void + param quad QuadricObj in value + param base Float64 in value + param top Float64 in value + param height Float64 in value + param slices Int32 in value + param stacks Int32 in value + +DeleteNurbsRenderer(nurb) + return void + param nurb NurbsObj in value + +DeleteQuadric(quad) + return void + param quad QuadricObj in value + +DeleteTess(tess) + return void + param tess TesselatorObj in value + +Disk(quad, inner, outer, slices, loops) + return void + param quad QuadricObj in value + param inner Float64 in value + param outer Float64 in value + param slices Int32 in value + param loops Int32 in value + +EndCurve(nurb) + return void + param nurb NurbsObj in value + +EndPolygon(tess) + return void + param tess TesselatorObj in value + +EndSurface(nurb) + return void + param nurb NurbsObj in value + +EndTrim(nurb) + return void + param nurb NurbsObj in value + +ErrorString(error) + return String + param error ErrorCode in value + +GetString(name) + return String + param name StringName in value + +GetNurbsProperty(nurb, property, data) + return void + param nurb NurbsObj in value + param property NurbsProperty in value + param data Float32Pointer out value + +GetTessProperty(tess, which, data) + return void + param tess TesselatorObj in value + param which TessProperty in value + param data Float64Pointer out value + +LoadSamplingMatrices(nurb, model, perspective, view) + return void + param nurb NurbsObj in value + param model Float32 in array [16] + param perspective Float32 in array [16] + param view Int32 in array [4] + +LookAt(eyeX, eyeY, eyeZ, centerX, centerY, centerZ, upX, upY, upZ) + return void + param eyeX Float64 in value + param eyeY Float64 in value + param eyeZ Float64 in value + param centerX Float64 in value + param centerY Float64 in value + param centerZ Float64 in value + param upX Float64 in value + param upY Float64 in value + param upZ Float64 in value + +NewNurbsRenderer() + return NurbsObj + +NewQuadric() + return QuadricObj + +NewTess() + return TesselatorObj + +NextContour(tess, type) + return void + param tess TesselatorObj in value + param type TessContour in value + +NurbsCallback(nurb, which, CallBackFunc) + return void + param nurb NurbsObj in value + param which NurbsCallback in value + param CallBackFunc FunctionPointer in value + +NurbsCallbackData(nurb, userData) + return void + param nurb NurbsObj in value + param userData VoidPointer in value + +NurbsCallbackDataEXT(nurb, userData) + return void + param nurb NurbsObj in value + param userData VoidPointer in value + +NurbsCurve(nurb, knotCount, knots, stride, control, order, type) + return void + param nurb NurbsObj in value + param knotCount Int32 in value + param knots Float32 out reference + param stride Int32 in value + param control Float32 out reference + param order Int32 in value + param type MapTarget in value + +NurbsProperty(nurb, property, value) + return void + param nurb NurbsObj in value + param property NurbsProperty in value + param value Float32 in value + +NurbsSurface(nurb, sKnotCount, sKnots, tKnotCount, tKnots, sStride, tStride, control, sOrder, tOrder, type) + return void + param nurb NurbsObj in value + param sKnotCount Int32 in value + param sKnots Float32Pointer in value + param tKnotCount Int32 in value + param tKnots Float32Pointer in value + param sStride Int32 in value + param tStride Int32 in value + param control Float32Pointer in value + param sOrder Int32 in value + param tOrder Int32 in value + param type MapTarget in value + +Ortho2D(left, right, bottom, top) + return void + param left Float64 in value + param right Float64 in value + param bottom Float64 in value + param top Float64 in value + +PartialDisk(quad, inner, outer, slices, loops, start, sweep) + return void + param quad QuadricObj in value + param inner Float64 in value + param outer Float64 in value + param slices Int32 in value + param loops Int32 in value + param start Float64 in value + param sweep Float64 in value + +Perspective(fovy, aspect, zNear, zFar) + return void + param fovy Float64 in value + param aspect Float64 in value + param zNear Float64 in value + param zFar Float64 in value + +PickMatrix(x, y, delX, delY, viewport) + return void + param x Float64 in value + param y Float64 in value + param delX Float64 in value + param delY Float64 in value + param viewport Int32 out array [4] + +Project(objX, objY, objZ, model, proj, view, winX, winY, winZ) + return Int32 + param objX Float64 in value + param objY Float64 in value + param objZ Float64 in value + param model Float64 in array [16] + param proj Float64 in array [16] + param view Int32 in array [4] + param winX Float64Pointer in value + param winY Float64Pointer in value + param winZ Float64Pointer in value + +PwlCurve(nurb, count, data, stride, type) + return void + param nurb NurbsObj in value + param count Int32 in value + param data Float32Pointer in value + param stride Int32 in value + param type NurbsTrim in value + +QuadricCallback(quad, which, CallBackFunc) + return void + param quad QuadricObj in value + param which QuadricCallback in value + param CallBackFunc FunctionPointer in value + +QuadricDrawStyle(quad, draw) + return void + param quad QuadricObj in value + param draw QuadricDrawStyle in value + +QuadricNormals(quad, normal) + return void + param quad QuadricObj in value + param normal QuadricNormal in value + +QuadricOrientation(quad, orientation) + return void + param quad QuadricObj in value + param orientation QuadricOrientation in value + +QuadricTexture(quad, texture) + return void + param quad QuadricObj in value + param texture Boolean in value + +ScaleImage(format, wIn, hIn, typeIn, dataIn, wOut, hOut, typeOut, dataOut) + return Int32 + param format PixelFormat in value + param wIn SizeI in value + param hIn SizeI in value + param typeIn PixelType in value + param dataIn void in reference + param wOut SizeI in value + param hOut SizeI in value + param typeOut PixelType in value + param dataOut VoidPointer out value + +Sphere(quad, radius, slices, stacks) + return void + param quad QuadricObj in value + param radius Float64 in value + param slices Int32 in value + param stacks Int32 in value + +TessBeginContour(tess) + return void + param tess TesselatorObj in value + +TessBeginPolygon(tess, data) + return void + param tess TesselatorObj in value + param data VoidPointer in value + +TessCallback(tess, which, CallBackFunc) + return void + param tess TesselatorObj in value + param which TessCallback in value + param CallBackFunc FunctionPointer in value + +TessEndContour(tess) + return void + param tess TesselatorObj in value + +TessEndPolygon(tess) + return void + param tess TesselatorObj in value + +TessNormal(tess, valueX, valueY, valueZ) + return void + param tess TesselatorObj in value + param valueX Float64 in value + param valueY Float64 in value + param valueZ Float64 in value + +TessProperty(tess, which, data) + return void + param tess TesselatorObj in value + param which TessProperty in value + param data Float64 in value + +TessVertex(tess, location, data) + return void + param tess TesselatorObj in value + param location Float64 out array [3] + param data VoidPointer in value + +TexFilterFuncSGI(target, filtertype, parms, n, weights) + return Int32 out value + param target TextureTarget in value + param filtertype Filter4TypeSGIS in value + param parms Float32 in array [2] + param n Int32 in value + param weights Float32Pointer out value + +UnProject(winX, winY, winZ, model, proj, view, objX, objY, objZ) + return Int32 + param winX Float64 in value + param winY Float64 in value + param winZ Float64 in value + param model Float64 in array [16] + param proj Float64 in array [16] + param view Int32 in array [4] + param objX Float64Pointer in value + param objY Float64Pointer in value + param objZ Float64Pointer in value + +UnProject4(winX, winY, winZ, clipW, model, proj, view, near, far, objX, objY, objZ, objW) + return Int32 + param winX Float64 in value + param winY Float64 in value + param winZ Float64 in value + param clipW Float64 in value + param model Float64 in array [16] + param proj Float64 in array [16] + param view Int32 in array [4] + param near Float64 in value + param far Float64 in value + param objX Float64Pointer in value + param objY Float64Pointer in value + param objZ Float64Pointer in value + param objW Float64Pointer in value diff --git a/Specifications/glx.spec b/Specifications/glx.spec new file mode 100644 index 00000000..c497578f --- /dev/null +++ b/Specifications/glx.spec @@ -0,0 +1,621 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2005 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. + +required-props: +param: retval retained +dlflags: notlistable handcode nop +glxflags: client-handcode server-handcode +glxvendorglx: * +vectorequiv: * +category: pixel-rw bgn-end display-list drawing drawing-control feedback framebuf misc modeling pixel-op pixel-rw state-req xform glx glxopcode +glxopcode: * + +############################################################################### +# +# GLX1.0 commands +# +############################################################################### +Render() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 1 + + +RenderLarge() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 2 + + +CreateContext(gc_id, screen, visual, share_list) + return void + param gc_id Int32 in value + param screen Int32 in value + param visual Int32 in value + param share_list Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 3 + + +DestroyContext(context) + return void + param context Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 4 + + +MakeCurrent(drawable, context) + return void + param drawable Int32 in value + param context Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 5 + + +IsDirect(dpy, context) + return void + param dpy Int32 in value + param context Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 6 + + +QueryVersion(major, minor) + return void + param major Int32 out reference + param minor Int32 out reference + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 7 + + +WaitGL(context) + return void + param context Int32 in value + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 8 + + +WaitX() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 9 + + +CopyContext(source, dest, mask) + return void + param source Int32 in value + param dest Int32 in value + param mask Int32 in value + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 10 + + +SwapBuffers(drawable) + return void + param drawable Int32 in value + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 11 + + +UseXFont(font, first, count, list_base) + return void + param font Int32 in value + param first Int32 in value + param count Int32 in value + param list_base Int32 in value + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 12 + + +CreateGLXPixmap(visual, pixmap, glxpixmap) + return void + param visual Int32 in value + param pixmap Int32 in value + param glxpixmap Int32 in value + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 13 + +GetVisualConfigs() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 14 + + +DestroyGLXPixmap(pixmap) + return void + param pixmap Int32 in value + glxflags client-handcode + category glx + dlflags notlistable + glxopcode 15 + + +VendorPrivate() + return void + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 16 + + +VendorPrivateWithReply() + return void + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 17 + +############################################################################### +# +# GLX1.1 commands +# +############################################################################### +QueryExtensionsString(screen) + return void + param screen Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 18 + +QueryServerString(screen, name) + return void + param screen Int32 in value + param name Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 19 + +ClientInfo() + return void + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxopcode 20 + +############################################################################### +# +# GLX1.3 commands +# +############################################################################### +GetFBConfigs() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxopcode 21 + +CreatePixmap(config, pixmap, glxpixmap) + return void + param config Int32 in value + param pixmap Int32 in value + param glxpixmap Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 22 + +DestroyPixmap(glxpixmap) + return void + param glxpixmap Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 23 + +CreateNewContext(config, render_type, share_list, direct) + return void + param config Int32 in value + param render_type Int32 in value + param share_list Int32 in value + param direct Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 24 + +QueryContext() + return void + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 25 + +MakeContextCurrent(drawable, readdrawable, context) + return void + param drawable Int32 in value + param readdrawable Int32 in value + param context Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 26 + +CreatePbuffer(config, pbuffer) + return void + param config Int32 in value + param pbuffer Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 27 + +DestroyPbuffer(pbuffer) + return void + param pbuffer Int32 in value + dlflags notlistable + glxflags client-handcode + category glx + glxopcode 28 + +GetDrawableAttributes(drawable) + return void + param drawable Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 29 + +ChangeDrawableAttributes(drawable) + return void + param drawable Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 30 + +CreateWindow(config, window, glxwindow) + return void + param config Int32 in value + param window Int32 in value + param glxwindow Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 31 + +DestroyWindow(glxwindow) + return void + param glxwindow Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxopcode 32 + +############################################################################### +# +# IRIX5.3 extension commands +# +############################################################################### + +############################################################################### +# +# SGI_swap_control extension commands +# +############################################################################### +SwapIntervalSGI() + return void + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65536 + +############################################################################### +# +# IRIX5.3-PATCH154 extension commands +# +############################################################################### + +############################################################################### +# +# SGI_make_current_read extension commands +# +############################################################################### +MakeCurrentReadSGI(drawable, readdrawable, context) + return void + param drawable Int32 in value + param readdrawable Int32 in value + param context Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65537 + +############################################################################### +# +# SGIX_video_source extension commands +# +############################################################################### +CreateGLXVideoSourceSGIX(dpy, screen, server, path, class, node) + return void + param dpy Int32 in value + param screen Int32 in value + param server Int32 in value + param path Int32 in value + param class Int32 in value + param node Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65538 + +DestroyGLXVideoSourceSGIX(dpy, glxvideosource) + return void + param dpy Int32 in value + param glxvideosource Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65539 + +############################################################################### +# +# IRIX6.2 extension commands +# +############################################################################### + +############################################################################### +# +# EXT_import_context extension commands +# +############################################################################### +QueryContextInfoEXT() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxvendorglx 1024 + +############################################################################### +# +# SGIX_fbconfig extension commands +# +############################################################################### +GetFBConfigsSGIX() + return void + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxvendorglx 65540 + +CreateContextWithConfigSGIX(gc_id, screen, config, share_list) + return void + param gc_id Int32 in value + param screen Int32 in value + param config Int32 in value + param share_list Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65541 + +CreateGLXPixmapWithConfigSGIX(config, pixmap, glxpixmap) + return void + param config Int32 in value + param pixmap Int32 in value + param glxpixmap Int32 in value + category glx + dlflags notlistable + glxflags client-handcode server-handcode + glxvendorglx 65542 + +############################################################################### +# +# SGIX_pbuffer extension commands +# +############################################################################### + +CreateGLXPbufferSGIX(config, pbuffer) + return void + param config Int32 in value + param pbuffer Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxvendorglx 65543 + +DestroyGLXPbufferSGIX(pbuffer) + return void + param pbuffer Int32 in value + dlflags notlistable + glxflags client-handcode + category glx + glxvendorglx 65544 + +ChangeDrawableAttributesSGIX(drawable) + return void + param drawable Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxvendorglx 65545 + +GetDrawableAttributesSGIX(drawable) + return void + param drawable Int32 in value + dlflags notlistable + glxflags client-handcode server-handcode + category glx + glxvendorglx 65546 + +############################################################################### +# +# SGIX_swap_group extension commands +# +############################################################################### + +JoinSwapGroupSGIX(window,group) + return void + param window Int32 in value + param group Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65547 + +############################################################################### +# +# SGIX_swap_barrier extension commands +# +############################################################################### + +BindSwapBarrierSGIX(window,barrier) + return void + param window Int32 in value + param barrier Int32 in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65548 + +QueryMaxSwapBarriersSGIX() + return void + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65549 + +############################################################################### +# +# SGIX_hyperpipe extension commands +# +############################################################################### + +QueryHyperpipeNetworkSGIX(dpy, npipes) + return GLXHyperpipeNetworkPointer + param dpy Display out reference + param npipes int out reference + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65550 + +HyperpipeConfigSGIX(dpy, networkId, npipes, cfg, hpId) + return int + param dpy Display out reference + param networkId int in value + param npipes int in value + param cfg GLXHyperpipeConfig in array[npipes] + param hpId int out reference + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65552 + +QueryHyperpipeConfigSGIX(dpy, hpId, npipes) + return GLXHyperpipeConfigPointer + param dpy Display out reference + param hpId int in value + param npipes int out reference + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65551 + +DestroyHyperpipeConfigSGIX(dpy, hpId) + return int + param dpy Display out reference + param hpId int in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx 65553 + +BindHyperpipeSGIX(dpy, hpId) + return int + param dpy Display out reference + param hpId int in value + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx ??? + +QueryHyperpipeBestAttribSGIX(dpy, timeSlice, attrib, size, attribList, returnAttribList) + return int + param dpy Display out reference + param timeSlice int in value + param attrib int in value + param size int in value + param attribList Void in array[size] + param returnAttribList Void out array[size] + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx ??? + +HyperpipeAttribSGIX(dpy, timeSlice, attrib, size, attribList) + return int + param dpy Display out reference + param timeSlice int in value + param attrib int in value + param size int in value + param attribList void in array[size] + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx ??? + +QueryHyperpipeAttribSGIX(dpy, timeSlice, attrib, size, returnAttribList) + return int + param dpy Display out reference + param timeSlice int in value + param attrib int in value + param size int in value + param returnAttribList void in array[size] + glxflags client-handcode server-handcode + category glx + dlflags notlistable + glxvendorglx ??? diff --git a/Specifications/glx.tm b/Specifications/glx.tm new file mode 100644 index 00000000..ca2b4506 --- /dev/null +++ b/Specifications/glx.tm @@ -0,0 +1,43 @@ +Bool,*,*, Bool,*,* +Colormap,*,*, Colormap,*,* +DMbuffer,*,*, DMbuffer,*,* +DMparams,*,*, DMparams,*,* +Display,*,*, Display,*,* +DisplayPointer,*,*, Display *,*,* +FunctionPointer,*,*, __GLXextFuncPtr,*,* +GLXContext,*,*, GLXContext,*,* +constGLXContext,*,*, const GLXContext,*,* +GLXContextID,*,*, GLXContextID,*,* +GLXDrawable,*,*, GLXDrawable,*,* +GLXFBConfig,*,*, GLXFBConfig,*,* +GLXFBConfigPointer,*,*, GLXFBConfig *,*,* +GLXFBConfigSGIX,*,*, GLXFBConfigSGIX,*,* +GLXFBConfigSGIXPointer,*,*, GLXFBConfigSGIX *,*,* +GLXHyperpipeNetworkSGIXPointer,*,*, GLXHyperpipeNetworkSGIX *,*,* +GLXHyperpipeConfigSGIX,*,*, GLXHyperpipeConfigSGIX,*,* +GLXHyperpipeConfigSGIXPointer,*,*, GLXHyperpipeConfigSGIX *,*,* +GLXPbuffer,*,*, GLXPbuffer,*,* +GLXPbufferSGIX,*,*, GLXPbufferSGIX,*,* +GLXPixmap,*,*, GLXPixmap,*,* +GLXVideoSourceSGIX,*,*, GLXVideoSourceSGIX,*,* +GLXWindow,*,*, GLXWindow,*,* +GLenum,*,*, GLenum,*,* +GLfunction,*,*, GLfunction,*,* +GLubyte,*,*, GLubyte,*,* +Pixmap,*,*, Pixmap,*,* +Status,*,*, Status,*,* +Uint,*,*, unsigned int,*,* +VLNode,*,*, VLNode,*,* +VLPath,*,*, VLPath,*,* +VLServer,*,*, VLServer,*,* +Window,*,*, Window,*,* +XVisualInfo,*,*, XVisualInfo,*,* +XVisualInfoPointer,*,*, XVisualInfo *,*,* +float,*,*, float,*,* +int,*,*, int,*,* +uint,*,*, unsigned int,*,* +int32_t,*,*, int32_t,*,* +int64_t,*,*, int64_t,*,* +long,*,*, long,*,* +ulong,*,*, unsigned long,*,* +void,*,*, void,*,* diff --git a/Specifications/glxenum.spec b/Specifications/glxenum.spec new file mode 100644 index 00000000..9f7b15a7 --- /dev/null +++ b/Specifications/glxenum.spec @@ -0,0 +1,324 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2005 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. +# +# $Date: 2005/01/20 08:44:12 $ $Revision: 1.6 $ +# $Header: /oss/CVS/cvs/projects/ogl-sample/main/doc/registry/specs/glxenum.spec,v 1.6 2005/01/20 08:44:12 ljp Exp $ + +# This is the GLX enumerant registry. +# +# It is an extremely important file. Do not mess with it unless +# you know what you're doing and have permission to do so. +# +# Rules for modification are the same as the rules for the OpenGL +# enumerant registry (gl.spec). Basically, don't modify this +# file unless you're SGI's ARB Representative. + +Extensions define: + VERSION_1_1 = 1 + VERSION_1_2 = 1 + VERSION_1_3 = 1 + VERSION_1_4 = 1 + SGIS_multisample = 1 + EXT_visual_info = 1 + SGI_swap_control = 1 + SGI_video_sync = 1 + SGI_make_current_read = 1 + SGIX_video_source = 1 + EXT_visual_rating = 1 + EXT_import_context = 1 + SGIX_fbconfig = 1 + SGIX_pbuffer = 1 + SGI_cushion = 1 + SGIX_video_resize = 1 + SGIX_dmbuffer = 1 + SGIX_swap_group = 1 + SGIX_swap_barrier = 1 + SGIS_blended_overlay = 1 + SGIS_shared_multisample = 1 + SUN_get_transparent_index = 1 + 3DFX_multisample = 1 + MESA_copy_sub_buffer = 1 + MESA_pixmap_colormap = 1 + MESA_release_buffers = 1 + MESA_set_3dfx_mode = 1 + SGIX_visual_select_group = 1 + SGIX_hyperpipe = 1 + +GLXStringName enum: + VENDOR = 0x1 + VERSION = 0x2 + EXTENSIONS = 0x3 + +GLXErrorCode enum: + BAD_SCREEN = 1 + BAD_ATTRIBUTE = 2 + NO_EXTENSION = 3 + BAD_VISUAL = 4 + BAD_CONTEXT = 5 + BAD_VALUE = 6 + BAD_ENUM = 7 + BAD_HYPERPIPE_CONFIG_SGIX = 91 # SGIX_hyperpipe + BAD_HYPERPIPE_SGIX = 92 # " + +GLXDrawableTypeMask enum: + WINDOW_BIT = 0x00000001 # DRAWABLE_TYPE value + PIXMAP_BIT = 0x00000002 # " + PBUFFER_BIT = 0x00000004 # " + WINDOW_BIT_SGIX = 0x00000001 # DRAWABLE_TYPE_SGIX value + PIXMAP_BIT_SGIX = 0x00000002 # " + PBUFFER_BIT_SGIX = 0x00000004 # " + +GLXRenderTypeMask enum: + RGBA_BIT = 0x00000001 # RENDER_TYPE value + COLOR_INDEX_BIT = 0x00000002 # " + RGBA_BIT_SGIX = 0x00000001 # RENDER_TYPE_SGIX value + COLOR_INDEX_BIT_SGIX = 0x00000002 # " + RGBA_FLOAT_BIT_ARB = 0x00000004 # RENDER_TYPE value (from ARB_fbconfig_float) + +GLXSyncType enum: + SYNC_FRAME_SGIX = 0x00000000 # ChannelRectSyncSGIX synctype + SYNC_SWAP_SGIX = 0x00000001 # " + +GLXEventMask enum: + PBUFFER_CLOBBER_MASK = 0x08000000 # SelectEvent mask + BUFFER_CLOBBER_MASK_SGIX = 0x08000000 # SelectEventSGIX mask + +GLXPbufferClobberMask enum: + FRONT_LEFT_BUFFER_BIT = 0x00000001 # PbufferClobberEvent mask + FRONT_RIGHT_BUFFER_BIT = 0x00000002 # " + BACK_LEFT_BUFFER_BIT = 0x00000004 # " + BACK_RIGHT_BUFFER_BIT = 0x00000008 # " + AUX_BUFFERS_BIT = 0x00000010 # " + DEPTH_BUFFER_BIT = 0x00000020 # " + STENCIL_BUFFER_BIT = 0x00000040 # " + ACCUM_BUFFER_BIT = 0x00000080 # " + FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001 # BufferClobberEventSGIX mask + FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002 # " + BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004 # " + BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008 # " + AUX_BUFFERS_BIT_SGIX = 0x00000010 # " + DEPTH_BUFFER_BIT_SGIX = 0x00000020 # " + STENCIL_BUFFER_BIT_SGIX = 0x00000040 # " + ACCUM_BUFFER_BIT_SGIX = 0x00000080 # " + SAMPLE_BUFFERS_BIT_SGIX = 0x00000100 # " + +GLXHyperpipeTypeMask enum: + HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001 # SGIX_hyperpipe + HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002 # " + +GLXHyperpipeAttrib enum: + PIPE_RECT_SGIX = 0x00000001 # SGIX_hyperpipe + PIPE_RECT_LIMITS_SGIX = 0x00000002 # " + HYPERPIPE_STEREO_SGIX = 0x00000003 # " + HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004 # " + +GLXHyperpipeMisc enum: + HYPERPIPE_PIPE_NAME_LENGTH_SGIX = 80 # SGIX_hyperpipe + +GLXAttribute enum: + USE_GL = 1 # Visual attributes + BUFFER_SIZE = 2 # " + LEVEL = 3 # " + RGBA = 4 # " + DOUBLEBUFFER = 5 # " + STEREO = 6 # " + AUX_BUFFERS = 7 # " + RED_SIZE = 8 # " + GREEN_SIZE = 9 # " + BLUE_SIZE = 10 # " + ALPHA_SIZE = 11 # " + DEPTH_SIZE = 12 # " + STENCIL_SIZE = 13 # " + ACCUM_RED_SIZE = 14 # " + ACCUM_GREEN_SIZE = 15 # " + ACCUM_BLUE_SIZE = 16 # " + ACCUM_ALPHA_SIZE = 17 # " + CONFIG_CAVEAT = 0x20 # " + X_VISUAL_TYPE = 0x22 # " + TRANSPARENT_TYPE = 0x23 # " + TRANSPARENT_INDEX_VALUE = 0x24 # " + TRANSPARENT_RED_VALUE = 0x25 # " + TRANSPARENT_GREEN_VALUE = 0x26 # " + TRANSPARENT_BLUE_VALUE = 0x27 # " + TRANSPARENT_ALPHA_VALUE = 0x28 # " + DONT_CARE = 0xFFFFFFFF # may be specified for ChooseFBConfig attributes + NONE = 0x8000 # several attribute values + SLOW_CONFIG = 0x8001 # CONFIG_CAVEAT attribute value + TRUE_COLOR = 0x8002 # X_VISUAL_TYPE attribute value + DIRECT_COLOR = 0x8003 # " + PSEUDO_COLOR = 0x8004 # " + STATIC_COLOR = 0x8005 # " + GRAY_SCALE = 0x8006 # " + STATIC_GRAY = 0x8007 # " + TRANSPARENT_RGB = 0x8008 # TRANSPARENT_TYPE attribute value + TRANSPARENT_INDEX = 0x8009 # " + VISUAL_ID = 0x800B # Context attribute + SCREEN = 0x800C # " + NON_CONFORMANT_CONFIG = 0x800D # CONFIG_CAVEAT attribute value + DRAWABLE_TYPE = 0x8010 # FBConfig attribute + RENDER_TYPE = 0x8011 # " + X_RENDERABLE = 0x8012 # " + FBCONFIG_ID = 0x8013 # " + RGBA_TYPE = 0x8014 # CreateNewContext render_type value + COLOR_INDEX_TYPE = 0x8015 # " + MAX_PBUFFER_WIDTH = 0x8016 # FBConfig attribute + MAX_PBUFFER_HEIGHT = 0x8017 # " + MAX_PBUFFER_PIXELS = 0x8018 # " + PRESERVED_CONTENTS = 0x801B # CreateGLXPbuffer attribute + LARGEST_PBUFFER = 0x801C # " + WIDTH = 0x801D # Drawable attribute + HEIGHT = 0x801E # " + EVENT_MASK = 0x801F # " + DAMAGED = 0x8020 # PbufferClobber event_type value + SAVED = 0x8021 # " + WINDOW = 0x8022 # PbufferClobber draw_type value + PBUFFER = 0x8023 # " + PBUFFER_HEIGHT = 0x8040 # CreateGLXPbuffer attribute + PBUFFER_WIDTH = 0x8041 # " + VISUAL_CAVEAT_EXT = 0x20 # Visual attribute + X_VISUAL_TYPE_EXT = 0x22 # " + TRANSPARENT_TYPE_EXT = 0x23 # " + TRANSPARENT_INDEX_VALUE_EXT = 0x24 # " + TRANSPARENT_RED_VALUE_EXT = 0x25 # " + TRANSPARENT_GREEN_VALUE_EXT = 0x26 # " + TRANSPARENT_BLUE_VALUE_EXT = 0x27 # " + TRANSPARENT_ALPHA_VALUE_EXT = 0x28 # " + NONE_EXT = 0x8000 # several EXT attribute values + SLOW_VISUAL_EXT = 0x8001 # VISUAL_CAVEAT_EXT attribute value + TRUE_COLOR_EXT = 0x8002 # X_VISUAL_TYPE_EXT attribute value + DIRECT_COLOR_EXT = 0x8003 # " + PSEUDO_COLOR_EXT = 0x8004 # " + STATIC_COLOR_EXT = 0x8005 # " + GRAY_SCALE_EXT = 0x8006 # " + STATIC_GRAY_EXT = 0x8007 # " + TRANSPARENT_RGB_EXT = 0x8008 # TRANSPARENT_TYPE_EXT attribute value + TRANSPARENT_INDEX_EXT = 0x8009 # " + SHARE_CONTEXT_EXT = 0x800A # QueryContextInfoEXT attribute + VISUAL_ID_EXT = 0x800B # " + SCREEN_EXT = 0x800C # " + NON_CONFORMANT_VISUAL_EXT = 0x800D # VISUAL_CAVEAT_EXT attribute value + DRAWABLE_TYPE_SGIX = 0x8010 # FBConfigSGIX attribute + RENDER_TYPE_SGIX = 0x8011 # " + X_RENDERABLE_SGIX = 0x8012 # " + FBCONFIG_ID_SGIX = 0x8013 # " + RGBA_TYPE_SGIX = 0x8014 # CreateContextWithConfigSGIX render_type value + COLOR_INDEX_TYPE_SGIX = 0x8015 # " + MAX_PBUFFER_WIDTH_SGIX = 0x8016 # FBConfigSGIX attribute + MAX_PBUFFER_HEIGHT_SGIX = 0x8017 # " + MAX_PBUFFER_PIXELS_SGIX = 0x8018 # " + OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019 # " + OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A # " + PRESERVED_CONTENTS_SGIX = 0x801B # PbufferSGIX attribute + LARGEST_PBUFFER_SGIX = 0x801C # " + WIDTH_SGIX = 0x801D # " + HEIGHT_SGIX = 0x801E # " + EVENT_MASK_SGIX = 0x801F # " + DAMAGED_SGIX = 0x8020 # BufferClobberSGIX event_type value + SAVED_SGIX = 0x8021 # " + WINDOW_SGIX = 0x8022 # BufferClobberSGIX draw_type value + PBUFFER_SGIX = 0x8023 # " + DIGITAL_MEDIA_PBUFFER_SGIX = 0x8024 # PbufferSGIX attribute + BLENDED_RGBA_SGIS = 0x8025 # TRANSPARENT_TYPE_EXT attribute value + MULTISAMPLE_SUB_RECT_WIDTH_SGIS = 0x8026 # Visual attribute (shared_multisample) + MULTISAMPLE_SUB_RECT_HEIGHT_SGIS = 0x8027 # " + VISUAL_SELECT_GROUP_SGIX = 0x8028 # Visual attribute (visual_select_group) + HYPERPIPE_ID_SGIX = 0x8030 # Associated hyperpipe ID (SGIX_hyperpipe) + SAMPLE_BUFFERS_SGIS = 100000 # Visual attribute (SGIS_multisample) + SAMPLES_SGIS = 100001 # " + SAMPLE_BUFFERS_ARB = 100000 # Visual attribute (ARB_multisample - alias of SGIS_multisample) + SAMPLES_ARB = 100001 # " + SAMPLE_BUFFERS = 100000 # Visual attribute (GLX 1.4 core - alias of SGIS_multisample) + SAMPLES = 100001 # " + +############################################################################### + +# NVIDIA: 0x20A0 - 0x219F + +# NV_float_buffer enum: + FLOAT_COMPONENTS_NV = 0x20B0 +# NV_future_use: 0x20B1-0x20B8 +# ARB_fbconfig_float enum: + RGBA_FLOAT_TYPE_ARB = 0x20B9 +# NV_future_use: 0x20BA-0x219F + +############################################################################### + +# MESA (not in a reserved block) + +# MESA_set_3dfx_mode enum: +# 3DFX_WINDOW_MODE_MESA = 0x1 +# 3DFX_FULLSCREEN_MODE_MESA = 0x2 + +############################################################################### + +# SGI_future_use: 0x8029-0x802F +# SGIX_hyperpipe adds attribute name HYPERPIPE_ID_SGIX = 0x8030 +# SGI_future_use: 0x8031-0x803F + +############################################################################### + +# ARB_future_use: 0x8042-0x804F + +############################################################################### + +# 3DFX: 0x8050-0x805F + +# 3DFX_multisample enum: +# SAMPLE_BUFFERS_3DFX = 0x8050 +# SAMPLES_3DFX = 0x8051 + +############################################################################### + +# OML: 0x8060-0x806F + +# OML_swap_method enum: +# SWAP_METHOD_OML = 0x8060 +# SWAP_EXCHANGE_OML = 0x8061 +# SWAP_COPY_OML = 0x8062 +# SWAP_UNDEFINED_OML = 0x8063 + +# OML_future_use: 0x8064-0x806F + +############################################################################### + +# NVIDIA: 0x8070 - 0x816F + +############################################################################### + +# SUN: 0x8170 - 0x817F + +############################################################################### +### PLEASE REMEMBER THAT NEW ENUMERANT ALLOCATIONS MUST BE OBTAINED BY +### REQUEST TO SGI'S ARB REPRESENTATIVE (see comments at the top of this file) +############################################################################### + +# Any_vendor_future_use: 0x8180-0xFFFF +# +# This range must be the last range in the file. To generate a new +# range, allocate multiples of 16 from the beginning of the +# Any_vendor_future_use range and update glxenum.spec, glxenumext.spec, +# and extensions.reserved. diff --git a/Specifications/glxenumext.spec b/Specifications/glxenumext.spec new file mode 100644 index 00000000..e52c7e05 --- /dev/null +++ b/Specifications/glxenumext.spec @@ -0,0 +1,412 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2005 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. +# +# $Date: 2005/01/20 08:44:12 $ $Revision: 1.6 $ +# $Header: /oss/CVS/cvs/projects/ogl-sample/main/doc/registry/specs/glxenumext.spec,v 1.6 2005/01/20 08:44:12 ljp Exp $ + +# List of GLX enumerants for glxext.h header +# +# This is NOT the master GLX enumerant registry (glxenum.spec). +# +# Unlike glxenum.spec, glxenumext.spec is +# (1) In order by extension number. +# (2) Includes only GLX extensions and GLX 1.3/1.4 core enumerants, +# since it's assumed all today support at least GLX 1.2. +# (3) Has no 'Extensions' section, since enums are always +# conditionally protected against multiple definition +# by glextenum.pl. +# (4) Is processed by glextenum.pl, which has evolved +# from enum.pl - should merge back into one script. + +# glxext.h version number - this should be automatically updated, +# when changing either enum or template spec files. + +passthru: +passthru: /* Header file version number, required by OpenGL ABI for Linux */ +passthru: /* glxext.h last updated 2005/01/20 */ +passthru: /* Current version at http://oss.sgi.com/projects/ogl-sample/registry/ */ +passthru: #define GLX_GLXEXT_VERSION 10 + +############################################################################### +# +# GLX 1.3 enums +# +############################################################################### + +VERSION_1_3 enum: + WINDOW_BIT = 0x00000001 # DRAWABLE_TYPE value + PIXMAP_BIT = 0x00000002 # " + PBUFFER_BIT = 0x00000004 # " + RGBA_BIT = 0x00000001 # RENDER_TYPE value + COLOR_INDEX_BIT = 0x00000002 # " + PBUFFER_CLOBBER_MASK = 0x08000000 # SelectEvent mask + FRONT_LEFT_BUFFER_BIT = 0x00000001 # PbufferClobberEvent mask + FRONT_RIGHT_BUFFER_BIT = 0x00000002 # " + BACK_LEFT_BUFFER_BIT = 0x00000004 # " + BACK_RIGHT_BUFFER_BIT = 0x00000008 # " + AUX_BUFFERS_BIT = 0x00000010 # " + DEPTH_BUFFER_BIT = 0x00000020 # " + STENCIL_BUFFER_BIT = 0x00000040 # " + ACCUM_BUFFER_BIT = 0x00000080 # " + CONFIG_CAVEAT = 0x20 # " + X_VISUAL_TYPE = 0x22 # " + TRANSPARENT_TYPE = 0x23 # " + TRANSPARENT_INDEX_VALUE = 0x24 # " + TRANSPARENT_RED_VALUE = 0x25 # " + TRANSPARENT_GREEN_VALUE = 0x26 # " + TRANSPARENT_BLUE_VALUE = 0x27 # " + TRANSPARENT_ALPHA_VALUE = 0x28 # " + DONT_CARE = 0xFFFFFFFF # may be specified for ChooseFBConfig attributes + NONE = 0x8000 # several attribute values + SLOW_CONFIG = 0x8001 # CONFIG_CAVEAT attribute value + TRUE_COLOR = 0x8002 # X_VISUAL_TYPE attribute value + DIRECT_COLOR = 0x8003 # " + PSEUDO_COLOR = 0x8004 # " + STATIC_COLOR = 0x8005 # " + GRAY_SCALE = 0x8006 # " + STATIC_GRAY = 0x8007 # " + TRANSPARENT_RGB = 0x8008 # TRANSPARENT_TYPE attribute value + TRANSPARENT_INDEX = 0x8009 # " + VISUAL_ID = 0x800B # Context attribute + SCREEN = 0x800C # " + NON_CONFORMANT_CONFIG = 0x800D # CONFIG_CAVEAT attribute value + DRAWABLE_TYPE = 0x8010 # FBConfig attribute + RENDER_TYPE = 0x8011 # " + X_RENDERABLE = 0x8012 # " + FBCONFIG_ID = 0x8013 # " + RGBA_TYPE = 0x8014 # CreateNewContext render_type value + COLOR_INDEX_TYPE = 0x8015 # " + MAX_PBUFFER_WIDTH = 0x8016 # FBConfig attribute + MAX_PBUFFER_HEIGHT = 0x8017 # " + MAX_PBUFFER_PIXELS = 0x8018 # " + PRESERVED_CONTENTS = 0x801B # CreateGLXPbuffer attribute + LARGEST_PBUFFER = 0x801C # " + WIDTH = 0x801D # Drawable attribute + HEIGHT = 0x801E # " + EVENT_MASK = 0x801F # " + DAMAGED = 0x8020 # PbufferClobber event_type value + SAVED = 0x8021 # " + WINDOW = 0x8022 # PbufferClobber draw_type value + PBUFFER = 0x8023 # " + PBUFFER_HEIGHT = 0x8040 # CreateGLXPbuffer attribute + PBUFFER_WIDTH = 0x8041 # " + +############################################################################### +# +# GLX 1.4 enums +# +############################################################################### + +VERSION_1_4 enum: + SAMPLE_BUFFERS = 100000 + SAMPLES = 100001 + +############################################################################### +# +# ARB GLX extensions, in ARB extension order +# +############################################################################### + +############################################################################### + +# No new tokens +# ARB Extension #2 +ARB_get_proc_address enum: + +############################################################################### + +# ARB Extension #5 +ARB_multisample enum: + SAMPLE_BUFFERS_ARB = 100000 + SAMPLES_ARB = 100001 + +############################################################################### + +# ARB Extension #39 +ARB_fbconfig_float enum: + RGBA_FLOAT_TYPE_ARB = 0x20B9 + RGBA_FLOAT_BIT_ARB = 0x00000004 + + +############################################################################### +# +# non-ARB GLX extensions, in registry order +# +############################################################################### + +############################################################################### + +# Unfortunately, the SGIS_multisample specification and the IRIX +# implementation are inconsistent; the spec assigns enums as follows. +# ARB_multisample reuses these enums with ARB suffixes, and it can't +# be changed at this point. So in the interest of supporting both +# extensions on non-IRIX platforms, the SGIS enums will be defined +# here as originally specified. + +# Extension #25 +SGIS_multisample enum: + SAMPLE_BUFFERS_SGIS = 100000 + SAMPLES_SGIS = 100001 + +############################################################################### + +# Extension #28 +EXT_visual_info enum: + X_VISUAL_TYPE_EXT = 0x22 + TRANSPARENT_TYPE_EXT = 0x23 + TRANSPARENT_INDEX_VALUE_EXT = 0x24 + TRANSPARENT_RED_VALUE_EXT = 0x25 + TRANSPARENT_GREEN_VALUE_EXT = 0x26 + TRANSPARENT_BLUE_VALUE_EXT = 0x27 + TRANSPARENT_ALPHA_VALUE_EXT = 0x28 + NONE_EXT = 0x8000 + TRUE_COLOR_EXT = 0x8002 + DIRECT_COLOR_EXT = 0x8003 + PSEUDO_COLOR_EXT = 0x8004 + STATIC_COLOR_EXT = 0x8005 + GRAY_SCALE_EXT = 0x8006 + STATIC_GRAY_EXT = 0x8007 + TRANSPARENT_RGB_EXT = 0x8008 + TRANSPARENT_INDEX_EXT = 0x8009 + +############################################################################### + +# No new tokens +# Extension #40 +SGI_swap_control enum: + +############################################################################### + +# No new tokens +# Extension #41 +SGI_video_sync enum: + +############################################################################### + +# No new tokens +# Extension #42 +SGI_make_current_read enum: + +############################################################################### + +# No new tokens +# Extension #43 +SGIX_video_source enum: + +############################################################################### + +# Extension #44 +EXT_visual_rating enum: + VISUAL_CAVEAT_EXT = 0x20 + SLOW_VISUAL_EXT = 0x8001 + NON_CONFORMANT_VISUAL_EXT = 0x800D + use EXT_visual_info NONE_EXT + +############################################################################### + +# Extension #47 +EXT_import_context enum: + SHARE_CONTEXT_EXT = 0x800A + VISUAL_ID_EXT = 0x800B + SCREEN_EXT = 0x800C + +############################################################################### + +# Extension #49 +SGIX_fbconfig enum: + WINDOW_BIT_SGIX = 0x00000001 + PIXMAP_BIT_SGIX = 0x00000002 + RGBA_BIT_SGIX = 0x00000001 + COLOR_INDEX_BIT_SGIX = 0x00000002 + DRAWABLE_TYPE_SGIX = 0x8010 + RENDER_TYPE_SGIX = 0x8011 + X_RENDERABLE_SGIX = 0x8012 + FBCONFIG_ID_SGIX = 0x8013 + RGBA_TYPE_SGIX = 0x8014 + COLOR_INDEX_TYPE_SGIX = 0x8015 + use EXT_import_context SCREEN_EXT + +############################################################################### + +# Extension #50 +SGIX_pbuffer enum: + PBUFFER_BIT_SGIX = 0x00000004 + BUFFER_CLOBBER_MASK_SGIX = 0x08000000 + FRONT_LEFT_BUFFER_BIT_SGIX = 0x00000001 + FRONT_RIGHT_BUFFER_BIT_SGIX = 0x00000002 + BACK_LEFT_BUFFER_BIT_SGIX = 0x00000004 + BACK_RIGHT_BUFFER_BIT_SGIX = 0x00000008 + AUX_BUFFERS_BIT_SGIX = 0x00000010 + DEPTH_BUFFER_BIT_SGIX = 0x00000020 + STENCIL_BUFFER_BIT_SGIX = 0x00000040 + ACCUM_BUFFER_BIT_SGIX = 0x00000080 + SAMPLE_BUFFERS_BIT_SGIX = 0x00000100 + MAX_PBUFFER_WIDTH_SGIX = 0x8016 + MAX_PBUFFER_HEIGHT_SGIX = 0x8017 + MAX_PBUFFER_PIXELS_SGIX = 0x8018 + OPTIMAL_PBUFFER_WIDTH_SGIX = 0x8019 + OPTIMAL_PBUFFER_HEIGHT_SGIX = 0x801A + PRESERVED_CONTENTS_SGIX = 0x801B + LARGEST_PBUFFER_SGIX = 0x801C + WIDTH_SGIX = 0x801D + HEIGHT_SGIX = 0x801E + EVENT_MASK_SGIX = 0x801F + DAMAGED_SGIX = 0x8020 + SAVED_SGIX = 0x8021 + WINDOW_SGIX = 0x8022 + PBUFFER_SGIX = 0x8023 + +############################################################################### + +# Extension #62 +SGI_cushion enum: +# CUSHION_BUFFERS_SGI ???? + +############################################################################### + +# Extension #83 +SGIX_video_resize enum: + SYNC_FRAME_SGIX = 0x00000000 + SYNC_SWAP_SGIX = 0x00000001 + +############################################################################### + +# Extension #86 +SGIX_dmbuffer enum: + DIGITAL_MEDIA_PBUFFER_SGIX = 0x8024 + +############################################################################### + +# No new tokens +# Extension #91 +SGIX_swap_group enum: + +############################################################################### + +# No new tokens +# Extension #92 +SGIX_swap_barrier enum: + +############################################################################### + +# Extension #142 +SGIS_blended_overlay enum: + BLENDED_RGBA_SGIS = 0x8025 + +############################################################################### + +# Extension #143 +SGIS_shared_multisample enum: + MULTISAMPLE_SUB_RECT_WIDTH_SGIS = 0x8026 + MULTISAMPLE_SUB_RECT_HEIGHT_SGIS = 0x8027 + +############################################################################### + +# No new tokens +# Extension #183 +SUN_get_transparent_index enum: + +############################################################################### + +# Extension #207 +3DFX_multisample enum: + SAMPLE_BUFFERS_3DFX = 0x8050 + SAMPLES_3DFX = 0x8051 + +############################################################################### + +# No new tokens +# Extension #215 +MESA_copy_sub_buffer enum: + +############################################################################### + +# No new tokens +# Extension #216 +MESA_pixmap_colormap enum: + +############################################################################### + +# No new tokens +# Extension #217 +MESA_release_buffers enum: + +############################################################################### + +# Extension #218 +MESA_set_3dfx_mode enum: + 3DFX_WINDOW_MODE_MESA = 0x1 + 3DFX_FULLSCREEN_MODE_MESA = 0x2 + +############################################################################### + +# Extension #234 +SGIX_visual_select_group enum: + VISUAL_SELECT_GROUP_SGIX = 0x8028 + +############################################################################### + +# Extension #237 +OML_swap_method enum: + SWAP_METHOD_OML = 0x8060 + SWAP_EXCHANGE_OML = 0x8061 + SWAP_COPY_OML = 0x8062 + SWAP_UNDEFINED_OML = 0x8063 + +############################################################################### + +# No new tokens +# Extension #238 +OML_sync_control enum: + +############################################################################### + +# Extension #281 +NV_float_buffer enum: + FLOAT_COMPONENTS_NV = 0x20B0 + +############################################################################### + +# Extension #307 +SGIX_hyperpipe enum: + HYPERPIPE_PIPE_NAME_LENGTH_SGIX = 80 + BAD_HYPERPIPE_CONFIG_SGIX = 91 + BAD_HYPERPIPE_SGIX = 92 + HYPERPIPE_DISPLAY_PIPE_SGIX = 0x00000001 + HYPERPIPE_RENDER_PIPE_SGIX = 0x00000002 + PIPE_RECT_SGIX = 0x00000001 + PIPE_RECT_LIMITS_SGIX = 0x00000002 + HYPERPIPE_STEREO_SGIX = 0x00000003 + HYPERPIPE_PIXEL_AVERAGE_SGIX = 0x00000004 + HYPERPIPE_ID_SGIX = 0x8030 + +############################################################################### + +# No new tokens +# Extension #308 +MESA_agp_offset enum: + diff --git a/Specifications/glxext.spec b/Specifications/glxext.spec new file mode 100644 index 00000000..bdeb796a --- /dev/null +++ b/Specifications/glxext.spec @@ -0,0 +1,1003 @@ +# glxext.spec file +# DON'T REMOVE PREVIOUS LINE!!! libspec depends on it! +# +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2005 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. + +required-props: +param: retval retained +glxflags: client-handcode client-intercept server-handcode +glxvendorglx: * +vectorequiv: * +category: VERSION_1_3 VERSION_1_4 ARB_get_proc_address ARB_multisample ARB_fbconfig_float EXT_import_context SGIX_dmbuffer SGIX_fbconfig SGIX_pbuffer SGIX_swap_barrier SGIX_swap_group SGIX_video_resize SGIX_video_source SGI_cushion SGI_make_current_read SGI_swap_control SGI_video_sync SUN_get_transparent_index MESA_agp_offset MESA_copy_sub_buffer MESA_pixmap_colormap MESA_release_buffers MESA_set_3dfx_mode SGIX_visual_select_group OML_sync_control SGIX_hyperpipe +glxopcode: * + +# +# Boilerplate to define types used by some extensions. This is done +# up front, since it involves some complexities in protecting +# the declarations whether or not the -protect flag is given to +# the generator scripts. +# + +passthru: #ifndef GLX_ARB_get_proc_address +passthru: typedef void (*__GLXextFuncPtr)(void); +passthru: #endif +passthru: +passthru: #ifndef GLX_SGIX_video_source +passthru: typedef XID GLXVideoSourceSGIX; +passthru: #endif +passthru: +passthru: #ifndef GLX_SGIX_fbconfig +passthru: typedef XID GLXFBConfigIDSGIX; +passthru: typedef struct __GLXFBConfigRec *GLXFBConfigSGIX; +passthru: #endif +passthru: +passthru: #ifndef GLX_SGIX_pbuffer +passthru: typedef XID GLXPbufferSGIX; +passthru: typedef struct { +passthru: int type; +passthru: unsigned long serial; /* # of last request processed by server */ +passthru: Bool send_event; /* true if this came for SendEvent request */ +passthru: Display *display; /* display the event was read from */ +passthru: GLXDrawable drawable; /* i.d. of Drawable */ +passthru: int event_type; /* GLX_DAMAGED_SGIX or GLX_SAVED_SGIX */ +passthru: int draw_type; /* GLX_WINDOW_SGIX or GLX_PBUFFER_SGIX */ +passthru: unsigned int mask; /* mask indicating which buffers are affected*/ +passthru: int x, y; +passthru: int width, height; +passthru: int count; /* if nonzero, at least this many more */ +passthru: } GLXBufferClobberEventSGIX; +passthru: #endif +passthru: +passthru: /* Define int32_t and int64_t types for UST/MSC */ +passthru: /* (as used in the GLX_OML_sync_control extension). */ +passthru: #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +passthru: #include +passthru: #elif defined( __VMS ) +passthru: #include +passthru: #elif defined(__SCO__) || defined(__USLC__) +passthru: #include +passthru: #elif defined(__UNIXOS2__) || defined(__SOL64__) +passthru: typedef long int int32_t; +passthru: typedef long long int int64_t; +passthru: #else +passthru: #warn "int32_t and int64_t are undefined!" +passthru: #endif +passthru: + +############################################################################### +# +# GLX 1.3 commands +# +############################################################################### + +GetFBConfigs(dpy, screen, nelements) + return GLXFBConfigPointer + param dpy Display out reference + param screen int in value + param nelements int out reference + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 21 + +ChooseFBConfig(dpy, screen, attrib_list, nelements) + return GLXFBConfigPointer + param dpy Display out reference + param screen int in value + param attrib_list int in reference + param nelements int out reference + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +GetFBConfigAttrib(dpy, config, attribute, value) + return int + param dpy Display out reference + param config GLXFBConfig in value + param attribute int in value + param value int out reference + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +GetVisualFromFBConfig(dpy, config) + return XVisualInfoPointer + param dpy Display out reference + param config GLXFBConfig in value + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +CreateWindow(dpy, config, win, attrib_list) + return GLXWindow + param dpy Display out reference + param config GLXFBConfig in value + param win Window in value + param attrib_list int in reference + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 31 + +DestroyWindow(dpy, win) + return void + param dpy Display out reference + param win GLXWindow in value + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 32 + +CreatePixmap(dpy, config, pixmap, attrib_list) + return GLXPixmap + param dpy Display out reference + param config GLXFBConfig in value + param pixmap Pixmap in value + param attrib_list int in reference + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 22 + +DestroyPixmap(dpy, pixmap) + return void + param dpy Display out reference + param pixmap GLXPixmap in value + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 23 + +CreatePbuffer(dpy, config, attrib_list) + return GLXPbuffer + param dpy Display out reference + param config GLXFBConfig in value + param attrib_list int in reference + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 27 + +DestroyPbuffer(dpy, pbuf) + return void + param dpy Display out reference + param pbuf GLXPbuffer in value + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 28 + +# glXGetDrawableAttributes -> GLX opcode 29 +# glXChangeDrawableAttributes -> GLX opcode 30 + +# Uses glXGetDrawableAttributes protocol +QueryDrawable(dpy, draw, attribute, value) + return void + param dpy Display out reference + param draw GLXDrawable in value + param attribute int in value + param value Uint out reference + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +CreateNewContext(dpy, config, render_type, share_list, direct) + return GLXContext + param dpy Display out reference + param config GLXFBConfig in value + param render_type int in value + param share_list GLXContext in value + param direct Bool in value + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 24 + +MakeContextCurrent(dpy, draw, read, ctx) + return Bool + param dpy Display out reference + param draw GLXDrawable in value + param read GLXDrawable in value + param ctx GLXContext in value + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 26 + +GetCurrentReadDrawable() + return GLXDrawable + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +GetCurrentDisplay() + return DisplayPointer + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +QueryContext(dpy, ctx, attribute, value) + return int + param dpy Display out reference + param ctx GLXContext in value + param attribute int in value + param value int out reference + category VERSION_1_3 + glxflags client-handcode server-handcode + glxopcode 25 + +# Uses glXChangeDrawableAttributes protocol +SelectEvent(dpy, draw, event_mask) + return void + param dpy Display out reference + param draw GLXDrawable in value + param event_mask ulong in value + category VERSION_1_3 + glxflags client-handcode server-handcode + +# Uses glXGetDrawableAttributes protocol +GetSelectedEvent(dpy, draw, event_mask) + return void + param dpy Display out reference + param draw GLXDrawable in value + param event_mask ulong out reference + category VERSION_1_3 + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# GLX 1.4 commands +# +############################################################################### + +GetProcAddress(procName) + return FunctionPointer + param procName GLubyte in reference + category VERSION_1_4 + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# ARB Extension #2 +# ARB_get_proc_address commands +# @promoted to core in GLX 1.4, but there's no provision for aliasing +# @in GLX spec files, yet +# +############################################################################### + +GetProcAddressARB(procName) + return FunctionPointer + param procName GLubyte in reference + category ARB_get_proc_address + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# ARB Extension #5 +# ARB_multisample commands +# +############################################################################### + +# (none) +newcategory: ARB_multisample + +############################################################################### +# +# ARB Extension #39 +# ARB_fbconfig_float commands +# +############################################################################### + +# (none) +newcategory: ARB_fbconfig_float + +############################################################################### +# +# Extension #25 +# SGIS_multisample commands +# +############################################################################### + +# (none) +newcategory: SGIS_multisample + +############################################################################### +# +# Extension #28 +# EXT_visual_info commands +# +############################################################################### + +# (none) +newcategory: EXT_visual_info + +############################################################################### +# +# Extension #40 +# SGI_swap_control commands +# +############################################################################### + +SwapIntervalSGI(interval) + return int + param interval int in value + category SGI_swap_control + glxflags client-handcode server-handcode + glxvendorglx 65536 + +############################################################################### +# +# Extension #41 +# SGI_video_sync commands +# +############################################################################### + +GetVideoSyncSGI(count) + return int + param count Uint out reference + category SGI_video_sync + glxflags client-handcode client-intercept server-handcode + +WaitVideoSyncSGI(divisor, remainder, count) + return int + param divisor int in value + param remainder int in value + param count Uint out reference + category SGI_video_sync + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #42 +# SGI_make_current_read commands +# +############################################################################### + +MakeCurrentReadSGI(dpy, draw, read, ctx) + return Bool + param dpy Display out reference + param draw GLXDrawable in value + param read GLXDrawable in value + param ctx GLXContext in value + category SGI_make_current_read + glxflags client-handcode server-handcode + glxvendorglx 65537 + +GetCurrentReadDrawableSGI() + return GLXDrawable + category SGI_make_current_read + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #43 +# SGIX_video_source commands +# +############################################################################### + +newcategory: SGIX_video_source +passthru: #ifdef _VL_H + +CreateGLXVideoSourceSGIX(display, screen, server, path, nodeClass, drainNode) + return GLXVideoSourceSGIX + param display Display out reference + param screen int in value + param server VLServer in value + param path VLPath in value + param nodeClass int in value + param drainNode VLNode in value + category SGIX_video_source + glxflags client-handcode server-handcode + glxvendorglx 65538 + +DestroyGLXVideoSourceSGIX(dpy, glxvideosource) + return void + param dpy Display out reference + param glxvideosource GLXVideoSourceSGIX in value + category SGIX_video_source + glxflags client-handcode server-handcode + glxvendorglx 65539 + +passend: #endif /* _VL_H */ +endcategory: + +############################################################################### +# +# Extension #44 +# EXT_visual_rating commands +# +############################################################################### + +# (none) +newcategory: EXT_visual_rating + +############################################################################### +# +# Extension #47 +# EXT_import_context commands +# +############################################################################### + +GetCurrentDisplayEXT() + return DisplayPointer + category EXT_import_context + glxflags client-handcode client-intercept server-handcode + +QueryContextInfoEXT(dpy, context, attribute, value) + return int + param dpy Display out reference + param context GLXContext in value + param attribute int in value + param value int out reference + category EXT_import_context + glxflags client-handcode server-handcode + glxvendorglx 1024 + +# 'constGLXContext' is a hack; the extension specification and glx.h +# should be fixed instead. +GetContextIDEXT(context) + return GLXContextID + param context constGLXContext in value + category EXT_import_context + glxflags client-handcode client-intercept server-handcode + +ImportContextEXT(dpy, contextID) + return GLXContext + param dpy Display out reference + param contextID GLXContextID in value + category EXT_import_context + glxflags client-handcode client-intercept server-handcode + +FreeContextEXT(dpy, context) + return void + param dpy Display out reference + param context GLXContext in value + category EXT_import_context + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #49 +# SGIX_fbconfig commands +# +############################################################################### + +# GetFBConfigsSGIX protocol -> VendorPrivate opcode 65540 + +GetFBConfigAttribSGIX(dpy, config, attribute, value) + return int + param dpy Display out reference + param config GLXFBConfigSGIX in value + param attribute int in value + param value int out reference + category SGIX_fbconfig + glxflags client-handcode client-intercept server-handcode + +ChooseFBConfigSGIX(dpy, screen, attrib_list, nelements) + return GLXFBConfigSGIXPointer + param dpy Display out reference + param screen int in value + param attrib_list int out reference + param nelements int out reference + category SGIX_fbconfig + glxflags client-handcode client-intercept server-handcode + +CreateGLXPixmapWithConfigSGIX(dpy, config, pixmap) + return GLXPixmap + param dpy Display out reference + param config GLXFBConfigSGIX in value + param pixmap Pixmap in value + category SGIX_fbconfig + glxflags client-handcode server-handcode + glxvendorglx 65542 + +CreateContextWithConfigSGIX(dpy, config, render_type, share_list, direct) + return GLXContext + param dpy Display out reference + param config GLXFBConfigSGIX in value + param render_type int in value + param share_list GLXContext in value + param direct Bool in value + category SGIX_fbconfig + glxflags client-handcode server-handcode + glxvendorglx 65541 + +GetVisualFromFBConfigSGIX(dpy, config) + return XVisualInfoPointer + param dpy Display out reference + param config GLXFBConfigSGIX in value + category SGIX_fbconfig + glxflags client-handcode client-intercept server-handcode + +GetFBConfigFromVisualSGIX(dpy, vis) + return GLXFBConfigSGIX + param dpy Display out reference + param vis XVisualInfo out reference + category SGIX_fbconfig + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #50 +# SGIX_pbuffer commands +# +############################################################################### + +# ChangeDrawableAttributesSGIX protocol -> VendorPrivate opcode 65545 +# GetDrawableAttributesSGIX protocol -> VendorPrivate opcode 65546 + +CreateGLXPbufferSGIX(dpy, config, width, height, attrib_list) + return GLXPbufferSGIX + param dpy Display out reference + param config GLXFBConfigSGIX in value + param width Uint in value + param height Uint in value + param attrib_list int out reference + category SGIX_pbuffer + glxflags client-handcode server-handcode + glxvendorglx 65543 + +DestroyGLXPbufferSGIX(dpy, pbuf) + return void + param dpy Display out reference + param pbuf GLXPbufferSGIX in value + category SGIX_pbuffer + glxflags client-handcode + glxvendorglx 65544 + +QueryGLXPbufferSGIX(dpy, pbuf, attribute, value) + return int + param dpy Display out reference + param pbuf GLXPbufferSGIX in value + param attribute int in value + param value Uint out reference + category SGIX_pbuffer + +SelectEventSGIX(dpy, drawable, mask) + return void + param dpy Display out reference + param drawable GLXDrawable in value + param mask ulong in value + category SGIX_pbuffer + +GetSelectedEventSGIX(dpy, drawable, mask) + return void + param dpy Display out reference + param drawable GLXDrawable in value + param mask ulong out reference + category SGIX_pbuffer + +############################################################################### +# +# Extension #62 +# SGI_cushion commands +# +############################################################################### + +CushionSGI(dpy, window, cushion) + return void + param dpy Display out reference + param window Window in value + param cushion float in value + category SGI_cushion + +############################################################################### +# +# Extension #83 +# SGIX_video_resize commands +# +############################################################################### + +BindChannelToWindowSGIX(display, screen, channel, window) + return int + param display Display out reference + param screen int in value + param channel int in value + param window Window in value + category SGIX_video_resize + +ChannelRectSGIX(display, screen, channel, x, y, w, h) + return int + param display Display out reference + param screen int in value + param channel int in value + param x int in value + param y int in value + param w int in value + param h int in value + category SGIX_video_resize + +QueryChannelRectSGIX(display, screen, channel, dx, dy, dw, dh) + return int + param display Display out reference + param screen int in value + param channel int in value + param dx int out reference + param dy int out reference + param dw int out reference + param dh int out reference + category SGIX_video_resize + +QueryChannelDeltasSGIX(display, screen, channel, x, y, w, h) + return int + param display Display out reference + param screen int in value + param channel int in value + param x int out reference + param y int out reference + param w int out reference + param h int out reference + category SGIX_video_resize + +# @@@ Not in man page - this entry point may not be shipping? +ChannelRectSyncSGIX(display, screen, channel, synctype) + return int + param display Display out reference + param screen int in value + param channel int in value + param synctype GLenum in value + category SGIX_video_resize + +############################################################################### +# +# Extension #86 +# SGIX_dmbuffer commands +# +############################################################################### + +newcategory: SGIX_dmbuffer +passthru: #ifdef _DM_BUFFER_H_ + +AssociateDMPbufferSGIX(dpy, pbuffer, params, dmbuffer) + return Bool + param dpy Display out reference + param pbuffer GLXPbufferSGIX in value + param params DMparams out reference + param dmbuffer DMbuffer in value + category SGIX_dmbuffer + +passend: #endif /* _DM_BUFFER_H_ */ +endcategory: + +############################################################################### +# +# Extension #91 +# SGIX_swap_group commands +# +############################################################################### + +JoinSwapGroupSGIX(dpy, drawable, member) + return void + param dpy Display out reference + param drawable GLXDrawable in value + param member GLXDrawable in value + category SGIX_swap_group + glxflags client-handcode server-handcode + glxvendorglx 65547 + +############################################################################### +# +# Extension #92 +# SGIX_swap_barrier commands +# +############################################################################### + +BindSwapBarrierSGIX(dpy, drawable, barrier) + return void + param dpy Display out reference + param drawable GLXDrawable in value + param barrier int in value + category SGIX_swap_barrier + glxflags client-handcode server-handcode + glxvendorglx 65548 + +QueryMaxSwapBarriersSGIX(dpy, screen, max) + return Bool + param dpy Display out reference + param screen int in value + param max int out reference + category SGIX_swap_barrier + glxflags client-handcode server-handcode + glxvendorglx 65549 + +############################################################################### +# +# Extension #183 +# SUN_get_transparent_index commands +# +############################################################################### + +GetTransparentIndexSUN(dpy, overlay, underlay, pTransparentIndex) + return Status + param dpy Display out reference + param overlay Window in value + param underlay Window in value + param pTransparentIndex long out reference + category SUN_get_transparent_index + +############################################################################### +# +# Extension #215 +# MESA_copy_sub_buffer commands +# +############################################################################### + +CopySubBufferMESA(dpy, drawable, x, y, width, height) + return void + param dpy Display out reference + param drawable GLXDrawable in value + param x int in value + param y int in value + param width int in value + param height int in value + category MESA_copy_sub_buffer + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #216 +# MESA_pixmap_colormap commands +# +############################################################################### + +CreateGLXPixmapMESA(dpy, visual, pixmap, cmap) + return GLXPixmap + param dpy Display out reference + param visual XVisualInfo out reference + param pixmap Pixmap in value + param cmap Colormap in value + category MESA_pixmap_colormap + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #217 +# MESA_release_buffers commands +# +############################################################################### + +ReleaseBuffersMESA(dpy, drawable) + return Bool + param dpy Display out reference + param drawable GLXDrawable in value + category MESA_release_buffers + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #218 +# MESA_set_3dfx_mode commands +# +############################################################################### + +# Brian's spec has this as returning 'GLboolean' and taking 'GLint mode' +Set3DfxModeMESA(mode) + return Bool + param mode int in value + category MESA_set_3dfx_mode + glxflags client-handcode client-intercept server-handcode + +############################################################################### +# +# Extension #234 +# SGIX_visual_select_group commands +# +############################################################################### + +# (none) +newcategory: SGIX_visual_select_group + +############################################################################### +# +# Extension #237 +# OML_swap_method commands +# +############################################################################### + +# (none) +newcategory: OML_swap_method + +############################################################################### +# +# Extension #238 +# OML_sync_control commands +# +############################################################################### + +GetSyncValuesOML(dpy, drawable, ust, msc, sbc) + return Bool + param dpy Display out reference + param drawable GLXDrawable in value + param ust int64_t out reference + param msc int64_t out reference + param sbc int64_t out reference + category OML_sync_control + glxflags client-handcode server-handcode + +GetMscRateOML(dpy, drawable, numerator, denominator) + return Bool + param dpy Display out reference + param drawable GLXDrawable in value + param numerator int32_t out reference + param denominator int32_t out reference + category OML_sync_control + glxflags client-handcode server-handcode + +SwapBuffersMscOML(dpy, drawable, target_msc, divisor, remainder) + return int64_t + param dpy Display out reference + param drawable GLXDrawable in value + param target_msc int64_t in value + param divisor int64_t in value + param remainder int64_t in value + category OML_sync_control + glxflags client-handcode server-handcode + +WaitForMscOML(dpy, drawable, target_msc, divisor, remainder, ust, msc, sbc) + return Bool + param dpy Display out reference + param drawable GLXDrawable in value + param target_msc int64_t in value + param divisor int64_t in value + param remainder int64_t in value + param ust int64_t out reference + param msc int64_t out reference + param sbc int64_t out reference + category OML_sync_control + glxflags client-handcode server-handcode + +WaitForSbcOML(dpy, drawable, target_sbc, ust, msc, sbc) + return Bool + param dpy Display out reference + param drawable GLXDrawable in value + param target_sbc int64_t in value + param ust int64_t out reference + param msc int64_t out reference + param sbc int64_t out reference + category OML_sync_control + glxflags client-handcode server-handcode + +############################################################################### +# +# Extension #281 +# NV_float_buffer commands +# +############################################################################### + +# (none) +newcategory: NV_float_buffer + +############################################################################### +# +# Extension #307 +# SGIX_hyperpipe commands +# +############################################################################### + +newcategory: SGIX_hyperpipe +passthru: +passthru: typedef struct { +passthru: char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; +passthru: int networkId; +passthru: } GLXHyperpipeNetworkSGIX; +passthru: +passthru: typedef struct { +passthru: char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; +passthru: int channel; +passthru: unsigned int +passthru: participationType; +passthru: int timeSlice; +passthru: } GLXHyperpipeConfigSGIX; +passthru: +passthru: typedef struct { +passthru: char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; +passthru: int srcXOrigin, srcYOrigin, srcWidth, srcHeight; +passthru: int destXOrigin, destYOrigin, destWidth, destHeight; +passthru: } GLXPipeRect; +passthru: +passthru: typedef struct { +passthru: char pipeName[GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX]; +passthru: int XOrigin, YOrigin, maxHeight, maxWidth; +passthru: } GLXPipeRectLimits; +passthru: + +QueryHyperpipeNetworkSGIX(dpy, npipes) + return GLXHyperpipeNetworkSGIXPointer + param dpy Display out reference + param npipes int out reference + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx 65550 + +HyperpipeConfigSGIX(dpy, networkId, npipes, cfg, hpId) + return int + param dpy Display out reference + param networkId int in value + param npipes int in value + param cfg GLXHyperpipeConfigSGIX out array [COMPSIZE(npipes)] + param hpId int out reference + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx 65552 + +QueryHyperpipeConfigSGIX(dpy, hpId, npipes) + return GLXHyperpipeConfigSGIXPointer + param dpy Display out reference + param hpId int in value + param npipes int out reference + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx 65551 + +DestroyHyperpipeConfigSGIX(dpy, hpId) + return int + param dpy Display out reference + param hpId int in value + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx 65553 + +BindHyperpipeSGIX(dpy, hpId) + return int + param dpy Display out reference + param hpId int in value + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx ??? + +QueryHyperpipeBestAttribSGIX(dpy, timeSlice, attrib, size, attribList, returnAttribList) + return int + param dpy Display out reference + param timeSlice int in value + param attrib int in value + param size int in value + param attribList void out array [COMPSIZE(size)] + param returnAttribList void out array [COMPSIZE(size)] + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx ??? + +HyperpipeAttribSGIX(dpy, timeSlice, attrib, size, attribList) + return int + param dpy Display out reference + param timeSlice int in value + param attrib int in value + param size int in value + param attribList void out array [COMPSIZE(size)] + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx ??? + +QueryHyperpipeAttribSGIX(dpy, timeSlice, attrib, size, returnAttribList) + return int + param dpy Display out reference + param timeSlice int in value + param attrib int in value + param size int in value + param returnAttribList void out array [COMPSIZE(size)] + glxflags client-handcode server-handcode + category SGIX_hyperpipe + glxvendorglx ??? + +############################################################################### +# +# Extension #308 +# MESA_agp_offset commands +# +############################################################################### + +GetAGPOffsetMESA(pointer) + return uint + param pointer void in reference + glxflags client-handcode client-intercept server-handcode + category MESA_agp_offset diff --git a/Specifications/wgl.spec b/Specifications/wgl.spec new file mode 100644 index 00000000..28ab0352 --- /dev/null +++ b/Specifications/wgl.spec @@ -0,0 +1,187 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2002 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. + +required-props: +param: retval retained +dlflags: notlistable handcode nop +wglflags: client-handcode server-handcode non-dispatch +vectorequiv: * +category: wgl + +CreateContext( hDc ) + return HGLRC + param hDc HDC in value + category wgl + dlflags notlistable handcode + wglflags non-dispatch + +DeleteContext( oldContext ) + return BOOL + param oldContext HGLRC in value + category wgl + dlflags notlistable handcode + wglflags non-dispatch + +GetCurrentContext( ) + return HGLRC + category wgl + dlflags notlistable handcode + wglflags non-dispatch + +MakeCurrent( hDc, newContext ) + return BOOL + param hDc HDC in value + param newContext HGLRC in value + category wgl + dlflags notlistable + wglflags non-dispatch + +CopyContext( hglrcSrc, hglrcDst, mask ) + return BOOL + param hglrcSrc HGLRC in value + param hglrcDst HGLRC in value + param mask UINT in value + category wgl + dlflags notlistable + wglflags non-dispatch + +ChoosePixelFormat( hDc, pPfd ) + return int + param hDc HDC in value + param pPfd PIXELFORMATDESCRIPTOR in reference + category wgl + dlflags notlistable + wglflags non-dispatch + +DescribePixelFormat( hdc, ipfd, cjpfd, ppfd ) + return int + param hdc HDC in value + param ipfd int in value + param cjpfd UINT in value + param ppfd PIXELFORMATDESCRIPTOR in reference + +GetCurrentDC( ) + return HDC + category wgl + +GetDefaultProcAddress( lpszProc) + return PROC + param lpszProc LPCSTR in value + category wgl + +GetProcAddress( lpszProc) + return PROC + param lpszProc LPCSTR in value + category wgl + +GetPixelFormat( hdc ) + return int + param hdc HDC in value + category wgl + +SetPixelFormat( hdc, ipfd, ppfd ) + return BOOL + param hdc HDC in value + param ipfd int in value + param ppfd PIXELFORMATDESCRIPTOR in reference + category wgl + +SwapBuffers( hdc ) + return BOOL + param hdc HDC in value + category wgl + +ShareLists( hrcSrvShare, hrcSrvSource) + return BOOL + param hrcSrvShare HGLRC in value + param hrcSrvSource HGLRC in value + category wgl + +CreateLayerContext( hDc, level ) + return HGLRC + param hDc HDC in value + param level int in value + category wgl + +DescribeLayerPlane( hDc, pixelFormat, layerPlane, nBytes, plpd ) + return BOOL + param hDc HDC in value + param pixelFormat int in value + param layerPlane int in value + param nBytes UINT in value + param plpd LAYERPLANEDESCRIPTOR in reference + category wgl + +SetLayerPaletteEntries( hdc, iLayerPlane, iStart, cEntries, pcr ) + return int + param hdc HDC in value + param iLayerPlane int in value + param iStart int in value + param cEntries int in value + param pcr COLORREF in reference + category wgl + +GetLayerPaletteEntries( hdc, iLayerPlane, iStart, cEntries, pcr ) + return int + param hdc HDC in value + param iLayerPlane int in value + param iStart int in value + param cEntries int in value + param pcr COLORREF in reference + category wgl + +RealizeLayerPalette( hdc, iLayerPlane, bRealize ) + return BOOL + param hdc HDC in value + param iLayerPlane int in value + param bRealize BOOL in value + category wgl + +SwapLayerBuffers( hdc, fuFlags ) + return BOOL + param hdc HDC in value + param fuFlags UINT in value + category wgl + +UseFontBitmapsA( hDC, first, count, listBase ) + return BOOL + param hDC HDC in value + param first DWORD in value + param count DWORD in value + param listBase DWORD in value + category wgl + dlflags notlistable + +UseFontBitmapsW( hDC, first, count, listBase ) + return BOOL + param hDC HDC in value + param first DWORD in value + param count DWORD in value + param listBase DWORD in value + category wgl + dlflags notlistable + diff --git a/Specifications/wgl.tm b/Specifications/wgl.tm new file mode 100644 index 00000000..9474687d --- /dev/null +++ b/Specifications/wgl.tm @@ -0,0 +1,24 @@ +BOOL,*,*, BOOL,*,* +DWORD,*,*, DWORD,*,* +FLOAT,*,*, FLOAT,*,* +GLboolean,*,*, GLboolean,*,* +GLfloat,*,*, GLfloat,*,* +GLsizei,*,*, GLsizei,*,* +GLuint,*,*, GLuint,*,* +GLushort,*,*, GLushort,*,* +HANDLE,*,*, HANDLE,*,* +HDC,*,*, HDC,*,* +HGLRC,*,*, HGLRC,*,* +HPBUFFERARB,*,*, HPBUFFERARB,*,* +HPBUFFEREXT,*,*, HPBUFFEREXT,*,* +INT32,*,*, INT32,*,* +INT64,*,*, INT64,*,* +LPVOID,*,*, LPVOID,*,* +String,*,*, const char *,*,* +UINT,*,*, UINT,*,* +USHORT,*,*, USHORT,*,* +VOID,*,*, VOID,*,* +VoidPointer,*,*, void*,*,* +float,*,*, float,*,* +int,*,*, int,*,* +void,*,*, *,*,* diff --git a/Specifications/wglenum.spec b/Specifications/wglenum.spec new file mode 100644 index 00000000..c2b28eff --- /dev/null +++ b/Specifications/wglenum.spec @@ -0,0 +1,359 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2005 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. +# +# $Date: 2005/01/20 08:44:12 $ $Revision: 1.6 $ +# $Header: /oss/CVS/cvs/projects/ogl-sample/main/doc/registry/specs/wglenum.spec,v 1.6 2005/01/20 08:44:12 ljp Exp $ + +# This is the master WGL enumerant registry. +# +# It is an extremely important file. Do not mess with it unless +# you know what you're doing and have permission to do so. +# +# Rules for modification are similar to the rules for the OpenGL +# enumerant registry (gl.spec). Basically, don't modify this file +# unless you're SGI's ARB Representative. In principle Microsoft +# owns the WGL registry, but they have for practical purposes +# ceded administration of it to SGI. +# +# Finally, note that this registry does not currently include +# any core WGL enumerants - only enumerants defined by WGL +# extensions. + +############################################################################### + +# Bitmasks - not consumed by the registry +WGL_ARB_buffer_region enum: + WGL_FRONT_COLOR_BUFFER_BIT_ARB = 0x00000001 + WGL_BACK_COLOR_BUFFER_BIT_ARB = 0x00000002 + WGL_DEPTH_BUFFER_BIT_ARB = 0x00000004 + WGL_STENCIL_BUFFER_BIT_ARB = 0x00000008 + +############################################################################### + +# SGI: 0x2000-0x203F + +WGL_EXT_pixel_format enum: + WGL_NUMBER_PIXEL_FORMATS_EXT = 0x2000 + WGL_DRAW_TO_WINDOW_EXT = 0x2001 + WGL_DRAW_TO_BITMAP_EXT = 0x2002 + WGL_ACCELERATION_EXT = 0x2003 + WGL_NEED_PALETTE_EXT = 0x2004 + WGL_NEED_SYSTEM_PALETTE_EXT = 0x2005 + WGL_SWAP_LAYER_BUFFERS_EXT = 0x2006 + WGL_SWAP_METHOD_EXT = 0x2007 + WGL_NUMBER_OVERLAYS_EXT = 0x2008 + WGL_NUMBER_UNDERLAYS_EXT = 0x2009 + WGL_TRANSPARENT_EXT = 0x200A + WGL_TRANSPARENT_VALUE_EXT = 0x200B + WGL_SHARE_DEPTH_EXT = 0x200C + WGL_SHARE_STENCIL_EXT = 0x200D + WGL_SHARE_ACCUM_EXT = 0x200E + WGL_SUPPORT_GDI_EXT = 0x200F + WGL_SUPPORT_OPENGL_EXT = 0x2010 + WGL_DOUBLE_BUFFER_EXT = 0x2011 + WGL_STEREO_EXT = 0x2012 + WGL_PIXEL_TYPE_EXT = 0x2013 + WGL_COLOR_BITS_EXT = 0x2014 + WGL_RED_BITS_EXT = 0x2015 + WGL_RED_SHIFT_EXT = 0x2016 + WGL_GREEN_BITS_EXT = 0x2017 + WGL_GREEN_SHIFT_EXT = 0x2018 + WGL_BLUE_BITS_EXT = 0x2019 + WGL_BLUE_SHIFT_EXT = 0x201A + WGL_ALPHA_BITS_EXT = 0x201B + WGL_ALPHA_SHIFT_EXT = 0x201C + WGL_ACCUM_BITS_EXT = 0x201D + WGL_ACCUM_RED_BITS_EXT = 0x201E + WGL_ACCUM_GREEN_BITS_EXT = 0x201F + WGL_ACCUM_BLUE_BITS_EXT = 0x2020 + WGL_ACCUM_ALPHA_BITS_EXT = 0x2021 + WGL_DEPTH_BITS_EXT = 0x2022 + WGL_STENCIL_BITS_EXT = 0x2023 + WGL_AUX_BUFFERS_EXT = 0x2024 + WGL_NO_ACCELERATION_EXT = 0x2025 + WGL_GENERIC_ACCELERATION_EXT = 0x2026 + WGL_FULL_ACCELERATION_EXT = 0x2027 + WGL_SWAP_EXCHANGE_EXT = 0x2028 + WGL_SWAP_COPY_EXT = 0x2029 + WGL_SWAP_UNDEFINED_EXT = 0x202A + WGL_TYPE_RGBA_EXT = 0x202B + WGL_TYPE_COLORINDEX_EXT = 0x202C + +WGL_ARB_pixel_format enum: + WGL_NUMBER_PIXEL_FORMATS_ARB = 0x2000 + WGL_DRAW_TO_WINDOW_ARB = 0x2001 + WGL_DRAW_TO_BITMAP_ARB = 0x2002 + WGL_ACCELERATION_ARB = 0x2003 + WGL_NEED_PALETTE_ARB = 0x2004 + WGL_NEED_SYSTEM_PALETTE_ARB = 0x2005 + WGL_SWAP_LAYER_BUFFERS_ARB = 0x2006 + WGL_SWAP_METHOD_ARB = 0x2007 + WGL_NUMBER_OVERLAYS_ARB = 0x2008 + WGL_NUMBER_UNDERLAYS_ARB = 0x2009 + WGL_TRANSPARENT_ARB = 0x200A + WGL_SHARE_DEPTH_ARB = 0x200C + WGL_SHARE_STENCIL_ARB = 0x200D + WGL_SHARE_ACCUM_ARB = 0x200E + WGL_SUPPORT_GDI_ARB = 0x200F + WGL_SUPPORT_OPENGL_ARB = 0x2010 + WGL_DOUBLE_BUFFER_ARB = 0x2011 + WGL_STEREO_ARB = 0x2012 + WGL_PIXEL_TYPE_ARB = 0x2013 + WGL_COLOR_BITS_ARB = 0x2014 + WGL_RED_BITS_ARB = 0x2015 + WGL_RED_SHIFT_ARB = 0x2016 + WGL_GREEN_BITS_ARB = 0x2017 + WGL_GREEN_SHIFT_ARB = 0x2018 + WGL_BLUE_BITS_ARB = 0x2019 + WGL_BLUE_SHIFT_ARB = 0x201A + WGL_ALPHA_BITS_ARB = 0x201B + WGL_ALPHA_SHIFT_ARB = 0x201C + WGL_ACCUM_BITS_ARB = 0x201D + WGL_ACCUM_RED_BITS_ARB = 0x201E + WGL_ACCUM_GREEN_BITS_ARB = 0x201F + WGL_ACCUM_BLUE_BITS_ARB = 0x2020 + WGL_ACCUM_ALPHA_BITS_ARB = 0x2021 + WGL_DEPTH_BITS_ARB = 0x2022 + WGL_STENCIL_BITS_ARB = 0x2023 + WGL_AUX_BUFFERS_ARB = 0x2024 + WGL_NO_ACCELERATION_ARB = 0x2025 + WGL_GENERIC_ACCELERATION_ARB = 0x2026 + WGL_FULL_ACCELERATION_ARB = 0x2027 + WGL_SWAP_EXCHANGE_ARB = 0x2028 + WGL_SWAP_COPY_ARB = 0x2029 + WGL_SWAP_UNDEFINED_ARB = 0x202A + WGL_TYPE_RGBA_ARB = 0x202B + WGL_TYPE_COLORINDEX_ARB = 0x202C + WGL_DRAW_TO_PBUFFER_ARB = 0x202D + WGL_MAX_PBUFFER_PIXELS_ARB = 0x202E + WGL_MAX_PBUFFER_WIDTH_ARB = 0x202F + WGL_MAX_PBUFFER_HEIGHT_ARB = 0x2030 + WGL_PBUFFER_LARGEST_ARB = 0x2033 + WGL_PBUFFER_WIDTH_ARB = 0x2034 + WGL_PBUFFER_HEIGHT_ARB = 0x2035 + WGL_TRANSPARENT_RED_VALUE_ARB = 0x2037 + WGL_TRANSPARENT_GREEN_VALUE_ARB = 0x2038 + WGL_TRANSPARENT_BLUE_VALUE_ARB = 0x2039 + WGL_TRANSPARENT_ALPHA_VALUE_ARB = 0x203A + WGL_TRANSPARENT_INDEX_VALUE_ARB = 0x203B + +############################################################################### + +WGL_EXT_pbuffer enum: + WGL_DRAW_TO_PBUFFER_EXT = 0x202D + WGL_MAX_PBUFFER_PIXELS_EXT = 0x202E + WGL_MAX_PBUFFER_WIDTH_EXT = 0x202F + WGL_MAX_PBUFFER_HEIGHT_EXT = 0x2030 + WGL_OPTIMAL_PBUFFER_WIDTH_EXT = 0x2031 + WGL_OPTIMAL_PBUFFER_HEIGHT_EXT = 0x2032 + WGL_PBUFFER_LARGEST_EXT = 0x2033 + WGL_PBUFFER_WIDTH_EXT = 0x2034 + WGL_PBUFFER_HEIGHT_EXT = 0x2035 + +WGL_ARB_pbuffer enum: + WGL_DRAW_TO_PBUFFER_ARB = 0x202D + WGL_MAX_PBUFFER_PIXELS_ARB = 0x202E + WGL_MAX_PBUFFER_WIDTH_ARB = 0x202F + WGL_MAX_PBUFFER_HEIGHT_ARB = 0x2030 + WGL_PBUFFER_LARGEST_ARB = 0x2033 + WGL_PBUFFER_WIDTH_ARB = 0x2034 + WGL_PBUFFER_HEIGHT_ARB = 0x2035 + WGL_PBUFFER_LOST_ARB = 0x2036 + use WGL_ARB_pixel_format WGL_TRANSPARENT_RED_VALUE_ARB + use WGL_ARB_pixel_format WGL_TRANSPARENT_GREEN_VALUE_ARB + use WGL_ARB_pixel_format WGL_TRANSPARENT_BLUE_VALUE_ARB + use WGL_ARB_pixel_format WGL_TRANSPARENT_ALPHA_VALUE_ARB + use WGL_ARB_pixel_format WGL_TRANSPARENT_INDEX_VALUE_ARB + +############################################################################### + +# SGI_future_use: 0x203C-0x203F + +############################################################################### + +# Intense3D: 0x2040-0x205F + +WGL_EXT_depth_float enum: + WGL_DEPTH_FLOAT_EXT = 0x2040 + +############################################################################### + +WGL_EXT_multisample enum: + WGL_SAMPLE_BUFFERS_EXT = 0x2041 + WGL_SAMPLES_EXT = 0x2042 + +WGL_ARB_multisample enum: + WGL_SAMPLE_BUFFERS_ARB = 0x2041 + WGL_SAMPLES_ARB = 0x2042 + +############################################################################### + +WGL_EXT_make_current_read enum: + ERROR_INVALID_PIXEL_TYPE_EXT = 0x2043 + +WGL_ARB_make_current_read enum: + ERROR_INVALID_PIXEL_TYPE_ARB = 0x2043 + ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB = 0x2054 + +############################################################################### + +WGL_I3D_genlock enum: + WGL_GENLOCK_SOURCE_MULTIVIEW_I3D = 0x2044 + WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D = 0x2045 + WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D = 0x2046 + WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D = 0x2047 + WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D = 0x2048 + WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D = 0x2049 + WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D = 0x204A + WGL_GENLOCK_SOURCE_EDGE_RISING_I3D = 0x204B + WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D = 0x204C + +############################################################################### + +# Intense3D_future_use: 0x204D + +############################################################################### + +WGL_I3D_gamma enum: + WGL_GAMMA_TABLE_SIZE_I3D = 0x204E + WGL_GAMMA_EXCLUDE_DESKTOP_I3D = 0x204F + +############################################################################### + +# Intense3D hasn't spec'ed this extension, but it's in the enum registry +WGL_I3D_digital_video_control enum: + WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D = 0x2050 + WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D = 0x2051 + WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D = 0x2052 + WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D = 0x2053 + +############################################################################### + +# WGL_ARB_make_current_read (additional; see above): 0x2054 + +############################################################################### + +# Intense3D_future_use: 0x2055-0x205F + +############################################################################### + +# 3DFX: 0x2060-0x206F + +WGL_3DFX_multisample enum: + WGL_SAMPLE_BUFFERS_3DFX = 0x2060 + WGL_SAMPLES_3DFX = 0x2061 + +############################################################################### + +# ARB: 0x2070-0x209F + +WGL_ARB_render_texture enum: + WGL_BIND_TO_TEXTURE_RGB_ARB = 0x2070 + WGL_BIND_TO_TEXTURE_RGBA_ARB = 0x2071 + WGL_TEXTURE_FORMAT_ARB = 0x2072 + WGL_TEXTURE_TARGET_ARB = 0x2073 + WGL_MIPMAP_TEXTURE_ARB = 0x2074 + WGL_TEXTURE_RGB_ARB = 0x2075 + WGL_TEXTURE_RGBA_ARB = 0x2076 + WGL_NO_TEXTURE_ARB = 0x2077 + WGL_TEXTURE_CUBE_MAP_ARB = 0x2078 + WGL_TEXTURE_1D_ARB = 0x2079 + WGL_TEXTURE_2D_ARB = 0x207A + WGL_MIPMAP_LEVEL_ARB = 0x207B + WGL_CUBE_MAP_FACE_ARB = 0x207C + WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x207D + WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x207E + WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x207F + WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x2080 + WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x2081 + WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x2082 + WGL_FRONT_LEFT_ARB = 0x2083 + WGL_FRONT_RIGHT_ARB = 0x2084 + WGL_BACK_LEFT_ARB = 0x2085 + WGL_BACK_RIGHT_ARB = 0x2086 + WGL_AUX0_ARB = 0x2087 + WGL_AUX1_ARB = 0x2088 + WGL_AUX2_ARB = 0x2089 + WGL_AUX3_ARB = 0x208A + WGL_AUX4_ARB = 0x208B + WGL_AUX5_ARB = 0x208C + WGL_AUX6_ARB = 0x208D + WGL_AUX7_ARB = 0x208E + WGL_AUX8_ARB = 0x208F + WGL_AUX9_ARB = 0x2090 + +# ARB_future_use: 0x2091-0x209F + +############################################################################### + +# NVIDIA: 0x20A0-0x219F + +WGL_NV_render_texture_rectangle enum: + WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV = 0x20A0 + WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV = 0x20A1 + WGL_TEXTURE_RECTANGLE_NV = 0x20A2 + +WGL_NV_render_depth_texture enum: + WGL_BIND_TO_TEXTURE_DEPTH_NV = 0x20A3 + WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV = 0x20A4 + WGL_DEPTH_TEXTURE_FORMAT_NV = 0x20A5 + WGL_TEXTURE_DEPTH_COMPONENT_NV = 0x20A6 + WGL_DEPTH_COMPONENT_NV = 0x20A7 + +# NV_future_use: 0x20A8-0x20AF + +WGL_NV_float_buffer enum: + WGL_FLOAT_COMPONENTS_NV = 0x20B0 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV = 0x20B1 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV = 0x20B2 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV = 0x20B3 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV = 0x20B4 + WGL_TEXTURE_FLOAT_R_NV = 0x20B5 + WGL_TEXTURE_FLOAT_RG_NV = 0x20B6 + WGL_TEXTURE_FLOAT_RGB_NV = 0x20B7 + WGL_TEXTURE_FLOAT_RGBA_NV = 0x20B8 + +# NV_future_use: 0x20B9-0x219F + +############################################################################### + +# ATI: 0x21A0-0x21AF +WGL_ARB_pixel_format_float enum: + WGL_TYPE_RGBA_FLOAT_ARB = 0x21A0 + +WGL_ATI_pixel_format_float enum: + WGL_TYPE_RGBA_FLOAT_ATI = 0x21A0 + +# ATI_future_use: 0x21A1-0x21AF + +############################################################################### + +# Matrox: 0x21B0-0x21BF (tentative, RFC sent to ARB 2002/10/3) + +############################################################################### + +# Any_vendor_future_use: 0x21C0-0xFFFF diff --git a/Specifications/wglenumext.spec b/Specifications/wglenumext.spec new file mode 100644 index 00000000..e1240fef --- /dev/null +++ b/Specifications/wglenumext.spec @@ -0,0 +1,382 @@ +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2005 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. +# +# $Date: 2005/01/20 08:44:12 $ $Revision: 1.8 $ +# $Header: /oss/CVS/cvs/projects/ogl-sample/main/doc/registry/specs/wglenumext.spec,v 1.8 2005/01/20 08:44:12 ljp Exp $ + +# List of WGL enumerants for wglext.h header +# +# This is NOT the master WGL enumerant registry. Microsoft used +# to maintain that, but given their limited interest in OpenGL, +# SGI now maintains the registry in wglenum.spec. +# +# Unlike wglenum.spec, wglenumext.spec is +# (1) In order by extension number +# (2) Includes only WGL extensions. +# (3) Has no 'Extensions' section, since enums are always +# conditionally protected against multiple definition +# by glextenum.pl. +# (4) Is processed by glextenum.pl, which has evolved +# from enum.pl - should merge back into one script. + +# wglext.h version number - this should be automatically updated, +# when changing either enum or template spec files. + +passthru: +passthru: /* Header file version number */ +passthru: /* wglext.h last updated 2005/01/07 */ +passthru: /* Current version at http://oss.sgi.com/projects/ogl-sample/registry/ */ +passthru: #define WGL_WGLEXT_VERSION 6 + +############################################################################### +# +# ARB WGL extensions, in ARB extension order +# +############################################################################### + +############################################################################### + +# ARB Extension #4 +WGL_ARB_buffer_region enum: + WGL_FRONT_COLOR_BUFFER_BIT_ARB = 0x00000001 + WGL_BACK_COLOR_BUFFER_BIT_ARB = 0x00000002 + WGL_DEPTH_BUFFER_BIT_ARB = 0x00000004 + WGL_STENCIL_BUFFER_BIT_ARB = 0x00000008 + +############################################################################### + +# ARB Extension #5 +WGL_ARB_multisample enum: + WGL_SAMPLE_BUFFERS_ARB = 0x2041 + WGL_SAMPLES_ARB = 0x2042 + +############################################################################### + +# No new tokens +# ARB Extension #8 +WGL_ARB_extensions_string enum: + +############################################################################### + +# ARB Extension #9 +WGL_ARB_pixel_format enum: + WGL_NUMBER_PIXEL_FORMATS_ARB = 0x2000 + WGL_DRAW_TO_WINDOW_ARB = 0x2001 + WGL_DRAW_TO_BITMAP_ARB = 0x2002 + WGL_ACCELERATION_ARB = 0x2003 + WGL_NEED_PALETTE_ARB = 0x2004 + WGL_NEED_SYSTEM_PALETTE_ARB = 0x2005 + WGL_SWAP_LAYER_BUFFERS_ARB = 0x2006 + WGL_SWAP_METHOD_ARB = 0x2007 + WGL_NUMBER_OVERLAYS_ARB = 0x2008 + WGL_NUMBER_UNDERLAYS_ARB = 0x2009 + WGL_TRANSPARENT_ARB = 0x200A + WGL_TRANSPARENT_RED_VALUE_ARB = 0x2037 + WGL_TRANSPARENT_GREEN_VALUE_ARB = 0x2038 + WGL_TRANSPARENT_BLUE_VALUE_ARB = 0x2039 + WGL_TRANSPARENT_ALPHA_VALUE_ARB = 0x203A + WGL_TRANSPARENT_INDEX_VALUE_ARB = 0x203B + WGL_SHARE_DEPTH_ARB = 0x200C + WGL_SHARE_STENCIL_ARB = 0x200D + WGL_SHARE_ACCUM_ARB = 0x200E + WGL_SUPPORT_GDI_ARB = 0x200F + WGL_SUPPORT_OPENGL_ARB = 0x2010 + WGL_DOUBLE_BUFFER_ARB = 0x2011 + WGL_STEREO_ARB = 0x2012 + WGL_PIXEL_TYPE_ARB = 0x2013 + WGL_COLOR_BITS_ARB = 0x2014 + WGL_RED_BITS_ARB = 0x2015 + WGL_RED_SHIFT_ARB = 0x2016 + WGL_GREEN_BITS_ARB = 0x2017 + WGL_GREEN_SHIFT_ARB = 0x2018 + WGL_BLUE_BITS_ARB = 0x2019 + WGL_BLUE_SHIFT_ARB = 0x201A + WGL_ALPHA_BITS_ARB = 0x201B + WGL_ALPHA_SHIFT_ARB = 0x201C + WGL_ACCUM_BITS_ARB = 0x201D + WGL_ACCUM_RED_BITS_ARB = 0x201E + WGL_ACCUM_GREEN_BITS_ARB = 0x201F + WGL_ACCUM_BLUE_BITS_ARB = 0x2020 + WGL_ACCUM_ALPHA_BITS_ARB = 0x2021 + WGL_DEPTH_BITS_ARB = 0x2022 + WGL_STENCIL_BITS_ARB = 0x2023 + WGL_AUX_BUFFERS_ARB = 0x2024 + WGL_NO_ACCELERATION_ARB = 0x2025 + WGL_GENERIC_ACCELERATION_ARB = 0x2026 + WGL_FULL_ACCELERATION_ARB = 0x2027 + WGL_SWAP_EXCHANGE_ARB = 0x2028 + WGL_SWAP_COPY_ARB = 0x2029 + WGL_SWAP_UNDEFINED_ARB = 0x202A + WGL_TYPE_RGBA_ARB = 0x202B + WGL_TYPE_COLORINDEX_ARB = 0x202C + +############################################################################### + +# ARB Extension #10 +WGL_ARB_make_current_read enum: + ERROR_INVALID_PIXEL_TYPE_ARB = 0x2043 + ERROR_INCOMPATIBLE_DEVICE_CONTEXTS_ARB = 0x2054 + +############################################################################### + +# ARB Extension #11 +WGL_ARB_pbuffer enum: + WGL_DRAW_TO_PBUFFER_ARB = 0x202D + WGL_MAX_PBUFFER_PIXELS_ARB = 0x202E + WGL_MAX_PBUFFER_WIDTH_ARB = 0x202F + WGL_MAX_PBUFFER_HEIGHT_ARB = 0x2030 + WGL_PBUFFER_LARGEST_ARB = 0x2033 + WGL_PBUFFER_WIDTH_ARB = 0x2034 + WGL_PBUFFER_HEIGHT_ARB = 0x2035 + WGL_PBUFFER_LOST_ARB = 0x2036 + WGL_TRANSPARENT_RED_VALUE_ARB = 0x2037 + WGL_TRANSPARENT_GREEN_VALUE_ARB = 0x2038 + WGL_TRANSPARENT_BLUE_VALUE_ARB = 0x2039 + WGL_TRANSPARENT_ALPHA_VALUE_ARB = 0x203A + WGL_TRANSPARENT_INDEX_VALUE_ARB = 0x203B + +############################################################################### + +# ARB Extension #20 +WGL_ARB_render_texture enum: + WGL_BIND_TO_TEXTURE_RGB_ARB = 0x2070 + WGL_BIND_TO_TEXTURE_RGBA_ARB = 0x2071 + WGL_TEXTURE_FORMAT_ARB = 0x2072 + WGL_TEXTURE_TARGET_ARB = 0x2073 + WGL_MIPMAP_TEXTURE_ARB = 0x2074 + WGL_TEXTURE_RGB_ARB = 0x2075 + WGL_TEXTURE_RGBA_ARB = 0x2076 + WGL_NO_TEXTURE_ARB = 0x2077 + WGL_TEXTURE_CUBE_MAP_ARB = 0x2078 + WGL_TEXTURE_1D_ARB = 0x2079 + WGL_TEXTURE_2D_ARB = 0x207A + WGL_MIPMAP_LEVEL_ARB = 0x207B + WGL_CUBE_MAP_FACE_ARB = 0x207C + WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x207D + WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x207E + WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x207F + WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x2080 + WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x2081 + WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x2082 + WGL_FRONT_LEFT_ARB = 0x2083 + WGL_FRONT_RIGHT_ARB = 0x2084 + WGL_BACK_LEFT_ARB = 0x2085 + WGL_BACK_RIGHT_ARB = 0x2086 + WGL_AUX0_ARB = 0x2087 + WGL_AUX1_ARB = 0x2088 + WGL_AUX2_ARB = 0x2089 + WGL_AUX3_ARB = 0x208A + WGL_AUX4_ARB = 0x208B + WGL_AUX5_ARB = 0x208C + WGL_AUX6_ARB = 0x208D + WGL_AUX7_ARB = 0x208E + WGL_AUX8_ARB = 0x208F + WGL_AUX9_ARB = 0x2090 + +############################################################################### + +# ARB Extension #39 +WGL_ARB_pixel_format_float enum: + WGL_TYPE_RGBA_FLOAT_ARB = 0x21A0 + + +############################################################################### +# +# non-ARB extensions follow, in registry order +# +############################################################################### + +############################################################################### + +# Extension #169 +WGL_EXT_make_current_read enum: + ERROR_INVALID_PIXEL_TYPE_EXT = 0x2043 + +############################################################################### + +# Extension #170 +WGL_EXT_pixel_format enum: + WGL_NUMBER_PIXEL_FORMATS_EXT = 0x2000 + WGL_DRAW_TO_WINDOW_EXT = 0x2001 + WGL_DRAW_TO_BITMAP_EXT = 0x2002 + WGL_ACCELERATION_EXT = 0x2003 + WGL_NEED_PALETTE_EXT = 0x2004 + WGL_NEED_SYSTEM_PALETTE_EXT = 0x2005 + WGL_SWAP_LAYER_BUFFERS_EXT = 0x2006 + WGL_SWAP_METHOD_EXT = 0x2007 + WGL_NUMBER_OVERLAYS_EXT = 0x2008 + WGL_NUMBER_UNDERLAYS_EXT = 0x2009 + WGL_TRANSPARENT_EXT = 0x200A + WGL_TRANSPARENT_VALUE_EXT = 0x200B + WGL_SHARE_DEPTH_EXT = 0x200C + WGL_SHARE_STENCIL_EXT = 0x200D + WGL_SHARE_ACCUM_EXT = 0x200E + WGL_SUPPORT_GDI_EXT = 0x200F + WGL_SUPPORT_OPENGL_EXT = 0x2010 + WGL_DOUBLE_BUFFER_EXT = 0x2011 + WGL_STEREO_EXT = 0x2012 + WGL_PIXEL_TYPE_EXT = 0x2013 + WGL_COLOR_BITS_EXT = 0x2014 + WGL_RED_BITS_EXT = 0x2015 + WGL_RED_SHIFT_EXT = 0x2016 + WGL_GREEN_BITS_EXT = 0x2017 + WGL_GREEN_SHIFT_EXT = 0x2018 + WGL_BLUE_BITS_EXT = 0x2019 + WGL_BLUE_SHIFT_EXT = 0x201A + WGL_ALPHA_BITS_EXT = 0x201B + WGL_ALPHA_SHIFT_EXT = 0x201C + WGL_ACCUM_BITS_EXT = 0x201D + WGL_ACCUM_RED_BITS_EXT = 0x201E + WGL_ACCUM_GREEN_BITS_EXT = 0x201F + WGL_ACCUM_BLUE_BITS_EXT = 0x2020 + WGL_ACCUM_ALPHA_BITS_EXT = 0x2021 + WGL_DEPTH_BITS_EXT = 0x2022 + WGL_STENCIL_BITS_EXT = 0x2023 + WGL_AUX_BUFFERS_EXT = 0x2024 + WGL_NO_ACCELERATION_EXT = 0x2025 + WGL_GENERIC_ACCELERATION_EXT = 0x2026 + WGL_FULL_ACCELERATION_EXT = 0x2027 + WGL_SWAP_EXCHANGE_EXT = 0x2028 + WGL_SWAP_COPY_EXT = 0x2029 + WGL_SWAP_UNDEFINED_EXT = 0x202A + WGL_TYPE_RGBA_EXT = 0x202B + WGL_TYPE_COLORINDEX_EXT = 0x202C + +############################################################################### + +# Extension #171 +WGL_EXT_pbuffer enum: + WGL_DRAW_TO_PBUFFER_EXT = 0x202D + WGL_MAX_PBUFFER_PIXELS_EXT = 0x202E + WGL_MAX_PBUFFER_WIDTH_EXT = 0x202F + WGL_MAX_PBUFFER_HEIGHT_EXT = 0x2030 + WGL_OPTIMAL_PBUFFER_WIDTH_EXT = 0x2031 + WGL_OPTIMAL_PBUFFER_HEIGHT_EXT = 0x2032 + WGL_PBUFFER_LARGEST_EXT = 0x2033 + WGL_PBUFFER_WIDTH_EXT = 0x2034 + WGL_PBUFFER_HEIGHT_EXT = 0x2035 + +############################################################################### + +# Extension #177 +WGL_EXT_depth_float enum: + WGL_DEPTH_FLOAT_EXT = 0x2040 + +############################################################################### + +# Extension #207 +WGL_3DFX_multisample enum: + WGL_SAMPLE_BUFFERS_3DFX = 0x2060 + WGL_SAMPLES_3DFX = 0x2061 + +############################################################################### + +# Extension #209 +WGL_EXT_multisample enum: + WGL_SAMPLE_BUFFERS_EXT = 0x2041 + WGL_SAMPLES_EXT = 0x2042 + +############################################################################### + +# Extension #250 +WGL_I3D_digital_video_control enum: + WGL_DIGITAL_VIDEO_CURSOR_ALPHA_FRAMEBUFFER_I3D = 0x2050 + WGL_DIGITAL_VIDEO_CURSOR_ALPHA_VALUE_I3D = 0x2051 + WGL_DIGITAL_VIDEO_CURSOR_INCLUDED_I3D = 0x2052 + WGL_DIGITAL_VIDEO_GAMMA_CORRECTED_I3D = 0x2053 + +############################################################################### + +# Extension #251 +WGL_I3D_gamma enum: + WGL_GAMMA_TABLE_SIZE_I3D = 0x204E + WGL_GAMMA_EXCLUDE_DESKTOP_I3D = 0x204F + +############################################################################### + +# Extension #252 +WGL_I3D_genlock enum: + WGL_GENLOCK_SOURCE_MULTIVIEW_I3D = 0x2044 + WGL_GENLOCK_SOURCE_EXTENAL_SYNC_I3D = 0x2045 + WGL_GENLOCK_SOURCE_EXTENAL_FIELD_I3D = 0x2046 + WGL_GENLOCK_SOURCE_EXTENAL_TTL_I3D = 0x2047 + WGL_GENLOCK_SOURCE_DIGITAL_SYNC_I3D = 0x2048 + WGL_GENLOCK_SOURCE_DIGITAL_FIELD_I3D = 0x2049 + WGL_GENLOCK_SOURCE_EDGE_FALLING_I3D = 0x204A + WGL_GENLOCK_SOURCE_EDGE_RISING_I3D = 0x204B + WGL_GENLOCK_SOURCE_EDGE_BOTH_I3D = 0x204C + +############################################################################### + +# Extension #253 +WGL_I3D_image_buffer enum: + WGL_IMAGE_BUFFER_MIN_ACCESS_I3D = 0x00000001 + WGL_IMAGE_BUFFER_LOCK_I3D = 0x00000002 + +############################################################################### + +# No new tokens +# Extension #254 +WGL_I3D_swap_frame_lock enum: + +############################################################################### + +# Extension #263 +WGL_NV_render_depth_texture enum: + WGL_BIND_TO_TEXTURE_DEPTH_NV = 0x20A3 + WGL_BIND_TO_TEXTURE_RECTANGLE_DEPTH_NV = 0x20A4 + WGL_DEPTH_TEXTURE_FORMAT_NV = 0x20A5 + WGL_TEXTURE_DEPTH_COMPONENT_NV = 0x20A6 + WGL_DEPTH_COMPONENT_NV = 0x20A7 + +############################################################################### + +# Extension #264 +WGL_NV_render_texture_rectangle enum: + WGL_BIND_TO_TEXTURE_RECTANGLE_RGB_NV = 0x20A0 + WGL_BIND_TO_TEXTURE_RECTANGLE_RGBA_NV = 0x20A1 + WGL_TEXTURE_RECTANGLE_NV = 0x20A2 + +############################################################################### + +# Extension #278 +WGL_ATI_pixel_format_float enum: + WGL_TYPE_RGBA_FLOAT_ATI = 0x21A0 + +############################################################################### + +# Extension #281 +WGL_NV_float_buffer enum: + WGL_FLOAT_COMPONENTS_NV = 0x20B0 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_R_NV = 0x20B1 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RG_NV = 0x20B2 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGB_NV = 0x20B3 + WGL_BIND_TO_TEXTURE_RECTANGLE_FLOAT_RGBA_NV = 0x20B4 + WGL_TEXTURE_FLOAT_R_NV = 0x20B5 + WGL_TEXTURE_FLOAT_RG_NV = 0x20B6 + WGL_TEXTURE_FLOAT_RGB_NV = 0x20B7 + WGL_TEXTURE_FLOAT_RGBA_NV = 0x20B8 diff --git a/Specifications/wglext.spec b/Specifications/wglext.spec new file mode 100644 index 00000000..571701bf --- /dev/null +++ b/Specifications/wglext.spec @@ -0,0 +1,746 @@ +# wglext.spec file +# DON'T REMOVE PREVIOUS LINE!!! libspec depends on it! +# +# 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: +# +# http://oss.sgi.com/projects/FreeB +# +# 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. +# +# 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-2002 Silicon Graphics, Inc. +# Copyright in any portions created by third parties is as indicated +# elsewhere herein. All Rights Reserved. +# +# Additional Notice Provisions: 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. + +required-props: +param: retval retained +category: wgl ARB_buffer_region ARB_extensions_string ARB_pixel_format ARB_make_current_read ARB_pbuffer ARB_render_texture ARB_pixel_format_float EXT_display_color_table EXT_extensions_string EXT_make_current_read EXT_pbuffer EXT_pixel_format EXT_swap_control OML_sync_control I3D_digital_video_control I3D_gamma I3D_genlock I3D_image_buffer I3D_swap_frame_lock I3D_swap_frame_usage NV_vertex_array_range + +# required-props in wgl.spec (which is not used for anything): +# dlflags: notlistable handcode +# wglflags: client-handcode server-handcode non-dispatch + +# +# Boilerplate to define types used by some extensions. This is done +# up front, since it involves some complexities in protecting +# the declarations whether or not the -protect flag is given to +# the generator scripts. +# + +passthru: #ifndef WGL_ARB_pbuffer +passthru: DECLARE_HANDLE(HPBUFFERARB); +passthru: #endif +passthru: #ifndef WGL_EXT_pbuffer +passthru: DECLARE_HANDLE(HPBUFFEREXT); +passthru: #endif +passthru: + +############################################################################### +# +# ARB Extension #4 +# ARB_buffer_region commands +# +############################################################################### + +CreateBufferRegionARB(hDC, iLayerPlane, uType) + return HANDLE + param hDC HDC in value + param iLayerPlane int in value + param uType UINT in value + category ARB_buffer_region + +DeleteBufferRegionARB(hRegion) + return VOID + param hRegion HANDLE in value + category ARB_buffer_region + +SaveBufferRegionARB(hRegion, x, y, width, height) + return BOOL + param hRegion HANDLE in value + param x int in value + param y int in value + param width int in value + param height int in value + category ARB_buffer_region + +RestoreBufferRegionARB(hRegion, x, y, width, height, xSrc, ySrc) + return BOOL + param hRegion HANDLE in value + param x int in value + param y int in value + param width int in value + param height int in value + param xSrc int in value + param ySrc int in value + category ARB_buffer_region + +############################################################################### +# +# ARB Extension #5 +# ARB_multisample commands +# +############################################################################### + +# (none) +newcategory: ARB_multisample + +############################################################################### +# +# ARB Extension #8 +# ARB_extensions_string commands +# +############################################################################### + +GetExtensionsStringARB(hdc) + return String + param hdc HDC in value + category ARB_extensions_string + +############################################################################### +# +# ARB Extension #9 +# ARB_pixel_format commands +# +############################################################################### + +GetPixelFormatAttribivARB(hdc, iPixelFormat, iLayerPlane, nAttributes, piAttributes, piValues) + return BOOL + param hdc HDC in value + param iPixelFormat int in value + param iLayerPlane int in value + param nAttributes UINT in value + param piAttributes int in array [nAttributes] + param piValues int out array [nAttributes] + category ARB_pixel_format + +GetPixelFormatAttribfvARB(hdc, iPixelFormat, iLayerPlane, nAttributes, piAttributes, pfValues) + return BOOL + param hdc HDC in value + param iPixelFormat int in value + param iLayerPlane int in value + param nAttributes UINT in value + param piAttributes int in array [nAttributes] + param pfValues FLOAT out array [nAttributes] + category ARB_pixel_format + +ChoosePixelFormatARB(hdc, piAttribIList, pfAttribFList, nMaxFormats, piFormats, nNumFormats) + return BOOL + param hdc HDC in value + param piAttribIList int in array [COMPSIZE()] + param pfAttribFList FLOAT in array [COMPSIZE()] + param nMaxFormats UINT in value + param piFormats int out array [COMPSIZE(nNumFormats)] + param nNumFormats UINT out reference + category ARB_pixel_format + +############################################################################### +# +# ARB Extension #10 +# ARB_make_current_read commands +# +############################################################################### + +MakeContextCurrentARB(hDrawDC, hReadDC, hglrc) + return BOOL + param hDrawDC HDC in value + param hReadDC HDC in value + param hglrc HGLRC in value + category ARB_make_current_read + +GetCurrentReadDCARB() + return HDC + category ARB_make_current_read + +############################################################################### +# +# ARB Extension #11 +# ARB_pbuffer commands +# +############################################################################### + +CreatePbufferARB(hDC, iPixelFormat, iWidth, iHeight, piAttribList) + return HPBUFFERARB + param hDC HDC in value + param iPixelFormat int in value + param iWidth int in value + param iHeight int in value + param piAttribList int in array [COMPSIZE()] + category ARB_pbuffer + +GetPbufferDCARB(hPbuffer) + return HDC + param hPbuffer HPBUFFERARB in value + category ARB_pbuffer + +ReleasePbufferDCARB(hPbuffer, hDC) + return int + param hPbuffer HPBUFFERARB in value + param hDC HDC in value + category ARB_pbuffer + +DestroyPbufferARB(hPbuffer) + return BOOL + param hPbuffer HPBUFFERARB in value + category ARB_pbuffer + +QueryPbufferARB(hPbuffer, iAttribute, piValue) + return BOOL + param hPbuffer HPBUFFERARB in value + param iAttribute int in value + param piValue int out reference + category ARB_pbuffer + +############################################################################### +# +# ARB Extension #20 +# ARB_render_texture commands +# +############################################################################### + +BindTexImageARB(hPbuffer, iBuffer) + return BOOL + param hPbuffer HPBUFFERARB in value + param iBuffer int in value + category ARB_render_texture + +ReleaseTexImageARB(hPbuffer, iBuffer) + return BOOL + param hPbuffer HPBUFFERARB in value + param iBuffer int in value + category ARB_render_texture + +SetPbufferAttribARB(hPbuffer, piAttribList) + return BOOL + param hPbuffer HPBUFFERARB in value + param piAttribList int in array [COMPSIZE()] + category ARB_render_texture + +############################################################################### +# +# ARB Extension #39 +# ARB_pixel_format_float commands +# +############################################################################### + +# (none) +newcategory: ARB_pixel_format_float + +############################################################################### +# +# Extension #167 +# EXT_display_color_table commands +# +############################################################################### + +CreateDisplayColorTableEXT(id) + return GLboolean + param id GLushort in value + category EXT_display_color_table + +LoadDisplayColorTableEXT(table, length) + return GLboolean + param table GLushort in array [length] + param length GLuint in value + category EXT_display_color_table + +BindDisplayColorTableEXT(id) + return GLboolean + param id GLushort in value + category EXT_display_color_table + +DestroyDisplayColorTableEXT(id) + return VOID + param id GLushort in value + category EXT_display_color_table + +############################################################################### +# +# Extension #168 +# EXT_extensions_string commands +# +############################################################################### + +GetExtensionsStringEXT() + return String + category EXT_extensions_string + +############################################################################### +# +# Extension #169 +# EXT_make_current_read commands +# +############################################################################### + +MakeContextCurrentEXT(hDrawDC, hReadDC, hglrc) + return BOOL + param hDrawDC HDC in value + param hReadDC HDC in value + param hglrc HGLRC in value + category EXT_make_current_read + +GetCurrentReadDCEXT() + return HDC + category EXT_make_current_read + +############################################################################### +# +# Extension #171 +# EXT_pbuffer commands +# +############################################################################### + +CreatePbufferEXT(hDC, iPixelFormat, iWidth, iHeight, piAttribList) + return HPBUFFEREXT + param hDC HDC in value + param iPixelFormat int in value + param iWidth int in value + param iHeight int in value + param piAttribList int in array [COMPSIZE()] + category EXT_pbuffer + +GetPbufferDCEXT(hPbuffer) + return HDC + param hPbuffer HPBUFFEREXT in value + category EXT_pbuffer + +ReleasePbufferDCEXT(hPbuffer, hDC) + return int + param hPbuffer HPBUFFEREXT in value + param hDC HDC in value + category EXT_pbuffer + +DestroyPbufferEXT(hPbuffer) + return BOOL + param hPbuffer HPBUFFEREXT in value + category EXT_pbuffer + +QueryPbufferEXT(hPbuffer, iAttribute, piValue) + return BOOL + param hPbuffer HPBUFFEREXT in value + param iAttribute int in value + param piValue int out reference + category EXT_pbuffer + +############################################################################### +# +# Extension #170 +# EXT_pixel_format commands +# +############################################################################### + +GetPixelFormatAttribivEXT(hdc, iPixelFormat, iLayerPlane, nAttributes, piAttributes, piValues) + return BOOL + param hdc HDC in value + param iPixelFormat int in value + param iLayerPlane int in value + param nAttributes UINT in value + param piAttributes int out array [nAttributes] + param piValues int out array [nAttributes] + category EXT_pixel_format + +GetPixelFormatAttribfvEXT(hdc, iPixelFormat, iLayerPlane, nAttributes, piAttributes, pfValues) + return BOOL + param hdc HDC in value + param iPixelFormat int in value + param iLayerPlane int in value + param nAttributes UINT in value + param piAttributes int out array [nAttributes] + param pfValues FLOAT out array [nAttributes] + category EXT_pixel_format + +ChoosePixelFormatEXT(hdc, piAttribIList, pfAttribFList, nMaxFormats, piFormats, nNumFormats) + return BOOL + param hdc HDC in value + param piAttribIList int in array [COMPSIZE()] + param pfAttribFList FLOAT in array [COMPSIZE()] + param nMaxFormats UINT in value + param piFormats int out array [COMPSIZE(nNumFormats)] + param nNumFormats UINT out reference + category EXT_pixel_format + +############################################################################### +# +# Extension #172 +# EXT_swap_control commands +# +############################################################################### + +SwapIntervalEXT(interval) + return BOOL + param interval int in value + category EXT_swap_control + +GetSwapIntervalEXT() + return int + category EXT_swap_control + +############################################################################### +# +# Extension #177 +# EXT_depth_float commands +# +############################################################################### + +# (none) +newcategory: EXT_depth_float + +############################################################################### +# +# Extension #190 +# NV_vertex_array_range commands +# +############################################################################### + +AllocateMemoryNV(size, readfreq, writefreq, priority) + return VoidPointer + param size GLsizei in value + param readfreq GLfloat in value + param writefreq GLfloat in value + param priority GLfloat in value + category NV_vertex_array_range + +FreeMemoryNV(pointer) + return void + param pointer void out array [1] + category NV_vertex_array_range + +############################################################################### +# +# Extension #207 +# 3DFX_multisample commands +# +############################################################################### + +# (none) +newcategory: 3DFX_multisample + +############################################################################### +# +# Extension #209 +# EXT_multisample commands +# +############################################################################### + +# (none) +newcategory: EXT_multisample + +############################################################################### +# +# Extension #242 +# OML_sync_control commands +# +############################################################################### + +GetSyncValuesOML(hdc, ust, msc, sbc) + return BOOL + param hdc HDC in value + param ust INT64 out array [1] + param msc INT64 out array [1] + param sbc INT64 out array [1] + category OML_sync_control + +GetMscRateOML(hdc, numerator, denominator) + return BOOL + param hdc HDC in value + param numerator INT32 out array [1] + param denominator INT32 out array [1] + category OML_sync_control + +SwapBuffersMscOML(hdc, target_msc, divisor, remainder) + return INT64 + param hdc HDC in value + param target_msc INT64 in value + param divisor INT64 in value + param remainder INT64 in value + category OML_sync_control + +SwapLayerBuffersMscOML(hdc, fuPlanes, target_msc, divisor, remainder) + return INT64 + param hdc HDC in value + param fuPlanes int in value + param target_msc INT64 in value + param divisor INT64 in value + param remainder INT64 in value + category OML_sync_control + +WaitForMscOML(hdc, target_msc, divisor, remainder , ust, msc, sbc) + return BOOL + param hdc HDC in value + param target_msc INT64 in value + param divisor INT64 in value + param remainder INT64 in value + param ust INT64 out array [1] + param msc INT64 out array [1] + param sbc INT64 out array [1] + category OML_sync_control + +WaitForSbcOML(hdc, target_sbc, ust, msc, sbc) + return BOOL + param hdc HDC in value + param target_sbc INT64 in value + param ust INT64 out array [1] + param msc INT64 out array [1] + param sbc INT64 out array [1] + category OML_sync_control + +############################################################################### +# +# Extension #250 +# I3D_digital_video_control commands +# +############################################################################### + +GetDigitalVideoParametersI3D(hDC, iAttribute, piValue) + return BOOL + param hDC HDC in value + param iAttribute int in value + param piValue int out array [COMPSIZE(iAttribute)] + category I3D_digital_video_control + +SetDigitalVideoParametersI3D(hDC, iAttribute, piValue) + return BOOL + param hDC HDC in value + param iAttribute int in value + param piValue int in array [COMPSIZE(iAttribute)] + category I3D_digital_video_control + +############################################################################### +# +# Extension #251 +# I3D_gamma commands +# +############################################################################### + +GetGammaTableParametersI3D(hDC, iAttribute, piValue) + return BOOL + param hDC HDC in value + param iAttribute int in value + param piValue int out array [COMPSIZE(iAttribute)] + category I3D_gamma + +SetGammaTableParametersI3D(hDC, iAttribute, piValue) + return BOOL + param hDC HDC in value + param iAttribute int in value + param piValue int in array [COMPSIZE(iAttribute)] + category I3D_gamma + +GetGammaTableI3D(hDC, iEntries, puRed, puGreen, puBlue) + return BOOL + param hDC HDC in value + param iEntries int in value + param puRed USHORT out array [iEntries] + param puGreen USHORT out array [iEntries] + param puBlue USHORT out array [iEntries] + category I3D_gamma + +SetGammaTableI3D(hDC, iEntries, puRed, puGreen, puBlue) + return BOOL + param hDC HDC in value + param iEntries int in value + param puRed USHORT in array [iEntries] + param puGreen USHORT in array [iEntries] + param puBlue USHORT in array [iEntries] + category I3D_gamma + +############################################################################### +# +# Extension #252 +# I3D_genlock commands +# +############################################################################### + +EnableGenlockI3D(hDC) + return BOOL + param hDC HDC in value + category I3D_genlock + +DisableGenlockI3D(hDC) + return BOOL + param hDC HDC in value + category I3D_genlock + +IsEnabledGenlockI3D(hDC, pFlag) + return BOOL + param hDC HDC in value + param pFlag BOOL out reference + category I3D_genlock + +GenlockSourceI3D(hDC, uSource) + return BOOL + param hDC HDC in value + param uSource UINT in value + category I3D_genlock + +GetGenlockSourceI3D(hDC, uSource) + return BOOL + param hDC HDC in value + param uSource UINT out reference + category I3D_genlock + +GenlockSourceEdgeI3D(hDC, uEdge) + return BOOL + param hDC HDC in value + param uEdge UINT in value + category I3D_genlock + +GetGenlockSourceEdgeI3D(hDC, uEdge) + return BOOL + param hDC HDC in value + param uEdge UINT out reference + category I3D_genlock + +GenlockSampleRateI3D(hDC, uRate) + return BOOL + param hDC HDC in value + param uRate UINT in value + category I3D_genlock + +GetGenlockSampleRateI3D(hDC, uRate) + return BOOL + param hDC HDC in value + param uRate UINT out reference + category I3D_genlock + +GenlockSourceDelayI3D(hDC, uDelay) + return BOOL + param hDC HDC in value + param uDelay UINT in value + category I3D_genlock + +GetGenlockSourceDelayI3D(hDC, uDelay) + return BOOL + param hDC HDC in value + param uDelay UINT out reference + category I3D_genlock + +QueryGenlockMaxSourceDelayI3D(hDC, uMaxLineDelay, uMaxPixelDelay) + return BOOL + param hDC HDC in value + param uMaxLineDelay UINT out reference + param uMaxPixelDelay UINT out reference + category I3D_genlock + +############################################################################### +# +# Extension #253 +# I3D_image_buffer commands +# +############################################################################### + +CreateImageBufferI3D(hDC, dwSize, uFlags) + return LPVOID + param hDC HDC in value + param dwSize DWORD in value + param uFlags UINT in value + category I3D_image_buffer + +DestroyImageBufferI3D(hDC, pAddress) + return BOOL + param hDC HDC in value + param pAddress LPVOID in value + category I3D_image_buffer + +AssociateImageBufferEventsI3D(hDC, pEvent, pAddress, pSize, count) + return BOOL + param hDC HDC in value + param pEvent HANDLE in array [count] + param pAddress LPVOID in array [count] + param pSize DWORD in array [count] + param count UINT in value + category I3D_image_buffer + +ReleaseImageBufferEventsI3D(hDC, pAddress, count) + return BOOL + param hDC HDC in value + param pAddress LPVOID in array [count] + param count UINT in value + category I3D_image_buffer + +############################################################################### +# +# Extension #254 +# I3D_swap_frame_lock commands +# +############################################################################### + +EnableFrameLockI3D() + return BOOL + category I3D_swap_frame_lock + +DisableFrameLockI3D() + return BOOL + category I3D_swap_frame_lock + +IsEnabledFrameLockI3D(pFlag) + return BOOL + param pFlag BOOL out reference + category I3D_swap_frame_lock + +QueryFrameLockMasterI3D(pFlag) + return BOOL + param pFlag BOOL out reference + category I3D_swap_frame_lock + +############################################################################### +# +# Extension #255 +# I3D_swap_frame_usage commands +# +############################################################################### + +GetFrameUsageI3D(pUsage) + return BOOL + param pUsage float out reference + category I3D_swap_frame_usage + +BeginFrameTrackingI3D() + return BOOL + category I3D_swap_frame_usage + +EndFrameTrackingI3D() + return BOOL + category I3D_swap_frame_usage + +QueryFrameTrackingI3D(pFrameCount, pMissedFrames, pLastMissedUsage) + return BOOL + param pFrameCount DWORD out reference + param pMissedFrames DWORD out reference + param pLastMissedUsage float out reference + category I3D_swap_frame_usage + +############################################################################### +# +# Extension #278 +# ATI_pixel_format_float commands +# +############################################################################### + +# (none) +newcategory: ATI_pixel_format_float + +############################################################################### +# +# Extension #281 +# NV_float_buffer commands +# +############################################################################### + +# (none) +newcategory: NV_float_buffer