%% -*- erlang -*- % general options {skip, %% Skip these functions [ %%% GLU "glu", %% The ones we want is specified in keep "gluQuad", "gluBegin", "gluEnd", "gluNew", "gluDelete", %% "gluTess", %% "gluGetNurbs", %% "gluGetTess", %%% GL "glProgramCallbackMESA", "glGetProgramRegisterfvMESA", "glGetPointerv", "glGetBufferPointerv", "glGetVertexAttribPointerv", "glGetSeparableFilter", "glMultiDrawElements", "glMapBuffer", "glUnmapBuffer", "glEdgeFlagPointerEXT", "glWeightPointerARB", "glMatrixIndexPointerARB", "glPixelTransformParameter", %% OpengGL 3.0 %"glGetTransformFeedbackVarying", %% Jobbiga %"glTransformFeedbackVaryings", %% EXT %% By default skip these extensions "SGIX","SGIS","NV","ATI","AMD","SUN","SUNX","GREMEDY", "HP","IBM","INTEL","APPLE","3DFX","PGI","EXT"]}. %% Exceptions to the above {keep, [ %% GL_EXT_framebuffer_object "glIsRenderbufferEXT", "glBindRenderbufferEXT", "glDeleteRenderbuffersEXT", "glGenRenderbuffersEXT", "glRenderbufferStorageEXT", "glGetRenderbufferParameterivEXT", "glIsFramebufferEXT", "glBindFramebufferEXT", "glDeleteFramebuffersEXT", "glGenFramebuffersEXT", "glCheckFramebufferStatusEXT", "glFramebufferTexture1DEXT", "glFramebufferTexture2DEXT", "glFramebufferTexture3DEXT", "glFramebufferRenderbufferEXT", "glGetFramebufferAttachmentParameterivEXT", "glGenerateMipmapEXT", %% GL_ATI_separate_stencil "glStencilOpSeparateATI", "glStencilFuncSeparateATI", %% GL_EXT_depth_bounds_test "glDepthBoundsEXT", %% GL_EXT_blend_equation_separate "glBlendEquationSeparateEXT", %% GL_EXT_stencil_clear_tag "glStencilClearTagEXT", %% GL_EXT_framebuffer_blit "glBlitFramebufferEXT", %% GL_EXT_framebuffer_multisample "glRenderbufferStorageMultisampleEXT", "gluBuild", % mipmaps* "gluCheckExtension", "gluErrorString", "gluGetString", "gluLookAt", "gluOrtho2D", "gluPerspective", "gluPickMatrix", "gluScaleImage", "gluNewQuadric", "gluDeleteQuadric", "gluQuadricTexture", "gluQuadricOrientation", "gluQuadricNormals", "gluQuadricDrawStyle", "gluDisk", "gluCylinder", "gluPartialDisk", "gluSphere", "gluProject", "gluUnProject" ]}. {vector, [{"glMultiTexCoord",1}, {"glConvolutionParameter",2},{"glVertexAttrib",1}, {"glVertexAttribI",1}]}. %% function specific information {"glBitmap", {"bitmap", {base,idx_binary}}}. {"glPolygonStipple", {"mask", binary}}. {"glGetPolygonStipple", [{"mask", [{binary, 128},out, {single,true}]}]}. {"glClipPlane", {"equation", {single,{tuple,4}}}}. {"glGetClipPlane", {"equation", {single,{tuple,4}}}}. {"glLoadMatrix", {"m", {single,{tuple,matrix}}}}. {"glMultMatrix", {"m", {single,{tuple,matrix}}}}. {"glCallLists", [{"n", {c_only, {length, "lists"}}}, {"type", {c_only, {constant, "GL_UNSIGNED_INT"}}}, {"lists", [{single,list},{type,"GLuint"}, {base,int}]}]}. {"glLight", {"params", {single,{tuple,undefined}}}}. {"glGetLight", {"params", {single, {tuple, 4}}}}. {"glMaterial", {"params", {single,{tuple,undefined}}}}. {"glGetMaterial", {"params", {single, {tuple, 4}}}}. {"glPixelMap", {"values", binary}}. {"glGetPixelMap", {"values", [{base,memory}, in]}}. {"glTexGen", {"params",{single,{tuple,undefined}}}}. {"glGetTexGen", {"params",{single,{tuple,4}}}}. {"glTexEnv", {"params",{single,{tuple,undefined}}}}. {"glGetTexEnv", {"params",{single,{tuple,4}}}}. {"glTexParameter", {"params",{single,{tuple,undefined}}}}. {"glGetTexParameter", {"params",{single,{tuple,4}}}}. {"glGetTexLevelParameter", {"params", {single,{tuple,1}}}}. {"glGenTextures", [{"textures", {single,{list,"n","n"}}}]}. {"glDeleteTextures", [{"n", {c_only, {length, "textures"}}}, {"textures", [{single,list}]}]}. {"glPrioritizeTextures", [{"n", {c_only, {length, "textures"}}}, {"textures", [{single,list}]}, {"priorities", [{single,list}]}]}. {"glAreTexturesResident", [{"n", {c_only,{length,"textures"}}}, {"textures", [{single,list}]}, {"residences", [{single,{list,"texturesLen","texturesLen"}}]}]}. {"glMap", {"points", binary}}. {"glGetMap", {"v", [{base,memory},in]}}. {"glFog", {"params", {single,{tuple,undefined}}}}. {"glColorTableParameter", {"params",{single,{tuple,4}}}}. {"glGetColorTable", {"table", [{base,memory},in]}}. {"glGetColorTableParameter", {"params", {single,{tuple,4}}}}. {"glGetHistogram", {"values", [{base,memory}, in]}}. {"glGetHistogramParameter", {"params", {single,{tuple,1}}}}. {"glGetMinmax", {"values", [{base,memory}, in]}}. {"glGetMinmaxParameter", {"params", {single,{tuple,1}}}}. {"glGetConvolutionFilter", {"image", [{base,memory}, in]}}. {"glConvolutionParameter", {"params", {single,{tuple,undefined}} }}. {"glGetConvolutionParameter", {"params", {single,{tuple,4}}}}. {"glRect", [{"v1", {single,{tuple,2}}},{"v2", {single,{tuple,2}}}]}. {"glGetString", {"result", {single,{list,null}}}}. {"glGetBooleanv", {"params", {single,{list,16}}}}. {"glGetDoublev", {"params", {single,{list,16}}}}. {"glGetFloatv", {"params", {single,{list,16}}}}. {"glGetIntegerv", {"params", {single,{list,16}}}}. {"glFeedbackBuffer", {"buffer", [{base,memory}, in]}}. {"glSelectBuffer", {"buffer", [{base,memory}, in]}}. {"glReadPixels", {"pixels", [{base,memory}, in]}}. {"glGetTexImage", {"pixels", [{base,memory}, in]}}. {"glGetCompressedTexImage", {"img", [{base,memory}, in]}}. {"glLoadTransposeMatrix", {"m", {single,{tuple,matrix}}}}. {"glMultTransposeMatrix", {"m",{single,{tuple,matrix}}}}. {"glMultiDrawArrays", [{"first", [in,{single,list}]}, {"count", [in,{single,list}]}, {"primcount", {c_only, {length,"first"}}}]}. {"glGenQueries", {"ids", {single,{list, "n", "n"}}}}. {"glGetQueryiv", {"params", {single, true}}}. {"glGetQueryObject", {"params", {single, true}}}. {"glPointParameter", {"params", {single,{tuple,undefined}} }}. {"glDeleteQueries", [{"n",{c_only,{length,"ids"}}},{"ids",[{single,list}]}]}. {"glGenBuffers", {"buffers",[{single,{list,"n","n"}}]}}. {"glGetBufferSubData", {"data", [{base,memory}, in]}}. {"glGetBufferParameteriv", {"params", {single,true}}}. {"glDeleteBuffers", [{"n",{c_only,{length,"buffers"}}},{"buffers",[{single,list}]}]}. {"glDrawBuffers", [{"n",{c_only,{length,"bufs"}}},{"bufs",[{single,list}]}]}. {"glShaderSource", [{"length", {c_only,{constant,"NULL"}}}, {"count", {c_only,{length,"string"}}}, {"string", {single,list}}]}. {"glGetActiveAttribARB", [{"length",[skip,{single, true}]}, {"size", {single, true}}, {"type", {single, true}}, {"name", {single, {list,"maxLength","length"}}} ]}. {"glGetActiveAttrib", [{"length",[skip,{single, true}]}, {"size", {single, true}}, {"type", {single, true}}, {"name", {single, {list,"bufSize","length"}}} ]}. {"glGetActiveUniformARB", [{"length",[skip,{single, true}]}, {"size", {single, true}}, {"type", {single, true}}, {"name", {single, {list,"maxLength","length"}}} ]}. {"glGetActiveUniform", [{"length",[skip,{single, true}]}, {"size", {single, true}}, {"type", {single, true}}, {"name", {single, {list,"bufSize","length"}}} ]}. {"glGetAttachedShaders", [{"count", [skip,{single,true}]}, {"obj", {single, {list,"maxCount","count"}}} ]}. {"glGetProgramiv", {"params", {single,true}}}. {"glGetProgramInfoLog", [{"length", [skip,{single,true}]}, {"infoLog", {single, {list,"bufSize","length"}}} ]}. {"glGetShaderiv", {"params", {single,true}}}. {"glGetShaderInfoLog", [{"length", [skip,{single,true}]}, {"infoLog", {single, {list,"bufSize","length"}}} ]}. {"glGetShaderSourceARB", [{"length", [skip,{single,true}]}, {"source", {single, {list,"maxLength","length"}}} ]}. {"glGetShaderSource", [{"length", [skip,{single,true}]}, {"source", {single, {list,"bufSize","length"}}} ]}. {"glGetUniform", {"params", {single,{tuple,16}}}}. {"glGetVertexAttrib", {"params", {single,{tuple,4}}}}. {"glUniform1", [{"count",{c_only,{length,"value"}}}, {"value", [{single,list}]}]}. {"glUniform2", [{"count",{c_only,{length,"value"}}}, {"value", [{single,{tuple_list,2}}]}]}. {"glUniform3", [{"count",{c_only,{length,"value"}}}, {"value", [{single,{tuple_list,3}}]}]}. {"glUniform4", [{"count",{c_only,{length,"value"}}}, {"value", [{single,{tuple_list,4}}]}]}. {"glUniformMatrix2fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,4}}]}]}. {"glUniformMatrix3fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,9}}]}]}. {"glUniformMatrix4fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,16}}]}]}. {"glUniformMatrix2x3fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,6}}]}]}. {"glUniformMatrix3x2fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,6}}]}]}. {"glUniformMatrix2x4fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,8}}]}]}. {"glUniformMatrix4x2fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,8}}]}]}. {"glUniformMatrix3x4fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,12}}]}]}. {"glUniformMatrix4x3fv", [{"count",{c_only,{length,"value"}}},{"value", [{single,{tuple_list,12}}]}]}. {"glVertexAttrib4", {"v", {single, {tuple,4}}}}. {"glWeight", [{"size",{c_only,{length,"weights"}}}, {"weights", {single,list}}]}. {"glMatrixIndex", [{"size",{c_only,{length,"indices"}}}, {"indices", {single,list}}]}. {"glProgramStringARB", [{"len",{c_only,{constant,"stringLen"}}}, {"string",[{base,string},{single,true}]}]}. {"glGetProgramStringARB", {"string", [in,{base,memory}]}}. {"glGenProgramsARB", {"programs", {single,{list,"n","n"}}}}. {"glDeleteProgramsARB", [{"n",{c_only,{length,"programs"}}},{"programs",{single,list}}]}. {"glProgramEnvParameter4", {"params", {single,{tuple,4}}}}. {"glGetProgramEnvParameter", {"params", {single,{tuple,4}}}}. {"glProgramLocalParameter", {"params", {single,{tuple,4}}}}. {"glGetProgramLocalParameter", {"params", {single,{tuple,4}}}}. {"glGetObjectParameter", {"params", {single,true}}}. {"glGetInfoLogARB", [{"length", [skip,{single,true}]}, {"infoLog", {single, {list,"maxLength","length"}}} ]}. {"glGetAttachedObjectsARB", [{"count", [skip,{single,true}]}, {"obj", {single, {list,"maxCount","count"}}} ]}. {"glGenRenderbuffersEXT", {"renderbuffers", {single,{list,"n","n"}}}}. {"glDeleteRenderbuffersEXT",[{"n",{c_only,{length,"renderbuffers"}}},{"renderbuffers",{single,list}}]}. {"glDeleteFramebuffersEXT", [{"n",{c_only,{length,"framebuffers"}}},{"framebuffers",{single,list}}]}. {"glGetRenderbufferParameterivEXT", {"params", {single,true}}}. {"glGetFramebufferAttachmentParameterivEXT", {"params",{single,true}}}. {"glGenFramebuffersEXT", {"framebuffers",{single,{list,"n","n"}}}}. {"gluPickMatrix", {"viewport", [in, {single, {tuple, 4}}]}}. {"gluProject", [{"model", {single, {tuple, matrix}}}, {"proj", {single, {tuple, matrix}}}, {"view", {single, {tuple, 4}}}, {"winX", [{single,true},out]}, {"winY", [{single,true},out]}, {"winZ", [{single,true},out]}]}. {"gluUnProject", [{"model", {single, {tuple, matrix}}}, {"proj", {single, {tuple, matrix}}}, {"view", {single, {tuple, 4}}}, {"objX",[{single,true},out]}, {"objY",[{single,true},out]}, {"objZ",[{single,true},out]}, {"objW",[{single,true},out]}]}. {"gluBuild", {"data", [binary]}}. {"gluScaleImage", [{"dataIn", [in, binary]}, {"dataOut", [in, {base, memory}]}]}. {"gluCheckExtension", [{"extName", {single, list}}, {"extString", {single, list}}]}. {"gluErrorString", {"result", {single, {list,null}}}}. {"gluGetString", {"result", {single, {list,null}}}}. {"gluDeleteQuadric", {"quad", in}}. {"gluQuadric", {"quad", in}}. {"gluSphere", {"quad", in}}. {"gluPartialDisk", {"quad", in}}. {"gluDisk", {"quad", in}}. {"gluCylinder", {"quad", in}}. %% OpenGL 3.0 {"glGetBooleani_v", {"data", {single,{list,16}}}}. {"glGetIntegeri_v", {"data", {single,{list,16}}}}. {"glTransformFeedbackVaryings", [{"count", {c_only,{length,"varyings"}}}, {"varyings", [{base,string}, {single,list}]}]}. {"glGetTransformFeedbackVarying", [{"size", {single, true}},{"type", {single, true}}, {"length", [skip, {single, true}]}, {"name", {single, {list,"bufSize","length"}}}]}. {"glGenRenderbuffers", {"renderbuffers", {single,{list,"n","n"}}}}. {"glGenFramebuffers", {"framebuffers",{single,{list,"n","n"}}}}. {"glGetRenderbufferParameteriv", {"params", {single,true}}}. {"glGetFramebufferAttachmentParameteriv", {"params",{single,true}}}. {"glGenVertexArrays", {"arrays", {single, {list,"n","n"}}}}. {"glGenRenderbuffers", {"renderbuffers", {single,{list,"n","n"}}}}. {"glDeleteRenderbuffers",[{"n",{c_only,{length,"renderbuffers"}}}, {"renderbuffers",{single,list}}]}. {"glDeleteFramebuffers", [{"n",{c_only,{length,"framebuffers"}}}, {"framebuffers",{single,list}}]}. {"glVertexAttribI4", {"v", {single, {tuple,4}}}}. %% {"glVertexAttribI4", {"v", }}. %% {"glVertexAttribI4ubv", {"v", }}. %% {"glVertexAttribI4usv", {"v", }}. {"glClearBuffer", {"value", {single, {tuple, undefined}}}}. {"glDeleteVertexArrays", [{"n",{c_only,{length,"arrays"}}},{"arrays", {single, list}}]}. {"glGetUniformIndices", [{"uniformCount", {c_only, {length, "uniformNames"}}}, {"uniformNames", [{base,string}, {single,list}]}, {"uniformIndices", [out, {single,{list, "uniformNamesLen", "uniformNamesLen"}}]}]}. {"glGetActiveUniformsiv", [{"uniformCount", {c_only, {length, "uniformIndices"}}}, {"uniformIndices", {single,list}}, {"params", [out, {single, {list, "uniformIndicesLen", "uniformIndicesLen"}}]}]}. {"glGetActiveUniformName", [{"length",[skip,{single, true}]}, {"uniformName", {single, {list,"bufSize","length"}}}]}. {"glGetActiveUniformBlockName", [{"length",[skip,{single, true}]}, {"uniformBlockName", {single, {list,"bufSize","length"}}}]}. {"glGetActiveUniformBlockiv", {"params", [in, {base,memory}]}}.