serenity/Userland/Libraries/LibGL/GLAPI.json
Jelle Raaijmakers ee4039caf8 LibGL: Stop unnecessarily casting to float
If the `GLContext`'s internal state uses a `float`, it makes no sense
casting to and from `double`s.
2023-01-01 23:33:50 +01:00

1180 lines
33 KiB
JSON

{
"ActiveTexture": {
"arguments": [
{"type": "GLenum", "name": "texture"}
],
"variants": {
"api_suffixes": ["", "ARB"]
}
},
"AlphaFunc": {
"arguments": [
{"type": "GLenum", "name": "func"},
{"type": "GLclampf", "name": "ref"}
]
},
"ArrayElement": {
"arguments": [
{"type": "GLint", "name": "i"}
]
},
"AttachShader": {
"arguments": [
{"type": "GLuint", "name": "program"},
{"type": "GLuint", "name": "shader"}
]
},
"Begin": {
"arguments": [
{"type": "GLenum", "name": "mode"}
]
},
"BindBuffer": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLuint", "name": "buffer"}
]
},
"BindTexture": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLuint", "name": "texture"}
]
},
"Bitmap": {
"arguments": [
{"type": "GLsizei", "name": ["width", "height"]},
{"type": "GLfloat", "name": ["xorig", "yorig", "xmove", "ymove"]},
{"type": "GLubyte const*", "name": "bitmap"}
]
},
"BlendFunc": {
"arguments": [
{"type": "GLenum", "name": ["sfactor", "dfactor"]}
]
},
"BufferData": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLsizeiptr", "name": "size"},
{"type": "void const*", "name": "data"},
{"type": "GLenum", "name": "usage"}
]
},
"BufferSubData": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLintptr", "name": "offset"},
{"type": "GLsizeiptr", "name": "size"},
{"type": "void const*", "name": "data"}
]
},
"CallList": {
"arguments": [
{"type": "GLuint", "name": "list"}
]
},
"CallLists": {
"arguments": [
{"type": "GLsizei", "name": "n"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "lists"}
]
},
"Clear": {
"arguments": [
{"type": "GLbitfield", "name": "mask"}
]
},
"ClearColor": {
"arguments": [
{"type": "GLclampf", "name": ["red", "green", "blue", "alpha"]}
]
},
"ClearDepth": {
"arguments": [
{"type": "GLdouble", "name": "depth", "cast_to": "GLfloat"}
]
},
"ClearDepthf": {
"arguments": [
{"type": "GLfloat", "name": "depth"}
],
"implementation": "clear_depth"
},
"ClearStencil": {
"arguments": [
{"type": "GLint", "name": "s"}
]
},
"ClientActiveTexture": {
"arguments": [
{"type": "GLenum", "name": "target"}
],
"variants": {
"api_suffixes": ["", "ARB"]
}
},
"ClipPlane": {
"arguments": [
{"type": "GLenum", "name": "plane"},
{"type": "GLdouble const*", "name": "equation"}
]
},
"Color": {
"arguments": [
{"name": ["red", "green", "blue", "alpha"], "cast_to": "GLfloat"}
],
"variants": {
"argument_counts": [3, 4],
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
"convert_range": true,
"pointer_argument": "v",
"types": {
"b": {},
"bv": {},
"d": {},
"dv": {},
"f": {},
"fv": {},
"i": {},
"iv": {},
"s": {},
"sv": {},
"ub": {},
"ubv": {},
"ui": {},
"uiv": {},
"us": {},
"usv": {}
}
}
},
"ColorMask": {
"arguments": [
{"type": "GLboolean", "name": ["red", "green", "blue", "alpha"]}
]
},
"ColorMaterial": {
"arguments": [
{"type": "GLenum", "name": "face"},
{"type": "GLenum", "name": "mode"}
]
},
"ColorPointer": {
"arguments": [
{"type": "GLint", "name": "size"},
{"type": "GLenum", "name": "type"},
{"type": "GLsizei", "name": "stride"},
{"type": "void const*", "name": "pointer"}
]
},
"CompileShader": {
"arguments": [
{"type": "GLuint", "name": "shader"}
]
},
"CopyTexImage2D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLenum", "name": "internalformat"},
{"type": "GLint", "name": ["x", "y"]},
{"type": "GLsizei", "name": ["width", "height"]},
{"type": "GLint", "name": "border"}
],
"implementation": "copy_tex_image_2d"
},
"CopyTexSubImage2D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": ["level", "xoffset", "yoffset", "x", "y"]},
{"type": "GLsizei", "name": ["width", "height"]}
],
"implementation": "copy_tex_sub_image_2d"
},
"CreateProgram": {
"return_type": "GLuint"
},
"CreateShader": {
"arguments": [
{"type": "GLenum", "name": "shader_type"}
],
"return_type": "GLuint"
},
"CullFace": {
"arguments": [
{"type": "GLenum", "name": "mode"}
]
},
"DeleteBuffers": {
"arguments": [
{"type": "GLsizei", "name": "n"},
{"type": "GLuint const*", "name": "buffers"}
]
},
"DeleteLists": {
"arguments": [
{"type": "GLuint", "name": "list"},
{"type": "GLsizei", "name": "range"}
]
},
"DeleteProgram": {
"arguments": [
{"type": "GLuint", "name": "program"}
]
},
"DeleteShader": {
"arguments": [
{"type": "GLuint", "name": "shader"}
]
},
"DeleteTextures": {
"arguments": [
{"type": "GLsizei", "name": "n"},
{"type": "GLuint const*", "name": "textures"}
]
},
"DepthFunc": {
"arguments": [
{"type": "GLenum", "name": "func"}
]
},
"DepthMask": {
"arguments": [
{"type": "GLboolean", "name": "flag"}
]
},
"DepthRange": {
"arguments": [
{"type": "GLdouble", "name": ["nearVal", "farVal"]}
]
},
"DepthRangef": {
"arguments": [
{"type": "GLfloat", "name": ["nearVal", "farVal"], "cast_to": "GLdouble"}
],
"implementation": "depth_range"
},
"Disable": {
"arguments": [
{"type": "GLenum", "name": "cap"}
]
},
"DisableClientState": {
"arguments": [
{"type": "GLenum", "name": "cap"}
]
},
"DrawArrays": {
"arguments": [
{"type": "GLenum", "name": "mode"},
{"type": "GLint", "name": "first"},
{"type": "GLsizei", "name": "count"}
]
},
"DrawBuffer": {
"arguments": [
{"type": "GLenum", "name": "buffer"}
]
},
"DrawElements": {
"arguments": [
{"type": "GLenum", "name": "mode"},
{"type": "GLsizei", "name": "count"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "indices"}
]
},
"DrawPixels": {
"arguments": [
{"type": "GLsizei", "name": ["width", "height"]},
{"type": "GLenum", "name": ["format", "type"]},
{"type": "void const*", "name": "data"}
]
},
"Enable": {
"arguments": [
{"type": "GLenum", "name": "cap"}
]
},
"EnableClientState": {
"arguments": [
{"type": "GLenum", "name": "cap"}
]
},
"End": {},
"EndList": {},
"EvalCoord": {
"arguments": [
{"name": ["u", "v"]}
],
"unimplemented": true,
"variants": {
"argument_counts": [1, 2],
"argument_defaults": ["0.", "0."],
"pointer_argument": "u",
"types": {
"d": {},
"dv": {},
"f": {},
"fv": {}
}
}
},
"EvalMesh1": {
"arguments": [
{"type": "GLenum", "name": "mode"},
{"type": "GLint", "name": ["i1", "i2"]}
],
"unimplemented": true
},
"EvalMesh2": {
"arguments": [
{"type": "GLenum", "name": "mode"},
{"type": "GLint", "name": ["i1", "i2", "j1", "j2"]}
],
"unimplemented": true
},
"EvalPoint": {
"arguments": [
{"name": ["i", "j"]}
],
"unimplemented": true,
"variants": {
"argument_counts": [1, 2],
"argument_defaults": ["0", "0"],
"types": {
"i": {}
}
}
},
"Finish": {},
"Flush": {},
"Fog": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"name": "param"}
],
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"f": {"implementation": "fogf"},
"fv": {"implementation": "fogfv"},
"i": {"implementation": "fogi"},
"iv": {"unimplemented": true}
}
}
},
"FrontFace": {
"arguments": [
{"type": "GLenum", "name": "mode"}
]
},
"Frustum": {
"arguments": [
{"type": "GLdouble", "name": ["left", "right", "bottom", "top", "nearVal", "farVal"]}
]
},
"GenBuffers": {
"arguments": [
{"type": "GLsizei", "name": "n"},
{"type": "GLuint*", "name": "buffers"}
]
},
"GenLists": {
"arguments": [
{"type": "GLsizei", "name": "range"}
],
"return_type": "GLuint"
},
"GenTextures": {
"arguments": [
{"type": "GLsizei", "name": "n"},
{"type": "GLuint*", "name": "textures"}
]
},
"GetBooleanv": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"type": "GLboolean*", "name": "data"}
]
},
"GetClipPlane": {
"arguments": [
{"type": "GLenum", "name": "plane"},
{"type": "GLdouble*", "name": "equation"}
]
},
"GetDoublev": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"type": "GLdouble*", "name": "data"}
]
},
"GetError": {
"return_type": "GLenum"
},
"GetFloatv": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"type": "GLfloat*", "name": "data"}
]
},
"GetIntegerv": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"type": "GLint*", "name": "data"}
]
},
"GetLight": {
"arguments": [
{"type": "GLenum", "name": "light"},
{"type": "GLenum", "name": "pname"},
{"name": "params"},
{"type": "GLenum", "expression": "@variant_gl_type@"}
],
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"fv!": {},
"iv!": {}
}
}
},
"GetMaterial": {
"arguments": [
{"type": "GLenum", "name": "face"},
{"type": "GLenum", "name": "pname"},
{"name": "params"},
{"type": "GLenum", "expression": "@variant_gl_type@"}
],
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"fv!": {},
"iv!": {}
}
}
},
"GetProgramiv": {
"arguments": [
{"type": "GLuint", "name": "program"},
{"type": "GLenum", "name": "pname"},
{"type": "GLint*", "name": "params"}
],
"implementation": "get_program"
},
"GetShaderiv": {
"arguments": [
{"type": "GLuint", "name": "shader"},
{"type": "GLenum", "name": "pname"},
{"type": "GLint*", "name": "params"}
],
"implementation": "get_shader"
},
"GetString": {
"arguments": [
{"type": "GLenum", "name": "name"}
],
"return_type": "GLubyte const*"
},
"GetTexImage": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLenum", "name": ["format", "type"]},
{"type": "void*", "name": "pixels"}
]
},
"GetTexLevelParameter": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLenum", "name": "pname"},
{"name": "params"}
],
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"fv!": {"unimplemented": true},
"iv!": {"implementation": "get_tex_parameter_integerv"}
}
}
},
"Hint": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLenum", "name": "mode"}
]
},
"IsEnabled": {
"arguments": [
{"type": "GLenum", "name": "cap"}
],
"return_type": "GLboolean"
},
"IsList": {
"arguments": [
{"type": "GLuint", "name": "list"}
],
"return_type": "GLboolean"
},
"IsTexture": {
"arguments": [
{"type": "GLuint", "name": "texture"}
],
"return_type": "GLboolean"
},
"Light": {
"arguments": [
{"type": "GLenum", "name": "light"},
{"type": "GLenum", "name": "pname"},
{"name": "param", "cast_to": "GLfloat"}
],
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"f": {},
"fv": {"implementation": "lightfv"},
"i": {},
"iv": {"implementation": "lightiv"},
"x": {},
"xv": {"implementation": "lightiv"}
}
},
"implementation": "lightf"
},
"LightModel": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"name": "param"},
{"type": "GLenum", "expression": "@variant_gl_type@"}
],
"implementation": "light_modelv",
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"fv": {},
"iv": {}
}
}
},
"LightModelf": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"type": "GLfloat", "name": "x"},
{"name": ["y", "z", "w"], "expression": "0.f"}
],
"implementation": "light_model"
},
"LightModeli": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"type": "GLint", "name": "x", "cast_to": "GLfloat"},
{"name": ["y", "z", "w"], "expression": "0.f"}
],
"implementation": "light_model"
},
"LineWidth": {
"arguments": [
{"type": "GLfloat", "name": "width"}
]
},
"LinkProgram": {
"arguments": [
{"type": "GLuint", "name": "program"}
]
},
"ListBase": {
"arguments": [
{"type": "GLuint", "name": "base"}
]
},
"LoadIdentity": {},
"LoadMatrixd": {
"arguments": [
{"type": "GLdouble const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
],
"implementation": "load_matrix"
},
"LoadMatrixf": {
"arguments": [
{"type": "GLfloat const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
],
"implementation": "load_matrix"
},
"Map1d": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLdouble","name": ["u1", "u2"]},
{"type": "GLint", "name": ["stride", "order"]},
{"type": "GLdouble const*", "name": "points"}
],
"unimplemented": true
},
"Map1f": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLfloat","name": ["u1", "u2"]},
{"type": "GLint", "name": ["stride", "order"]},
{"type": "GLfloat const*", "name": "points"}
],
"unimplemented": true
},
"Map2d": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLdouble","name": ["u1", "u2"]},
{"type": "GLint", "name": ["ustride", "uorder"]},
{"type": "GLdouble","name": ["v1", "v2"]},
{"type": "GLint", "name": ["vstride", "vorder"]},
{"type": "GLdouble const*", "name": "points"}
],
"unimplemented": true
},
"Map2f": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLfloat","name": ["u1", "u2"]},
{"type": "GLint", "name": ["ustride", "uorder"]},
{"type": "GLfloat","name": ["v1", "v2"]},
{"type": "GLint", "name": ["vstride", "vorder"]},
{"type": "GLfloat const*", "name": "points"}
],
"unimplemented": true
},
"MapGrid1": {
"arguments": [
{"type": "GLint", "name": "un"},
{"name": ["u1", "u2"]}
],
"unimplemented": true,
"variants": {
"types": {
"d": {},
"f": {}
}
}
},
"MapGrid2": {
"arguments": [
{"type": "GLint", "name": "un"},
{"name": ["u1", "u2"]},
{"type": "GLint", "name": "vn"},
{"name": ["v1", "v2"]}
],
"unimplemented": true,
"variants": {
"types": {
"d": {},
"f": {}
}
}
},
"Material": {
"arguments": [
{"type": "GLenum", "name": "face"},
{"type": "GLenum", "name": "pname"},
{"name": "param", "cast_to": "GLfloat"}
],
"implementation": "materialf",
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"f": {},
"fv": {
"implementation": "materialfv"
},
"i": {},
"iv": {
"implementation": "materialiv"
}
}
}
},
"MatrixMode": {
"arguments": [
{"type": "GLenum", "name": "mode"}
]
},
"MultiTexCoord": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"name": ["s", "t", "r", "q"], "cast_to": "GLfloat"}
],
"variants": {
"api_suffixes": ["", "ARB"],
"argument_counts": [1, 2, 3, 4],
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
"pointer_argument": "v",
"types": {
"d": {},
"dv": {},
"f": {},
"fv": {},
"i": {},
"iv": {},
"s": {},
"sv": {}
}
}
},
"MultMatrixd": {
"arguments": [
{"type": "GLdouble const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
],
"implementation": "mult_matrix"
},
"MultMatrixf": {
"arguments": [
{"type": "GLfloat const*", "name": "m", "expression": "GL::transpose_input_matrix(@argument_name@)"}
],
"implementation": "mult_matrix"
},
"NewList": {
"arguments": [
{"type": "GLuint", "name": "list"},
{"type": "GLenum", "name": "mode"}
]
},
"Normal3": {
"arguments": [
{"name": ["nx", "ny", "nz"], "cast_to": "GLfloat"}
],
"implementation": "normal",
"variants": {
"convert_range": true,
"pointer_argument": "v",
"types": {
"b": {},
"bv": {},
"d": {},
"dv": {},
"f": {},
"fv": {},
"i": {},
"iv": {},
"s": {},
"sv": {}
}
}
},
"NormalPointer": {
"arguments": [
{"type": "GLenum", "name": "type"},
{"type": "GLsizei", "name": "stride"},
{"type": "void const*", "name": "pointer"}
]
},
"Ortho": {
"arguments": [
{"type": "GLdouble", "name": ["left", "right", "bottom", "top", "nearVal", "farVal"]}
]
},
"PixelStore": {
"arguments": [
{"type": "GLenum", "name": "pname"},
{"name": "param", "cast_to": "GLint"}
],
"implementation": "pixel_storei",
"variants": {
"types": {
"f": {},
"i": {}
}
}
},
"PointSize": {
"arguments": [
{"type": "GLfloat", "name": "size"}
]
},
"PolygonMode": {
"arguments": [
{"type": "GLenum", "name": ["face", "mode"]}
]
},
"PolygonOffset": {
"arguments": [
{"type": "GLfloat", "name": ["factor", "units"]}
]
},
"PopAttrib": {},
"PopMatrix": {},
"PushAttrib": {
"arguments": [
{"type": "GLbitfield", "name": "mask"}
]
},
"PushMatrix": {},
"RasterPos": {
"arguments": [
{"name": ["x", "y", "z", "w"], "cast_to": "GLfloat"}
],
"variants": {
"argument_counts": [2, 3, 4],
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
"pointer_argument": "v",
"types": {
"d": {},
"dv": {},
"f": {},
"fv": {},
"i": {},
"iv": {},
"s": {},
"sv": {}
}
}
},
"ReadBuffer": {
"arguments": [
{"type": "GLenum", "name": "mode"}
]
},
"ReadPixels": {
"arguments": [
{"type": "GLint", "name": "x"},
{"type": "GLint", "name": "y"},
{"type": "GLsizei", "name": "width"},
{"type": "GLsizei", "name": "height"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void*", "name": "data"}
]
},
"Rect": {
"arguments": [
{"name": ["x1", "y1", "x2", "y2"], "cast_to": "GLdouble"}
],
"variants": {
"types": {
"d": {},
"f": {},
"i": {},
"s": {}
}
}
},
"Rotate": {
"arguments": [
{"name": ["angle", "x", "y", "z"], "cast_to": "GLfloat"}
],
"variants": {
"types": {
"d": {},
"f": {}
}
}
},
"Scale": {
"arguments": [
{"name": ["x", "y", "z"], "cast_to": "GLfloat"}
],
"variants": {
"types": {
"d": {},
"f": {}
}
}
},
"Scissor": {
"arguments": [
{"type": "GLint", "name": ["x", "y"]},
{"type": "GLsizei", "name": ["width", "height"]}
]
},
"ShadeModel": {
"arguments": [
{"type": "GLenum", "name": "mode"}
]
},
"ShaderSource": {
"arguments": [
{"type": "GLuint", "name": "shader"},
{"type": "GLsizei", "name": "count"},
{"type": "GLchar const**", "name": "string"},
{"type": "GLint const*", "name": "length"}
]
},
"StencilFunc": {
"arguments": [
{"expression": "GL_FRONT_AND_BACK"},
{"type": "GLenum", "name": "func"},
{"type": "GLint", "name": "ref"},
{"type": "GLuint", "name": "mask"}
],
"implementation": "stencil_func_separate"
},
"StencilFuncSeparate": {
"arguments": [
{"type": "GLenum", "name": ["face", "func"]},
{"type": "GLint", "name": "ref"},
{"type": "GLuint", "name": "mask"}
]
},
"StencilMask": {
"arguments": [
{"expression": "GL_FRONT_AND_BACK"},
{"type": "GLuint", "name": "mask"}
],
"implementation": "stencil_mask_separate"
},
"StencilMaskSeparate": {
"arguments": [
{"type": "GLenum", "name": "face"},
{"type": "GLuint", "name": "mask"}
]
},
"StencilOp": {
"arguments": [
{"expression": "GL_FRONT_AND_BACK"},
{"type": "GLenum", "name": ["sfail", "dpfail", "dppass"]}
],
"implementation": "stencil_op_separate"
},
"StencilOpSeparate": {
"arguments": [
{"type": "GLenum", "name": ["face", "sfail", "dpfail", "dppass"]}
]
},
"TexCoord": {
"arguments": [
{"name": ["s", "t", "r", "q"], "cast_to": "GLfloat"}
],
"variants": {
"argument_counts": [1, 2, 3, 4],
"argument_defaults": ["0.f", "0.f", "0.f", "1.f"],
"pointer_argument": "v",
"types": {
"d": {},
"dv": {},
"f": {},
"fv": {},
"i": {},
"iv": {},
"s": {},
"sv": {}
}
}
},
"TexCoordPointer": {
"arguments": [
{"type": "GLint", "name": "size"},
{"type": "GLenum", "name": "type"},
{"type": "GLsizei", "name": "stride"},
{"type": "void const*", "name": "pointer"}
]
},
"TexEnv": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLenum", "name": "pname"},
{"name": "param"},
{"type": "GLenum", "expression": "@variant_gl_type@"}
],
"implementation": "tex_envv",
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"fv": {},
"iv": {}
}
}
},
"TexEnvf": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLenum", "name": "pname"},
{"type": "GLfloat", "name": "x", "expression": "{@argument_name@, 0.f, 0.f, 0.f}"}
],
"implementation": "tex_env"
},
"TexEnvi": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLenum", "name": "pname"},
{"type": "GLint", "name": "x", "expression": "{static_cast<float>(@argument_name@), 0.f, 0.f, 0.f}"}
],
"implementation": "tex_env"
},
"TexGen": {
"arguments": [
{"type": "GLenum", "name": "coord"},
{"type": "GLenum", "name": "pname"},
{"name": "param", "cast_to": "GLint"}
],
"variants": {
"argument_counts": [1],
"pointer_argument": "params",
"types": {
"d": {},
"dv": {"unimplemented": true},
"f": {},
"fv": {"implementation": "tex_gen_floatv"},
"i": {},
"iv": {"unimplemented": true}
}
}
},
"TexImage1D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLint", "name": "internalFormat"},
{"type": "GLsizei", "name": "width"},
{"type": "GLint", "name": "border"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "data"}
],
"unimplemented": true
},
"TexImage2D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLint", "name": "internalFormat"},
{"type": "GLsizei", "name": "width"},
{"type": "GLsizei", "name": "height"},
{"type": "GLint", "name": "border"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "data"}
],
"implementation": "tex_image_2d"
},
"TexImage3D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLint", "name": "internalFormat"},
{"type": "GLsizei", "name": "width"},
{"type": "GLsizei", "name": "height"},
{"type": "GLsizei", "name": "depth"},
{"type": "GLint", "name": "border"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "data"}
],
"unimplemented": true
},
"TexParameter": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLenum", "name": "pname"},
{"name": "param"}
],
"variants": {
"pointer_argument": "params",
"types": {
"f": {},
"fv": {"unimplemented": true},
"i": {},
"iv": {"unimplemented": true}
}
}
},
"TexSubImage1D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLint", "name": "xoffset"},
{"type": "GLsizei", "name": "width"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "pixels"}
],
"unimplemented": true
},
"TexSubImage2D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLint", "name": "xoffset"},
{"type": "GLint", "name": "yoffset"},
{"type": "GLsizei", "name": "width"},
{"type": "GLsizei", "name": "height"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "pixels"}
],
"implementation": "tex_sub_image_2d"
},
"TexSubImage3D": {
"arguments": [
{"type": "GLenum", "name": "target"},
{"type": "GLint", "name": "level"},
{"type": "GLint", "name": "xoffset"},
{"type": "GLint", "name": "yoffset"},
{"type": "GLint", "name": "zoffset"},
{"type": "GLsizei", "name": "width"},
{"type": "GLsizei", "name": "height"},
{"type": "GLsizei", "name": "depth"},
{"type": "GLenum", "name": "format"},
{"type": "GLenum", "name": "type"},
{"type": "void const*", "name": "pixels"}
],
"unimplemented": true
},
"Translate": {
"arguments": [
{"name": ["x", "y", "z"], "cast_to": "GLfloat"}
],
"variants": {
"types": {
"d": {},
"f": {}
}
}
},
"UseProgram": {
"arguments": [
{"type": "GLuint", "name": "program"}
]
},
"Vertex": {
"arguments": [
{"name": ["x", "y", "z", "w"], "cast_to": "GLdouble"}
],
"variants": {
"argument_counts": [2, 3, 4],
"argument_defaults": ["0.", "0.", "0.", "1."],
"pointer_argument": "v",
"types": {
"d": {},
"dv": {},
"f": {},
"fv": {},
"i": {},
"iv": {},
"s": {},
"sv": {}
}
}
},
"VertexPointer": {
"arguments": [
{"type": "GLint", "name": "size"},
{"type": "GLenum", "name": "type"},
{"type": "GLsizei", "name": "stride"},
{"type": "void const*", "name": "pointer"}
]
},
"Viewport": {
"arguments": [
{"type": "GLint", "name": ["x", "y"]},
{"type": "GLsizei", "name": ["width", "height"]}
]
}
}