--- /dev/null
+typemap egl.tm
+iomap egl.io
+spec egl.spec
+prefix egl
+enumspec eglenum.spec
+enumprefix EGL_
--- /dev/null
+EGLint, int, %i
+EGLDisplay, pointer, %p
+EGLNativeDisplayType, pointer, %p
+EGLBoolean, int, %i
+char *, string, \"%s\"
+EGLConfig, pointer, %p
+EGLSurface, pointer, %p
+EGLNativeWindowType, int, %lx
+EGLNativePixmapType, int, %lx
+EGLenum, int, %s, describe_enum:p.name:'"%s"'%p.type
+EGLenumHack, int, %s, describe_enum:p.name:'"%s"'%p.type
+EGLClientBuffer, pointer, %p
+EGLContext, pointer, %p
+__eglMustCastToProperFunctionPointerType, pointer, %p
--- /dev/null
+GetError()
+ return EGLenumHack
+
+GetDisplay(display_id)
+ return Display
+ param display_id NativeDisplayType in value
+
+Initialize(dpy, major, minor)
+ return Boolean
+ param dpy Display in value
+ param major int out array [1]
+ param minor int out array [1]
+
+Terminate(dpy)
+ return Boolean
+ param dpy Display in value
+
+QueryString(dpy, name)
+ return string
+ param dpy Display in value
+ param name EGLenumHack in value
+
+GetConfigs(dpy, configs, config_size, num_config)
+ return Boolean
+ param dpy Display in value
+ param configs Config out array [num_config]
+ param config_size int in value
+ param num_config int out array [1]
+
+ChooseConfig(dpy, attrib_list, configs, config_size, num_config)
+ return Boolean
+ param dpy Display in value
+ param attrib_list EGLenumHack in array
+ param configs Config out array [num_config]
+ param config_size int in value
+ param num_config int out array [1]
+
+GetConfigAttrib(dpy, config, attribute, value)
+ return Boolean
+ param dpy Display in value
+ param config Config in value
+ param attribute EGLenumHack in value
+ param value int out array [1]
+
+CreateWindowSurface(dpy, config, win, attrib_list)
+ return Surface
+ param dpy Display in value
+ param config Config in value
+ param win NativeWindowType in value
+ param attrib_list EGLenumHack in array
+
+CreatePbufferSurface(dpy, config, attrib_list)
+ return Surface
+ param dpy Display in value
+ param config Config in value
+ param attrib_list EGLenumHack in array
+
+CreatePixmapSurface(dpy, config, pixmap, attrib_list)
+ return Surface
+ param dpy Display in value
+ param config Config in value
+ param pixmap NativePixmapType in value
+ param attrib_list EGLenumHack in array
+
+DestroySurface(dpy, surface)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+
+QuerySurface(dpy, surface, attribute, value)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+ param attribute EGLenumHack in value
+ param value int out array [1]
+
+BindAPI(api)
+ return Boolean
+ param api EGLenum in value
+
+QueryAPI()
+ return EGLenum
+
+WaitClient()
+ return Boolean
+
+ReleaseThread()
+ return Boolean
+
+CreatePbufferFromClientBuffer(dpy, buftype, buffer, config, attrib_list)
+ return Surface
+ param dpy Display in value
+ param buftype EGLenum in value
+ param buffer ClientBuffer in value
+ param config Config in value
+ param attrib_list EGLenumHack in array
+
+SurfaceAttrib(dpy, surface, attribute, value)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+ param attribute int in value
+ param value EGLenumHack in value
+
+BindTexImage(dpy, surface, buffer)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+ param buffer int in value
+
+ReleaseTexImage(dpy, surface, buffer)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+ param buffer int in value
+
+SwapInterval(dpy, interval)
+ return Boolean
+ param dpy Display in value
+ param interval int in value
+
+CreateContext(dpy, config, share_context, attrib_list)
+ return Context
+ param dpy Display in value
+ param config Config in value
+ param share_context Context in value
+ param attrib_list EGLenumHack in array
+
+DestroyContext(dpy, ctx)
+ return Boolean
+ param dpy Display in value
+ param ctx Context in value
+
+MakeCurrent(dpy, draw, read, ctx)
+ return Boolean
+ param dpy Display in value
+ param draw Surface in value
+ param read Surface in value
+ param ctx Context in value
+
+GetCurrentContext()
+ return Context
+
+GetCurrentSurface(readdraw)
+ return Surface
+ param readdraw EGLenumHack in value
+
+GetCurrentDisplay()
+ return Display
+
+QueryContext(dpy, ctx, attribute, value)
+ return Boolean
+ param dpy Display in value
+ param ctx Context in value
+ param attribute EGLenumHack in value
+ param value int out array [1]
+
+WaitGL()
+ return Boolean
+
+WaitNative(engine)
+ return Boolean
+ param engine EGLenumHack in value
+
+SwapBuffers(dpy, surface)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+
+CopyBuffers(dpy, surface, target)
+ return Boolean
+ param dpy Display in value
+ param surface Surface in value
+ param target NativePixmapType in value
+
+GetProcAddress(procname)
+ return FuncPtr
+ param procname string in value
--- /dev/null
+int,*,*, EGLint,*,*
+Display,*,*, EGLDisplay,*,*
+NativeDisplayType,*,*, EGLNativeDisplayType,*,*
+Boolean,*,*, EGLBoolean,*,*
+string,*,*, const char *,*,*
+Config,*,*, EGLConfig,*,*
+Surface,*,*, EGLSurface,*,*
+NativeWindowType,*,*, EGLNativeWindowType,*,*
+NativePixmapType,*,*, EGLNativePixmapType,*,*
+EGLenumHack,*,*, EGLenumHack,*,*
+EGLenum,*,*, EGLenum,*,*
+ClientBuffer,*,*, EGLClientBuffer,*,*
+Context,*,*, EGLContext,*,*
+FuncPtr,*,*, __eglMustCastToProperFunctionPointerType,*,*
--- /dev/null
+EGL enum:
+ VERSION_1_0 = 1
+ VERSION_1_1 = 1
+ VERSION_1_2 = 1
+ VERSION_1_3 = 1
+ VERSION_1_4 = 1
+ FALSE = 0
+ TRUE = 1
+ SUCCESS = 0x3000
+ NOT_INITIALIZED = 0x3001
+ BAD_ACCESS = 0x3002
+ BAD_ALLOC = 0x3003
+ BAD_ATTRIBUTE = 0x3004
+ BAD_CONFIG = 0x3005
+ BAD_CONTEXT = 0x3006
+ BAD_CURRENT_SURFACE = 0x3007
+ BAD_DISPLAY = 0x3008
+ BAD_MATCH = 0x3009
+ BAD_NATIVE_PIXMAP = 0x300A
+ BAD_NATIVE_WINDOW = 0x300B
+ BAD_PARAMETER = 0x300C
+ BAD_SURFACE = 0x300D
+ CONTEXT_LOST = 0x300E /* EGL 1.1 - IMG_power_management */
+ BUFFER_SIZE = 0x3020
+ ALPHA_SIZE = 0x3021
+ BLUE_SIZE = 0x3022
+ GREEN_SIZE = 0x3023
+ RED_SIZE = 0x3024
+ DEPTH_SIZE = 0x3025
+ STENCIL_SIZE = 0x3026
+ CONFIG_CAVEAT = 0x3027
+ CONFIG_ID = 0x3028
+ LEVEL = 0x3029
+ MAX_PBUFFER_HEIGHT = 0x302A
+ MAX_PBUFFER_PIXELS = 0x302B
+ MAX_PBUFFER_WIDTH = 0x302C
+ NATIVE_RENDERABLE = 0x302D
+ NATIVE_VISUAL_ID = 0x302E
+ NATIVE_VISUAL_TYPE = 0x302F
+ SAMPLES = 0x3031
+ SAMPLE_BUFFERS = 0x3032
+ SURFACE_TYPE = 0x3033
+ TRANSPARENT_TYPE = 0x3034
+ TRANSPARENT_BLUE_VALUE = 0x3035
+ TRANSPARENT_GREEN_VALUE = 0x3036
+ TRANSPARENT_RED_VALUE = 0x3037
+ NONE = 0x3038 /* Attrib list terminator */
+ BIND_TO_TEXTURE_RGB = 0x3039
+ BIND_TO_TEXTURE_RGBA = 0x303A
+ MIN_SWAP_INTERVAL = 0x303B
+ MAX_SWAP_INTERVAL = 0x303C
+ LUMINANCE_SIZE = 0x303D
+ ALPHA_MASK_SIZE = 0x303E
+ COLOR_BUFFER_TYPE = 0x303F
+ RENDERABLE_TYPE = 0x3040
+ MATCH_NATIVE_PIXMAP = 0x3041 /* Pseudo-attribute (not queryable) */
+ CONFORMANT = 0x3042
+ SLOW_CONFIG = 0x3050 /* EGL_CONFIG_CAVEAT value */
+ NON_CONFORMANT_CONFIG = 0x3051 /* EGL_CONFIG_CAVEAT value */
+ TRANSPARENT_RGB = 0x3052 /* EGL_TRANSPARENT_TYPE value */
+ RGB_BUFFER = 0x308E /* EGL_COLOR_BUFFER_TYPE value */
+ LUMINANCE_BUFFER = 0x308F /* EGL_COLOR_BUFFER_TYPE value */
+ NO_TEXTURE = 0x305C
+ TEXTURE_RGB = 0x305D
+ TEXTURE_RGBA = 0x305E
+ TEXTURE_2D = 0x305F
+ PBUFFER_BIT = 0x0001 /* EGL_SURFACE_TYPE mask bits */
+ PIXMAP_BIT = 0x0002 /* EGL_SURFACE_TYPE mask bits */
+ WINDOW_BIT = 0x0004 /* EGL_SURFACE_TYPE mask bits */
+ VG_COLORSPACE_LINEAR_BIT = 0x0020 /* EGL_SURFACE_TYPE mask bits */
+ VG_ALPHA_FORMAT_PRE_BIT = 0x0040 /* EGL_SURFACE_TYPE mask bits */
+ MULTISAMPLE_RESOLVE_BOX_BIT 0x0200 /* EGL_SURFACE_TYPE mask bits */
+ SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 /* EGL_SURFACE_TYPE mask bits */
+ OPENGL_ES_BIT = 0x0001 /* EGL_RENDERABLE_TYPE mask bits */
+ OPENVG_BIT = 0x0002 /* EGL_RENDERABLE_TYPE mask bits */
+ OPENGL_ES2_BIT = 0x0004 /* EGL_RENDERABLE_TYPE mask bits */
+ OPENGL_BIT = 0x0008 /* EGL_RENDERABLE_TYPE mask bits */
+ VENDOR = 0x3053
+ VERSION = 0x3054
+ EXTENSIONS = 0x3055
+ CLIENT_APIS = 0x308D
+ HEIGHT = 0x3056
+ WIDTH = 0x3057
+ LARGEST_PBUFFER = 0x3058
+ TEXTURE_FORMAT = 0x3080
+ TEXTURE_TARGET = 0x3081
+ MIPMAP_TEXTURE = 0x3082
+ MIPMAP_LEVEL = 0x3083
+ RENDER_BUFFER = 0x3086
+ VG_COLORSPACE = 0x3087
+ VG_ALPHA_FORMAT = 0x3088
+ HORIZONTAL_RESOLUTION = 0x3090
+ VERTICAL_RESOLUTION = 0x3091
+ PIXEL_ASPECT_RATIO = 0x3092
+ SWAP_BEHAVIOR = 0x3093
+ MULTISAMPLE_RESOLVE = 0x3099
+ BACK_BUFFER = 0x3084
+ SINGLE_BUFFER = 0x3085
+ VG_COLORSPACE_sRGB = 0x3089 /* EGL_VG_COLORSPACE value */
+ VG_COLORSPACE_LINEAR = 0x308A /* EGL_VG_COLORSPACE value */
+ VG_ALPHA_FORMAT_NONPRE = 0x308B /* EGL_ALPHA_FORMAT value */
+ VG_ALPHA_FORMAT_PRE = 0x308C /* EGL_ALPHA_FORMAT value */
+ DISPLAY_SCALING = 10000
+ BUFFER_PRESERVED = 0x3094 /* EGL_SWAP_BEHAVIOR value */
+ BUFFER_DESTROYED = 0x3095 /* EGL_SWAP_BEHAVIOR value */
+ OPENVG_IMAGE = 0x3096
+ CONTEXT_CLIENT_TYPE = 0x3097
+ CONTEXT_CLIENT_VERSION = 0x3098
+ MULTISAMPLE_RESOLVE_DEFAULT 0x309A /* EGL_MULTISAMPLE_RESOLVE value */
+ MULTISAMPLE_RESOLVE_BOX = 0x309B /* EGL_MULTISAMPLE_RESOLVE value */
+ OPENGL_ES_API = 0x30A0
+ OPENVG_API = 0x30A1
+ OPENGL_API = 0x30A2
+ DRAW = 0x3059
+ READ = 0x305A
+ CORE_NATIVE_ENGINE = 0x305B
--- /dev/null
+# $Id$
+
+CPPFLAGS += -DAPIENTRY=
+APIS := $(FLAVOR_ROOT)/gles2.api $(FLAVOR_ROOT)/egl.api
--- /dev/null
+typemap gles2.tm
+iomap gles2.io
+spec gles2.spec
+prefix gl
+enumspec gles2enum.spec
+enumprefix GL_
--- /dev/null
+enum, int, %s, describe_enum:p.name:'"%s"'%p.type
+boolean, char, %i
+bitfield, int, %s, describe_bitfield:p.name:'"%s"'%p.type
+byte, char, %i
+ubyte, char, %u
+short, short, %i
+ushort, short, %u
+int, int, %i
+uint, int, %u
+unsigned int, int, %u
+sizei, int, %i
+intptr, int, %li
+sizeiptr, int, %li
+handle, int, %i
+int64, long long, %lli
+uint64, long long, %llu
+half, short, %#x
+float, float, %g
+clampf, float, %g
+double, double, %g
+clampd, double, %g
+ubyte *, string, \"%s\"
+char *, string, \"%s\"
+void *, pointer, %p
+void* const, pointer, %p
+boolean *, pointer, %p
--- /dev/null
+ActiveTexture(texture)
+ return void
+ param texture TextureUnit in value
+
+AttachShader(program, shader)
+ return void
+ param program UInt32 in value
+ param shader UInt32 in value
+
+BindAttribLocation(program, index, name)
+ return void
+ param program UInt32 in value
+ param index UInt32 in value
+ param name Char in array []
+
+BindBuffer(target, buffer)
+ return void
+ param target BufferTarget in value
+ param buffer UInt32 in value
+
+BindFramebuffer(target, framebuffer)
+ return void
+ param target FramebufferTarget in value
+ param framebuffer UInt32 in value
+
+BindRenderbuffer(target, renderbuffer)
+ return void
+ param target RenderbufferTarget in value
+ param renderbuffer UInt32 in value
+
+BindTexture(target, texture)
+ return void
+ param target TextureTarget in value
+ param texture Texture in value
+
+BlendColor(red, green, blue, alpha)
+ return void
+ param red ClampedColorF in value
+ param green ClampedColorF in value
+ param blue ClampedColorF in value
+ param alpha ClampedColorF in value
+
+BlendEquation(mode)
+ return void
+ param mode BlendEquationMode in value
+
+BlendEquationSeparate(modeRGB, modeAlpha)
+ return void
+ param modeRGB BlendEquationMode in value
+ param modeAlpha BlendEquationMode in value
+
+BlendFunc(sfactor, dfactor)
+ return void
+ param sfactor BlendingFactorSrc in value
+ param dfactor BlendingFactorDest in value
+
+BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha)
+ return void
+ param sfactorRGB BlendFuncSeparateParameter in value
+ param dfactorRGB BlendFuncSeparateParameter in value
+ param sfactorAlpha BlendFuncSeparateParameter in value
+ param dfactorAlpha BlendFuncSeparateParameter in value
+
+BufferData(target, size, data, usage)
+ return void
+ param target BufferTarget in value
+ param size BufferSize in value
+ param data ConstVoid in array [size]
+ param usage BufferUsage in value
+
+BufferSubData(target, offset, size, data)
+ return void
+ param target BufferTarget in value
+ param offset BufferOffset in value
+ param size BufferSize in value
+ param data ConstVoid in array [size]
+
+CheckFramebufferStatus(target)
+ return GLenum
+ param target FramebufferTarget in value
+
+Clear(mask)
+ return void
+ param mask ClearBufferMask in value
+
+ClearColor(red, green, blue, alpha)
+ return void
+ param red ClampedColorF in value
+ param green ClampedColorF in value
+ param blue ClampedColorF in value
+ param alpha ClampedColorF in value
+
+ClearDepthf(depth)
+ return void
+ param depth ClampedFloat32 in value
+
+ClearStencil(s)
+ return void
+ param s StencilValue in value
+
+ColorMask(red, green, blue, alpha)
+ return void
+ param red Boolean in value
+ param green Boolean in value
+ param blue Boolean in value
+ param alpha Boolean in value
+
+CompileShader(shader)
+ return void
+ param shader UInt32 in value
+
+CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data)
+ return void
+ param target TextureTarget in value
+ param level CheckedInt32 in value
+ param internalformat PixelInternalFormat in value
+ param width SizeI in value
+ param height SizeI in value
+ param border CheckedInt32 in value
+ param imageSize SizeI in value
+ param data CompressedTexture in array [imageSize]
+
+CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data)
+ return void
+ param target TextureTarget in value
+ param level CheckedInt32 in value
+ param xoffset CheckedInt32 in value
+ param yoffset CheckedInt32 in value
+ param width SizeI in value
+ param height SizeI in value
+ param format PixelFormat in value
+ param imageSize SizeI in value
+ param data CompressedTexture in array [imageSize]
+
+CopyTexImage2D(target, level, internalformat, x, y, width, height, border)
+ return void
+ param target TextureTarget in value
+ param level CheckedInt32 in value
+ param internalformat PixelInternalFormat in value
+ param x WinCoord in value
+ param y WinCoord in value
+ param width SizeI in value
+ param height SizeI in value
+ param border CheckedInt32 in value
+
+CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height)
+ return void
+ param target TextureTarget in value
+ param level CheckedInt32 in value
+ param xoffset CheckedInt32 in value
+ param yoffset CheckedInt32 in value
+ param x WinCoord in value
+ param y WinCoord in value
+ param width SizeI in value
+ param height SizeI in value
+
+CreateProgram()
+ return UInt32
+
+CreateShader(type)
+ return UInt32
+ param type GLenum in value
+
+CullFace(mode)
+ return void
+ param mode CullFaceMode in value
+
+DeleteBuffers(n, buffers)
+ return void
+ param n SizeI in value
+ param buffers ConstUInt32 in array [n]
+
+DeleteFramebuffers(n, framebuffers)
+ return void
+ param n SizeI in value
+ param framebuffers UInt32 in array [n]
+
+DeleteProgram(program)
+ return void
+ param program UInt32 in value
+
+DeleteRenderbuffers(n, renderbuffers)
+ return void
+ param n SizeI in value
+ param renderbuffers UInt32 in array [n]
+
+DeleteShader(shader)
+ return void
+ param shader UInt32 in value
+
+DeleteTextures(n, textures)
+ return void
+ param n SizeI in value
+ param textures Texture in array [n]
+
+DepthFunc(func)
+ return void
+ param func DepthFunction in value
+
+DepthMask(flag)
+ return void
+ param flag Boolean in value
+
+DepthRangef(near, far)
+ return void
+ param near ClampedFloat32 in value
+ param far ClampedFloat32 in value
+
+DetachShader(program, shader)
+ return void
+ param program UInt32 in value
+ param shader UInt32 in value
+
+Disable(cap)
+ return void
+ param cap EnableCap in value
+
+DisableVertexAttribArray(index)
+ return void
+ param index UInt32 in value
+
+DrawArrays(mode, first, count)
+ return void
+ param mode BeginMode in value
+ param first Int32 in value
+ param count SizeI in value
+
+DrawElements(mode, count, type, indices)
+ return void
+ param mode BeginMode in value
+ param count SizeI in value
+ param type DrawElementsType in value
+ param indices Void in array [COMPSIZE(count/type)]
+
+Enable(cap)
+ return void
+ param cap EnableCap in value
+
+EnableVertexAttribArray(index)
+ return void
+ param index UInt32 in value
+
+Finish()
+ return void
+
+Flush()
+ return void
+
+FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer)
+ return void
+ param target FramebufferTarget in value
+ param attachment FramebufferAttachment in value
+ param renderbuffertarget RenderbufferTarget in value
+ param renderbuffer UInt32 in value
+
+FramebufferTexture2D(target, attachment, textarget, texture, level)
+ return void
+ param target FramebufferTarget in value
+ param attachment FramebufferAttachment in value
+ param textarget GLenum in value
+ param texture UInt32 in value
+ param level Int32 in value
+
+FrontFace(mode)
+ return void
+ param mode FrontFaceDirection in value
+
+GenBuffers(n, buffers)
+ return void
+ param n SizeI in value
+ param buffers UInt32 out array [n]
+
+GenerateMipmap(target)
+ return void
+ param target GLenum in value
+
+GenFramebuffers(n, framebuffers)
+ return void
+ param n SizeI in value
+ param framebuffers UInt32 out array [n]
+
+GenRenderbuffers(n, renderbuffers)
+ return void
+ param n SizeI in value
+ param renderbuffers UInt32 out array [n]
+
+GenTextures(n, textures)
+ return void
+ param n SizeI in value
+ param textures Texture out array [n]
+
+GetActiveAttrib(program, index, bufSize, length, size, type, name)
+ return void
+ param program UInt32 in value
+ param index UInt32 in value
+ param bufSize SizeI in value
+ param length SizeI out array [1]
+ param size Int32 out array [1]
+ param type GLenum out array [1]
+ param name Char out array []
+
+GetActiveUniform(program, index, bufSize, length, size, type, name)
+ return void
+ param program UInt32 in value
+ param index UInt32 in value
+ param bufSize SizeI in value
+ param length SizeI out array [1]
+ param size Int32 out array [1]
+ param type GLenum out array [1]
+ param name Char out array []
+
+GetAttachedShaders(program, maxCount, count, obj)
+ return void
+ param program UInt32 in value
+ param maxCount SizeI in value
+ param count SizeI out array [1]
+ param obj UInt32 out array [count]
+
+GetAttribLocation(program, name)
+ return Int32
+ param program UInt32 in value
+ param name Char in array []
+
+GetBooleanv(pname, params)
+ return void
+ param pname GetPName in value
+ param params Boolean out array [COMPSIZE(pname)]
+
+GetBufferParameteriv(target, pname, params)
+ return void
+ param target BufferTarget in value
+ param pname BufferPName in value
+ param params Int32 out array [COMPSIZE(pname)]
+
+GetError()
+ return ErrorCode
+
+GetFloatv(pname, params)
+ return void
+ param pname GetPName in value
+ param params Float32 out array [COMPSIZE(pname)]
+
+GetFramebufferAttachmentParameteriv(target, attachment, pname, params)
+ return void
+ param target FramebufferTarget in value
+ param attachment FramebufferAttachment in value
+ param pname GLenum in value
+ param params Int32 out array [COMPSIZE(pname)]
+
+GetIntegerv(pname, params)
+ return void
+ param pname GetPName in value
+ param params Int32 out array [COMPSIZE(pname)]
+
+GetProgramiv(program, pname, params)
+ return void
+ param program UInt32 in value
+ param pname GLenum in value
+ param params Int32 out array [pname]
+
+GetProgramInfoLog(program, bufSize, length, infoLog)
+ return void
+ param program UInt32 in value
+ param bufSize SizeI in value
+ param length SizeI out array [1]
+ param infoLog Char out array [length]
+
+GetRenderbufferParameteriv(target, pname, params)
+ return void
+ param target RenderbufferTarget in value
+ param pname GLenum in value
+ param params Int32 out array [COMPSIZE(pname)]
+
+GetShaderiv(shader, pname, params)
+ return void
+ param shader UInt32 in value
+ param pname GLenum in value
+ param params Int32 out array [pname]
+
+GetShaderInfoLog(shader, bufSize, length, infoLog)
+ return void
+ param shader UInt32 in value
+ param bufSize SizeI in value
+ param length SizeI out array [1]
+ param infoLog Char out array [length]
+
+#GetShaderPrecisionFormat
+
+GetShaderSource(shader, bufSize, length, source)
+ return void
+ param shader UInt32 in value
+ param bufSize SizeI in value
+ param length SizeI out array [1]
+ param source Char out array [length]
+
+GetString(name)
+ return String
+ param name StringName in value
+
+GetTexParameterfv(target, pname, params)
+ return void
+ param target TextureTarget in value
+ param pname GetTextureParameter in value
+ param params Float32 out array [COMPSIZE(pname)]
+
+GetTexParameteriv(target, pname, params)
+ return void
+ param target TextureTarget in value
+ param pname GetTextureParameter in value
+ param params Int32 out array [COMPSIZE(pname)]
+
+GetUniformfv(program, location, params)
+ return void
+ param program UInt32 in value
+ param location Int32 in value
+ param params Float32 out array [location]
+
+GetUniformiv(program, location, params)
+ return void
+ param program UInt32 in value
+ param location Int32 in value
+ param params Int32 out array [location]
+
+GetUniformLocation(program, name)
+ return Int32
+ param program UInt32 in value
+ param name Char in array []
+
+GetVertexAttribfv(index, pname, params)
+ return void
+ param index UInt32 in value
+ param pname VertexAttribPropertyARB in value
+ param params Float32 out array [4]
+
+GetVertexAttribiv(index, pname, params)
+ return void
+ param index UInt32 in value
+ param pname VertexAttribPropertyARB in value
+ param params Int32 out array [4]
+
+GetVertexAttribPointerv(index, pname, pointer)
+ return void
+ param index UInt32 in value
+ param pname VertexAttribPointerPropertyARB in value
+ param pointer VoidPointer out array [1]
+
+Hint(target, mode)
+ return void
+ param target HintTarget in value
+ param mode HintMode in value
+
+IsBuffer(buffer)
+ return Boolean
+ param buffer UInt32 in value
+
+IsEnabled(cap)
+ return Boolean
+ param cap EnableCap in value
+
+IsFramebuffer(framebuffer)
+ return Boolean
+ param framebuffer UInt32 in value
+
+IsProgram(program)
+ return Boolean
+ param program UInt32 in value
+
+IsRenderbuffer(renderbuffer)
+ return Boolean
+ param renderbuffer UInt32 in value
+
+IsShader(shader)
+ return Boolean
+ param shader UInt32 in value
+
+IsTexture(texture)
+ return Boolean
+ param texture Texture in value
+
+LineWidth(width)
+ return void
+ param width CheckedFloat32 in value
+
+LinkProgram(program)
+ return void
+ param program UInt32 in value
+
+PixelStorei(pname, param)
+ return void
+ param pname PixelStoreParameter in value
+ param param CheckedInt32 in value
+
+PolygonOffset(factor, units)
+ return void
+ param factor Float32 in value
+ param units Float32 in value
+
+ReadPixels(x, y, width, height, format, type, pixels)
+ return void
+ param x WinCoord in value
+ param y WinCoord in value
+ param width SizeI in value
+ param height SizeI in value
+ param format PixelFormat in value
+ param type PixelType in value
+ param pixels Void out array [COMPSIZE(format/type/width/height)]
+
+#ReleaseShaderCompiler
+
+RenderbufferStorage(target, internalformat, width, height)
+ return void
+ param target RenderbufferTarget in value
+ param internalformat GLenum in value
+ param width SizeI in value
+ param height SizeI in value
+
+SampleCoverage(value, invert)
+ return void
+ param value ClampedFloat32 in value
+ param invert Boolean in value
+
+Scissor(x, y, width, height)
+ return void
+ param x WinCoord in value
+ param y WinCoord in value
+ param width SizeI in value
+ param height SizeI in value
+
+#ShaderBinary
+
+ShaderSource(shader, count, string, length)
+ return void
+ param shader UInt32 in value
+ param count SizeI in value
+ param string CharPointer in array [count]
+ param length Int32 in array [1]
+
+StencilFunc(func, ref, mask)
+ return void
+ param func StencilFunction in value
+ param ref ClampedStencilValue in value
+ param mask MaskedStencilValue in value
+
+StencilFuncSeparate(frontfunc, backfunc, ref, mask)
+ return void
+ param frontfunc StencilFunction in value
+ param backfunc StencilFunction in value
+ param ref ClampedStencilValue in value
+ param mask MaskedStencilValue in value
+
+StencilMask(mask)
+ return void
+ param mask MaskedStencilValue in value
+
+StencilMaskSeparate(face, mask)
+ return void
+ param face StencilFaceDirection in value
+ param mask MaskedStencilValue in value
+
+StencilOp(fail, zfail, zpass)
+ return void
+ param fail StencilOp in value
+ param zfail StencilOp in value
+ param zpass StencilOp in value
+
+StencilOpSeparate(face, sfail, dpfail, dppass)
+ return void
+ param face StencilFaceDirection in value
+ param sfail StencilOp in value
+ param dpfail StencilOp in value
+ param dppass StencilOp in value
+
+TexImage2D(target, level, internalformat, width, height, border, format, type, pixels)
+ return void
+ param target TextureTarget in value
+ param level CheckedInt32 in value
+ param internalformat TextureComponentCount in value
+ param width SizeI in value
+ param height SizeI in value
+ param border CheckedInt32 in value
+ param format PixelFormat in value
+ param type PixelType in value
+ param pixels Void in array [COMPSIZE(format/type/width/height)]
+
+TexParameterf(target, pname, param)
+ return void
+ param target TextureTarget in value
+ param pname TextureParameterName in value
+ param param CheckedFloat32 in value
+
+TexParameterfv(target, pname, params)
+ return void
+ param target TextureTarget in value
+ param pname TextureParameterName in value
+ param params CheckedFloat32 in array [COMPSIZE(pname)]
+
+TexParameteri(target, pname, param)
+ return void
+ param target TextureTarget in value
+ param pname TextureParameterName in value
+ param param CheckedInt32 in value
+
+TexParameteriv(target, pname, params)
+ return void
+ param target TextureTarget in value
+ param pname TextureParameterName in value
+ param params CheckedInt32 in array [COMPSIZE(pname)]
+
+TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels)
+ return void
+ param target TextureTarget in value
+ param level CheckedInt32 in value
+ param xoffset CheckedInt32 in value
+ param yoffset CheckedInt32 in value
+ param width SizeI in value
+ param height SizeI in value
+ param format PixelFormat in value
+ param type PixelType in value
+ param pixels Void in array [COMPSIZE(format/type/width/height)]
+
+Uniform1f(location, v0)
+ return void
+ param location Int32 in value
+ param v0 Float32 in value
+
+Uniform1fv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Float32 in array [count]
+
+Uniform1i(location, v0)
+ return void
+ param location Int32 in value
+ param v0 Int32 in value
+
+Uniform1iv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Int32 in array [count]
+
+Uniform2f(location, v0, v1)
+ return void
+ param location Int32 in value
+ param v0 Float32 in value
+ param v1 Float32 in value
+
+Uniform2fv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Float32 in array [count]
+
+Uniform2i(location, v0, v1)
+ return void
+ param location Int32 in value
+ param v0 Int32 in value
+ param v1 Int32 in value
+
+Uniform2iv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Int32 in array [count]
+
+Uniform3f(location, v0, v1, v2)
+ return void
+ param location Int32 in value
+ param v0 Float32 in value
+ param v1 Float32 in value
+ param v2 Float32 in value
+
+Uniform3fv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Float32 in array [count]
+
+Uniform3i(location, v0, v1, v2)
+ return void
+ param location Int32 in value
+ param v0 Int32 in value
+ param v1 Int32 in value
+ param v2 Int32 in value
+
+Uniform3iv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Int32 in array [count]
+
+Uniform4f(location, v0, v1, v2, v3)
+ return void
+ param location Int32 in value
+ param v0 Float32 in value
+ param v1 Float32 in value
+ param v2 Float32 in value
+ param v3 Float32 in value
+
+Uniform4fv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Float32 in array [count]
+
+Uniform4i(location, v0, v1, v2, v3)
+ return void
+ param location Int32 in value
+ param v0 Int32 in value
+ param v1 Int32 in value
+ param v2 Int32 in value
+ param v3 Int32 in value
+
+Uniform4iv(location, count, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param value Int32 in array [count]
+
+UniformMatrix2fv(location, count, transpose, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param transpose Boolean in value
+ param value Float32 in array [count]
+
+UniformMatrix3fv(location, count, transpose, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param transpose Boolean in value
+ param value Float32 in array [count]
+
+UniformMatrix4fv(location, count, transpose, value)
+ return void
+ param location Int32 in value
+ param count SizeI in value
+ param transpose Boolean in value
+ param value Float32 in array [count]
+
+UseProgram(program)
+ return void
+ param program UInt32 in value
+
+ValidateProgram(program)
+ return void
+ param program UInt32 in value
+
+VertexAttrib1f(index, x)
+ return void
+ param index UInt32 in value
+ param x Float32 in value
+
+VertexAttrib1fv(index, v)
+ return void
+ param index UInt32 in value
+ param v Float32 in array [1]
+
+VertexAttrib2f(index, x, y)
+ return void
+ param index UInt32 in value
+ param x Float32 in value
+ param y Float32 in value
+
+VertexAttrib2fv(index, v)
+ return void
+ param index UInt32 in value
+ param v Float32 in array [2]
+
+VertexAttrib3f(index, x, y, z)
+ return void
+ param index UInt32 in value
+ param x Float32 in value
+ param y Float32 in value
+ param z Float32 in value
+
+VertexAttrib3fv(index, v)
+ return void
+ param index UInt32 in value
+ param v Float32 in array [3]
+
+VertexAttrib4f(index, x, y, z, w)
+ return void
+ param index UInt32 in value
+ param x Float32 in value
+ param y Float32 in value
+ param z Float32 in value
+ param w Float32 in value
+
+VertexAttrib4fv(index, v)
+ return void
+ param index UInt32 in value
+ param v Float32 in array [4]
+
+VertexAttribPointer(index, size, type, normalized, stride, pointer)
+ return void
+ param index UInt32 in value
+ param size Int32 in value
+ param type VertexAttribPointerTypeARB in value
+ param normalized Boolean in value
+ param stride SizeI in value
+ param pointer Void in array [COMPSIZE(size/type/stride)] retained
+
+Viewport(x, y, width, height)
+ return void
+ param x WinCoord in value
+ param y WinCoord in value
+ param width SizeI in value
+ param height SizeI in value
--- /dev/null
+AccumOp,*,*, GLenum,*,*
+AlphaFunction,*,*, GLenum,*,*
+AttribMask,*,*, GLbitfield,*,*
+BeginMode,*,*, GLenum,*,*
+BinormalPointerTypeEXT,*,*, GLenum,*,*
+BlendEquationMode,*,*, GLenum,*,*
+BlendEquationModeEXT,*,*, GLenum,*,*
+BlendFuncSeparateParameterEXT,*,*, GLenum,*,*
+BlendingFactorDest,*,*, GLenum,*,*
+BlendingFactorSrc,*,*, GLenum,*,*
+Boolean,*,*, GLboolean,*,*
+BooleanPointer,*,*, GLboolean*,*,*
+Char,in,array, const GLchar *,*,value
+Char,out,array, GLchar *,*,value
+CharPointer,*,*, GLchar*,*,*
+CheckedFloat32,*,*, GLfloat,*,*
+CheckedInt32,*,*, GLint,*,*
+ClampColorTargetARB,*,*, GLenum,*,*
+ClampColorModeARB,*,*, GLenum,*,*
+ClampedColorF,*,*, GLclampf,*,*
+ClampedFloat32,*,*, GLclampf,*,*
+ClampedFloat64,*,*, GLclampd,*,*
+ClampedStencilValue,*,*, GLint,*,*
+ClearBufferMask,*,*, GLbitfield,*,*
+ClientAttribMask,*,*, GLbitfield,*,*
+ClipPlaneName,*,*, GLenum,*,*
+ColorB,*,*, GLbyte,*,*
+ColorD,*,*, GLdouble,*,*
+ColorF,*,*, GLfloat,*,*
+ColorI,*,*, GLint,*,*
+ColorIndexValueD,*,*, GLdouble,*,*
+ColorIndexValueF,*,*, GLfloat,*,*
+ColorIndexValueI,*,*, GLint,*,*
+ColorIndexValueS,*,*, GLshort,*,*
+ColorIndexValueUB,*,*, GLubyte,*,*
+ColorMaterialParameter,*,*, GLenum,*,*
+ColorPointerType,*,*, GLenum,*,*
+ColorS,*,*, GLshort,*,*
+ColorTableParameterPName,*,*, GLenum,*,*
+ColorTableParameterPNameSGI,*,*, GLenum,*,*
+ColorTableTarget,*,*, GLenum,*,*
+ColorTableTargetSGI,*,*, GLenum,*,*
+ColorUB,*,*, GLubyte,*,*
+ColorUI,*,*, GLuint,*,*
+ColorUS,*,*, GLushort,*,*
+CombinerBiasNV,*,*, GLenum,*,*
+CombinerComponentUsageNV,*,*, GLenum,*,*
+CombinerMappingNV,*,*, GLenum,*,*
+CombinerParameterNV,*,*, GLenum,*,*
+CombinerPortionNV,*,*, GLenum,*,*
+CombinerRegisterNV,*,*, GLenum,*,*
+CombinerScaleNV,*,*, GLenum,*,*
+CombinerStageNV,*,*, GLenum,*,*
+CombinerVariableNV,*,*, GLenum,*,*
+CompressedTextureARB,*,*, GLvoid,*,*
+ControlPointNV,*,*, GLvoid,*,*
+ControlPointTypeNV,*,*, GLenum,*,*
+ConvolutionParameter,*,*, GLenum,*,*
+ConvolutionParameterEXT,*,*, GLenum,*,*
+ConvolutionTarget,*,*, GLenum,*,*
+ConvolutionTargetEXT,*,*, GLenum,*,*
+CoordD,*,*, GLdouble,*,*
+CoordF,*,*, GLfloat,*,*
+CoordI,*,*, GLint,*,*
+CoordS,*,*, GLshort,*,*
+CullFaceMode,*,*, GLenum,*,*
+CullParameterEXT,*,*, GLenum,*,*
+DepthFunction,*,*, GLenum,*,*
+DrawBufferMode,*,*, GLenum,*,*
+DrawBufferName,*,*, GLint,*,*
+DrawElementsType,*,*, GLenum,*,*
+ElementPointerTypeATI,*,*, GLenum,*,*
+EnableCap,*,*, GLenum,*,*
+ErrorCode,*,*, GLenum,*,*
+EvalMapsModeNV,*,*, GLenum,*,*
+EvalTargetNV,*,*, GLenum,*,*
+FeedbackElement,*,*, GLfloat,*,*
+FeedbackType,*,*, GLenum,*,*
+FenceNV,*,*, GLuint,*,*
+FenceConditionNV,*,*, GLenum,*,*
+FenceParameterNameNV,*,*, GLenum,*,*
+FfdMaskSGIX,*,*, GLbitfield,*,*
+FfdTargetSGIX,*,*, GLenum,*,*
+Float32,*,*, GLfloat,*,*
+Float32Pointer,*,*, GLfloat*,*,*
+Float64,*,*, GLdouble,*,*
+Float64Pointer,*,*, GLdouble*,*,*
+FogParameter,*,*, GLenum,*,*
+FogPointerTypeEXT,*,*, GLenum,*,*
+FogPointerTypeIBM,*,*, GLenum,*,*
+FragmentLightModelParameterSGIX,*,*,GLenum,*,*
+FragmentLightNameSGIX,*,*, GLenum,*,*
+FragmentLightParameterSGIX,*,*, GLenum,*,*
+FramebufferAttachment,*,*, GLenum,*,*
+FramebufferTarget,*,*, GLenum,*,*
+FrontFaceDirection,*,*, GLenum,*,*
+FunctionPointer,*,*, _GLfuncptr,*,*
+GetColorTableParameterPName,*,*, GLenum,*,*
+GetColorTableParameterPNameSGI,*,*, GLenum,*,*
+GetConvolutionParameterPName,*,*, GLenum,*,*
+GetHistogramParameterPName,*,*, GLenum,*,*
+GetHistogramParameterPNameEXT,*,*, GLenum,*,*
+GetMapQuery,*,*, GLenum,*,*
+GetMinmaxParameterPName,*,*, GLenum,*,*
+GetMinmaxParameterPNameEXT,*,*, GLenum,*,*
+GetPName,*,*, GLenum,*,*
+GetPointervPName,*,*, GLenum,*,*
+GetTextureParameter,*,*, GLenum,*,*
+HintMode,*,*, GLenum,*,*
+HintTarget,*,*, GLenum,*,*
+HintTargetPGI,*,*, GLenum,*,*
+HistogramTarget,*,*, GLenum,*,*
+HistogramTargetEXT,*,*, GLenum,*,*
+IglooFunctionSelectSGIX,*,*, GLenum,*,*
+IglooParameterSGIX,*,*, GLvoid,*,*
+ImageTransformPNameHP,*,*, GLenum,*,*
+ImageTransformTargetHP,*,*, GLenum,*,*
+IndexFunctionEXT,*,*, GLenum,*,*
+IndexMaterialParameterEXT,*,*, GLenum,*,*
+IndexPointerType,*,*, GLenum,*,*
+Int16,*,*, GLshort,*,*
+Int32,*,*, GLint,*,*
+Int8,*,*, GLbyte,*,*
+InterleavedArrayFormat,*,*, GLenum,*,*
+LightEnvParameterSGIX,*,*, GLenum,*,*
+LightModelParameter,*,*, GLenum,*,*
+LightName,*,*, GLenum,*,*
+LightParameter,*,*, GLenum,*,*
+LightTextureModeEXT,*,*, GLenum,*,*
+LightTexturePNameEXT,*,*, GLenum,*,*
+LineStipple,*,*, GLushort,*,*
+List,*,*, GLuint,*,*
+ListMode,*,*, GLenum,*,*
+ListNameType,*,*, GLenum,*,*
+ListParameterName,*,*, GLenum,*,*
+LogicOp,*,*, GLenum,*,*
+MapAttribParameterNV,*,*, GLenum,*,*
+MapParameterNV,*,*, GLenum,*,*
+MapTarget,*,*, GLenum,*,*
+MapTargetNV,*,*, GLenum,*,*
+MapTypeNV,*,*, GLenum,*,*
+MaskedColorIndexValueF,*,*, GLfloat,*,*
+MaskedColorIndexValueI,*,*, GLuint,*,*
+MaskedStencilValue,*,*, GLuint,*,*
+MaterialFace,*,*, GLenum,*,*
+MaterialParameter,*,*, GLenum,*,*
+MatrixIndexPointerTypeARB,*,*, GLenum,*,*
+MatrixMode,*,*, GLenum,*,*
+MatrixTransformNV,*,*, GLenum,*,*
+MeshMode1,*,*, GLenum,*,*
+MeshMode2,*,*, GLenum,*,*
+MinmaxTarget,*,*, GLenum,*,*
+MinmaxTargetEXT,*,*, GLenum,*,*
+NormalPointerType,*,*, GLenum,*,*
+NurbsCallback,*,*, GLenum,*,*
+NurbsObj,*,*, GLUnurbs*,*,*
+NurbsProperty,*,*, GLenum,*,*
+NurbsTrim,*,*, GLenum,*,*
+OcclusionQueryParameterNameNV,*,*, GLenum,*,*
+PixelCopyType,*,*, GLenum,*,*
+PixelFormat,*,*, GLenum,*,*
+PixelInternalFormat,*,*, GLenum,*,*
+PixelMap,*,*, GLenum,*,*
+PixelStoreParameter,*,*, GLenum,*,*
+PixelTexGenModeSGIX,*,*, GLenum,*,*
+PixelTexGenParameterNameSGIS,*,*, GLenum,*,*
+PixelTransferParameter,*,*, GLenum,*,*
+PixelTransformPNameEXT,*,*, GLenum,*,*
+PixelTransformTargetEXT,*,*, GLenum,*,*
+PixelType,*,*, GLenum,*,*
+PointParameterNameARB,*,*, GLenum,*,*
+PolygonMode,*,*, GLenum,*,*
+ProgramNV,*,*, GLuint,*,*
+ProgramCharacterNV,*,*, GLubyte,*,*
+ProgramParameterNV,*,*, GLenum,*,*
+ProgramParameterPName,*,*, GLenum,*,*
+QuadricCallback,*,*, GLenum,*,*
+QuadricDrawStyle,*,*, GLenum,*,*
+QuadricNormal,*,*, GLenum,*,*
+QuadricObj,*,*, GLUquadric*,*,*
+QuadricOrientation,*,*, GLenum,*,*
+ReadBufferMode,*,*, GLenum,*,*
+RenderbufferTarget,*,*, GLenum,*,*
+RenderingMode,*,*, GLenum,*,*
+ReplacementCodeSUN,*,*, GLuint,*,*
+ReplacementCodeTypeSUN,*,*, GLenum,*,*
+SamplePassARB,*,*, GLenum,*,*
+SamplePatternEXT,*,*, GLenum,*,*
+SamplePatternSGIS,*,*, GLenum,*,*
+SecondaryColorPointerTypeIBM,*,*, GLenum,*,*
+SelectName,*,*, GLuint,*,*
+SeparableTarget,*,*, GLenum,*,*
+SeparableTargetEXT,*,*, GLenum,*,*
+ShadingModel,*,*, GLenum,*,*
+SizeI,*,*, GLsizei,*,*
+SpriteParameterNameSGIX,*,*, GLenum,*,*
+StencilFunction,*,*, GLenum,*,*
+StencilFaceDirection,*,*, GLenum,*,*
+StencilOp,*,*, GLenum,*,*
+StencilValue,*,*, GLint,*,*
+String,*,*, const GLubyte *,*,*
+StringName,*,*, GLenum,*,*
+TangentPointerTypeEXT,*,*, GLenum,*,*
+TessCallback,*,*, GLenum,*,*
+TessContour,*,*, GLenum,*,*
+TessProperty,*,*, GLenum,*,*
+TesselatorObj,*,*, GLUtesselator*,*,*
+TexCoordPointerType,*,*, GLenum,*,*
+Texture,*,*, GLuint,*,*
+TextureComponentCount,*,*, GLint,*,*
+TextureCoordName,*,*, GLenum,*,*
+TextureEnvParameter,*,*, GLenum,*,*
+TextureEnvTarget,*,*, GLenum,*,*
+TextureFilterSGIS,*,*, GLenum,*,*
+TextureGenParameter,*,*, GLenum,*,*
+TextureNormalModeEXT,*,*, GLenum,*,*
+TextureParameterName,*,*, GLenum,*,*
+TextureTarget,*,*, GLenum,*,*
+TextureUnit,*,*, GLenum,*,*
+UInt16,*,*, GLushort,*,*
+UInt32,*,*, GLuint,*,*
+UInt8,*,*, GLubyte,*,*
+VertexAttribEnum,*,*, GLenum,*,*
+VertexAttribEnumNV,*,*, GLenum,*,*
+VertexAttribPointerTypeNV,*,*, GLenum,*,*
+VertexPointerType,*,*, GLenum,*,*
+VertexWeightPointerTypeEXT,*,*, GLenum,*,*
+Void,*,*, GLvoid,*,*
+VoidPointer,*,*, GLvoid*,*,*
+ConstVoidPointer,*,*, GLvoid* const,*,*
+WeightPointerTypeARB,*,*, GLenum,*,*
+WinCoord,*,*, GLint,*,*
+void,*,*, *,*,*
+ArrayObjectPNameATI,*,*, GLenum,*,*
+ArrayObjectUsageATI,*,*, GLenum,*,*,
+ConstFloat32,*,*, GLfloat,*,*
+ConstInt32,*,*, GLint,*,*
+ConstUInt32,*,*, GLuint,*,*
+ConstVoid,*,*, GLvoid,*,*
+DataTypeEXT,*,*, GLenum,*,*
+FragmentOpATI,*,*, GLenum,*,*
+GetTexBumpParameterATI,*,*, GLenum,*,*
+GetVariantValueEXT,*,*, GLenum,*,*
+ParameterRangeEXT,*,*, GLenum,*,*
+PreserveModeATI,*,*, GLenum,*,*
+ProgramFormatARB,*,*, GLenum,*,*
+ProgramTargetARB,*,*, GLenum,*,*
+ProgramTarget,*,*, GLenum,*,*
+ProgramPropertyARB,*,*, GLenum,*,*
+ProgramStringPropertyARB,*,*, GLenum,*,*
+ScalarType,*,*, GLenum,*,*
+SwizzleOpATI,*,*, GLenum,*,*
+TexBumpParameterATI,*,*, GLenum,*,*
+VariantCapEXT,*,*, GLenum,*,*
+VertexAttribPointerPropertyARB,*,*, GLenum,*,*
+VertexAttribPointerTypeARB,*,*, GLenum,*,*
+VertexAttribPropertyARB,*,*, GLenum,*,*
+VertexShaderCoordOutEXT,*,*, GLenum,*,*
+VertexShaderOpEXT,*,*, GLenum,*,*
+VertexShaderParameterEXT,*,*, GLenum,*,*
+VertexShaderStorageTypeEXT,*,*, GLenum,*,*
+VertexShaderTextureUnitParameter,*,*, GLenum,*,*
+VertexShaderWriteMaskEXT,*,*, GLenum,*,*
+VertexStreamATI,*,*, GLenum,*,*
+PNTrianglesPNameATI,*,*, GLenum,*,*
+# ARB_vertex_buffer_object types and core equivalents for new types
+BufferOffset,*,*, GLintptr,*,*
+BufferSize,*,*, GLsizeiptr,*,*
+BufferAccessARB,*,*, GLenum,*,*
+BufferOffsetARB,*,*, GLintptrARB,*,*
+BufferPNameARB,*,*, GLenum,*,*
+BufferPointerNameARB,*,*, GLenum,*,*
+BufferSizeARB,*,*, GLsizeiptrARB,*,*
+BufferTargetARB,*,*, GLenum,*,*
+BufferUsageARB,*,*, GLenum,*,*
+# APPLE_fence
+ObjectTypeAPPLE,*,*, GLenum,*,*
+# APPLE_vertex_array_range
+VertexArrayPNameAPPLE,*,*, GLenum,*,*
+# ATI_draw_buffers
+DrawBufferModeATI,*,*, GLenum,*,*
+# NV_half
+Half16NV,*,*, GLhalfNV,*,*
+# NV_pixel_data_range
+PixelDataRangeTargetNV,*,*, GLenum,*,*
+# Generic types for as-yet-unspecified enums
+TypeEnum,*,*, GLenum,*,*
+GLbitfield,*,*, GLbitfield,*,*
+GLenum,*,*, GLenum,*,*
+Int64,*,*, GLint64,*,*
+UInt64,*,*, GLuint64,*,*
+# Object handle & data pointers
+handleARB,*,*, GLhandleARB,*,*
+charARB,*,array, GLcharARB *,*,value
+charPointerARB,*,*, GLcharARB*,*,*
+sync,*,*, GLsync,*,*,
+# EXT_timer_query
+Int64EXT,*,*, GLint64EXT,*,*
+UInt64EXT,*,*, GLuint64EXT,*,*
+# EXT_direct_state_access
+FramebufferAttachment,*,*, GLenum,*,*
+FramebufferAttachmentParameterName,*,*, GLenum,*,*
+Framebuffer,*,*, GLuint,*,*
+FramebufferStatus,*,*, GLenum,*,*
+FramebufferTarget,*,*, GLenum,*,*
+GetFramebufferParameter,*,*, GLenum,*,*
+Intptr,*,*, GLintptr,*,*
+ProgramFormat,*,*, GLenum,*,*
+ProgramProperty,*,*, GLenum,*,*
+ProgramStringProperty,*,*, GLenum,*,*
+ProgramTarget,*,*, GLenum,*,*
+Renderbuffer,*,*, GLuint,*,*
+RenderbufferParameterName,*,*, GLenum,*,*
+Sizeiptr,*,*, GLsizeiptr,*,*
+TextureInternalFormat,*,*, GLenum,*,*
+VertexBufferObjectAccess,*,*, GLenum,*,*
+VertexBufferObjectParameter,*,*, GLenum,*,*
+VertexBufferObjectUsage,*,*, GLenum,*,*
+# ARB_map_buffer_range
+BufferAccessMask,*,*, GLbitfield,*,*
+# NV_explicit_multisample
+GetMultisamplePNameNV,*,*, GLenum,*,*
+SampleMaskNV,*,*, GLbitfield,*,*
--- /dev/null
+GLES2 enum:\r
+ ES_VERSION_2_0 = 1\r
+ DEPTH_BUFFER_BIT = 0x00000100\r
+ STENCIL_BUFFER_BIT = 0x00000400\r
+ COLOR_BUFFER_BIT = 0x00004000\r
+ FALSE = 0\r
+ TRUE = 1\r
+ POINTS = 0x0000\r
+ LINES = 0x0001\r
+ LINE_LOOP = 0x0002\r
+ LINE_STRIP = 0x0003\r
+ TRIANGLES = 0x0004\r
+ TRIANGLE_STRIP = 0x0005\r
+ TRIANGLE_FAN = 0x0006\r
+ ZERO = 0\r
+ ONE = 1\r
+ SRC_COLOR = 0x0300\r
+ ONE_MINUS_SRC_COLOR = 0x0301\r
+ SRC_ALPHA = 0x0302\r
+ ONE_MINUS_SRC_ALPHA = 0x0303\r
+ DST_ALPHA = 0x0304\r
+ ONE_MINUS_DST_ALPHA = 0x0305\r
+ DST_COLOR = 0x0306\r
+ ONE_MINUS_DST_COLOR = 0x0307\r
+ SRC_ALPHA_SATURATE = 0x0308\r
+ FUNC_ADD = 0x8006\r
+ BLEND_EQUATION = 0x8009\r
+ BLEND_EQUATION_RGB = 0x8009 /* same as BLEND_EQUATION */\r
+ BLEND_EQUATION_ALPHA = 0x883D\r
+ FUNC_SUBTRACT = 0x800A\r
+ FUNC_REVERSE_SUBTRACT = 0x800B\r
+ BLEND_DST_RGB = 0x80C8\r
+ BLEND_SRC_RGB = 0x80C9\r
+ BLEND_DST_ALPHA = 0x80CA\r
+ BLEND_SRC_ALPHA = 0x80CB\r
+ CONSTANT_COLOR = 0x8001\r
+ ONE_MINUS_CONSTANT_COLOR = 0x8002\r
+ CONSTANT_ALPHA = 0x8003\r
+ ONE_MINUS_CONSTANT_ALPHA = 0x8004\r
+ BLEND_COLOR = 0x8005\r
+ ARRAY_BUFFER = 0x8892\r
+ ELEMENT_ARRAY_BUFFER = 0x8893\r
+ ARRAY_BUFFER_BINDING = 0x8894\r
+ ELEMENT_ARRAY_BUFFER_BINDING = 0x8895\r
+ STREAM_DRAW = 0x88E0\r
+ STATIC_DRAW = 0x88E4\r
+ DYNAMIC_DRAW = 0x88E8\r
+ BUFFER_SIZE = 0x8764\r
+ BUFFER_USAGE = 0x8765\r
+ CURRENT_VERTEX_ATTRIB = 0x8626\r
+ FRONT = 0x0404\r
+ BACK = 0x0405\r
+ FRONT_AND_BACK = 0x0408\r
+ TEXTURE_2D = 0x0DE1\r
+ CULL_FACE = 0x0B44\r
+ BLEND = 0x0BE2\r
+ DITHER = 0x0BD0\r
+ STENCIL_TEST = 0x0B90\r
+ DEPTH_TEST = 0x0B71\r
+ SCISSOR_TEST = 0x0C11\r
+ POLYGON_OFFSET_FILL = 0x8037\r
+ SAMPLE_ALPHA_TO_COVERAGE = 0x809E\r
+ SAMPLE_COVERAGE = 0x80A0\r
+ NO_ERROR = 0\r
+ INVALID_ENUM = 0x0500\r
+ INVALID_VALUE = 0x0501\r
+ INVALID_OPERATION = 0x0502\r
+ OUT_OF_MEMORY = 0x0505\r
+ CW = 0x0900\r
+ CCW = 0x0901\r
+ LINE_WIDTH = 0x0B21\r
+ ALIASED_POINT_SIZE_RANGE = 0x846D\r
+ ALIASED_LINE_WIDTH_RANGE = 0x846E\r
+ CULL_FACE_MODE = 0x0B45\r
+ FRONT_FACE = 0x0B46\r
+ DEPTH_RANGE = 0x0B70\r
+ DEPTH_WRITEMASK = 0x0B72\r
+ DEPTH_CLEAR_VALUE = 0x0B73\r
+ DEPTH_FUNC = 0x0B74\r
+ STENCIL_CLEAR_VALUE = 0x0B91\r
+ STENCIL_FUNC = 0x0B92\r
+ STENCIL_FAIL = 0x0B94\r
+ STENCIL_PASS_DEPTH_FAIL = 0x0B95\r
+ STENCIL_PASS_DEPTH_PASS = 0x0B96\r
+ STENCIL_REF = 0x0B97\r
+ STENCIL_VALUE_MASK = 0x0B93\r
+ STENCIL_WRITEMASK = 0x0B98\r
+ STENCIL_BACK_FUNC = 0x8800\r
+ STENCIL_BACK_FAIL = 0x8801\r
+ STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802\r
+ STENCIL_BACK_PASS_DEPTH_PASS = 0x8803\r
+ STENCIL_BACK_REF = 0x8CA3\r
+ STENCIL_BACK_VALUE_MASK = 0x8CA4\r
+ STENCIL_BACK_WRITEMASK = 0x8CA5\r
+ VIEWPORT = 0x0BA2\r
+ SCISSOR_BOX = 0x0C10\r
+ COLOR_CLEAR_VALUE = 0x0C22\r
+ COLOR_WRITEMASK = 0x0C23\r
+ UNPACK_ALIGNMENT = 0x0CF5\r
+ PACK_ALIGNMENT = 0x0D05\r
+ MAX_TEXTURE_SIZE = 0x0D33\r
+ MAX_VIEWPORT_DIMS = 0x0D3A\r
+ SUBPIXEL_BITS = 0x0D50\r
+ RED_BITS = 0x0D52\r
+ GREEN_BITS = 0x0D53\r
+ BLUE_BITS = 0x0D54\r
+ ALPHA_BITS = 0x0D55\r
+ DEPTH_BITS = 0x0D56\r
+ STENCIL_BITS = 0x0D57\r
+ POLYGON_OFFSET_UNITS = 0x2A00\r
+ POLYGON_OFFSET_FACTOR = 0x8038\r
+ TEXTURE_BINDING_2D = 0x8069\r
+ SAMPLE_BUFFERS = 0x80A8\r
+ SAMPLES = 0x80A9\r
+ SAMPLE_COVERAGE_VALUE = 0x80AA\r
+ SAMPLE_COVERAGE_INVERT = 0x80AB\r
+ NUM_COMPRESSED_TEXTURE_FORMATS= 0x86A2\r
+ COMPRESSED_TEXTURE_FORMATS = 0x86A3\r
+ DONT_CARE = 0x1100\r
+ FASTEST = 0x1101\r
+ NICEST = 0x1102\r
+ GENERATE_MIPMAP_HINT = 0x8192\r
+ BYTE = 0x1400\r
+ UNSIGNED_BYTE = 0x1401\r
+ SHORT = 0x1402\r
+ UNSIGNED_SHORT = 0x1403\r
+ INT = 0x1404\r
+ UNSIGNED_INT = 0x1405\r
+ FLOAT = 0x1406\r
+ FIXED = 0x140C\r
+ DEPTH_COMPONENT = 0x1902\r
+ ALPHA = 0x1906\r
+ RGB = 0x1907\r
+ RGBA = 0x1908\r
+ LUMINANCE = 0x1909\r
+ LUMINANCE_ALPHA = 0x190A\r
+ UNSIGNED_SHORT_4_4_4_4 = 0x8033\r
+ UNSIGNED_SHORT_5_5_5_1 = 0x8034\r
+ UNSIGNED_SHORT_5_6_5 = 0x8363\r
+ FRAGMENT_SHADER = 0x8B30\r
+ VERTEX_SHADER = 0x8B31\r
+ MAX_VERTEX_ATTRIBS = 0x8869\r
+ MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB\r
+ MAX_VARYING_VECTORS = 0x8DFC\r
+ MAX_COMBINED_TEXTURE_IMAGE_UNITS= 0x8B4D\r
+ MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C\r
+ MAX_TEXTURE_IMAGE_UNITS = 0x8872\r
+ MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD\r
+ SHADER_TYPE = 0x8B4F\r
+ DELETE_STATUS = 0x8B80\r
+ LINK_STATUS = 0x8B82\r
+ VALIDATE_STATUS = 0x8B83\r
+ ATTACHED_SHADERS = 0x8B85\r
+ ACTIVE_UNIFORMS = 0x8B86\r
+ ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87\r
+ ACTIVE_ATTRIBUTES = 0x8B89\r
+ ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A\r
+ SHADING_LANGUAGE_VERSION = 0x8B8C\r
+ CURRENT_PROGRAM = 0x8B8D\r
+ NEVER = 0x0200\r
+ LESS = 0x0201\r
+ EQUAL = 0x0202\r
+ LEQUAL = 0x0203\r
+ GREATER = 0x0204\r
+ NOTEQUAL = 0x0205\r
+ GEQUAL = 0x0206\r
+ ALWAYS = 0x0207\r
+ KEEP = 0x1E00\r
+ REPLACE = 0x1E01\r
+ INCR = 0x1E02\r
+ DECR = 0x1E03\r
+ INVERT = 0x150A\r
+ INCR_WRAP = 0x8507\r
+ DECR_WRAP = 0x8508\r
+ VENDOR = 0x1F00\r
+ RENDERER = 0x1F01\r
+ VERSION = 0x1F02\r
+ EXTENSIONS = 0x1F03\r
+ NEAREST = 0x2600\r
+ LINEAR = 0x2601\r
+ NEAREST_MIPMAP_NEAREST = 0x2700\r
+ LINEAR_MIPMAP_NEAREST = 0x2701\r
+ NEAREST_MIPMAP_LINEAR = 0x2702\r
+ LINEAR_MIPMAP_LINEAR = 0x2703\r
+ TEXTURE_MAG_FILTER = 0x2800\r
+ TEXTURE_MIN_FILTER = 0x2801\r
+ TEXTURE_WRAP_S = 0x2802\r
+ TEXTURE_WRAP_T = 0x2803\r
+ TEXTURE = 0x1702\r
+ TEXTURE_CUBE_MAP = 0x8513\r
+ TEXTURE_BINDING_CUBE_MAP = 0x8514\r
+ TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515\r
+ TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516\r
+ TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517\r
+ TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518\r
+ TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519\r
+ TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A\r
+ MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C\r
+ TEXTURE0 = 0x84C0\r
+ TEXTURE1 = 0x84C1\r
+ TEXTURE2 = 0x84C2\r
+ TEXTURE3 = 0x84C3\r
+ TEXTURE4 = 0x84C4\r
+ TEXTURE5 = 0x84C5\r
+ TEXTURE6 = 0x84C6\r
+ TEXTURE7 = 0x84C7\r
+ TEXTURE8 = 0x84C8\r
+ TEXTURE9 = 0x84C9\r
+ TEXTURE10 = 0x84CA\r
+ TEXTURE11 = 0x84CB\r
+ TEXTURE12 = 0x84CC\r
+ TEXTURE13 = 0x84CD\r
+ TEXTURE14 = 0x84CE\r
+ TEXTURE15 = 0x84CF\r
+ TEXTURE16 = 0x84D0\r
+ TEXTURE17 = 0x84D1\r
+ TEXTURE18 = 0x84D2\r
+ TEXTURE19 = 0x84D3\r
+ TEXTURE20 = 0x84D4\r
+ TEXTURE21 = 0x84D5\r
+ TEXTURE22 = 0x84D6\r
+ TEXTURE23 = 0x84D7\r
+ TEXTURE24 = 0x84D8\r
+ TEXTURE25 = 0x84D9\r
+ TEXTURE26 = 0x84DA\r
+ TEXTURE27 = 0x84DB\r
+ TEXTURE28 = 0x84DC\r
+ TEXTURE29 = 0x84DD\r
+ TEXTURE30 = 0x84DE\r
+ TEXTURE31 = 0x84DF\r
+ ACTIVE_TEXTURE = 0x84E0\r
+ REPEAT = 0x2901\r
+ CLAMP_TO_EDGE = 0x812F\r
+ MIRRORED_REPEAT = 0x8370\r
+ FLOAT_VEC2 = 0x8B50\r
+ FLOAT_VEC3 = 0x8B51\r
+ FLOAT_VEC4 = 0x8B52\r
+ INT_VEC2 = 0x8B53\r
+ INT_VEC3 = 0x8B54\r
+ INT_VEC4 = 0x8B55\r
+ BOOL = 0x8B56\r
+ BOOL_VEC2 = 0x8B57\r
+ BOOL_VEC3 = 0x8B58\r
+ BOOL_VEC4 = 0x8B59\r
+ FLOAT_MAT2 = 0x8B5A\r
+ FLOAT_MAT3 = 0x8B5B\r
+ FLOAT_MAT4 = 0x8B5C\r
+ SAMPLER_2D = 0x8B5E\r
+ SAMPLER_CUBE = 0x8B60\r
+ VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622\r
+ VERTEX_ATTRIB_ARRAY_SIZE = 0x8623\r
+ VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624\r
+ VERTEX_ATTRIB_ARRAY_TYPE = 0x8625\r
+ VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A\r
+ VERTEX_ATTRIB_ARRAY_POINTER = 0x8645\r
+ VERTEX_ATTRIB_ARRAY_BUFFER_BINDING= 0x889F\r
+ IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A\r
+ IMPLEMENTATION_COLOR_READ_FORMAT= 0x8B9B\r
+ COMPILE_STATUS = 0x8B81\r
+ INFO_LOG_LENGTH = 0x8B84\r
+ SHADER_SOURCE_LENGTH = 0x8B88\r
+ SHADER_COMPILER = 0x8DFA\r
+ SHADER_BINARY_FORMATS = 0x8DF8\r
+ NUM_SHADER_BINARY_FORMATS = 0x8DF9\r
+ LOW_FLOAT = 0x8DF0\r
+ MEDIUM_FLOAT = 0x8DF1\r
+ HIGH_FLOAT = 0x8DF2\r
+ LOW_INT = 0x8DF3\r
+ MEDIUM_INT = 0x8DF4\r
+ HIGH_INT = 0x8DF5\r
+ FRAMEBUFFER = 0x8D40\r
+ RENDERBUFFER = 0x8D41\r
+ RGBA4 = 0x8056\r
+ RGB5_A1 = 0x8057\r
+ RGB565 = 0x8D62\r
+ DEPTH_COMPONENT16 = 0x81A5\r
+ STENCIL_INDEX = 0x1901\r
+ STENCIL_INDEX8 = 0x8D48\r
+ RENDERBUFFER_WIDTH = 0x8D42\r
+ RENDERBUFFER_HEIGHT = 0x8D43\r
+ RENDERBUFFER_INTERNAL_FORMAT = 0x8D44\r
+ RENDERBUFFER_RED_SIZE = 0x8D50\r
+ RENDERBUFFER_GREEN_SIZE = 0x8D51\r
+ RENDERBUFFER_BLUE_SIZE = 0x8D52\r
+ RENDERBUFFER_ALPHA_SIZE = 0x8D53\r
+ RENDERBUFFER_DEPTH_SIZE = 0x8D54\r
+ RENDERBUFFER_STENCIL_SIZE = 0x8D55\r
+ FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0\r
+ FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1\r
+ FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2\r
+ FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE= 0x8CD3\r
+ COLOR_ATTACHMENT0 = 0x8CE0\r
+ DEPTH_ATTACHMENT = 0x8D00\r
+ STENCIL_ATTACHMENT = 0x8D20\r
+ NONE = 0\r
+ FRAMEBUFFER_COMPLETE = 0x8CD5\r
+ FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6\r
+ FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT= 0x8CD7\r
+ FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9\r
+ FRAMEBUFFER_UNSUPPORTED = 0x8CDD\r
+ FRAMEBUFFER_BINDING = 0x8CA6\r
+ RENDERBUFFER_BINDING = 0x8CA7\r
+ MAX_RENDERBUFFER_SIZE = 0x84E8\r
+ INVALID_FRAMEBUFFER_OPERATION = 0x0506\r
--- /dev/null
+/* $Id$
+
+This file is part of gldbg
+Copyright © 2010 Mikko Rasa, Mikkosoft Productions
+Distributed under the GPL
+*/
+
+#include "arraysize.h"
+
+int typesize(GLenum type)
+{
+ switch(type)
+ {
+ case GL_BYTE: return sizeof(GLbyte);
+ case GL_SHORT: return sizeof(GLshort);
+ case GL_INT: return sizeof(GLint);
+ case GL_UNSIGNED_BYTE: return sizeof(GLubyte);
+ case GL_UNSIGNED_SHORT: return sizeof(GLushort);
+ case GL_UNSIGNED_INT: return sizeof(GLuint);
+ case GL_FLOAT: return sizeof(GLfloat);
+ // Short and byte packed types are broken
+ default: return 1;
+ }
+}
+
+int formatsize(GLenum format)
+{
+ switch(format)
+ {
+ case GL_STENCIL_INDEX: return 1;
+ case GL_DEPTH_COMPONENT: return 1;
+ case GL_ALPHA: return 1;
+ case GL_RGB: return 3;
+ case GL_RGBA: return 4;
+ case GL_LUMINANCE: return 1;
+ case GL_LUMINANCE_ALPHA: return 2;
+ default: return 1;
+ }
+}
+
+int paramsize(GLenum pname)
+{
+ switch(pname)
+ {
+ // Texture
+ case GL_TEXTURE_WRAP_S: return 1;
+ case GL_TEXTURE_WRAP_T: return 1;
+ case GL_TEXTURE_MIN_FILTER: return 1;
+ case GL_TEXTURE_MAG_FILTER: return 1;
+ default: return 1;
+ }
+}
+
+int buffersize(GLenum buffer)
+{
+ return 1;
+}
--- /dev/null
+/* $Id$
+
+This file is part of gldbg
+Copyright © 2010 Mikko Rasa, Mikkosoft Productions
+Distributed under the GPL
+*/
+
+#include <dlfcn.h>
+#include "arraysize.h"
+#include "functions.h"
+#include "glwrap.h"
+#include "opengl.h"
+
+GLenum cur_error = GL_NO_ERROR;
+
+static void check_error()
+{
+ GLenum (*orig_glGetError)() = 0;
+ GLenum code;
+
+ if(!orig_glGetError)
+ orig_glGetError = glsym("glGetError");
+
+ code = orig_glGetError();
+ if(code!=GL_NO_ERROR)
+ {
+ begin_packet(FUNC_GLDERROR);
+ write_int(code);
+ send_packet();
+
+ if(cur_error==GL_NO_ERROR)
+ cur_error = code;
+ }
+}
+
+GLenum APIENTRY glGetError()
+{
+ GLenum ret = cur_error;
+ cur_error = GL_NO_ERROR;
+
+ begin_packet(FUNC_GLGETERROR);
+ write_int(ret);
+ send_packet();
+
+ return ret;
+}
+
+void (*eglGetProcAddress(const char *procname))(void)
+{
+ void *handle = 0;
+ void (*ret)() = 0;
+
+ if(glsym((const char *)procname))
+ {
+ handle = dlopen(NULL, RTLD_LAZY);
+ ret = dlsym(handle, (const char *)procname);
+ }
+
+ begin_packet(FUNC_EGLGETPROCADDRESS);
+ write_pointer(ret);
+ write_string((const char *)procname);
+ send_packet();
+
+ return ret;
+}
+
+#include "gensrc/glwrap.funcs"
--- /dev/null
+/* $Id$
+
+This file is part of gldbg
+Copyright © 2010 Mikko Rasa, Mikkosoft Productions
+Distributed under the GPL
+*/
+
+#include <EGL/egl.h>
+#include <GLES2/gl2.h>
!handcode glGetError
!handcode glXGetProcAddress
!handcode glXGetProcAddressARB
+!handcode eglGetProcAddress
wl('%s APIENTRY %s(%s)', ret.ctype, func.name, ", ".join([p.ctype+" "+p.name for p in params]))
wl('{')
wl(' static %s (*orig)(%s);', ret.ctype, ", ".join([p.ctype for p in params]))