diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt new file mode 100644 index 00000000..fde48d9b --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt @@ -0,0 +1,492 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.AMD + +/** + * @author squid233 + * @since 0.1.0 + */ +fun amd() { + file( + "BlendMinmaxFactor", AMD, "GL_AMD_blend_minmax_factor", + "GL_FACTOR_MIN_AMD" to "0x901C", + "GL_FACTOR_MAX_AMD" to "0x901D" + ) + file("DebugOutput", AMD, "GL_AMD_debug_output") { + "GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"("0x9143") + "GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"("0x9144") + "GL_DEBUG_LOGGED_MESSAGES_AMD"("0x9145") + "GL_DEBUG_SEVERITY_HIGH_AMD"("0x9146") + "GL_DEBUG_SEVERITY_MEDIUM_AMD"("0x9147") + "GL_DEBUG_SEVERITY_LOW_AMD"("0x9148") + "GL_DEBUG_CATEGORY_API_ERROR_AMD"("0x9149") + "GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD"("0x914A") + "GL_DEBUG_CATEGORY_DEPRECATION_AMD"("0x914B") + "GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD"("0x914C") + "GL_DEBUG_CATEGORY_PERFORMANCE_AMD"("0x914D") + "GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD"("0x914E") + "GL_DEBUG_CATEGORY_APPLICATION_AMD"("0x914F") + "GL_DEBUG_CATEGORY_OTHER_AMD"("0x9150") + "glDebugMessageEnableAMD"( + void, + GLenum("category"), + GLenum("severity"), + GLsizei("count"), + address("ids", "const GLuint *"), + GLboolean("enabled") + ) + "glDebugMessageInsertAMD"( + void, + GLenum("category"), + GLenum("severity"), + GLuint("id"), + GLsizei("length"), + address("buf", "const GLchar *") + ) + ("glDebugMessageCallbackAMD"(void, address("callback", "GLDEBUGPROCAMD"), address("userParam", "void *"))) { + "glDebugMessageCallbackAMD"( + void, + "glDebugMessageCallbackAMD(callback.address(arena), userParam);", + arena("arena"), + Type("GLDebugProcAMD", null)("callback"), + address("userParam", "void *") + ) + } + "glGetDebugMessageLogAMD"( + GLuint, + GLuint("count"), + GLsizei("bufSize"), + address("categories", "GLenum *"), + address("severities", "GLenum *"), + address("ids", "GLuint *"), + address("lengths", "GLsizei *"), + address("message", "GLchar *") + ) + } + file( + "DepthClampSeparate", AMD, "GL_AMD_depth_clamp_separate", + "GL_DEPTH_CLAMP_NEAR_AMD" to "0x901E", + "GL_DEPTH_CLAMP_FAR_AMD" to "0x901F" + ) + file("DrawBuffersBlend", AMD, "GL_AMD_draw_buffers_blend") { + "glBlendFuncIndexedAMD"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) + "glBlendFuncSeparateIndexedAMD"( + void, + GLuint("buf"), + GLenum("srcRGB"), + GLenum("dstRGB"), + GLenum("srcAlpha"), + GLenum("dstAlpha") + ) + "glBlendEquationIndexedAMD"(void, GLuint("buf"), GLenum("mode")) + "glBlendEquationSeparateIndexedAMD"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) + } + file("FramebufferMultisampleAdvanced", AMD, "GL_AMD_framebuffer_multisample_advanced") { + "GL_RENDERBUFFER_STORAGE_SAMPLES_AMD"("0x91B2") + "GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD"("0x91B3") + "GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD"("0x91B4") + "GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD"("0x91B5") + "GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B6") + "GL_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B7") + "glRenderbufferStorageMultisampleAdvancedAMD"( + void, + GLenum("target"), + GLsizei("samples"), + GLsizei("storageSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glNamedRenderbufferStorageMultisampleAdvancedAMD"( + void, + GLuint("renderbuffer"), + GLsizei("samples"), + GLsizei("storageSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + } + file("FramebufferSamplePositions", AMD, "GL_AMD_framebuffer_sample_positions") { + "GL_SUBSAMPLE_DISTANCE_AMD"("0x883F") + "GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD"("0x91AE") + "GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD"("0x91AF") + "GL_ALL_PIXELS_AMD"("0xFFFFFFFF") + "glFramebufferSamplePositionsfvAMD"( + void, + GLenum("target"), + GLuint("numsamples"), + GLuint("pixelindex"), + address("values", "const GLfloat *") + ) + "glNamedFramebufferSamplePositionsfvAMD"( + void, + GLuint("framebuffer"), + GLuint("numsamples"), + GLuint("pixelindex"), + address("values", "const GLfloat *") + ) + "glGetFramebufferParameterfvAMD"( + void, + GLenum("target"), + GLenum("pname"), + GLuint("numsamples"), + GLuint("pixelindex"), + GLsizei("size"), + address("values", "GLfloat *") + ) + "glGetNamedFramebufferParameterfvAMD"( + void, + GLuint("framebuffer"), + GLenum("pname"), + GLuint("numsamples"), + GLuint("pixelindex"), + GLsizei("size"), + address("values", "GLfloat *") + ) + } + file( + "GpuShaderHalfFloat", AMD, "GL_AMD_gpu_shader_half_float", + "GL_FLOAT16_NV" to "0x8FF8", + "GL_FLOAT16_VEC2_NV" to "0x8FF9", + "GL_FLOAT16_VEC3_NV" to "0x8FFA", + "GL_FLOAT16_VEC4_NV" to "0x8FFB", + "GL_FLOAT16_MAT2_AMD" to "0x91C5", + "GL_FLOAT16_MAT3_AMD" to "0x91C6", + "GL_FLOAT16_MAT4_AMD" to "0x91C7", + "GL_FLOAT16_MAT2x3_AMD" to "0x91C8", + "GL_FLOAT16_MAT2x4_AMD" to "0x91C9", + "GL_FLOAT16_MAT3x2_AMD" to "0x91CA", + "GL_FLOAT16_MAT3x4_AMD" to "0x91CB", + "GL_FLOAT16_MAT4x2_AMD" to "0x91CC", + "GL_FLOAT16_MAT4x3_AMD" to "0x91CD" + ) + file("GpuShaderInt64", AMD, "GL_AMD_gpu_shader_int64") { + "GL_INT64_NV"("0x140E") + "GL_UNSIGNED_INT64_NV"("0x140F") + "GL_INT8_NV"("0x8FE0") + "GL_INT8_VEC2_NV"("0x8FE1") + "GL_INT8_VEC3_NV"("0x8FE2") + "GL_INT8_VEC4_NV"("0x8FE3") + "GL_INT16_NV"("0x8FE4") + "GL_INT16_VEC2_NV"("0x8FE5") + "GL_INT16_VEC3_NV"("0x8FE6") + "GL_INT16_VEC4_NV"("0x8FE7") + "GL_INT64_VEC2_NV"("0x8FE9") + "GL_INT64_VEC3_NV"("0x8FEA") + "GL_INT64_VEC4_NV"("0x8FEB") + "GL_UNSIGNED_INT8_NV"("0x8FEC") + "GL_UNSIGNED_INT8_VEC2_NV"("0x8FED") + "GL_UNSIGNED_INT8_VEC3_NV"("0x8FEE") + "GL_UNSIGNED_INT8_VEC4_NV"("0x8FEF") + "GL_UNSIGNED_INT16_NV"("0x8FF0") + "GL_UNSIGNED_INT16_VEC2_NV"("0x8FF1") + "GL_UNSIGNED_INT16_VEC3_NV"("0x8FF2") + "GL_UNSIGNED_INT16_VEC4_NV"("0x8FF3") + "GL_UNSIGNED_INT64_VEC2_NV"("0x8FF5") + "GL_UNSIGNED_INT64_VEC3_NV"("0x8FF6") + "GL_UNSIGNED_INT64_VEC4_NV"("0x8FF7") + "glUniform1i64NV"(void, GLint("location"), GLint64EXT("x")) + "glUniform2i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y")) + "glUniform3i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z")) + "glUniform4i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z"), GLint64EXT("w")) + "glUniform1i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform2i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform3i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform4i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform1ui64NV"(void, GLint("location"), GLuint64EXT("x")) + "glUniform2ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) + "glUniform3ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y"), GLuint64EXT("z")) + "glUniform4ui64NV"( + void, + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glUniform1ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform2ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform3ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform4ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glGetUniformi64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLint64EXT *")) + "glGetUniformui64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLuint64EXT *")) + "glProgramUniform1i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x")) + "glProgramUniform2i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x"), GLint64EXT("y")) + "glProgramUniform3i64NV"( + void, + GLuint("program"), + GLint("location"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z") + ) + "glProgramUniform4i64NV"( + void, + GLuint("program"), + GLint("location"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z"), + GLint64EXT("w") + ) + "glProgramUniform1i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform2i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform3i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform4i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform1ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x")) + "glProgramUniform2ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) + "glProgramUniform3ui64NV"( + void, + GLuint("program"), + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z") + ) + "glProgramUniform4ui64NV"( + void, + GLuint("program"), + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glProgramUniform1ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform2ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform3ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform4ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + } + file("InterleavedElements", AMD, "GL_AMD_interleaved_elements") { + "GL_VERTEX_ELEMENT_SWIZZLE_AMD"("0x91A4") + "GL_VERTEX_ID_SWIZZLE_AMD"("0x91A5") + "glVertexAttribParameteriAMD"(void, GLuint("index"), GLenum("pname"), GLint("param")) + } + file("MultiDrawIndirect", AMD, "GL_AMD_multi_draw_indirect") { + "glMultiDrawArraysIndirectAMD"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("primcount"), + GLsizei("stride") + ) + "glMultiDrawElementsIndirectAMD"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("primcount"), + GLsizei("stride") + ) + } + file("NameGenDelete", AMD, "GL_AMD_name_gen_delete") { + "GL_DATA_BUFFER_AMD"("0x9151") + "GL_PERFORMANCE_MONITOR_AMD"("0x9152") + "GL_QUERY_OBJECT_AMD"("0x9153") + "GL_VERTEX_ARRAY_OBJECT_AMD"("0x9154") + "GL_SAMPLER_OBJECT_AMD"("0x9155") + "glGenNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "GLuint *")) + "glDeleteNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "const GLuint *")) + "glIsNameAMD"(GLboolean, GLenum("identifier"), GLuint("name")) + } + file("OcclusionQueryEvent", AMD, "GL_AMD_occlusion_query_event") { + "GL_OCCLUSION_QUERY_EVENT_MASK_AMD"("0x874F") + "GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD"("0x00000001") + "GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD"("0x00000002") + "GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD"("0x00000004") + "GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD"("0x00000008") + "GL_QUERY_ALL_EVENT_BITS_AMD"("0xFFFFFFFF") + "glQueryObjectParameteruiAMD"(void, GLenum("target"), GLuint("id"), GLenum("pname"), GLuint("param")) + } + file("PerformanceMonitor", AMD, "GL_AMD_performance_monitor") { + "GL_COUNTER_TYPE_AMD"("0x8BC0") + "GL_COUNTER_RANGE_AMD"("0x8BC1") + "GL_UNSIGNED_INT64_AMD"("0x8BC2") + "GL_PERCENTAGE_AMD"("0x8BC3") + "GL_PERFMON_RESULT_AVAILABLE_AMD"("0x8BC4") + "GL_PERFMON_RESULT_SIZE_AMD"("0x8BC5") + "GL_PERFMON_RESULT_AMD"("0x8BC6") + "glGetPerfMonitorGroupsAMD"( + void, + address("numGroups", "GLint *"), + GLsizei("groupsSize"), + address("groups", "GLuint *") + ) + "glGetPerfMonitorCountersAMD"( + void, + GLuint("group"), + address("numCounters", "GLint *"), + address("maxActiveCounters", "GLint *"), + GLsizei("counterSize"), + address("counters", "GLuint *") + ) + "glGetPerfMonitorGroupStringAMD"( + void, + GLuint("group"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("groupString", "GLchar *") + ) + "glGetPerfMonitorCounterStringAMD"( + void, + GLuint("group"), + GLuint("counter"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("counterString", "GLchar *") + ) + "glGetPerfMonitorCounterInfoAMD"( + void, + GLuint("group"), + GLuint("counter"), + GLenum("pname"), + address("data", "void *") + ) + "glGenPerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) + "glDeletePerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) + "glSelectPerfMonitorCountersAMD"( + void, + GLuint("monitor"), + GLboolean("enable"), + GLuint("group"), + GLint("numCounters"), + address("counterList", "GLuint *") + ) + "glBeginPerfMonitorAMD"(void, GLuint("monitor")) + "glEndPerfMonitorAMD"(void, GLuint("monitor")) + "glGetPerfMonitorCounterDataAMD"( + void, + GLuint("monitor"), + GLenum("pname"), + GLsizei("dataSize"), + address("data", "GLuint *"), + address("bytesWritten", "GLint *") + ) + } + file("PinnedMemory", AMD, "GL_AMD_pinned_memory", "GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD" to "0x9160") + file( + "QueryBufferObject", AMD, "GL_AMD_query_buffer_object", + "GL_QUERY_BUFFER_AMD" to "0x9192", + "GL_QUERY_BUFFER_BINDING_AMD" to "0x9193", + "GL_QUERY_RESULT_NO_WAIT_AMD" to "0x9194" + ) + file("SamplePositions", AMD, "GL_AMD_sample_positions") { + "glSetMultisamplefvAMD"(void, GLenum("pname"), GLuint("index"), address("val", "const GLfloat *")) + } + file("SparseTexture", AMD, "GL_AMD_sparse_texture") { + "GL_VIRTUAL_PAGE_SIZE_X_AMD"("0x9195") + "GL_VIRTUAL_PAGE_SIZE_Y_AMD"("0x9196") + "GL_VIRTUAL_PAGE_SIZE_Z_AMD"("0x9197") + "GL_MAX_SPARSE_TEXTURE_SIZE_AMD"("0x9198") + "GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"("0x9199") + "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"("0x919A") + "GL_MIN_SPARSE_LEVEL_AMD"("0x919B") + "GL_MIN_LOD_WARNING_AMD"("0x919C") + "GL_TEXTURE_STORAGE_SPARSE_BIT_AMD"("0x00000001") + "glTexStorageSparseAMD"( + void, + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("layers"), + GLbitfield("flags") + ) + "glTextureStorageSparseAMD"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("layers"), + GLbitfield("flags") + ) + } + file("StencilOperationExtended", AMD, "GL_AMD_stencil_operation_extended") { + "GL_SET_AMD"("0x874A") + "GL_REPLACE_VALUE_AMD"("0x874B") + "GL_STENCIL_OP_VALUE_AMD"("0x874C") + "GL_STENCIL_BACK_OP_VALUE_AMD"("0x874D") + "glStencilOpValueAMD"(void, GLenum("face"), GLuint("value")) + } + file("TransformFeedback4", AMD, "GL_AMD_transform_feedback4", "GL_STREAM_RASTERIZATION_AMD" to "0x91A0") + file("VertexShaderTessellator", AMD, "GL_AMD_vertex_shader_tessellator") { + "GL_SAMPLER_BUFFER_AMD"("0x9001") + "GL_INT_SAMPLER_BUFFER_AMD"("0x9002") + "GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD"("0x9003") + "GL_TESSELLATION_MODE_AMD"("0x9004") + "GL_TESSELLATION_FACTOR_AMD"("0x9005") + "GL_DISCRETE_AMD"("0x9006") + "GL_CONTINUOUS_AMD"("0x9007") + "glTessellationFactorAMD"(void, GLfloat("factor")) + "glTessellationModeAMD"(void, GLenum("mode")) + } +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt new file mode 100644 index 00000000..36c8f6ce --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt @@ -0,0 +1,1641 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.ARB + +/** + * @author squid233 + * @since 0.1.0 + */ +fun arb() { + file("ES32Compatibility", ARB, "GL_ARB_ES3_2_compatibility") { + "GL_PRIMITIVE_BOUNDING_BOX_ARB"("0x92BE") + "GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB"("0x9381") + "GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB"("0x9382") + "glPrimitiveBoundingBoxARB"( + void, + GLfloat("minX"), + GLfloat("minY"), + GLfloat("minZ"), + GLfloat("minW"), + GLfloat("maxX"), + GLfloat("maxY"), + GLfloat("maxZ"), + GLfloat("maxW") + ) + } + file("BindlessTexture", ARB, "GL_ARB_bindless_texture") { + "GL_UNSIGNED_INT64_ARB"("0x140F") + "glGetTextureHandleARB"(GLuint64, GLuint("texture")) + "glGetTextureSamplerHandleARB"(GLuint64, GLuint("texture"), GLuint("sampler")) + "glMakeTextureHandleResidentARB"(void, GLuint64("handle")) + "glMakeTextureHandleNonResidentARB"(void, GLuint64("handle")) + "glGetImageHandleARB"( + GLuint64, + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("format") + ) + "glMakeImageHandleResidentARB"(void, GLuint64("handle"), GLenum("access")) + "glMakeImageHandleNonResidentARB"(void, GLuint64("handle")) + "glUniformHandleui64ARB"(void, GLint("location"), GLuint64("value")) + "glUniformHandleui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glProgramUniformHandleui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("value")) + "glProgramUniformHandleui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("values", "const GLuint64 *") + ) + "glIsTextureHandleResidentARB"(GLboolean, GLuint64("handle")) + "glIsImageHandleResidentARB"(GLboolean, GLuint64("handle")) + "glVertexAttribL1ui64ARB"(void, GLuint("index"), GLuint64EXT("x")) + "glVertexAttribL1ui64vARB"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glGetVertexAttribLui64vARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint64EXT *")) + } + file("CLEvent", ARB, "GL_ARB_cl_event") { + "GL_SYNC_CL_EVENT_ARB"("0x8240") + "GL_SYNC_CL_EVENT_COMPLETE_ARB"("0x8241") + "glCreateSyncFromCLeventARB"( + address, + address("context", "struct _cl_context *"), + address("event", "struct _cl_event *"), + GLbitfield("flags"), + nativeType = "GLsync" + ) + } + file("ColorBufferFloat", ARB, "GL_ARB_color_buffer_float") { + "GL_RGBA_FLOAT_MODE_ARB"("0x8820") + "GL_CLAMP_VERTEX_COLOR_ARB"("0x891A") + "GL_CLAMP_FRAGMENT_COLOR_ARB"("0x891B") + "GL_CLAMP_READ_COLOR_ARB"("0x891C") + "GL_FIXED_ONLY_ARB"("0x891D") + "glClampColorARB"(void, GLenum("target"), GLenum("clamp")) + } + file("ComputeVariableGroupSize", ARB, "GL_ARB_compute_variable_group_size") { + "GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB"("0x9344") + "GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB"("0x90EB") + "GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"("0x9345") + "GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB"("0x91BF") + "glDispatchComputeGroupSizeARB"( + void, + GLuint("num_groups_x"), + GLuint("num_groups_y"), + GLuint("num_groups_z"), + GLuint("group_size_x"), + GLuint("group_size_y"), + GLuint("group_size_z") + ) + } + file("DebugOutput", ARB, "GL_ARB_debug_output") { + "GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"("0x8242") + "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB"("0x8243") + "GL_DEBUG_CALLBACK_FUNCTION_ARB"("0x8244") + "GL_DEBUG_CALLBACK_USER_PARAM_ARB"("0x8245") + "GL_DEBUG_SOURCE_API_ARB"("0x8246") + "GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB"("0x8247") + "GL_DEBUG_SOURCE_SHADER_COMPILER_ARB"("0x8248") + "GL_DEBUG_SOURCE_THIRD_PARTY_ARB"("0x8249") + "GL_DEBUG_SOURCE_APPLICATION_ARB"("0x824A") + "GL_DEBUG_SOURCE_OTHER_ARB"("0x824B") + "GL_DEBUG_TYPE_ERROR_ARB"("0x824C") + "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB"("0x824D") + "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB"("0x824E") + "GL_DEBUG_TYPE_PORTABILITY_ARB"("0x824F") + "GL_DEBUG_TYPE_PERFORMANCE_ARB"("0x8250") + "GL_DEBUG_TYPE_OTHER_ARB"("0x8251") + "GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"("0x9143") + "GL_MAX_DEBUG_LOGGED_MESSAGES_ARB"("0x9144") + "GL_DEBUG_LOGGED_MESSAGES_ARB"("0x9145") + "GL_DEBUG_SEVERITY_HIGH_ARB"("0x9146") + "GL_DEBUG_SEVERITY_MEDIUM_ARB"("0x9147") + "GL_DEBUG_SEVERITY_LOW_ARB"("0x9148") + "glDebugMessageControlARB"( + void, + GLenum("source"), + GLenum("type"), + GLenum("severity"), + GLsizei("count"), + address("ids", "const GLuint *"), + GLboolean("enabled") + ) + "glDebugMessageInsertARB"( + void, + GLenum("source"), + GLenum("type"), + GLuint("id"), + GLenum("severity"), + GLsizei("length"), + address("buf", "const GLchar *") + ) + ("glDebugMessageCallbackARB"( + void, + address("callback", "GLDEBUGPROCARB"), + address("userParam", "const void *") + )) { + "glDebugMessageCallbackARB"( + void, + "glDebugMessageCallbackARB(callback.address(arena), userParam);", + arena("arena"), + Type("GLDebugProc", null)("callback"), + address("userParam", "const void *") + ) + } + "glGetDebugMessageLogARB"( + GLuint, + GLuint("count"), + GLsizei("bufSize"), + address("sources", "GLenum *"), + address("types", "GLenum *"), + address("ids", "GLuint *"), + address("severities", "GLenum *"), + address("lengths", "GLsizei *"), + address("messageLog", "GLchar *") + ) + } + file( + "DepthTexture", ARB, "GL_ARB_depth_texture", + "GL_DEPTH_COMPONENT16_ARB" to "0x81A5", + "GL_DEPTH_COMPONENT24_ARB" to "0x81A6", + "GL_DEPTH_COMPONENT32_ARB" to "0x81A7", + "GL_TEXTURE_DEPTH_SIZE_ARB" to "0x884A", + "GL_DEPTH_TEXTURE_MODE_ARB" to "0x884B" + ) + file("DrawBuffers", ARB, "GL_ARB_draw_buffers") { + "GL_MAX_DRAW_BUFFERS_ARB"("0x8824") + "GL_DRAW_BUFFER0_ARB"("0x8825") + "GL_DRAW_BUFFER1_ARB"("0x8826") + "GL_DRAW_BUFFER2_ARB"("0x8827") + "GL_DRAW_BUFFER3_ARB"("0x8828") + "GL_DRAW_BUFFER4_ARB"("0x8829") + "GL_DRAW_BUFFER5_ARB"("0x882A") + "GL_DRAW_BUFFER6_ARB"("0x882B") + "GL_DRAW_BUFFER7_ARB"("0x882C") + "GL_DRAW_BUFFER8_ARB"("0x882D") + "GL_DRAW_BUFFER9_ARB"("0x882E") + "GL_DRAW_BUFFER10_ARB"("0x882F") + "GL_DRAW_BUFFER11_ARB"("0x8830") + "GL_DRAW_BUFFER12_ARB"("0x8831") + "GL_DRAW_BUFFER13_ARB"("0x8832") + "GL_DRAW_BUFFER14_ARB"("0x8833") + "GL_DRAW_BUFFER15_ARB"("0x8834") + "glDrawBuffersARB"(void, GLsizei("n"), address("bufs", "const GLenum *")) + } + file("DrawBuffersBlend", ARB, "GL_ARB_draw_buffers_blend") { + "glBlendEquationiARB"(void, GLuint("buf"), GLenum("mode")) + "glBlendEquationSeparateiARB"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) + "glBlendFunciARB"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) + "glBlendFuncSeparateiARB"( + void, + GLuint("buf"), + GLenum("srcRGB"), + GLenum("dstRGB"), + GLenum("srcAlpha"), + GLenum("dstAlpha") + ) + } + file("DrawInstanced", ARB, "GL_ARB_draw_instanced") { + "glDrawArraysInstancedARB"(void, GLenum("mode"), GLint("first"), GLsizei("count"), GLsizei("primcount")) + "glDrawElementsInstancedARB"( + void, + GLenum("mode"), + GLsizei("count"), + GLenum("type"), + address("indices", "const void *"), + GLsizei("primcount") + ) + } + file("FragmentProgram", ARB, "GL_ARB_fragment_program") { + "GL_FRAGMENT_PROGRAM_ARB"("0x8804") + "GL_PROGRAM_FORMAT_ASCII_ARB"("0x8875") + "GL_PROGRAM_LENGTH_ARB"("0x8627") + "GL_PROGRAM_FORMAT_ARB"("0x8876") + "GL_PROGRAM_BINDING_ARB"("0x8677") + "GL_PROGRAM_INSTRUCTIONS_ARB"("0x88A0") + "GL_MAX_PROGRAM_INSTRUCTIONS_ARB"("0x88A1") + "GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A2") + "GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A3") + "GL_PROGRAM_TEMPORARIES_ARB"("0x88A4") + "GL_MAX_PROGRAM_TEMPORARIES_ARB"("0x88A5") + "GL_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A6") + "GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A7") + "GL_PROGRAM_PARAMETERS_ARB"("0x88A8") + "GL_MAX_PROGRAM_PARAMETERS_ARB"("0x88A9") + "GL_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AA") + "GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AB") + "GL_PROGRAM_ATTRIBS_ARB"("0x88AC") + "GL_MAX_PROGRAM_ATTRIBS_ARB"("0x88AD") + "GL_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AE") + "GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AF") + "GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB"("0x88B4") + "GL_MAX_PROGRAM_ENV_PARAMETERS_ARB"("0x88B5") + "GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB"("0x88B6") + "GL_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x8805") + "GL_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x8806") + "GL_PROGRAM_TEX_INDIRECTIONS_ARB"("0x8807") + "GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x8808") + "GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x8809") + "GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x880A") + "GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x880B") + "GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x880C") + "GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB"("0x880D") + "GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x880E") + "GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x880F") + "GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x8810") + "GL_PROGRAM_STRING_ARB"("0x8628") + "GL_PROGRAM_ERROR_POSITION_ARB"("0x864B") + "GL_CURRENT_MATRIX_ARB"("0x8641") + "GL_TRANSPOSE_CURRENT_MATRIX_ARB"("0x88B7") + "GL_CURRENT_MATRIX_STACK_DEPTH_ARB"("0x8640") + "GL_MAX_PROGRAM_MATRICES_ARB"("0x862F") + "GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB"("0x862E") + "GL_MAX_TEXTURE_COORDS_ARB"("0x8871") + "GL_MAX_TEXTURE_IMAGE_UNITS_ARB"("0x8872") + "GL_PROGRAM_ERROR_STRING_ARB"("0x8874") + "GL_MATRIX0_ARB"("0x88C0") + "GL_MATRIX1_ARB"("0x88C1") + "GL_MATRIX2_ARB"("0x88C2") + "GL_MATRIX3_ARB"("0x88C3") + "GL_MATRIX4_ARB"("0x88C4") + "GL_MATRIX5_ARB"("0x88C5") + "GL_MATRIX6_ARB"("0x88C6") + "GL_MATRIX7_ARB"("0x88C7") + "GL_MATRIX8_ARB"("0x88C8") + "GL_MATRIX9_ARB"("0x88C9") + "GL_MATRIX10_ARB"("0x88CA") + "GL_MATRIX11_ARB"("0x88CB") + "GL_MATRIX12_ARB"("0x88CC") + "GL_MATRIX13_ARB"("0x88CD") + "GL_MATRIX14_ARB"("0x88CE") + "GL_MATRIX15_ARB"("0x88CF") + "GL_MATRIX16_ARB"("0x88D0") + "GL_MATRIX17_ARB"("0x88D1") + "GL_MATRIX18_ARB"("0x88D2") + "GL_MATRIX19_ARB"("0x88D3") + "GL_MATRIX20_ARB"("0x88D4") + "GL_MATRIX21_ARB"("0x88D5") + "GL_MATRIX22_ARB"("0x88D6") + "GL_MATRIX23_ARB"("0x88D7") + "GL_MATRIX24_ARB"("0x88D8") + "GL_MATRIX25_ARB"("0x88D9") + "GL_MATRIX26_ARB"("0x88DA") + "GL_MATRIX27_ARB"("0x88DB") + "GL_MATRIX28_ARB"("0x88DC") + "GL_MATRIX29_ARB"("0x88DD") + "GL_MATRIX30_ARB"("0x88DE") + "GL_MATRIX31_ARB"("0x88DF") + "glProgramStringARB"( + void, + GLenum("target"), + GLenum("format"), + GLsizei("len"), + address("string", "const void *") + ) + "glBindProgramARB"(void, GLenum("target"), GLuint("program")) + "glDeleteProgramsARB"(void, GLsizei("n"), address("programs", "const GLuint *")) + "glGenProgramsARB"(void, GLsizei("n"), address("programs", "GLuint *")) + "glProgramEnvParameter4dARB"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramEnvParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) + "glProgramEnvParameter4fARB"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramEnvParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) + "glProgramLocalParameter4dARB"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramLocalParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) + "glProgramLocalParameter4fARB"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramLocalParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) + "glGetProgramEnvParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) + "glGetProgramEnvParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) + "glGetProgramLocalParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) + "glGetProgramLocalParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) + "glGetProgramivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetProgramStringARB"(void, GLenum("target"), GLenum("pname"), address("string", "void *")) + "glIsProgramARB"(GLboolean, GLuint("program")) + } + file( + "FragmentShader", ARB, "GL_ARB_fragment_shader", + "GL_FRAGMENT_SHADER_ARB" to "0x8B30", + "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB" to "0x8B49", + "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB" to "0x8B8B" + ) + file("GeometryShader4", ARB, "GL_ARB_geometry_shader4") { + "GL_LINES_ADJACENCY_ARB"("0x000A") + "GL_LINE_STRIP_ADJACENCY_ARB"("0x000B") + "GL_TRIANGLES_ADJACENCY_ARB"("0x000C") + "GL_TRIANGLE_STRIP_ADJACENCY_ARB"("0x000D") + "GL_PROGRAM_POINT_SIZE_ARB"("0x8642") + "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB"("0x8C29") + "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB"("0x8DA7") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB"("0x8DA8") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"("0x8DA9") + "GL_GEOMETRY_SHADER_ARB"("0x8DD9") + "GL_GEOMETRY_VERTICES_OUT_ARB"("0x8DDA") + "GL_GEOMETRY_INPUT_TYPE_ARB"("0x8DDB") + "GL_GEOMETRY_OUTPUT_TYPE_ARB"("0x8DDC") + "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB"("0x8DDD") + "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB"("0x8DDE") + "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB"("0x8DDF") + "GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB"("0x8DE0") + "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB"("0x8DE1") + "glProgramParameteriARB"(void, GLuint("program"), GLenum("pname"), GLint("value")) + "glFramebufferTextureARB"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) + "glFramebufferTextureLayerARB"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLint("layer") + ) + "glFramebufferTextureFaceARB"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLenum("face") + ) + } + file("GLSpirv", ARB, "GL_ARB_gl_spirv") { + "GL_SHADER_BINARY_FORMAT_SPIR_V_ARB"("0x9551") + "GL_SPIR_V_BINARY_ARB"("0x9552") + "glSpecializeShaderARB"( + void, + GLuint("shader"), + address("pEntryPoint", "const GLchar *"), + GLuint("numSpecializationConstants"), + address("pConstantIndex", "const GLuint *"), + address("pConstantValue", "const GLuint *") + ) + } + file("GpuShaderInt64", ARB, "GL_ARB_gpu_shader_int64") { + "GL_INT64_ARB"("0x140E") + "GL_INT64_VEC2_ARB"("0x8FE9") + "GL_INT64_VEC3_ARB"("0x8FEA") + "GL_INT64_VEC4_ARB"("0x8FEB") + "GL_UNSIGNED_INT64_VEC2_ARB"("0x8FF5") + "GL_UNSIGNED_INT64_VEC3_ARB"("0x8FF6") + "GL_UNSIGNED_INT64_VEC4_ARB"("0x8FF7") + "glUniform1i64ARB"(void, GLint("location"), GLint64("x")) + "glUniform2i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y")) + "glUniform3i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) + "glUniform4i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z"), GLint64("w")) + "glUniform1i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform2i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform3i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform4i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform1ui64ARB"(void, GLint("location"), GLuint64("x")) + "glUniform2ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y")) + "glUniform3ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z")) + "glUniform4ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z"), GLuint64("w")) + "glUniform1ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform2ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform3ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform4ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glGetUniformi64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLint64 *")) + "glGetUniformui64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLuint64 *")) + "glGetnUniformi64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("bufSize"), + address("params", "GLint64 *") + ) + "glGetnUniformui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("bufSize"), + address("params", "GLuint64 *") + ) + "glProgramUniform1i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x")) + "glProgramUniform2i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y")) + "glProgramUniform3i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) + "glProgramUniform4i64ARB"( + void, + GLuint("program"), + GLint("location"), + GLint64("x"), + GLint64("y"), + GLint64("z"), + GLint64("w") + ) + "glProgramUniform1i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform2i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform3i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform4i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform1ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x")) + "glProgramUniform2ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x"), GLuint64("y")) + "glProgramUniform3ui64ARB"( + void, + GLuint("program"), + GLint("location"), + GLuint64("x"), + GLuint64("y"), + GLuint64("z") + ) + "glProgramUniform4ui64ARB"( + void, + GLuint("program"), + GLint("location"), + GLuint64("x"), + GLuint64("y"), + GLuint64("z"), + GLuint64("w") + ) + "glProgramUniform1ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform2ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform3ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform4ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + } + file("HalfFloatPixel", ARB, "GL_ARB_half_float_pixel", "GL_HALF_FLOAT_ARB" to "0x140B") + file("Imaging", ARB, "GL_ARB_imaging") { + "GL_CONVOLUTION_BORDER_MODE"("0x8013") + "GL_CONVOLUTION_FILTER_SCALE"("0x8014") + "GL_CONVOLUTION_FILTER_BIAS"("0x8015") + "GL_REDUCE"("0x8016") + "GL_CONVOLUTION_FORMAT"("0x8017") + "GL_CONVOLUTION_WIDTH"("0x8018") + "GL_CONVOLUTION_HEIGHT"("0x8019") + "GL_MAX_CONVOLUTION_WIDTH"("0x801A") + "GL_MAX_CONVOLUTION_HEIGHT"("0x801B") + "GL_POST_CONVOLUTION_RED_SCALE"("0x801C") + "GL_POST_CONVOLUTION_GREEN_SCALE"("0x801D") + "GL_POST_CONVOLUTION_BLUE_SCALE"("0x801E") + "GL_POST_CONVOLUTION_ALPHA_SCALE"("0x801F") + "GL_POST_CONVOLUTION_RED_BIAS"("0x8020") + "GL_POST_CONVOLUTION_GREEN_BIAS"("0x8021") + "GL_POST_CONVOLUTION_BLUE_BIAS"("0x8022") + "GL_POST_CONVOLUTION_ALPHA_BIAS"("0x8023") + "GL_HISTOGRAM_WIDTH"("0x8026") + "GL_HISTOGRAM_FORMAT"("0x8027") + "GL_HISTOGRAM_RED_SIZE"("0x8028") + "GL_HISTOGRAM_GREEN_SIZE"("0x8029") + "GL_HISTOGRAM_BLUE_SIZE"("0x802A") + "GL_HISTOGRAM_ALPHA_SIZE"("0x802B") + "GL_HISTOGRAM_LUMINANCE_SIZE"("0x802C") + "GL_HISTOGRAM_SINK"("0x802D") + "GL_MINMAX_FORMAT"("0x802F") + "GL_MINMAX_SINK"("0x8030") + "GL_TABLE_TOO_LARGE"("0x8031") + "GL_COLOR_MATRIX"("0x80B1") + "GL_COLOR_MATRIX_STACK_DEPTH"("0x80B2") + "GL_MAX_COLOR_MATRIX_STACK_DEPTH"("0x80B3") + "GL_POST_COLOR_MATRIX_RED_SCALE"("0x80B4") + "GL_POST_COLOR_MATRIX_GREEN_SCALE"("0x80B5") + "GL_POST_COLOR_MATRIX_BLUE_SCALE"("0x80B6") + "GL_POST_COLOR_MATRIX_ALPHA_SCALE"("0x80B7") + "GL_POST_COLOR_MATRIX_RED_BIAS"("0x80B8") + "GL_POST_COLOR_MATRIX_GREEN_BIAS"("0x80B9") + "GL_POST_COLOR_MATRIX_BLUE_BIAS"("0x80BA") + "GL_POST_COLOR_MATRIX_ALPHA_BIAS"("0x80BB") + "GL_COLOR_TABLE_SCALE"("0x80D6") + "GL_COLOR_TABLE_BIAS"("0x80D7") + "GL_COLOR_TABLE_FORMAT"("0x80D8") + "GL_COLOR_TABLE_WIDTH"("0x80D9") + "GL_COLOR_TABLE_RED_SIZE"("0x80DA") + "GL_COLOR_TABLE_GREEN_SIZE"("0x80DB") + "GL_COLOR_TABLE_BLUE_SIZE"("0x80DC") + "GL_COLOR_TABLE_ALPHA_SIZE"("0x80DD") + "GL_COLOR_TABLE_LUMINANCE_SIZE"("0x80DE") + "GL_COLOR_TABLE_INTENSITY_SIZE"("0x80DF") + "GL_CONSTANT_BORDER"("0x8151") + "GL_REPLICATE_BORDER"("0x8153") + "GL_CONVOLUTION_BORDER_COLOR"("0x8154") + "glColorTable"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("table", "const void *") + ) + "glColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyColorTable"(void, GLenum("target"), GLenum("internalformat"), GLint("x"), GLint("y"), GLsizei("width")) + "glGetColorTable"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("table", "void *")) + "glGetColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glColorSubTable"( + void, + GLenum("target"), + GLsizei("start"), + GLsizei("count"), + GLenum("format"), + GLenum("type"), + address("data", "const void *") + ) + "glCopyColorSubTable"(void, GLenum("target"), GLsizei("start"), GLint("x"), GLint("y"), GLsizei("width")) + "glConvolutionFilter1D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionParameterf"(void, GLenum("target"), GLenum("pname"), GLfloat("params")) + "glConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glConvolutionParameteri"(void, GLenum("target"), GLenum("pname"), GLint("params")) + "glConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyConvolutionFilter1D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyConvolutionFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glGetConvolutionFilter"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("image", "void *")) + "glGetConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetSeparableFilter"( + void, + GLenum("target"), + GLenum("format"), + GLenum("type"), + address("row", "void *"), + address("column", "void *"), + address("span", "void *") + ) + "glSeparableFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("row", "const void *"), + address("column", "const void *") + ) + "glGetHistogram"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetHistogramParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetHistogramParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMinmax"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetMinmaxParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMinmaxParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glHistogram"(void, GLenum("target"), GLsizei("width"), GLenum("internalformat"), GLboolean("sink")) + "glMinmax"(void, GLenum("target"), GLenum("internalformat"), GLboolean("sink")) + "glResetHistogram"(void, GLenum("target")) + "glResetMinmax"(void, GLenum("target")) + } + file("IndirectParameters", ARB, "GL_ARB_indirect_parameters") { + "GL_PARAMETER_BUFFER_ARB"("0x80EE") + "GL_PARAMETER_BUFFER_BINDING_ARB"("0x80EF") + "glMultiDrawArraysIndirectCountARB"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + "glMultiDrawElementsIndirectCountARB"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + } + file("InstancedArrays", ARB, "GL_ARB_instanced_arrays") { + "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB"("0x88FE") + "glVertexAttribDivisorARB"(void, GLuint("index"), GLuint("divisor")) + } + file( + "InternalformatQuery2", ARB, "GL_ARB_internalformat_query2", + "GL_SRGB_DECODE_ARB" to "0x8299", + "GL_VIEW_CLASS_EAC_R11" to "0x9383", + "GL_VIEW_CLASS_EAC_RG11" to "0x9384", + "GL_VIEW_CLASS_ETC2_RGB" to "0x9385", + "GL_VIEW_CLASS_ETC2_RGBA" to "0x9386", + "GL_VIEW_CLASS_ETC2_EAC_RGBA" to "0x9387", + "GL_VIEW_CLASS_ASTC_4x4_RGBA" to "0x9388", + "GL_VIEW_CLASS_ASTC_5x4_RGBA" to "0x9389", + "GL_VIEW_CLASS_ASTC_5x5_RGBA" to "0x938A", + "GL_VIEW_CLASS_ASTC_6x5_RGBA" to "0x938B", + "GL_VIEW_CLASS_ASTC_6x6_RGBA" to "0x938C", + "GL_VIEW_CLASS_ASTC_8x5_RGBA" to "0x938D", + "GL_VIEW_CLASS_ASTC_8x6_RGBA" to "0x938E", + "GL_VIEW_CLASS_ASTC_8x8_RGBA" to "0x938F", + "GL_VIEW_CLASS_ASTC_10x5_RGBA" to "0x9390", + "GL_VIEW_CLASS_ASTC_10x6_RGBA" to "0x9391", + "GL_VIEW_CLASS_ASTC_10x8_RGBA" to "0x9392", + "GL_VIEW_CLASS_ASTC_10x10_RGBA" to "0x9393", + "GL_VIEW_CLASS_ASTC_12x10_RGBA" to "0x9394", + "GL_VIEW_CLASS_ASTC_12x12_RGBA" to "0x9395" + ) + file("MatrixPalette", ARB, "GL_ARB_matrix_palette") { + "GL_MATRIX_PALETTE_ARB"("0x8840") + "GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB"("0x8841") + "GL_MAX_PALETTE_MATRICES_ARB"("0x8842") + "GL_CURRENT_PALETTE_MATRIX_ARB"("0x8843") + "GL_MATRIX_INDEX_ARRAY_ARB"("0x8844") + "GL_CURRENT_MATRIX_INDEX_ARB"("0x8845") + "GL_MATRIX_INDEX_ARRAY_SIZE_ARB"("0x8846") + "GL_MATRIX_INDEX_ARRAY_TYPE_ARB"("0x8847") + "GL_MATRIX_INDEX_ARRAY_STRIDE_ARB"("0x8848") + "GL_MATRIX_INDEX_ARRAY_POINTER_ARB"("0x8849") + "glCurrentPaletteMatrixARB"(void, GLint("index")) + "glMatrixIndexubvARB"(void, GLint("size"), address("indices", "const GLubyte *")) + "glMatrixIndexusvARB"(void, GLint("size"), address("indices", "const GLushort *")) + "glMatrixIndexuivARB"(void, GLint("size"), address("indices", "const GLuint *")) + "glMatrixIndexPointerARB"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + } + file("Multisample", ARB, "GL_ARB_multisample") { + "GL_MULTISAMPLE_ARB"("0x809D") + "GL_SAMPLE_ALPHA_TO_COVERAGE_ARB"("0x809E") + "GL_SAMPLE_ALPHA_TO_ONE_ARB"("0x809F") + "GL_SAMPLE_COVERAGE_ARB"("0x80A0") + "GL_SAMPLE_BUFFERS_ARB"("0x80A8") + "GL_SAMPLES_ARB"("0x80A9") + "GL_SAMPLE_COVERAGE_VALUE_ARB"("0x80AA") + "GL_SAMPLE_COVERAGE_INVERT_ARB"("0x80AB") + "GL_MULTISAMPLE_BIT_ARB"("0x20000000") + "glSampleCoverageARB"(void, GLfloat("value"), GLboolean("invert")) + } + file("Multitexture", ARB, "GL_ARB_multitexture") { + "GL_TEXTURE0_ARB"("0x84C0") + "GL_TEXTURE1_ARB"("0x84C1") + "GL_TEXTURE2_ARB"("0x84C2") + "GL_TEXTURE3_ARB"("0x84C3") + "GL_TEXTURE4_ARB"("0x84C4") + "GL_TEXTURE5_ARB"("0x84C5") + "GL_TEXTURE6_ARB"("0x84C6") + "GL_TEXTURE7_ARB"("0x84C7") + "GL_TEXTURE8_ARB"("0x84C8") + "GL_TEXTURE9_ARB"("0x84C9") + "GL_TEXTURE10_ARB"("0x84CA") + "GL_TEXTURE11_ARB"("0x84CB") + "GL_TEXTURE12_ARB"("0x84CC") + "GL_TEXTURE13_ARB"("0x84CD") + "GL_TEXTURE14_ARB"("0x84CE") + "GL_TEXTURE15_ARB"("0x84CF") + "GL_TEXTURE16_ARB"("0x84D0") + "GL_TEXTURE17_ARB"("0x84D1") + "GL_TEXTURE18_ARB"("0x84D2") + "GL_TEXTURE19_ARB"("0x84D3") + "GL_TEXTURE20_ARB"("0x84D4") + "GL_TEXTURE21_ARB"("0x84D5") + "GL_TEXTURE22_ARB"("0x84D6") + "GL_TEXTURE23_ARB"("0x84D7") + "GL_TEXTURE24_ARB"("0x84D8") + "GL_TEXTURE25_ARB"("0x84D9") + "GL_TEXTURE26_ARB"("0x84DA") + "GL_TEXTURE27_ARB"("0x84DB") + "GL_TEXTURE28_ARB"("0x84DC") + "GL_TEXTURE29_ARB"("0x84DD") + "GL_TEXTURE30_ARB"("0x84DE") + "GL_TEXTURE31_ARB"("0x84DF") + "GL_ACTIVE_TEXTURE_ARB"("0x84E0") + "GL_CLIENT_ACTIVE_TEXTURE_ARB"("0x84E1") + "GL_MAX_TEXTURE_UNITS_ARB"("0x84E2") + "glActiveTextureARB"(void, GLenum("texture")) + "glClientActiveTextureARB"(void, GLenum("texture")) + "glMultiTexCoord1dARB"(void, GLenum("target"), GLdouble("s")) + "glMultiTexCoord1dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord1fARB"(void, GLenum("target"), GLfloat("s")) + "glMultiTexCoord1fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord1iARB"(void, GLenum("target"), GLint("s")) + "glMultiTexCoord1ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord1sARB"(void, GLenum("target"), GLshort("s")) + "glMultiTexCoord1svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord2dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t")) + "glMultiTexCoord2dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord2fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t")) + "glMultiTexCoord2fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord2iARB"(void, GLenum("target"), GLint("s"), GLint("t")) + "glMultiTexCoord2ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord2sARB"(void, GLenum("target"), GLshort("s"), GLshort("t")) + "glMultiTexCoord2svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord3dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r")) + "glMultiTexCoord3dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord3fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r")) + "glMultiTexCoord3fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord3iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r")) + "glMultiTexCoord3ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord3sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r")) + "glMultiTexCoord3svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord4dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r"), GLdouble("q")) + "glMultiTexCoord4dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord4fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r"), GLfloat("q")) + "glMultiTexCoord4fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord4iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r"), GLint("q")) + "glMultiTexCoord4ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord4sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r"), GLshort("q")) + "glMultiTexCoord4svARB"(void, GLenum("target"), address("v", "const GLshort *")) + } + file("OcclusionQuery", ARB, "GL_ARB_occlusion_query") { + "GL_QUERY_COUNTER_BITS_ARB"("0x8864") + "GL_CURRENT_QUERY_ARB"("0x8865") + "GL_QUERY_RESULT_ARB"("0x8866") + "GL_QUERY_RESULT_AVAILABLE_ARB"("0x8867") + "GL_SAMPLES_PASSED_ARB"("0x8914") + "glGenQueriesARB"(void, GLsizei("n"), address("ids", "GLuint *")) + "glDeleteQueriesARB"(void, GLsizei("n"), address("ids", "const GLuint *")) + "glIsQueryARB"(GLboolean, GLuint("id")) + "glBeginQueryARB"(void, GLenum("target"), GLuint("id")) + "glEndQueryARB"(void, GLenum("target")) + "glGetQueryivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetQueryObjectivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + "glGetQueryObjectuivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) + } + file("ParallelShaderCompile", ARB, "GL_ARB_parallel_shader_compile") { + "GL_MAX_SHADER_COMPILER_THREADS_ARB"("0x91B0") + "GL_COMPLETION_STATUS_ARB"("0x91B1") + "glMaxShaderCompilerThreadsARB"(void, GLuint("count")) + } + file( + "PipelineStatisticsQuery", ARB, "GL_ARB_pipeline_statistics_query", + "GL_VERTICES_SUBMITTED_ARB" to "0x82EE", + "GL_PRIMITIVES_SUBMITTED_ARB" to "0x82EF", + "GL_VERTEX_SHADER_INVOCATIONS_ARB" to "0x82F0", + "GL_TESS_CONTROL_SHADER_PATCHES_ARB" to "0x82F1", + "GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB" to "0x82F2", + "GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB" to "0x82F3", + "GL_FRAGMENT_SHADER_INVOCATIONS_ARB" to "0x82F4", + "GL_COMPUTE_SHADER_INVOCATIONS_ARB" to "0x82F5", + "GL_CLIPPING_INPUT_PRIMITIVES_ARB" to "0x82F6", + "GL_CLIPPING_OUTPUT_PRIMITIVES_ARB" to "0x82F7" + ) + file( + "PixelBufferObject", ARB, "GL_ARB_pixel_buffer_object", + "GL_PIXEL_PACK_BUFFER_ARB" to "0x88EB", + "GL_PIXEL_UNPACK_BUFFER_ARB" to "0x88EC", + "GL_PIXEL_PACK_BUFFER_BINDING_ARB" to "0x88ED", + "GL_PIXEL_UNPACK_BUFFER_BINDING_ARB" to "0x88EF" + ) + file("PointParameters", ARB, "GL_ARB_point_parameters") { + "GL_POINT_SIZE_MIN_ARB"("0x8126") + "GL_POINT_SIZE_MAX_ARB"("0x8127") + "GL_POINT_FADE_THRESHOLD_SIZE_ARB"("0x8128") + "GL_POINT_DISTANCE_ATTENUATION_ARB"("0x8129") + "glPointParameterfARB"(void, GLenum("pname"), GLfloat("param")) + "glPointParameterfvARB"(void, GLenum("pname"), address("params", "const GLfloat *")) + } + file( + "PointSprite", ARB, "GL_ARB_point_sprite", + "GL_POINT_SPRITE_ARB" to "0x8861", + "GL_COORD_REPLACE_ARB" to "0x8862" + ) + file("Robustness", ARB, "GL_ARB_robustness") { + "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") + "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") + "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB"("0x00000004") + "GL_UNKNOWN_CONTEXT_RESET_ARB"("0x8255") + "GL_LOSE_CONTEXT_ON_RESET_ARB"("0x8252") + "GL_INNOCENT_CONTEXT_RESET_ARB"("0x8254") + "GL_GUILTY_CONTEXT_RESET_ARB"("0x8253") + "glGetGraphicsResetStatusARB"(int) + "glGetnCompressedTexImageARB"(void, int("target"), int("lod"), int("bufSize"), address("img", "void*")) + "glGetnTexImageARB"( + void, + int("target"), + int("level"), + int("format"), + int("type"), + int("bufSize"), + address("img", "void*") + ) + "glGetnUniformdvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLdouble*")) + "glGetnUniformfvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLfloat*")) + "glGetnUniformivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLint*")) + "glGetnUniformuivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLuint*")) + "glReadnPixelsARB"( + void, + int("x"), + int("y"), + int("width"), + int("height"), + int("format"), + int("type"), + int("bufSize"), + address("data", "void*") + ) + } + file("SampleLocations", ARB, "GL_ARB_sample_locations") { + "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB"("0x933D") + "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB"("0x933E") + "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB"("0x933F") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB"("0x9340") + "GL_SAMPLE_LOCATION_ARB"("0x8E50") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB"("0x9341") + "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB"("0x9342") + "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB"("0x9343") + "glEvaluateDepthValuesARB"(void) + "glFramebufferSampleLocationsfvARB"( + void, + int("target"), + int("start"), + int("count"), + address("v", "const GLfloat *v") + ) + "glNamedFramebufferSampleLocationsfvARB"( + void, + int("framebuffer"), + int("start"), + int("count"), + address("v", "const GLfloat *v") + ) + } + file("SampleShading", ARB, "GL_ARB_sample_shading") { + "GL_SAMPLE_SHADING_ARB"("0x8C36") + "GL_MIN_SAMPLE_SHADING_VALUE_ARB"("0x8C37") + "glMinSampleShadingARB"(void, float("value")) + } + file("ShaderObjects", ARB, "GL_ARB_shader_objects") { + "GL_PROGRAM_OBJECT_ARB"("0x8B40") + "GL_SHADER_OBJECT_ARB"("0x8B48") + "GL_OBJECT_TYPE_ARB"("0x8B4E") + "GL_OBJECT_SUBTYPE_ARB"("0x8B4F") + "GL_FLOAT_VEC2_ARB"("0x8B50") + "GL_FLOAT_VEC3_ARB"("0x8B51") + "GL_FLOAT_VEC4_ARB"("0x8B52") + "GL_INT_VEC2_ARB"("0x8B53") + "GL_INT_VEC3_ARB"("0x8B54") + "GL_INT_VEC4_ARB"("0x8B55") + "GL_BOOL_ARB"("0x8B56") + "GL_BOOL_VEC2_ARB"("0x8B57") + "GL_BOOL_VEC3_ARB"("0x8B58") + "GL_BOOL_VEC4_ARB"("0x8B59") + "GL_FLOAT_MAT2_ARB"("0x8B5A") + "GL_FLOAT_MAT3_ARB"("0x8B5B") + "GL_FLOAT_MAT4_ARB"("0x8B5C") + "GL_SAMPLER_1D_ARB"("0x8B5D") + "GL_SAMPLER_2D_ARB"("0x8B5E") + "GL_SAMPLER_3D_ARB"("0x8B5F") + "GL_SAMPLER_CUBE_ARB"("0x8B60") + "GL_SAMPLER_1D_SHADOW_ARB"("0x8B61") + "GL_SAMPLER_2D_SHADOW_ARB"("0x8B62") + "GL_SAMPLER_2D_RECT_ARB"("0x8B63") + "GL_SAMPLER_2D_RECT_SHADOW_ARB"("0x8B64") + "GL_OBJECT_DELETE_STATUS_ARB"("0x8B80") + "GL_OBJECT_COMPILE_STATUS_ARB"("0x8B81") + "GL_OBJECT_LINK_STATUS_ARB"("0x8B82") + "GL_OBJECT_VALIDATE_STATUS_ARB"("0x8B83") + "GL_OBJECT_INFO_LOG_LENGTH_ARB"("0x8B84") + "GL_OBJECT_ATTACHED_OBJECTS_ARB"("0x8B85") + "GL_OBJECT_ACTIVE_UNIFORMS_ARB"("0x8B86") + "GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"("0x8B87") + "GL_OBJECT_SHADER_SOURCE_LENGTH_ARB"("0x8B88") + "glDeleteObjectARB"(void, int("obj")) + "glGetHandleARB"(int, int("pname")) + "glDetachObjectARB"(void, int("containerObj"), int("attachedObj")) + "glCreateShaderObjectARB"(int, int("shaderType")) + "glShaderSourceARB"( + void, + int("shaderObj"), + int("count"), + address("string", "const GLcharARB**"), + address("length", "const GLint*") + ) + "glCompileShaderARB"(void, int("shaderObj")) + "glCreateProgramObjectARB"(int) + "glAttachObjectARB"(void, int("containerObj"), int("obj")) + "glLinkProgramARB"(void, int("programObj")) + "glUseProgramObjectARB"(void, int("programObj")) + "glValidateProgramARB"(void, int("programObj")) + "glUniform1fARB"(void, int("location"), float("v0")) + "glUniform2fARB"(void, int("location"), float("v0"), float("v1")) + "glUniform3fARB"(void, int("location"), float("v0"), float("v1"), float("v2")) + "glUniform4fARB"(void, int("location"), float("v0"), float("v1"), float("v2"), float("v3")) + "glUniform1iARB"(void, int("location"), int("v0")) + "glUniform2iARB"(void, int("location"), int("v0"), int("v1")) + "glUniform3iARB"(void, int("location"), int("v0"), int("v1"), int("v2")) + "glUniform4iARB"(void, int("location"), int("v0"), int("v1"), int("v2"), int("v3")) + "glUniform1fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform2fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform3fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform4fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform1ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform2ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform3ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform4ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniformMatrix2fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glUniformMatrix3fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glUniformMatrix4fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glGetObjectParameterfvARB"(void, int("obj"), int("pname"), address("params", "GLfloat*")) + "glGetObjectParameterivARB"(void, int("obj"), int("pname"), address("params", "GLint*")) + "glGetInfoLogARB"( + void, + int("obj"), + int("maxLength"), + address("length", "GLsizei*"), + address("infoLog", "GLcharARB*") + ) + "glGetAttachedObjectsARB"( + void, + int("containerObj"), + int("maxCount"), + address("count", "GLsizei*"), + address("obj", "GLhandleARB*") + ) + "glGetUniformLocationARB"(int, int("programObj"), address("name", "const GLcharARB*")) + "glGetActiveUniformARB"( + void, + int("programObj"), + int("index"), + int("maxLength"), + address("length", "GLsizei*"), + address("size", "GLint*"), + address("type", "GLenum*"), + address("name", "GLcharARB*") + ) + "glGetUniformfvARB"(void, int("programObj"), int("location"), address("params", "GLfloat*")) + "glGetUniformivARB"(void, int("programObj"), int("location"), address("params", "GLint*")) + "glGetShaderSourceARB"( + void, + int("obj"), + int("maxLength"), + address("length", "GLsizei*"), + address("source", "GLcharARB*") + ) + } + file("ShadingLanguageInclude", ARB, "GL_ARB_shading_language_include") { + "GL_SHADER_INCLUDE_ARB"("0x8DAE") + "GL_NAMED_STRING_LENGTH_ARB"("0x8DE9") + "GL_NAMED_STRING_TYPE_ARB"("0x8DEA") + "glNamedStringARB"( + void, + int("type"), + int("nameLen"), + address("name", "const GLchar*"), + int("stringLen"), + address("string", "const GLchar*") + ) + "glDeleteNamedStringARB"(void, int("nameLen"), address("name", "const GLchar*")) + "glCompileShaderIncludeARB"( + void, + int("shader"), + int("count"), + address("path", "const GLchar *const*"), + address("length", "const GLint*") + ) + "glIsNamedStringARB"(boolean, int("nameLen"), address("name", "const GLchar*")) + "glGetNamedStringARB"( + void, + int("nameLen"), + address("name", "const GLchar*"), + int("bufSize"), + address("stringLen", "GLint*"), + address("string", "GLchar*") + ) + "glGetNamedStringivARB"( + void, + int("nameLen"), + address("name", "const GLchar*"), + int("pname"), + address("params", "GLint*") + ) + } + file( + "Shadow", ARB, "GL_ARB_shadow", + "GL_TEXTURE_COMPARE_MODE_ARB" to "0x884C", + "GL_TEXTURE_COMPARE_FUNC_ARB" to "0x884D", + "GL_COMPARE_R_TO_TEXTURE_ARB" to "0x884E" + ) + file( + "ShadowAmbient", ARB, "GL_ARB_shadow_ambient", + "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB" to "0x80BF" + ) + file("SparseBuffer", ARB, "GL_ARB_sparse_buffer") { + "GL_SPARSE_STORAGE_BIT_ARB"("0x0400") + "GL_SPARSE_BUFFER_PAGE_SIZE_ARB"("0x82F8") + "glBufferPageCommitmentARB"(void, int("target"), long("offset"), long("size"), boolean("commit")) + "glNamedBufferPageCommitmentEXT"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) + "glNamedBufferPageCommitmentARB"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) + } + file("SparseTexture", ARB, "GL_ARB_sparse_texture") { + "GL_TEXTURE_SPARSE_ARB"("0x91A6") + "GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"("0x91A7") + "GL_NUM_SPARSE_LEVELS_ARB"("0x91AA") + "GL_NUM_VIRTUAL_PAGE_SIZES_ARB"("0x91A8") + "GL_VIRTUAL_PAGE_SIZE_X_ARB"("0x9195") + "GL_VIRTUAL_PAGE_SIZE_Y_ARB"("0x9196") + "GL_VIRTUAL_PAGE_SIZE_Z_ARB"("0x9197") + "GL_MAX_SPARSE_TEXTURE_SIZE_ARB"("0x9198") + "GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB"("0x9199") + "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"("0x919A") + "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB"("0x91A9") + "glTexPageCommitmentARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("zoffset"), + int("width"), + int("height"), + int("depth"), + boolean("commit") + ) + } + file( + "TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp", + "GL_CLAMP_TO_BORDER_ARB" to "0x812D" + ) + file("TextureBufferObject", ARB, "GL_ARB_texture_buffer_object") { + "GL_TEXTURE_BUFFER_ARB"("0x8C2A") + "GL_MAX_TEXTURE_BUFFER_SIZE_ARB"("0x8C2B") + "GL_TEXTURE_BINDING_BUFFER_ARB"("0x8C2C") + "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB"("0x8C2D") + "GL_TEXTURE_BUFFER_FORMAT_ARB"("0x8C2E") + "glTexBufferARB"(void, int("target"), int("internalFormat"), int("buffer")) + } + file("TextureCompression", ARB, "GL_ARB_texture_compression") { + "GL_COMPRESSED_ALPHA_ARB"("0x84E9") + "GL_COMPRESSED_LUMINANCE_ARB"("0x84EA") + "GL_COMPRESSED_LUMINANCE_ALPHA_ARB"("0x84EB") + "GL_COMPRESSED_INTENSITY_ARB"("0x84EC") + "GL_COMPRESSED_RGB_ARB"("0x84ED") + "GL_COMPRESSED_RGBA_ARB"("0x84EE") + "GL_TEXTURE_COMPRESSION_HINT_ARB"("0x84EF") + "GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB"("0x86A0") + "GL_TEXTURE_COMPRESSED_ARB"("0x86A1") + "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A2") + "GL_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A3") + "glCompressedTexImage3DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("height"), + int("depth"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexImage2DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("height"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexImage1DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage3DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("zoffset"), + int("width"), + int("height"), + int("depth"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage2DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("width"), + int("height"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage1DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("width"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glGetCompressedTexImageARB"(void, int("target"), int("level"), address("img", "void*")) + } + file( + "TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc", + "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB" to "0x8E8C", + "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB" to "0x8E8D", + "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB" to "0x8E8E", + "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB" to "0x8E8F" + ) + file( + "TextureCubeMap", ARB, "GL_ARB_texture_cube_map", + "GL_NORMAL_MAP_ARB" to "0x8511", + "GL_REFLECTION_MAP_ARB" to "0x8512", + "GL_TEXTURE_CUBE_MAP_ARB" to "0x8513", + "GL_TEXTURE_BINDING_CUBE_MAP_ARB" to "0x8514", + "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB" to "0x8515", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB" to "0x8516", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB" to "0x8517", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB" to "0x8518", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB" to "0x8519", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB" to "0x851A", + "GL_PROXY_TEXTURE_CUBE_MAP_ARB" to "0x851B", + "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB" to "0x851C" + ) + file( + "TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array", + "GL_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x9009", + "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB" to "0x900A", + "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x900B", + "GL_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900C", + "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB" to "0x900D", + "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900E", + "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900F" + ) + file( + "TextureEnvCombine", ARB, "GL_ARB_texture_env_combine", + "GL_COMBINE_ARB" to "0x8570", + "GL_COMBINE_RGB_ARB" to "0x8571", + "GL_COMBINE_ALPHA_ARB" to "0x8572", + "GL_SOURCE0_RGB_ARB" to "0x8580", + "GL_SOURCE1_RGB_ARB" to "0x8581", + "GL_SOURCE2_RGB_ARB" to "0x8582", + "GL_SOURCE0_ALPHA_ARB" to "0x8588", + "GL_SOURCE1_ALPHA_ARB" to "0x8589", + "GL_SOURCE2_ALPHA_ARB" to "0x858A", + "GL_OPERAND0_RGB_ARB" to "0x8590", + "GL_OPERAND1_RGB_ARB" to "0x8591", + "GL_OPERAND2_RGB_ARB" to "0x8592", + "GL_OPERAND0_ALPHA_ARB" to "0x8598", + "GL_OPERAND1_ALPHA_ARB" to "0x8599", + "GL_OPERAND2_ALPHA_ARB" to "0x859A", + "GL_RGB_SCALE_ARB" to "0x8573", + "GL_ADD_SIGNED_ARB" to "0x8574", + "GL_INTERPOLATE_ARB" to "0x8575", + "GL_SUBTRACT_ARB" to "0x84E7", + "GL_CONSTANT_ARB" to "0x8576", + "GL_PRIMARY_COLOR_ARB" to "0x8577", + "GL_PREVIOUS_ARB" to "0x8578" + ) + file( + "TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3", + "GL_DOT3_RGB_ARB" to "0x86AE", + "GL_DOT3_RGBA_ARB" to "0x86AF" + ) + file( + "TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax", + "GL_TEXTURE_REDUCTION_MODE_ARB" to "0x9366", + "GL_WEIGHTED_AVERAGE_ARB" to "0x9367" + ) + file( + "TextureFloat", ARB, "GL_ARB_texture_float", + "GL_TEXTURE_RED_TYPE_ARB" to "0x8C10", + "GL_TEXTURE_GREEN_TYPE_ARB" to "0x8C11", + "GL_TEXTURE_BLUE_TYPE_ARB" to "0x8C12", + "GL_TEXTURE_ALPHA_TYPE_ARB" to "0x8C13", + "GL_TEXTURE_LUMINANCE_TYPE_ARB" to "0x8C14", + "GL_TEXTURE_INTENSITY_TYPE_ARB" to "0x8C15", + "GL_TEXTURE_DEPTH_TYPE_ARB" to "0x8C16", + "GL_UNSIGNED_NORMALIZED_ARB" to "0x8C17", + "GL_RGBA32F_ARB" to "0x8814", + "GL_RGB32F_ARB" to "0x8815", + "GL_ALPHA32F_ARB" to "0x8816", + "GL_INTENSITY32F_ARB" to "0x8817", + "GL_LUMINANCE32F_ARB" to "0x8818", + "GL_LUMINANCE_ALPHA32F_ARB" to "0x8819", + "GL_RGBA16F_ARB" to "0x881A", + "GL_RGB16F_ARB" to "0x881B", + "GL_ALPHA16F_ARB" to "0x881C", + "GL_INTENSITY16F_ARB" to "0x881D", + "GL_LUMINANCE16F_ARB" to "0x881E", + "GL_LUMINANCE_ALPHA16F_ARB" to "0x881F" + ) + file( + "TextureGather", ARB, "GL_ARB_texture_gather", + "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5E", + "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5F", + "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB" to "0x8F9F" + ) + file( + "TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat", + "GL_MIRRORED_REPEAT_ARB" to "0x8370" + ) + file( + "TextureRectangle", ARB, "GL_ARB_texture_rectangle", + "GL_TEXTURE_RECTANGLE_ARB" to "0x84F5", + "GL_TEXTURE_BINDING_RECTANGLE_ARB" to "0x84F6", + "GL_PROXY_TEXTURE_RECTANGLE_ARB" to "0x84F7", + "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB" to "0x84F8" + ) + file( + "TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query", + "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB" to "0x82EC", + "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB" to "0x82ED" + ) + file("TransposeMatrix", ARB, "GL_ARB_transpose_matrix") { + "GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"("0x84E3") + "GL_TRANSPOSE_PROJECTION_MATRIX_ARB"("0x84E4") + "GL_TRANSPOSE_TEXTURE_MATRIX_ARB"("0x84E5") + "GL_TRANSPOSE_COLOR_MATRIX_ARB"("0x84E6") + "glLoadTransposeMatrixfARB"(void, address("m", "const GLfloat*")) + "glLoadTransposeMatrixdARB"(void, address("m", "const GLdouble*")) + "glMultTransposeMatrixfARB"(void, address("m", "const GLfloat*")) + "glMultTransposeMatrixdARB"(void, address("m", "const GLdouble*")) + } + file("VertexBlend", ARB, "GL_ARB_vertex_blend") { + "GL_MAX_VERTEX_UNITS_ARB"("0x86A4") + "GL_ACTIVE_VERTEX_UNITS_ARB"("0x86A5") + "GL_WEIGHT_SUM_UNITY_ARB"("0x86A6") + "GL_VERTEX_BLEND_ARB"("0x86A7") + "GL_CURRENT_WEIGHT_ARB"("0x86A8") + "GL_WEIGHT_ARRAY_TYPE_ARB"("0x86A9") + "GL_WEIGHT_ARRAY_STRIDE_ARB"("0x86AA") + "GL_WEIGHT_ARRAY_SIZE_ARB"("0x86AB") + "GL_WEIGHT_ARRAY_POINTER_ARB"("0x86AC") + "GL_WEIGHT_ARRAY_ARB"("0x86AD") + "GL_MODELVIEW0_ARB"("0x1700") + "GL_MODELVIEW1_ARB"("0x850A") + "GL_MODELVIEW2_ARB"("0x8722") + "GL_MODELVIEW3_ARB"("0x8723") + "GL_MODELVIEW4_ARB"("0x8724") + "GL_MODELVIEW5_ARB"("0x8725") + "GL_MODELVIEW6_ARB"("0x8726") + "GL_MODELVIEW7_ARB"("0x8727") + "GL_MODELVIEW8_ARB"("0x8728") + "GL_MODELVIEW9_ARB"("0x8729") + "GL_MODELVIEW10_ARB"("0x872A") + "GL_MODELVIEW11_ARB"("0x872B") + "GL_MODELVIEW12_ARB"("0x872C") + "GL_MODELVIEW13_ARB"("0x872D") + "GL_MODELVIEW14_ARB"("0x872E") + "GL_MODELVIEW15_ARB"("0x872F") + "GL_MODELVIEW16_ARB"("0x8730") + "GL_MODELVIEW17_ARB"("0x8731") + "GL_MODELVIEW18_ARB"("0x8732") + "GL_MODELVIEW19_ARB"("0x8733") + "GL_MODELVIEW20_ARB"("0x8734") + "GL_MODELVIEW21_ARB"("0x8735") + "GL_MODELVIEW22_ARB"("0x8736") + "GL_MODELVIEW23_ARB"("0x8737") + "GL_MODELVIEW24_ARB"("0x8738") + "GL_MODELVIEW25_ARB"("0x8739") + "GL_MODELVIEW26_ARB"("0x873A") + "GL_MODELVIEW27_ARB"("0x873B") + "GL_MODELVIEW28_ARB"("0x873C") + "GL_MODELVIEW29_ARB"("0x873D") + "GL_MODELVIEW30_ARB"("0x873E") + "GL_MODELVIEW31_ARB"("0x873F") + "glWeightbvARB"(void, GLint("size"), address("weights", "const GLbyte*")) + "glWeightsvARB"(void, GLint("size"), address("weights", "const GLshort*")) + "glWeightivARB"(void, GLint("size"), address("weights", "const GLint*")) + "glWeightfvARB"(void, GLint("size"), address("weights", "const GLfloat*")) + "glWeightdvARB"(void, GLint("size"), address("weights", "const GLdouble*")) + "glWeightubvARB"(void, GLint("size"), address("weights", "const GLubyte*")) + "glWeightusvARB"(void, GLint("size"), address("weights", "const GLushort*")) + "glWeightuivARB"(void, GLint("size"), address("weights", "const GLuint*")) + "glWeightPointerARB"(void, GLint("size"), GLenum("type"), GLsizei("stride"), address("pointer", "const void*")) + "glVertexBlendARB"(void, GLint("count")) + } + file("VertexBufferObject", ARB, "GL_ARB_vertex_buffer_object") { + "GL_BUFFER_SIZE_ARB"("0x8764") + "GL_BUFFER_USAGE_ARB"("0x8765") + "GL_ARRAY_BUFFER_ARB"("0x8892") + "GL_ELEMENT_ARRAY_BUFFER_ARB"("0x8893") + "GL_ARRAY_BUFFER_BINDING_ARB"("0x8894") + "GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB"("0x8895") + "GL_VERTEX_ARRAY_BUFFER_BINDING_ARB"("0x8896") + "GL_NORMAL_ARRAY_BUFFER_BINDING_ARB"("0x8897") + "GL_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x8898") + "GL_INDEX_ARRAY_BUFFER_BINDING_ARB"("0x8899") + "GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB"("0x889A") + "GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB"("0x889B") + "GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x889C") + "GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB"("0x889D") + "GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB"("0x889E") + "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB"("0x889F") + "GL_READ_ONLY_ARB"("0x88B8") + "GL_WRITE_ONLY_ARB"("0x88B9") + "GL_READ_WRITE_ARB"("0x88BA") + "GL_BUFFER_ACCESS_ARB"("0x88BB") + "GL_BUFFER_MAPPED_ARB"("0x88BC") + "GL_BUFFER_MAP_POINTER_ARB"("0x88BD") + "GL_STREAM_DRAW_ARB"("0x88E0") + "GL_STREAM_READ_ARB"("0x88E1") + "GL_STREAM_COPY_ARB"("0x88E2") + "GL_STATIC_DRAW_ARB"("0x88E4") + "GL_STATIC_READ_ARB"("0x88E5") + "GL_STATIC_COPY_ARB"("0x88E6") + "GL_DYNAMIC_DRAW_ARB"("0x88E8") + "GL_DYNAMIC_READ_ARB"("0x88E9") + "GL_DYNAMIC_COPY_ARB"("0x88EA") + "glBindBufferARB"(void, GLenum("target"), GLuint("buffer")) + "glDeleteBuffersARB"(void, GLsizei("n"), address("buffers", "const GLuint*")) + "glGenBuffersARB"(void, GLsizei("n"), address("buffers", "GLuint*")) + "glIsBufferARB"(boolean, GLuint("buffer")) + "glBufferDataARB"( + void, + GLenum("target"), + GLsizeiptrARB("size"), + address("data", "const void*"), + GLenum("usage") + ) + "glBufferSubDataARB"( + void, + GLenum("target"), + GLintptrARB("offset"), + GLsizeiptrARB("size"), + address("data", "const void*") + ) + "glGetBufferSubDataARB"( + void, + GLenum("target"), + GLintptrARB("offset"), + GLsizeiptrARB("size"), + address("data", "void*") + ) + "glMapBufferARB"(address, GLenum("target"), GLenum("access"), nativeType = "void*") + "glUnmapBufferARB"(boolean, GLenum("target")) + "glGetBufferParameterivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint*")) + "glGetBufferPointervARB"(void, GLenum("target"), GLenum("pname"), address("params", "void**")) + } + file("VertexProgram", ARB, "GL_ARB_vertex_program") { + "GL_COLOR_SUM_ARB"("0x8458") + "GL_VERTEX_PROGRAM_ARB"("0x8620") + "GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB"("0x8622") + "GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB"("0x8623") + "GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB"("0x8624") + "GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB"("0x8625") + "GL_CURRENT_VERTEX_ATTRIB_ARB"("0x8626") + "GL_VERTEX_PROGRAM_POINT_SIZE_ARB"("0x8642") + "GL_VERTEX_PROGRAM_TWO_SIDE_ARB"("0x8643") + "GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB"("0x8645") + "GL_MAX_VERTEX_ATTRIBS_ARB"("0x8869") + "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"("0x886A") + "GL_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B0") + "GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B1") + "GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B2") + "GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B3") + "glVertexAttrib1dARB"(void, GLuint("index"), GLdouble("x")) + "glVertexAttrib1dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib1fARB"(void, GLuint("index"), GLfloat("x")) + "glVertexAttrib1fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib1sARB"(void, GLuint("index"), GLshort("x")) + "glVertexAttrib1svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib2dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) + "glVertexAttrib2dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib2fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y")) + "glVertexAttrib2fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib2sARB"(void, GLuint("index"), GLshort("x"), GLshort("y")) + "glVertexAttrib2svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib3dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glVertexAttrib3dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib3fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glVertexAttrib3fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib3sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z")) + "glVertexAttrib3svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4NbvARB"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttrib4NivARB"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttrib4NsvARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4NubARB"(void, GLuint("index"), GLubyte("x"), GLubyte("y"), GLubyte("z"), GLubyte("w")) + "glVertexAttrib4NubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttrib4NuivARB"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttrib4NusvARB"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttrib4bvARB"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttrib4dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glVertexAttrib4dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib4fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) + "glVertexAttrib4fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib4ivARB"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttrib4sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) + "glVertexAttrib4svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4ubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttrib4uivARB"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttrib4usvARB"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttribPointerARB"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glEnableVertexAttribArrayARB"(void, GLuint("index")) + "glDisableVertexAttribArrayARB"(void, GLuint("index")) + "glGetVertexAttribdvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) + "glGetVertexAttribfvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) + "glGetVertexAttribivARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) + "glGetVertexAttribPointervARB"(void, GLuint("index"), GLenum("pname"), address("pointer", "void **")) + } + file("VertexShader", ARB, "GL_ARB_vertex_shader") { + "GL_VERTEX_SHADER_ARB"("0x8B31") + "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB"("0x8B4A") + "GL_MAX_VARYING_FLOATS_ARB"("0x8B4B") + "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"("0x8B4C") + "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"("0x8B4D") + "GL_OBJECT_ACTIVE_ATTRIBUTES_ARB"("0x8B89") + "GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"("0x8B8A") + "glBindAttribLocationARB"( + void, + GLhandleARB("programObj"), + GLuint("index"), + address("name", "const GLcharARB *") + ) + "glGetActiveAttribARB"( + void, + GLhandleARB("programObj"), + GLuint("index"), + GLsizei("maxLength"), + address("length", "GLsizei *"), + address("size", "GLint *"), + address("type", "GLenum *"), + address("name", "GLcharARB *") + ) + "glGetAttribLocationARB"(GLint, GLhandleARB("programObj"), address("name", "const GLcharARB *")) + } + file("ViewportArray", ARB, "GL_ARB_viewport_array") { + "glDepthRangeArraydvNV"(void, GLuint("first"), GLsizei("count"), address("v", "const GLdouble *")) + "glDepthRangeIndexeddNV"(void, GLuint("index"), GLdouble("n"), GLdouble("f")) + } + file("WindowPos", ARB, "GL_ARB_window_pos") { + "glWindowPos2dARB"(void, GLdouble("x"), GLdouble("y")) + "glWindowPos2dvARB"(void, address("v", "const GLdouble *")) + "glWindowPos2fARB"(void, GLfloat("x"), GLfloat("y")) + "glWindowPos2fvARB"(void, address("v", "const GLfloat *")) + "glWindowPos2iARB"(void, GLint("x"), GLint("y")) + "glWindowPos2ivARB"(void, address("v", "const GLint *")) + "glWindowPos2sARB"(void, GLshort("x"), GLshort("y")) + "glWindowPos2svARB"(void, address("v", "const GLshort *")) + "glWindowPos3dARB"(void, GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glWindowPos3dvARB"(void, address("v", "const GLdouble *")) + "glWindowPos3fARB"(void, GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glWindowPos3fvARB"(void, address("v", "const GLfloat *")) + "glWindowPos3iARB"(void, GLint("x"), GLint("y"), GLint("z")) + "glWindowPos3ivARB"(void, address("v", "const GLint *")) + "glWindowPos3sARB"(void, GLshort("x"), GLshort("y"), GLshort("z")) + "glWindowPos3svARB"(void, address("v", "const GLshort *")) + } +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt new file mode 100644 index 00000000..9d8f62a6 --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt @@ -0,0 +1,1631 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.NV +import overrungl.opengl.OpenGLExt.NVX + +/** + * @author squid233 + * @since 0.1.0 + */ +fun nv() { + file("ConditionalRender", NVX, "GL_NVX_conditional_render") { + "glBeginConditionalRenderNVX"(void, GLuint("id")) + "glEndConditionalRenderNVX"(void) + } + file( + "GpuMemoryInfo", NVX, "GL_NVX_gpu_memory_info", + "GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX" to "0x9047", + "GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX" to "0x9048", + "GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX" to "0x9049", + "GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX" to "0x904A", + "GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX" to "0x904B" + ) + file("GpuMulticast2", NVX, "GL_NVX_gpu_multicast2") { + "GL_UPLOAD_GPU_MASK_NVX"("0x954A") + "glUploadGpuMaskNVX"(void, GLbitfield("mask")) + "glMulticastViewportArrayvNVX"( + void, + GLuint("gpu"), + GLuint("first"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glMulticastViewportPositionWScaleNVX"( + void, + GLuint("gpu"), + GLuint("index"), + GLfloat("xcoeff"), + GLfloat("ycoeff") + ) + "glMulticastScissorArrayvNVX"( + void, + GLuint("gpu"), + GLuint("first"), + GLsizei("count"), + address("v", "const GLint *") + ) + "glAsyncCopyBufferSubDataNVX"( + GLuint, + GLsizei("waitSemaphoreCount"), + address("waitSemaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *"), + GLuint("readGpu"), + GLbitfield("writeGpuMask"), + GLuint("readBuffer"), + GLuint("writeBuffer"), + GLintptr("readOffset"), + GLintptr("writeOffset"), + GLsizeiptr("size"), + GLsizei("signalSemaphoreCount"), + address("signalSemaphoreArray", "const GLuint *"), + address("signalValueArray", "const GLuint64 *") + ) + "glAsyncCopyImageSubDataNVX"( + GLuint, + GLsizei("waitSemaphoreCount"), + address("waitSemaphoreArray", "const GLuint *"), + address("waitValueArray", "const GLuint64 *"), + GLuint("srcGpu"), + GLbitfield("dstGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("srcWidth"), + GLsizei("srcHeight"), + GLsizei("srcDepth"), + GLsizei("signalSemaphoreCount"), + address("signalSemaphoreArray", "const GLuint *"), + address("signalValueArray", "const GLuint64 *") + ) + } + file("LinkedGpuMulticast", NVX, "GL_NVX_linked_gpu_multicast") { + "GL_LGPU_SEPARATE_STORAGE_BIT_NVX"("0x0800") + "GL_MAX_LGPU_GPUS_NVX"("0x92BA") + "glLGPUNamedBufferSubDataNVX"( + void, + GLbitfield("gpuMask"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "const void *") + ) + "glLGPUCopyImageSubDataNVX"( + void, + GLuint("sourceGpu"), + GLbitfield("destinationGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srxY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + "glLGPUInterlockNVX"(void) + } + file("ProgressFence", NVX, "GL_NVX_progress_fence") { + "glCreateProgressFenceNVX"(void) + "glSignalSemaphoreui64NVX"( + void, + GLuint("signalGpu"), + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + "glWaitSemaphoreui64NVX"( + void, + GLuint("waitGpu"), + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + "glClientWaitSemaphoreui64NVX"( + void, + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + } + file("AlphaToCoverageDitherControl", NV, "GL_NV_alpha_to_coverage_dither_control") { + "GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV"("0x934D") + "GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV"("0x934E") + "GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV"("0x934F") + "GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV"("0x92BF") + "glAlphaToCoverageDitherControlNV"(void, GLenum("mode")) + } + file("BindlessMultiDrawIndirect", NV, "GL_NV_bindless_multi_draw_indirect") { + "glMultiDrawArraysIndirectBindlessNV"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + "glMultiDrawElementsIndirectBindlessNV"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + } + file("BindlessMultiDrawIndirectCount", NV, "GL_NV_bindless_multi_draw_indirect_count") { + "glMultiDrawArraysIndirectBindlessCountNV"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("maxDrawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + "glMultiDrawElementsIndirectBindlessCountNV"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("maxDrawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + } + file("BindlessTexture", NV, "GL_NV_bindless_texture") { + "glGetTextureHandleNV"(GLuint64, GLuint("texture")) + "glGetTextureSamplerHandleNV"(GLuint64, GLuint("texture"), GLuint("sampler")) + "glMakeTextureHandleResidentNV"(void, GLuint64("handle")) + "glMakeTextureHandleNonResidentNV"(void, GLuint64("handle")) + "glGetImageHandleNV"( + GLuint64, + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("format") + ) + "glMakeImageHandleResidentNV"(void, GLuint64("handle"), GLenum("access")) + "glMakeImageHandleNonResidentNV"(void, GLuint64("handle")) + "glUniformHandleui64NV"(void, GLint("location"), GLuint64("value")) + "glUniformHandleui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glProgramUniformHandleui64NV"(void, GLuint("program"), GLint("location"), GLuint64("value")) + "glProgramUniformHandleui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("values", "const GLuint64 *") + ) + "glIsTextureHandleResidentNV"(GLboolean, GLuint64("handle")) + "glIsImageHandleResidentNV"(GLboolean, GLuint64("handle")) + } + file("BlendEquationAdvanced", NV, "GL_NV_blend_equation_advanced") { + "GL_BLEND_OVERLAP_NV"("0x9281") + "GL_BLEND_PREMULTIPLIED_SRC_NV"("0x9280") + "GL_BLUE_NV"("0x1905") + "GL_COLORBURN_NV"("0x929A") + "GL_COLORDODGE_NV"("0x9299") + "GL_CONJOINT_NV"("0x9284") + "GL_CONTRAST_NV"("0x92A1") + "GL_DARKEN_NV"("0x9297") + "GL_DIFFERENCE_NV"("0x929E") + "GL_DISJOINT_NV"("0x9283") + "GL_DST_ATOP_NV"("0x928F") + "GL_DST_IN_NV"("0x928B") + "GL_DST_NV"("0x9287") + "GL_DST_OUT_NV"("0x928D") + "GL_DST_OVER_NV"("0x9289") + "GL_EXCLUSION_NV"("0x92A0") + "GL_GREEN_NV"("0x1904") + "GL_HARDLIGHT_NV"("0x929B") + "GL_HARDMIX_NV"("0x92A9") + "GL_HSL_COLOR_NV"("0x92AF") + "GL_HSL_HUE_NV"("0x92AD") + "GL_HSL_LUMINOSITY_NV"("0x92B0") + "GL_HSL_SATURATION_NV"("0x92AE") + "GL_INVERT_OVG_NV"("0x92B4") + "GL_INVERT_RGB_NV"("0x92A3") + "GL_LIGHTEN_NV"("0x9298") + "GL_LINEARBURN_NV"("0x92A5") + "GL_LINEARDODGE_NV"("0x92A4") + "GL_LINEARLIGHT_NV"("0x92A7") + "GL_MINUS_CLAMPED_NV"("0x92B3") + "GL_MINUS_NV"("0x929F") + "GL_MULTIPLY_NV"("0x9294") + "GL_OVERLAY_NV"("0x9296") + "GL_PINLIGHT_NV"("0x92A8") + "GL_PLUS_CLAMPED_ALPHA_NV"("0x92B2") + "GL_PLUS_CLAMPED_NV"("0x92B1") + "GL_PLUS_DARKER_NV"("0x9292") + "GL_PLUS_NV"("0x9291") + "GL_RED_NV"("0x1903") + "GL_SCREEN_NV"("0x9295") + "GL_SOFTLIGHT_NV"("0x929C") + "GL_SRC_ATOP_NV"("0x928E") + "GL_SRC_IN_NV"("0x928A") + "GL_SRC_NV"("0x9286") + "GL_SRC_OUT_NV"("0x928C") + "GL_SRC_OVER_NV"("0x9288") + "GL_UNCORRELATED_NV"("0x9282") + "GL_VIVIDLIGHT_NV"("0x92A6") + "GL_XOR_NV"("0x1506") + "glBlendParameteriNV"(void, GLenum("pname"), GLint("value")) + "glBlendBarrierNV"(void) + } + file( + "BlendEquationAdvancedCoherent", + NV, + "GL_NV_blend_equation_advanced_coherent", + "GL_BLEND_ADVANCED_COHERENT_NV" to "0x9285" + ) + file("ClipSpaceWScaling", NV, "GL_NV_clip_space_w_scaling") { + "GL_VIEWPORT_POSITION_W_SCALE_NV"("0x937C") + "GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV"("0x937D") + "GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV"("0x937E") + "glViewportPositionWScaleNV"(void, GLuint("index"), GLfloat("xcoeff"), GLfloat("ycoeff")) + } + file("CommandList", NV, "GL_NV_command_list") { + "GL_TERMINATE_SEQUENCE_COMMAND_NV"("0x0000") + "GL_NOP_COMMAND_NV"("0x0001") + "GL_DRAW_ELEMENTS_COMMAND_NV"("0x0002") + "GL_DRAW_ARRAYS_COMMAND_NV"("0x0003") + "GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"("0x0004") + "GL_DRAW_ARRAYS_STRIP_COMMAND_NV"("0x0005") + "GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"("0x0006") + "GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"("0x0007") + "GL_ELEMENT_ADDRESS_COMMAND_NV"("0x0008") + "GL_ATTRIBUTE_ADDRESS_COMMAND_NV"("0x0009") + "GL_UNIFORM_ADDRESS_COMMAND_NV"("0x000A") + "GL_BLEND_COLOR_COMMAND_NV"("0x000B") + "GL_STENCIL_REF_COMMAND_NV"("0x000C") + "GL_LINE_WIDTH_COMMAND_NV"("0x000D") + "GL_POLYGON_OFFSET_COMMAND_NV"("0x000E") + "GL_ALPHA_REF_COMMAND_NV"("0x000F") + "GL_VIEWPORT_COMMAND_NV"("0x0010") + "GL_SCISSOR_COMMAND_NV"("0x0011") + "GL_FRONT_FACE_COMMAND_NV"("0x0012") + "glCreateStatesNV"(void, GLsizei("n"), address("states", "GLuint *")) + "glDeleteStatesNV"(void, GLsizei("n"), address("states", "const GLuint *")) + "glIsStateNV"(GLboolean, GLuint("state")) + "glStateCaptureNV"(void, GLuint("state"), GLenum("mode")) + "glGetCommandHeaderNV"(GLuint, GLenum("tokenID"), GLuint("size")) + "glGetStageIndexNV"(GLushort, GLenum("shadertype")) + "glDrawCommandsNV"( + void, + GLenum("primitiveMode"), + GLuint("buffer"), + address("indirects", "const GLintptr *"), + address("sizes", "const GLsizei *"), + GLuint("count") + ) + "glDrawCommandsAddressNV"( + void, + GLenum("primitiveMode"), + address("indirects", "const GLuint64 *"), + address("sizes", "const GLsizei *"), + GLuint("count") + ) + "glDrawCommandsStatesNV"( + void, + GLuint("buffer"), + address("indirects", "const GLintptr *"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glDrawCommandsStatesAddressNV"( + void, + address("indirects", "const GLuint64 *"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glCreateCommandListsNV"(void, GLsizei("n"), address("lists", "GLuint *")) + "glDeleteCommandListsNV"(void, GLsizei("n"), address("lists", "const GLuint *")) + "glIsCommandListNV"(GLboolean, GLuint("list")) + "glListDrawCommandsStatesClientNV"( + void, + GLuint("list"), + GLuint("segment"), + address("indirects", "const void **"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glCommandListSegmentsNV"(void, GLuint("list"), GLuint("segments")) + "glCompileCommandListNV"(void, GLuint("list")) + "glCallCommandListNV"(void, GLuint("list")) + } + file( + "ComputeProgram5", NV, "GL_NV_compute_program5", + "GL_COMPUTE_PROGRAM_NV" to "0x90FB", + "GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV" to "0x90FC" + ) + file("ConditionalRender", NV, "GL_NV_conditional_render") { + "GL_QUERY_WAIT_NV"("0x8E13") + "GL_QUERY_NO_WAIT_NV"("0x8E14") + "GL_QUERY_BY_REGION_WAIT_NV"("0x8E15") + "GL_QUERY_BY_REGION_NO_WAIT_NV"("0x8E16") + "glBeginConditionalRenderNV"(void, GLuint("id"), GLenum("mode")) + "glEndConditionalRenderNV"(void) + } + file("ConservativeRaster", NV, "GL_NV_conservative_raster") { + "GL_CONSERVATIVE_RASTERIZATION_NV"("0x9346") + "GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"("0x9347") + "GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"("0x9348") + "GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"("0x9349") + "glSubpixelPrecisionBiasNV"(void, GLuint("xbits"), GLuint("ybits")) + } + file("ConservativeRasterDilate", NV, "GL_NV_conservative_raster_dilate") { + "GL_CONSERVATIVE_RASTER_DILATE_NV"("0x9379") + "GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV"("0x937A") + "GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV"("0x937B") + "glConservativeRasterParameterfNV"(void, GLenum("pname"), GLfloat("value")) + } + file( + "ConservativeRasterPreSnap", + NV, + "GL_NV_conservative_raster_pre_snap", + "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV" to "0x9550" + ) + file("ConservativeRasterPreSnapTriangles", NV, "GL_NV_conservative_raster_pre_snap_triangles") { + "GL_CONSERVATIVE_RASTER_MODE_NV"("0x954D") + "GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV"("0x954E") + "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV"("0x954F") + "glConservativeRasterParameteriNV"(void, GLenum("pname"), GLint("param")) + } + file( + "CopyDepthToColor", NV, "GL_NV_copy_depth_to_color", + "GL_DEPTH_STENCIL_TO_RGBA_NV" to "0x886E", + "GL_DEPTH_STENCIL_TO_BGRA_NV" to "0x886F" + ) + file("CopyImage", NV, "GL_NV_copy_image") { + "glCopyImageSubDataNV"( + void, + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + } + file( + "DeepTexture3D", NV, "GL_NV_deep_texture3D", + "GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV" to "0x90D0", + "GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV" to "0x90D1" + ) + file("DepthBufferFloat", NV, "GL_NV_depth_buffer_float") { + "GL_DEPTH_COMPONENT32F_NV"("0x8DAB") + "GL_DEPTH32F_STENCIL8_NV"("0x8DAC") + "GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV"("0x8DAD") + "GL_DEPTH_BUFFER_FLOAT_MODE_NV"("0x8DAF") + "glDepthRangedNV"(void, GLdouble("zNear"), GLdouble("zFar")) + "glClearDepthdNV"(void, GLdouble("depth")) + "glDepthBoundsdNV"(void, GLdouble("zmin"), GLdouble("zmax")) + } + file("DepthClamp", NV, "GL_NV_depth_clamp", "GL_DEPTH_CLAMP_NV" to "0x864F") + file("DrawTexture", NV, "GL_NV_draw_texture") { + "glDrawTextureNV"( + void, + GLuint("texture"), + GLuint("sampler"), + GLfloat("x0"), + GLfloat("y0"), + GLfloat("x1"), + GLfloat("y1"), + GLfloat("z"), + GLfloat("s0"), + GLfloat("t0"), + GLfloat("s1"), + GLfloat("t1") + ) + } + file("DrawVulkanImage", NV, "GL_NV_draw_vulkan_image") { + "glDrawVkImageNV"( + void, + GLuint64("vkImage"), + GLuint("sampler"), + GLfloat("x0"), + GLfloat("y0"), + GLfloat("x1"), + GLfloat("y1"), + GLfloat("z"), + GLfloat("s0"), + GLfloat("t0"), + GLfloat("s1"), + GLfloat("t1") + ) + "glGetVkProcAddrNV"(address, address("name", "const GLchar *"), nativeType = "GLVULKANPROCNV") + "glWaitVkSemaphoreNV"(void, GLuint64("vkSemaphore")) + "glSignalVkSemaphoreNV"(void, GLuint64("vkSemaphore")) + "glSignalVkFenceNV"(void, GLuint64("vkFence")) + } + file("Evaluators", NV, "GL_NV_evaluators") { + "GL_EVAL_2D_NV"("0x86C0") + "GL_EVAL_TRIANGULAR_2D_NV"("0x86C1") + "GL_MAP_TESSELLATION_NV"("0x86C2") + "GL_MAP_ATTRIB_U_ORDER_NV"("0x86C3") + "GL_MAP_ATTRIB_V_ORDER_NV"("0x86C4") + "GL_EVAL_FRACTIONAL_TESSELLATION_NV"("0x86C5") + "GL_EVAL_VERTEX_ATTRIB0_NV"("0x86C6") + "GL_EVAL_VERTEX_ATTRIB1_NV"("0x86C7") + "GL_EVAL_VERTEX_ATTRIB2_NV"("0x86C8") + "GL_EVAL_VERTEX_ATTRIB3_NV"("0x86C9") + "GL_EVAL_VERTEX_ATTRIB4_NV"("0x86CA") + "GL_EVAL_VERTEX_ATTRIB5_NV"("0x86CB") + "GL_EVAL_VERTEX_ATTRIB6_NV"("0x86CC") + "GL_EVAL_VERTEX_ATTRIB7_NV"("0x86CD") + "GL_EVAL_VERTEX_ATTRIB8_NV"("0x86CE") + "GL_EVAL_VERTEX_ATTRIB9_NV"("0x86CF") + "GL_EVAL_VERTEX_ATTRIB10_NV"("0x86D0") + "GL_EVAL_VERTEX_ATTRIB11_NV"("0x86D1") + "GL_EVAL_VERTEX_ATTRIB12_NV"("0x86D2") + "GL_EVAL_VERTEX_ATTRIB13_NV"("0x86D3") + "GL_EVAL_VERTEX_ATTRIB14_NV"("0x86D4") + "GL_EVAL_VERTEX_ATTRIB15_NV"("0x86D5") + "GL_MAX_MAP_TESSELLATION_NV"("0x86D6") + "GL_MAX_RATIONAL_EVAL_ORDER_NV"("0x86D7") + "glMapControlPointsNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("type"), + GLsizei("ustride"), + GLsizei("vstride"), + GLint("uorder"), + GLint("vorder"), + GLboolean("packed"), + address("points", "const void *") + ) + "glMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glGetMapControlPointsNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("type"), + GLsizei("ustride"), + GLsizei("vstride"), + GLboolean("packed"), + address("points", "void *") + ) + "glGetMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMapAttribParameterivNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetMapAttribParameterfvNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glEvalMapsNV"(void, GLenum("target"), GLenum("mode")) + } + file("ExplicitMultisample", NV, "GL_NV_explicit_multisample") { + "GL_SAMPLE_POSITION_NV"("0x8E50") + "GL_SAMPLE_MASK_NV"("0x8E51") + "GL_SAMPLE_MASK_VALUE_NV"("0x8E52") + "GL_TEXTURE_BINDING_RENDERBUFFER_NV"("0x8E53") + "GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV"("0x8E54") + "GL_TEXTURE_RENDERBUFFER_NV"("0x8E55") + "GL_SAMPLER_RENDERBUFFER_NV"("0x8E56") + "GL_INT_SAMPLER_RENDERBUFFER_NV"("0x8E57") + "GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV"("0x8E58") + "GL_MAX_SAMPLE_MASK_WORDS_NV"("0x8E59") + "glGetMultisamplefvNV"(void, GLenum("pname"), GLuint("index"), address("val", "GLfloat *")) + "glSampleMaskIndexedNV"(void, GLuint("index"), GLbitfield("mask")) + "glTexRenderbufferNV"(void, GLenum("target"), GLuint("renderbuffer")) + } + file("Fence", NV, "GL_NV_fence") { + "GL_ALL_COMPLETED_NV"("0x84F2") + "GL_FENCE_STATUS_NV"("0x84F3") + "GL_FENCE_CONDITION_NV"("0x84F4") + "glDeleteFencesNV"(void, GLsizei("n"), address("fences", "const GLuint *")) + "glGenFencesNV"(void, GLsizei("n"), address("fences", "GLuint *")) + "glIsFenceNV"(GLboolean, GLuint("fence")) + "glTestFenceNV"(GLboolean, GLuint("fence")) + "glGetFenceivNV"(void, GLuint("fence"), GLenum("pname"), address("params", "GLint *")) + "glFinishFenceNV"(void, GLuint("fence")) + "glSetFenceNV"(void, GLuint("fence"), GLenum("condition")) + } + file("FillRectangle", NV, "GL_NV_fill_rectangle", "GL_FILL_RECTANGLE_NV" to "0x933C") + file( + "FloatBuffer", NV, "GL_NV_float_buffer", + "GL_FLOAT_R_NV" to "0x8880", + "GL_FLOAT_RG_NV" to "0x8881", + "GL_FLOAT_RGB_NV" to "0x8882", + "GL_FLOAT_RGBA_NV" to "0x8883", + "GL_FLOAT_R16_NV" to "0x8884", + "GL_FLOAT_R32_NV" to "0x8885", + "GL_FLOAT_RG16_NV" to "0x8886", + "GL_FLOAT_RG32_NV" to "0x8887", + "GL_FLOAT_RGB16_NV" to "0x8888", + "GL_FLOAT_RGB32_NV" to "0x8889", + "GL_FLOAT_RGBA16_NV" to "0x888A", + "GL_FLOAT_RGBA32_NV" to "0x888B", + "GL_TEXTURE_FLOAT_COMPONENTS_NV" to "0x888C", + "GL_FLOAT_CLEAR_COLOR_VALUE_NV" to "0x888D", + "GL_FLOAT_RGBA_MODE_NV" to "0x888E" + ) + file( + "FogDistance", NV, "GL_NV_fog_distance", + "GL_FOG_DISTANCE_MODE_NV" to "0x855A", + "GL_EYE_RADIAL_NV" to "0x855B", + "GL_EYE_PLANE_ABSOLUTE_NV" to "0x855C" + ) + file("FragmentCoverageToColor", NV, "GL_NV_fragment_coverage_to_color") { + "GL_FRAGMENT_COVERAGE_TO_COLOR_NV"("0x92DD") + "GL_FRAGMENT_COVERAGE_COLOR_NV"("0x92DE") + "glFragmentCoverageColorNV"(void, GLuint("color")) + } + file("FragmentProgram", NV, "GL_NV_fragment_program") { + "GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV"("0x8868") + "GL_FRAGMENT_PROGRAM_NV"("0x8870") + "GL_MAX_TEXTURE_COORDS_NV"("0x8871") + "GL_MAX_TEXTURE_IMAGE_UNITS_NV"("0x8872") + "GL_FRAGMENT_PROGRAM_BINDING_NV"("0x8873") + "GL_PROGRAM_ERROR_STRING_NV"("0x8874") + "glProgramNamedParameter4fNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramNamedParameter4fvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("v", "const GLfloat *") + ) + "glProgramNamedParameter4dNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramNamedParameter4dvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("v", "const GLdouble *") + ) + "glGetProgramNamedParameterfvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("params", "GLfloat *") + ) + "glGetProgramNamedParameterdvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("params", "GLdouble *") + ) + } + file( + "FragmentProgram2", NV, "GL_NV_fragment_program2", + "GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" to "0x88F4", + "GL_MAX_PROGRAM_CALL_DEPTH_NV" to "0x88F5", + "GL_MAX_PROGRAM_IF_DEPTH_NV" to "0x88F6", + "GL_MAX_PROGRAM_LOOP_DEPTH_NV" to "0x88F7", + "GL_MAX_PROGRAM_LOOP_COUNT_NV" to "0x88F8" + ) + file("FramebufferMixedSamples", NV, "GL_NV_framebuffer_mixed_samples") { + "GL_COVERAGE_MODULATION_TABLE_NV"("0x9331") + "GL_COLOR_SAMPLES_NV"("0x8E20") + "GL_DEPTH_SAMPLES_NV"("0x932D") + "GL_STENCIL_SAMPLES_NV"("0x932E") + "GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV"("0x932F") + "GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV"("0x9330") + "GL_COVERAGE_MODULATION_NV"("0x9332") + "GL_COVERAGE_MODULATION_TABLE_SIZE_NV"("0x9333") + "glCoverageModulationTableNV"(void, GLsizei("n"), address("v", "const GLfloat *")) + "glGetCoverageModulationTableNV"(void, GLsizei("bufSize"), address("v", "GLfloat *")) + "glCoverageModulationNV"(void, GLenum("components")) + } + file("FramebufferMultisampleCoverage", NV, "GL_NV_framebuffer_multisample_coverage") { + "GL_RENDERBUFFER_COVERAGE_SAMPLES_NV"("0x8CAB") + "GL_RENDERBUFFER_COLOR_SAMPLES_NV"("0x8E10") + "GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV"("0x8E11") + "GL_MULTISAMPLE_COVERAGE_MODES_NV"("0x8E12") + "glRenderbufferStorageMultisampleCoverageNV"( + void, + GLenum("target"), + GLsizei("coverageSamples"), + GLsizei("colorSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + } + file("GeometryProgram4", NV, "GL_NV_geometry_program4") { + "GL_GEOMETRY_PROGRAM_NV"("0x8C26") + "GL_MAX_PROGRAM_OUTPUT_VERTICES_NV"("0x8C27") + "GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV"("0x8C28") + "glProgramVertexLimitNV"(void, GLenum("target"), GLint("limit")) + "glFramebufferTextureEXT"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) + "glFramebufferTextureFaceEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLenum("face") + ) + } + file("GpuMulticast", NV, "GL_NV_gpu_multicast") { + "GL_PER_GPU_STORAGE_BIT_NV"("0x0800") + "GL_MULTICAST_GPUS_NV"("0x92BA") + "GL_RENDER_GPU_MASK_NV"("0x9558") + "GL_PER_GPU_STORAGE_NV"("0x9548") + "GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV"("0x9549") + "glRenderGpuMaskNV"(void, GLbitfield("mask")) + "glMulticastBufferSubDataNV"( + void, + GLbitfield("gpuMask"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "const void *") + ) + "glMulticastCopyBufferSubDataNV"( + void, + GLuint("readGpu"), + GLbitfield("writeGpuMask"), + GLuint("readBuffer"), + GLuint("writeBuffer"), + GLintptr("readOffset"), + GLintptr("writeOffset"), + GLsizeiptr("size") + ) + "glMulticastCopyImageSubDataNV"( + void, + GLuint("srcGpu"), + GLbitfield("dstGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("srcWidth"), + GLsizei("srcHeight"), + GLsizei("srcDepth") + ) + "glMulticastBlitFramebufferNV"( + void, + GLuint("srcGpu"), + GLuint("dstGpu"), + GLint("srcX0"), + GLint("srcY0"), + GLint("srcX1"), + GLint("srcY1"), + GLint("dstX0"), + GLint("dstY0"), + GLint("dstX1"), + GLint("dstY1"), + GLbitfield("mask"), + GLenum("filter") + ) + "glMulticastFramebufferSampleLocationsfvNV"( + void, + GLuint("gpu"), + GLuint("framebuffer"), + GLuint("start"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glMulticastBarrierNV"(void) + "glMulticastWaitSyncNV"(void, GLuint("signalGpu"), GLbitfield("waitGpuMask")) + "glMulticastGetQueryObjectivNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLint *") + ) + "glMulticastGetQueryObjectuivNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLuint *") + ) + "glMulticastGetQueryObjecti64vNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLint64 *") + ) + "glMulticastGetQueryObjectui64vNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLuint64 *") + ) + } + file("GpuProgram4", NV, "GL_NV_gpu_program4") { + "GL_MIN_PROGRAM_TEXEL_OFFSET_NV"("0x8904") + "GL_MAX_PROGRAM_TEXEL_OFFSET_NV"("0x8905") + "GL_PROGRAM_ATTRIB_COMPONENTS_NV"("0x8906") + "GL_PROGRAM_RESULT_COMPONENTS_NV"("0x8907") + "GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV"("0x8908") + "GL_MAX_PROGRAM_RESULT_COMPONENTS_NV"("0x8909") + "GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV"("0x8DA5") + "GL_MAX_PROGRAM_GENERIC_RESULTS_NV"("0x8DA6") + "glProgramLocalParameterI4iNV"( + void, + GLenum("target"), + GLuint("index"), + GLint("x"), + GLint("y"), + GLint("z"), + GLint("w") + ) + "glProgramLocalParameterI4ivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLint *")) + "glProgramLocalParametersI4ivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glProgramLocalParameterI4uiNV"( + void, + GLenum("target"), + GLuint("index"), + GLuint("x"), + GLuint("y"), + GLuint("z"), + GLuint("w") + ) + "glProgramLocalParameterI4uivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLuint *")) + "glProgramLocalParametersI4uivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glProgramEnvParameterI4iNV"( + void, + GLenum("target"), + GLuint("index"), + GLint("x"), + GLint("y"), + GLint("z"), + GLint("w") + ) + "glProgramEnvParameterI4ivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLint *")) + "glProgramEnvParametersI4ivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glProgramEnvParameterI4uiNV"( + void, + GLenum("target"), + GLuint("index"), + GLuint("x"), + GLuint("y"), + GLuint("z"), + GLuint("w") + ) + "glProgramEnvParameterI4uivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLuint *")) + "glProgramEnvParametersI4uivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glGetProgramLocalParameterIivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLint *")) + "glGetProgramLocalParameterIuivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLuint *")) + "glGetProgramEnvParameterIivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLint *")) + "glGetProgramEnvParameterIuivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLuint *")) + } + file("GpuProgram5", NV, "GL_NV_gpu_program5") { + "GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV"("0x8E5A") + "GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV"("0x8E5B") + "GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV"("0x8E5C") + "GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV"("0x8E5D") + "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV"("0x8E5E") + "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV"("0x8E5F") + "GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV"("0x8F44") + "GL_MAX_PROGRAM_SUBROUTINE_NUM_NV"("0x8F45") + "glProgramSubroutineParametersuivNV"( + void, + GLenum("target"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glGetProgramSubroutineParameteruivNV"(void, GLenum("target"), GLuint("index"), address("param", "GLuint *")) + } + file("HalfFloat", NV, "GL_NV_half_float") { + "GL_HALF_FLOAT_NV"("0x140B") + "glVertex2hNV"(void, GLhalfNV("x"), GLhalfNV("y")) + "glVertex2hvNV"(void, address("v", "const GLhalfNV *")) + "glVertex3hNV"(void, GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z")) + "glVertex3hvNV"(void, address("v", "const GLhalfNV *")) + "glVertex4hNV"(void, GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z"), GLhalfNV("w")) + "glVertex4hvNV"(void, address("v", "const GLhalfNV *")) + "glNormal3hNV"(void, GLhalfNV("nx"), GLhalfNV("ny"), GLhalfNV("nz")) + "glNormal3hvNV"(void, address("v", "const GLhalfNV *")) + "glColor3hNV"(void, GLhalfNV("red"), GLhalfNV("green"), GLhalfNV("blue")) + "glColor3hvNV"(void, address("v", "const GLhalfNV *")) + "glColor4hNV"(void, GLhalfNV("red"), GLhalfNV("green"), GLhalfNV("blue"), GLhalfNV("alpha")) + "glColor4hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord1hNV"(void, GLhalfNV("s")) + "glTexCoord1hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord2hNV"(void, GLhalfNV("s"), GLhalfNV("t")) + "glTexCoord2hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord3hNV"(void, GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r")) + "glTexCoord3hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord4hNV"(void, GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r"), GLhalfNV("q")) + "glTexCoord4hvNV"(void, address("v", "const GLhalfNV *")) + "glMultiTexCoord1hNV"(void, GLenum("target"), GLhalfNV("s")) + "glMultiTexCoord1hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glMultiTexCoord2hNV"(void, GLenum("target"), GLhalfNV("s"), GLhalfNV("t")) + "glMultiTexCoord2hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glMultiTexCoord3hNV"(void, GLenum("target"), GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r")) + "glMultiTexCoord3hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glMultiTexCoord4hNV"(void, GLenum("target"), GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r"), GLhalfNV("q")) + "glMultiTexCoord4hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glVertexAttrib1hNV"(void, GLuint("index"), GLhalfNV("x")) + "glVertexAttrib1hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttrib2hNV"(void, GLuint("index"), GLhalfNV("x"), GLhalfNV("y")) + "glVertexAttrib2hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttrib3hNV"(void, GLuint("index"), GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z")) + "glVertexAttrib3hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttrib4hNV"(void, GLuint("index"), GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z"), GLhalfNV("w")) + "glVertexAttrib4hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttribs1hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glVertexAttribs2hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glVertexAttribs3hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glVertexAttribs4hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glFogCoordhNV"(void, GLhalfNV("fog")) + "glFogCoordhvNV"(void, address("fog", "const GLhalfNV *")) + "glSecondaryColor3hNV"(void, GLhalfNV("red"), GLhalfNV("green"), GLhalfNV("blue")) + "glSecondaryColor3hvNV"(void, address("v", "const GLhalfNV *")) + "glVertexWeighthNV"(void, GLhalfNV("weight")) + "glVertexWeighthvNV"(void, address("weight", "const GLhalfNV *")) + } + file("InternalformatSampleQuery", NV, "GL_NV_internalformat_sample_query") { + "GL_MULTISAMPLES_NV"("0x9371") + "GL_SUPERSAMPLE_SCALE_X_NV"("0x9372") + "GL_SUPERSAMPLE_SCALE_Y_NV"("0x9373") + "GL_CONFORMANT_NV"("0x9374") + "glGetInternalformatSampleivNV"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("samples"), + GLenum("pname"), + GLsizei("count"), + address("params", "GLint *") + ) + } + file( + "LightMaxExponent", NV, "GL_NV_light_max_exponent", + "GL_MAX_SHININESS_NV" to "0x8504", + "GL_MAX_SPOT_EXPONENT_NV" to "0x8505" + ) + file("MemoryAttachment", NV, "GL_NV_memory_attachment") { + "GL_ATTACHED_MEMORY_OBJECT_NV"("0x95A4") + "GL_ATTACHED_MEMORY_OFFSET_NV"("0x95A5") + "GL_MEMORY_ATTACHABLE_ALIGNMENT_NV"("0x95A6") + "GL_MEMORY_ATTACHABLE_SIZE_NV"("0x95A7") + "GL_MEMORY_ATTACHABLE_NV"("0x95A8") + "GL_DETACHED_MEMORY_INCARNATION_NV"("0x95A9") + "GL_DETACHED_TEXTURES_NV"("0x95AA") + "GL_DETACHED_BUFFERS_NV"("0x95AB") + "GL_MAX_DETACHED_TEXTURES_NV"("0x95AC") + "GL_MAX_DETACHED_BUFFERS_NV"("0x95AD") + "glGetMemoryObjectDetachedResourcesuivNV"( + void, + GLuint("memory"), + GLenum("pname"), + GLint("first"), + GLsizei("count"), + address("params", "GLuint *") + ) + "glResetMemoryObjectParameterNV"(void, GLuint("memory"), GLenum("pname")) + "glTexAttachMemoryNV"(void, GLenum("target"), GLuint("memory"), GLuint64("offset")) + "glBufferAttachMemoryNV"(void, GLenum("target"), GLuint("memory"), GLuint64("offset")) + "glTextureAttachMemoryNV"(void, GLuint("texture"), GLuint("memory"), GLuint64("offset")) + "glNamedBufferAttachMemoryNV"(void, GLuint("buffer"), GLuint("memory"), GLuint64("offset")) + } + file("MemoryObjectSparse", NV, "GL_NV_memory_object_sparse") { + "glBufferPageCommitmentMemNV"( + void, + GLenum("target"), + GLintptr("offset"), + GLsizeiptr("size"), + GLuint("memory"), + GLuint64("memOffset"), + GLboolean("commit") + ) + "glTexPageCommitmentMemNV"( + void, + GLenum("target"), + GLint("layer"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLuint("memory"), + GLuint64("offset"), + GLboolean("commit") + ) + "glNamedBufferPageCommitmentMemNV"( + void, + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + GLuint("memory"), + GLuint64("memOffset"), + GLboolean("commit") + ) + "glTexturePageCommitmentMemNV"( + void, + GLuint("texture"), + GLint("layer"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLuint("memory"), + GLuint64("offset"), + GLboolean("commit") + ) + } + file("MeshShader", NV, "GL_NV_mesh_shader") { + "GL_MESH_SHADER_NV"("0x9559") + "GL_TASK_SHADER_NV"("0x955A") + "GL_MAX_MESH_UNIFORM_BLOCKS_NV"("0x8E60") + "GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV"("0x8E61") + "GL_MAX_MESH_IMAGE_UNIFORMS_NV"("0x8E62") + "GL_MAX_MESH_UNIFORM_COMPONENTS_NV"("0x8E63") + "GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV"("0x8E64") + "GL_MAX_MESH_ATOMIC_COUNTERS_NV"("0x8E65") + "GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV"("0x8E66") + "GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV"("0x8E67") + "GL_MAX_TASK_UNIFORM_BLOCKS_NV"("0x8E68") + "GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV"("0x8E69") + "GL_MAX_TASK_IMAGE_UNIFORMS_NV"("0x8E6A") + "GL_MAX_TASK_UNIFORM_COMPONENTS_NV"("0x8E6B") + "GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV"("0x8E6C") + "GL_MAX_TASK_ATOMIC_COUNTERS_NV"("0x8E6D") + "GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV"("0x8E6E") + "GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV"("0x8E6F") + "GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV"("0x95A2") + "GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV"("0x95A3") + "GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV"("0x9536") + "GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV"("0x9537") + "GL_MAX_MESH_OUTPUT_VERTICES_NV"("0x9538") + "GL_MAX_MESH_OUTPUT_PRIMITIVES_NV"("0x9539") + "GL_MAX_TASK_OUTPUT_COUNT_NV"("0x953A") + "GL_MAX_DRAW_MESH_TASKS_COUNT_NV"("0x953D") + "GL_MAX_MESH_VIEWS_NV"("0x9557") + "GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV"("0x92DF") + "GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV"("0x9543") + "GL_MAX_MESH_WORK_GROUP_SIZE_NV"("0x953B") + "GL_MAX_TASK_WORK_GROUP_SIZE_NV"("0x953C") + "GL_MESH_WORK_GROUP_SIZE_NV"("0x953E") + "GL_TASK_WORK_GROUP_SIZE_NV"("0x953F") + "GL_MESH_VERTICES_OUT_NV"("0x9579") + "GL_MESH_PRIMITIVES_OUT_NV"("0x957A") + "GL_MESH_OUTPUT_TYPE_NV"("0x957B") + "GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV"("0x959C") + "GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV"("0x959D") + "GL_REFERENCED_BY_MESH_SHADER_NV"("0x95A0") + "GL_REFERENCED_BY_TASK_SHADER_NV"("0x95A1") + "GL_MESH_SHADER_BIT_NV"("0x00000040") + "GL_TASK_SHADER_BIT_NV"("0x00000080") + "GL_MESH_SUBROUTINE_NV"("0x957C") + "GL_TASK_SUBROUTINE_NV"("0x957D") + "GL_MESH_SUBROUTINE_UNIFORM_NV"("0x957E") + "GL_TASK_SUBROUTINE_UNIFORM_NV"("0x957F") + "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV"("0x959E") + "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV"("0x959F") + "glDrawMeshTasksNV"(void, GLuint("first"), GLuint("count")) + "glDrawMeshTasksIndirectNV"(void, GLintptr("indirect")) + "glMultiDrawMeshTasksIndirectNV"(void, GLintptr("indirect"), GLsizei("drawcount"), GLsizei("stride")) + "glMultiDrawMeshTasksIndirectCountNV"( + void, + GLintptr("indirect"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + } + file("MultisampleFilterHint", NV, "GL_NV_multisample_filter_hint", "GL_MULTISAMPLE_FILTER_HINT_NV" to "0x8534") + file("OcculusionQuery", NV, "GL_NV_occlusion_query") { + "GL_PIXEL_COUNTER_BITS_NV"("0x8864") + "GL_CURRENT_OCCLUSION_QUERY_ID_NV"("0x8865") + "GL_PIXEL_COUNT_NV"("0x8866") + "GL_PIXEL_COUNT_AVAILABLE_NV"("0x8867") + "glGenOcclusionQueriesNV"(void, GLsizei("n"), address("ids", "GLuint *")) + "glDeleteOcclusionQueriesNV"(void, GLsizei("n"), address("ids", "const GLuint *")) + "glIsOcclusionQueryNV"(GLboolean, GLuint("id")) + "glBeginOcclusionQueryNV"(void, GLuint("id")) + "glEndOcclusionQueryNV"(void) + "glGetOcclusionQueryivNV"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + "glGetOcclusionQueryuivNV"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) + } + file( + "PackedDepthStencil", NV, "GL_NV_packed_depth_stencil", + "GL_DEPTH_STENCIL_NV" to "0x84F9", + "GL_UNSIGNED_INT_24_8_NV" to "0x84FA" + ) + file("ParameterBufferObject", NV, "GL_NV_parameter_buffer_object") { + "GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV"("0x8DA0") + "GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV"("0x8DA1") + "GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV"("0x8DA2") + "GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV"("0x8DA3") + "GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV"("0x8DA4") + "glProgramBufferParametersfvNV"( + void, + GLenum("target"), + GLuint("bindingIndex"), + GLuint("wordIndex"), + GLsizei("count"), + address("params", "const GLfloat *") + ) + "glProgramBufferParametersIivNV"( + void, + GLenum("target"), + GLuint("bindingIndex"), + GLuint("wordIndex"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glProgramBufferParametersIuivNV"( + void, + GLenum("target"), + GLuint("bindingIndex"), + GLuint("wordIndex"), + GLsizei("count"), + address("params", "const GLuint *") + ) + } + file("PathRendering", NV, "GL_NV_path_rendering") { + "GL_PATH_FORMAT_SVG_NV"("0x9070") + "GL_PATH_FORMAT_PS_NV"("0x9071") + "GL_STANDARD_FONT_NAME_NV"("0x9072") + "GL_SYSTEM_FONT_NAME_NV"("0x9073") + "GL_FILE_NAME_NV"("0x9074") + "GL_PATH_STROKE_WIDTH_NV"("0x9075") + "GL_PATH_END_CAPS_NV"("0x9076") + "GL_PATH_INITIAL_END_CAP_NV"("0x9077") + "GL_PATH_TERMINAL_END_CAP_NV"("0x9078") + "GL_PATH_JOIN_STYLE_NV"("0x9079") + "GL_PATH_MITER_LIMIT_NV"("0x907A") + "GL_PATH_DASH_CAPS_NV"("0x907B") + "GL_PATH_INITIAL_DASH_CAP_NV"("0x907C") + "GL_PATH_TERMINAL_DASH_CAP_NV"("0x907D") + "GL_PATH_DASH_OFFSET_NV"("0x907E") + "GL_PATH_CLIENT_LENGTH_NV"("0x907F") + "GL_PATH_FILL_MODE_NV"("0x9080") + "GL_PATH_FILL_MASK_NV"("0x9081") + "GL_PATH_FILL_COVER_MODE_NV"("0x9082") + "GL_PATH_STROKE_COVER_MODE_NV"("0x9083") + "GL_PATH_STROKE_MASK_NV"("0x9084") + "GL_COUNT_UP_NV"("0x9088") + "GL_COUNT_DOWN_NV"("0x9089") + "GL_PATH_OBJECT_BOUNDING_BOX_NV"("0x908A") + "GL_CONVEX_HULL_NV"("0x908B") + "GL_BOUNDING_BOX_NV"("0x908D") + "GL_TRANSLATE_X_NV"("0x908E") + "GL_TRANSLATE_Y_NV"("0x908F") + "GL_TRANSLATE_2D_NV"("0x9090") + "GL_TRANSLATE_3D_NV"("0x9091") + "GL_AFFINE_2D_NV"("0x9092") + "GL_AFFINE_3D_NV"("0x9094") + "GL_TRANSPOSE_AFFINE_2D_NV"("0x9096") + "GL_TRANSPOSE_AFFINE_3D_NV"("0x9098") + "GL_UTF8_NV"("0x909A") + "GL_UTF16_NV"("0x909B") + "GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV"("0x909C") + "GL_PATH_COMMAND_COUNT_NV"("0x909D") + "GL_PATH_COORD_COUNT_NV"("0x909E") + "GL_PATH_DASH_ARRAY_COUNT_NV"("0x909F") + "GL_PATH_COMPUTED_LENGTH_NV"("0x90A0") + "GL_PATH_FILL_BOUNDING_BOX_NV"("0x90A1") + "GL_PATH_STROKE_BOUNDING_BOX_NV"("0x90A2") + "GL_SQUARE_NV"("0x90A3") + "GL_ROUND_NV"("0x90A4") + "GL_TRIANGULAR_NV"("0x90A5") + "GL_BEVEL_NV"("0x90A6") + "GL_MITER_REVERT_NV"("0x90A7") + "GL_MITER_TRUNCATE_NV"("0x90A8") + "GL_SKIP_MISSING_GLYPH_NV"("0x90A9") + "GL_USE_MISSING_GLYPH_NV"("0x90AA") + "GL_PATH_ERROR_POSITION_NV"("0x90AB") + "GL_ACCUM_ADJACENT_PAIRS_NV"("0x90AD") + "GL_ADJACENT_PAIRS_NV"("0x90AE") + "GL_FIRST_TO_REST_NV"("0x90AF") + "GL_PATH_GEN_MODE_NV"("0x90B0") + "GL_PATH_GEN_COEFF_NV"("0x90B1") + "GL_PATH_GEN_COMPONENTS_NV"("0x90B3") + "GL_PATH_STENCIL_FUNC_NV"("0x90B7") + "GL_PATH_STENCIL_REF_NV"("0x90B8") + "GL_PATH_STENCIL_VALUE_MASK_NV"("0x90B9") + "GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV"("0x90BD") + "GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV"("0x90BE") + "GL_PATH_COVER_DEPTH_FUNC_NV"("0x90BF") + "GL_PATH_DASH_OFFSET_RESET_NV"("0x90B4") + "GL_MOVE_TO_RESETS_NV"("0x90B5") + "GL_MOVE_TO_CONTINUES_NV"("0x90B6") + "GL_CLOSE_PATH_NV"("0x00") + "GL_MOVE_TO_NV"("0x02") + "GL_RELATIVE_MOVE_TO_NV"("0x03") + "GL_LINE_TO_NV"("0x04") + "GL_RELATIVE_LINE_TO_NV"("0x05") + "GL_HORIZONTAL_LINE_TO_NV"("0x06") + "GL_RELATIVE_HORIZONTAL_LINE_TO_NV"("0x07") + "GL_VERTICAL_LINE_TO_NV"("0x08") + "GL_RELATIVE_VERTICAL_LINE_TO_NV"("0x09") + "GL_QUADRATIC_CURVE_TO_NV"("0x0A") + "GL_RELATIVE_QUADRATIC_CURVE_TO_NV"("0x0B") + "GL_CUBIC_CURVE_TO_NV"("0x0C") + "GL_RELATIVE_CUBIC_CURVE_TO_NV"("0x0D") + "GL_SMOOTH_QUADRATIC_CURVE_TO_NV"("0x0E") + "GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV"("0x0F") + "GL_SMOOTH_CUBIC_CURVE_TO_NV"("0x10") + "GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV"("0x11") + "GL_SMALL_CCW_ARC_TO_NV"("0x12") + "GL_RELATIVE_SMALL_CCW_ARC_TO_NV"("0x13") + "GL_SMALL_CW_ARC_TO_NV"("0x14") + "GL_RELATIVE_SMALL_CW_ARC_TO_NV"("0x15") + "GL_LARGE_CCW_ARC_TO_NV"("0x16") + "GL_RELATIVE_LARGE_CCW_ARC_TO_NV"("0x17") + "GL_LARGE_CW_ARC_TO_NV"("0x18") + "GL_RELATIVE_LARGE_CW_ARC_TO_NV"("0x19") + "GL_RESTART_PATH_NV"("0xF0") + "GL_DUP_FIRST_CUBIC_CURVE_TO_NV"("0xF2") + "GL_DUP_LAST_CUBIC_CURVE_TO_NV"("0xF4") + "GL_RECT_NV"("0xF6") + "GL_CIRCULAR_CCW_ARC_TO_NV"("0xF8") + "GL_CIRCULAR_CW_ARC_TO_NV"("0xFA") + "GL_CIRCULAR_TANGENT_ARC_TO_NV"("0xFC") + "GL_ARC_TO_NV"("0xFE") + "GL_RELATIVE_ARC_TO_NV"("0xFF") + "GL_BOLD_BIT_NV"("0x01") + "GL_ITALIC_BIT_NV"("0x02") + "GL_GLYPH_WIDTH_BIT_NV"("0x01") + "GL_GLYPH_HEIGHT_BIT_NV"("0x02") + "GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV"("0x04") + "GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV"("0x08") + "GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV"("0x10") + "GL_GLYPH_VERTICAL_BEARING_X_BIT_NV"("0x20") + "GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV"("0x40") + "GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV"("0x80") + "GL_GLYPH_HAS_KERNING_BIT_NV"("0x100") + "GL_FONT_X_MIN_BOUNDS_BIT_NV"("0x00010000") + "GL_FONT_Y_MIN_BOUNDS_BIT_NV"("0x00020000") + "GL_FONT_X_MAX_BOUNDS_BIT_NV"("0x00040000") + "GL_FONT_Y_MAX_BOUNDS_BIT_NV"("0x00080000") + "GL_FONT_UNITS_PER_EM_BIT_NV"("0x00100000") + "GL_FONT_ASCENDER_BIT_NV"("0x00200000") + "GL_FONT_DESCENDER_BIT_NV"("0x00400000") + "GL_FONT_HEIGHT_BIT_NV"("0x00800000") + "GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV"("0x01000000") + "GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV"("0x02000000") + "GL_FONT_UNDERLINE_POSITION_BIT_NV"("0x04000000") + "GL_FONT_UNDERLINE_THICKNESS_BIT_NV"("0x08000000") + "GL_FONT_HAS_KERNING_BIT_NV"("0x10000000") + "GL_ROUNDED_RECT_NV"("0xE8") + "GL_RELATIVE_ROUNDED_RECT_NV"("0xE9") + "GL_ROUNDED_RECT2_NV"("0xEA") + "GL_RELATIVE_ROUNDED_RECT2_NV"("0xEB") + "GL_ROUNDED_RECT4_NV"("0xEC") + "GL_RELATIVE_ROUNDED_RECT4_NV"("0xED") + "GL_ROUNDED_RECT8_NV"("0xEE") + "GL_RELATIVE_ROUNDED_RECT8_NV"("0xEF") + "GL_RELATIVE_RECT_NV"("0xF7") + "GL_FONT_GLYPHS_AVAILABLE_NV"("0x9368") + "GL_FONT_TARGET_UNAVAILABLE_NV"("0x9369") + "GL_FONT_UNAVAILABLE_NV"("0x936A") + "GL_FONT_UNINTELLIGIBLE_NV"("0x936B") + "GL_CONIC_CURVE_TO_NV"("0x1A") + "GL_RELATIVE_CONIC_CURVE_TO_NV"("0x1B") + "GL_FONT_NUM_GLYPH_INDICES_BIT_NV"("0x20000000") + "GL_STANDARD_FONT_FORMAT_NV"("0x936C") + "GL_2_BYTES_NV"("0x1407") + "GL_3_BYTES_NV"("0x1408") + "GL_4_BYTES_NV"("0x1409") + "GL_EYE_LINEAR_NV"("0x2400") + "GL_OBJECT_LINEAR_NV"("0x2401") + "GL_CONSTANT_NV"("0x8576") + "GL_PATH_FOG_GEN_MODE_NV"("0x90AC") + "GL_PRIMARY_COLOR_NV"("0x852C") + "GL_SECONDARY_COLOR_NV"("0x852D") + "GL_PATH_GEN_COLOR_FORMAT_NV"("0x90B2") + "GL_PATH_PROJECTION_NV"("0x1701") + "GL_PATH_MODELVIEW_NV"("0x1700") + "GL_PATH_MODELVIEW_STACK_DEPTH_NV"("0x0BA3") + "GL_PATH_MODELVIEW_MATRIX_NV"("0x0BA6") + "GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV"("0x0D36") + "GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV"("0x84E3") + "GL_PATH_PROJECTION_STACK_DEPTH_NV"("0x0BA4") + "GL_PATH_PROJECTION_MATRIX_NV"("0x0BA7") + "GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV"("0x0D38") + "GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV"("0x84E4") + "GL_FRAGMENT_INPUT_NV"("0x936D") + "glGenPathsNV"(GLuint, GLsizei("range")) + "glDeletePathsNV"(void, GLuint("path"), GLsizei("range")) + "glIsPathNV"(GLboolean, GLuint("path")) + "glPathCommandsNV"( + void, + GLuint("path"), + GLsizei("numCommands"), + address("commands", "const GLubyte *"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathCoordsNV"( + void, + GLuint("path"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathSubCommandsNV"( + void, + GLuint("path"), + GLsizei("commandStart"), + GLsizei("commandsToDelete"), + GLsizei("numCommands"), + address("commands", "const GLubyte *"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathSubCoordsNV"( + void, + GLuint("path"), + GLsizei("coordStart"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathStringNV"( + void, + GLuint("path"), + GLenum("format"), + GLsizei("length"), + address("pathString", "const void *") + ) + "glPathGlyphsNV"( + void, + GLuint("firstPathName"), + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLsizei("numGlyphs"), + GLenum("type"), + address("charcodes", "const void *"), + GLenum("handleMissingGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glPathGlyphRangeNV"( + void, + GLuint("firstPathName"), + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLuint("firstGlyph"), + GLsizei("numGlyphs"), + GLenum("handleMissingGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glWeightPathsNV"( + void, + GLuint("resultPath"), + GLsizei("numPaths"), + address("paths", "const GLuint *"), + address("weights", "const GLfloat *") + ) + "glCopyPathNV"(void, GLuint("resultPath"), GLuint("srcPath")) + "glInterpolatePathsNV"(void, GLuint("resultPath"), GLuint("pathA"), GLuint("pathB"), GLfloat("weight")) + "glTransformPathNV"( + void, + GLuint("resultPath"), + GLuint("srcPath"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glPathParameterivNV"(void, GLuint("path"), GLenum("pname"), address("value", "const GLint *")) + "glPathParameteriNV"(void, GLuint("path"), GLenum("pname"), GLint("value")) + "glPathParameterfvNV"(void, GLuint("path"), GLenum("pname"), address("value", "const GLfloat *")) + "glPathParameterfNV"(void, GLuint("path"), GLenum("pname"), GLfloat("value")) + "glPathDashArrayNV"(void, GLuint("path"), GLsizei("dashCount"), address("dashArray", "const GLfloat *")) + "glPathStencilFuncNV"(void, GLenum("func"), GLint("ref"), GLuint("mask")) + "glPathStencilDepthOffsetNV"(void, GLfloat("factor"), GLfloat("units")) + "glStencilFillPathNV"(void, GLuint("path"), GLenum("fillMode"), GLuint("mask")) + "glStencilStrokePathNV"(void, GLuint("path"), GLint("reference"), GLuint("mask")) + "glStencilFillPathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("fillMode"), + GLuint("mask"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glStencilStrokePathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLint("reference"), + GLuint("mask"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glPathCoverDepthFuncNV"(void, GLenum("func")) + "glCoverFillPathNV"(void, GLuint("path"), GLenum("coverMode")) + "glCoverStrokePathNV"(void, GLuint("path"), GLenum("coverMode")) + "glCoverFillPathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glCoverStrokePathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glGetPathParameterivNV"(void, GLuint("path"), GLenum("pname"), address("value", "GLint *")) + "glGetPathParameterfvNV"(void, GLuint("path"), GLenum("pname"), address("value", "GLfloat *")) + "glGetPathCommandsNV"(void, GLuint("path"), address("commands", "GLubyte *")) + "glGetPathCoordsNV"(void, GLuint("path"), address("coords", "GLfloat *")) + "glGetPathDashArrayNV"(void, GLuint("path"), address("dashArray", "GLfloat *")) + "glGetPathMetricsNV"( + void, + GLbitfield("metricQueryMask"), + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLsizei("stride"), + address("metrics", "GLfloat *") + ) + "glGetPathMetricRangeNV"( + void, + GLbitfield("metricQueryMask"), + GLuint("firstPathName"), + GLsizei("numPaths"), + GLsizei("stride"), + address("metrics", "GLfloat *") + ) + "glGetPathSpacingNV"( + void, + GLenum("pathListMode"), + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLfloat("advanceScale"), + GLfloat("kerningScale"), + GLenum("transformType"), + address("returnedSpacing", "GLfloat *") + ) + "glIsPointInFillPathNV"(GLboolean, GLuint("path"), GLuint("mask"), GLfloat("x"), GLfloat("y")) + "glIsPointInStrokePathNV"(GLboolean, GLuint("path"), GLfloat("x"), GLfloat("y")) + "glGetPathLengthNV"(GLfloat, GLuint("path"), GLsizei("startSegment"), GLsizei("numSegments")) + "glPointAlongPathNV"( + GLboolean, + GLuint("path"), + GLsizei("startSegment"), + GLsizei("numSegments"), + GLfloat("distance"), + address("x", "GLfloat *"), + address("y", "GLfloat *"), + address("tangentX", "GLfloat *"), + address("tangentY", "GLfloat *") + ) + "glMatrixLoad3x2fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixLoad3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixLoadTranspose3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixMult3x2fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixMult3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixMultTranspose3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glStencilThenCoverFillPathNV"(void, GLuint("path"), GLenum("fillMode"), GLuint("mask"), GLenum("coverMode")) + "glStencilThenCoverStrokePathNV"(void, GLuint("path"), GLint("reference"), GLuint("mask"), GLenum("coverMode")) + "glStencilThenCoverFillPathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("fillMode"), + GLuint("mask"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glStencilThenCoverStrokePathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLint("reference"), + GLuint("mask"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glPathGlyphIndexRangeNV"( + GLenum, + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLuint("pathParameterTemplate"), + GLfloat("emScale"), + address("baseAndCount", "GLuint *") + ) + "glPathGlyphIndexArrayNV"( + GLenum, + GLuint("firstPathName"), + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLuint("firstGlyphIndex"), + GLsizei("numGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glPathMemoryGlyphIndexArrayNV"( + GLenum, + GLuint("firstPathName"), + GLenum("fontTarget"), + GLsizeiptr("fontSize"), + address("fontData", "const void *"), + GLsizei("faceIndex"), + GLuint("firstGlyphIndex"), + GLsizei("numGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glProgramPathFragmentInputGenNV"( + void, + GLuint("program"), + GLint("location"), + GLenum("genMode"), + GLint("components"), + address("coeffs", "const GLfloat *") + ) + "glGetProgramResourcefvNV"( + void, + GLuint("program"), + GLenum("programInterface"), + GLuint("index"), + GLsizei("propCount"), + address("props", "const GLenum *"), + GLsizei("count"), + address("length", "GLsizei *"), + address("params", "GLfloat *") + ) + "glPathColorGenNV"( + void, + GLenum("color"), + GLenum("genMode"), + GLenum("colorFormat"), + address("coeffs", "const GLfloat *") + ) + "glPathTexGenNV"( + void, + GLenum("texCoordSet"), + GLenum("genMode"), + GLint("components"), + address("coeffs", "const GLfloat *") + ) + "glPathFogGenNV"(void, GLenum("genMode")) + "glGetPathColorGenivNV"(void, GLenum("color"), GLenum("pname"), address("value", "GLint *")) + "glGetPathColorGenfvNV"(void, GLenum("color"), GLenum("pname"), address("value", "GLfloat *")) + "glGetPathTexGenivNV"(void, GLenum("texCoordSet"), GLenum("pname"), address("value", "GLint *")) + "glGetPathTexGenfvNV"(void, GLenum("texCoordSet"), GLenum("pname"), address("value", "GLfloat *")) + } + file("PathRenderingSharedEdge", NV, "GL_NV_path_rendering_shared_edge", "GL_SHARED_EDGE_NV" to "0xC0") +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index ffcefd2b..8e23425e 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -123,6 +123,7 @@ val GLhandleARB = int // Don't know how to handle on APPLE val GLcharARB = byte val GLint64EXT = long val GLuint64EXT = long +val GLhalfNV = short data class Parameter( val type: Type, @@ -288,1624 +289,6 @@ fun file( } } -fun arb() { - file("ES32Compatibility", ARB, "GL_ARB_ES3_2_compatibility") { - "GL_PRIMITIVE_BOUNDING_BOX_ARB"("0x92BE") - "GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB"("0x9381") - "GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB"("0x9382") - "glPrimitiveBoundingBoxARB"( - void, - GLfloat("minX"), - GLfloat("minY"), - GLfloat("minZ"), - GLfloat("minW"), - GLfloat("maxX"), - GLfloat("maxY"), - GLfloat("maxZ"), - GLfloat("maxW") - ) - } - file("BindlessTexture", ARB, "GL_ARB_bindless_texture") { - "GL_UNSIGNED_INT64_ARB"("0x140F") - "glGetTextureHandleARB"(GLuint64, GLuint("texture")) - "glGetTextureSamplerHandleARB"(GLuint64, GLuint("texture"), GLuint("sampler")) - "glMakeTextureHandleResidentARB"(void, GLuint64("handle")) - "glMakeTextureHandleNonResidentARB"(void, GLuint64("handle")) - "glGetImageHandleARB"( - GLuint64, - GLuint("texture"), - GLint("level"), - GLboolean("layered"), - GLint("layer"), - GLenum("format") - ) - "glMakeImageHandleResidentARB"(void, GLuint64("handle"), GLenum("access")) - "glMakeImageHandleNonResidentARB"(void, GLuint64("handle")) - "glUniformHandleui64ARB"(void, GLint("location"), GLuint64("value")) - "glUniformHandleui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glProgramUniformHandleui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("value")) - "glProgramUniformHandleui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("values", "const GLuint64 *") - ) - "glIsTextureHandleResidentARB"(GLboolean, GLuint64("handle")) - "glIsImageHandleResidentARB"(GLboolean, GLuint64("handle")) - "glVertexAttribL1ui64ARB"(void, GLuint("index"), GLuint64EXT("x")) - "glVertexAttribL1ui64vARB"(void, GLuint("index"), address("v", "const GLuint64EXT *")) - "glGetVertexAttribLui64vARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint64EXT *")) - } - file("CLEvent", ARB, "GL_ARB_cl_event") { - "GL_SYNC_CL_EVENT_ARB"("0x8240") - "GL_SYNC_CL_EVENT_COMPLETE_ARB"("0x8241") - "glCreateSyncFromCLeventARB"( - address, - address("context", "struct _cl_context *"), - address("event", "struct _cl_event *"), - GLbitfield("flags"), - nativeType = "GLsync" - ) - } - file("ColorBufferFloat", ARB, "GL_ARB_color_buffer_float") { - "GL_RGBA_FLOAT_MODE_ARB"("0x8820") - "GL_CLAMP_VERTEX_COLOR_ARB"("0x891A") - "GL_CLAMP_FRAGMENT_COLOR_ARB"("0x891B") - "GL_CLAMP_READ_COLOR_ARB"("0x891C") - "GL_FIXED_ONLY_ARB"("0x891D") - "glClampColorARB"(void, GLenum("target"), GLenum("clamp")) - } - file("ComputeVariableGroupSize", ARB, "GL_ARB_compute_variable_group_size") { - "GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB"("0x9344") - "GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB"("0x90EB") - "GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"("0x9345") - "GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB"("0x91BF") - "glDispatchComputeGroupSizeARB"( - void, - GLuint("num_groups_x"), - GLuint("num_groups_y"), - GLuint("num_groups_z"), - GLuint("group_size_x"), - GLuint("group_size_y"), - GLuint("group_size_z") - ) - } - file("DebugOutput", ARB, "GL_ARB_debug_output") { - "GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"("0x8242") - "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB"("0x8243") - "GL_DEBUG_CALLBACK_FUNCTION_ARB"("0x8244") - "GL_DEBUG_CALLBACK_USER_PARAM_ARB"("0x8245") - "GL_DEBUG_SOURCE_API_ARB"("0x8246") - "GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB"("0x8247") - "GL_DEBUG_SOURCE_SHADER_COMPILER_ARB"("0x8248") - "GL_DEBUG_SOURCE_THIRD_PARTY_ARB"("0x8249") - "GL_DEBUG_SOURCE_APPLICATION_ARB"("0x824A") - "GL_DEBUG_SOURCE_OTHER_ARB"("0x824B") - "GL_DEBUG_TYPE_ERROR_ARB"("0x824C") - "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB"("0x824D") - "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB"("0x824E") - "GL_DEBUG_TYPE_PORTABILITY_ARB"("0x824F") - "GL_DEBUG_TYPE_PERFORMANCE_ARB"("0x8250") - "GL_DEBUG_TYPE_OTHER_ARB"("0x8251") - "GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"("0x9143") - "GL_MAX_DEBUG_LOGGED_MESSAGES_ARB"("0x9144") - "GL_DEBUG_LOGGED_MESSAGES_ARB"("0x9145") - "GL_DEBUG_SEVERITY_HIGH_ARB"("0x9146") - "GL_DEBUG_SEVERITY_MEDIUM_ARB"("0x9147") - "GL_DEBUG_SEVERITY_LOW_ARB"("0x9148") - "glDebugMessageControlARB"( - void, - GLenum("source"), - GLenum("type"), - GLenum("severity"), - GLsizei("count"), - address("ids", "const GLuint *"), - GLboolean("enabled") - ) - "glDebugMessageInsertARB"( - void, - GLenum("source"), - GLenum("type"), - GLuint("id"), - GLenum("severity"), - GLsizei("length"), - address("buf", "const GLchar *") - ) - ("glDebugMessageCallbackARB"( - void, - address("callback", "GLDEBUGPROCARB"), - address("userParam", "const void *") - )) { - "glDebugMessageCallbackARB"( - void, - "glDebugMessageCallbackARB(callback.address(arena), userParam);", - arena("arena"), - Type("GLDebugProc", null)("callback"), - address("userParam", "const void *") - ) - } - "glGetDebugMessageLogARB"( - GLuint, - GLuint("count"), - GLsizei("bufSize"), - address("sources", "GLenum *"), - address("types", "GLenum *"), - address("ids", "GLuint *"), - address("severities", "GLenum *"), - address("lengths", "GLsizei *"), - address("messageLog", "GLchar *") - ) - } - file( - "DepthTexture", ARB, "GL_ARB_depth_texture", - "GL_DEPTH_COMPONENT16_ARB" to "0x81A5", - "GL_DEPTH_COMPONENT24_ARB" to "0x81A6", - "GL_DEPTH_COMPONENT32_ARB" to "0x81A7", - "GL_TEXTURE_DEPTH_SIZE_ARB" to "0x884A", - "GL_DEPTH_TEXTURE_MODE_ARB" to "0x884B" - ) - file("DrawBuffers", ARB, "GL_ARB_draw_buffers") { - "GL_MAX_DRAW_BUFFERS_ARB"("0x8824") - "GL_DRAW_BUFFER0_ARB"("0x8825") - "GL_DRAW_BUFFER1_ARB"("0x8826") - "GL_DRAW_BUFFER2_ARB"("0x8827") - "GL_DRAW_BUFFER3_ARB"("0x8828") - "GL_DRAW_BUFFER4_ARB"("0x8829") - "GL_DRAW_BUFFER5_ARB"("0x882A") - "GL_DRAW_BUFFER6_ARB"("0x882B") - "GL_DRAW_BUFFER7_ARB"("0x882C") - "GL_DRAW_BUFFER8_ARB"("0x882D") - "GL_DRAW_BUFFER9_ARB"("0x882E") - "GL_DRAW_BUFFER10_ARB"("0x882F") - "GL_DRAW_BUFFER11_ARB"("0x8830") - "GL_DRAW_BUFFER12_ARB"("0x8831") - "GL_DRAW_BUFFER13_ARB"("0x8832") - "GL_DRAW_BUFFER14_ARB"("0x8833") - "GL_DRAW_BUFFER15_ARB"("0x8834") - "glDrawBuffersARB"(void, GLsizei("n"), address("bufs", "const GLenum *")) - } - file("DrawBuffersBlend", ARB, "GL_ARB_draw_buffers_blend") { - "glBlendEquationiARB"(void, GLuint("buf"), GLenum("mode")) - "glBlendEquationSeparateiARB"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) - "glBlendFunciARB"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) - "glBlendFuncSeparateiARB"( - void, - GLuint("buf"), - GLenum("srcRGB"), - GLenum("dstRGB"), - GLenum("srcAlpha"), - GLenum("dstAlpha") - ) - } - file("DrawInstanced", ARB, "GL_ARB_draw_instanced") { - "glDrawArraysInstancedARB"(void, GLenum("mode"), GLint("first"), GLsizei("count"), GLsizei("primcount")) - "glDrawElementsInstancedARB"( - void, - GLenum("mode"), - GLsizei("count"), - GLenum("type"), - address("indices", "const void *"), - GLsizei("primcount") - ) - } - file("FragmentProgram", ARB, "GL_ARB_fragment_program") { - "GL_FRAGMENT_PROGRAM_ARB"("0x8804") - "GL_PROGRAM_FORMAT_ASCII_ARB"("0x8875") - "GL_PROGRAM_LENGTH_ARB"("0x8627") - "GL_PROGRAM_FORMAT_ARB"("0x8876") - "GL_PROGRAM_BINDING_ARB"("0x8677") - "GL_PROGRAM_INSTRUCTIONS_ARB"("0x88A0") - "GL_MAX_PROGRAM_INSTRUCTIONS_ARB"("0x88A1") - "GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A2") - "GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A3") - "GL_PROGRAM_TEMPORARIES_ARB"("0x88A4") - "GL_MAX_PROGRAM_TEMPORARIES_ARB"("0x88A5") - "GL_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A6") - "GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A7") - "GL_PROGRAM_PARAMETERS_ARB"("0x88A8") - "GL_MAX_PROGRAM_PARAMETERS_ARB"("0x88A9") - "GL_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AA") - "GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AB") - "GL_PROGRAM_ATTRIBS_ARB"("0x88AC") - "GL_MAX_PROGRAM_ATTRIBS_ARB"("0x88AD") - "GL_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AE") - "GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AF") - "GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB"("0x88B4") - "GL_MAX_PROGRAM_ENV_PARAMETERS_ARB"("0x88B5") - "GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB"("0x88B6") - "GL_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x8805") - "GL_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x8806") - "GL_PROGRAM_TEX_INDIRECTIONS_ARB"("0x8807") - "GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x8808") - "GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x8809") - "GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x880A") - "GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x880B") - "GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x880C") - "GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB"("0x880D") - "GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x880E") - "GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x880F") - "GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x8810") - "GL_PROGRAM_STRING_ARB"("0x8628") - "GL_PROGRAM_ERROR_POSITION_ARB"("0x864B") - "GL_CURRENT_MATRIX_ARB"("0x8641") - "GL_TRANSPOSE_CURRENT_MATRIX_ARB"("0x88B7") - "GL_CURRENT_MATRIX_STACK_DEPTH_ARB"("0x8640") - "GL_MAX_PROGRAM_MATRICES_ARB"("0x862F") - "GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB"("0x862E") - "GL_MAX_TEXTURE_COORDS_ARB"("0x8871") - "GL_MAX_TEXTURE_IMAGE_UNITS_ARB"("0x8872") - "GL_PROGRAM_ERROR_STRING_ARB"("0x8874") - "GL_MATRIX0_ARB"("0x88C0") - "GL_MATRIX1_ARB"("0x88C1") - "GL_MATRIX2_ARB"("0x88C2") - "GL_MATRIX3_ARB"("0x88C3") - "GL_MATRIX4_ARB"("0x88C4") - "GL_MATRIX5_ARB"("0x88C5") - "GL_MATRIX6_ARB"("0x88C6") - "GL_MATRIX7_ARB"("0x88C7") - "GL_MATRIX8_ARB"("0x88C8") - "GL_MATRIX9_ARB"("0x88C9") - "GL_MATRIX10_ARB"("0x88CA") - "GL_MATRIX11_ARB"("0x88CB") - "GL_MATRIX12_ARB"("0x88CC") - "GL_MATRIX13_ARB"("0x88CD") - "GL_MATRIX14_ARB"("0x88CE") - "GL_MATRIX15_ARB"("0x88CF") - "GL_MATRIX16_ARB"("0x88D0") - "GL_MATRIX17_ARB"("0x88D1") - "GL_MATRIX18_ARB"("0x88D2") - "GL_MATRIX19_ARB"("0x88D3") - "GL_MATRIX20_ARB"("0x88D4") - "GL_MATRIX21_ARB"("0x88D5") - "GL_MATRIX22_ARB"("0x88D6") - "GL_MATRIX23_ARB"("0x88D7") - "GL_MATRIX24_ARB"("0x88D8") - "GL_MATRIX25_ARB"("0x88D9") - "GL_MATRIX26_ARB"("0x88DA") - "GL_MATRIX27_ARB"("0x88DB") - "GL_MATRIX28_ARB"("0x88DC") - "GL_MATRIX29_ARB"("0x88DD") - "GL_MATRIX30_ARB"("0x88DE") - "GL_MATRIX31_ARB"("0x88DF") - "glProgramStringARB"( - void, - GLenum("target"), - GLenum("format"), - GLsizei("len"), - address("string", "const void *") - ) - "glBindProgramARB"(void, GLenum("target"), GLuint("program")) - "glDeleteProgramsARB"(void, GLsizei("n"), address("programs", "const GLuint *")) - "glGenProgramsARB"(void, GLsizei("n"), address("programs", "GLuint *")) - "glProgramEnvParameter4dARB"( - void, - GLenum("target"), - GLuint("index"), - GLdouble("x"), - GLdouble("y"), - GLdouble("z"), - GLdouble("w") - ) - "glProgramEnvParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) - "glProgramEnvParameter4fARB"( - void, - GLenum("target"), - GLuint("index"), - GLfloat("x"), - GLfloat("y"), - GLfloat("z"), - GLfloat("w") - ) - "glProgramEnvParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) - "glProgramLocalParameter4dARB"( - void, - GLenum("target"), - GLuint("index"), - GLdouble("x"), - GLdouble("y"), - GLdouble("z"), - GLdouble("w") - ) - "glProgramLocalParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) - "glProgramLocalParameter4fARB"( - void, - GLenum("target"), - GLuint("index"), - GLfloat("x"), - GLfloat("y"), - GLfloat("z"), - GLfloat("w") - ) - "glProgramLocalParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) - "glGetProgramEnvParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) - "glGetProgramEnvParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) - "glGetProgramLocalParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) - "glGetProgramLocalParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) - "glGetProgramivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetProgramStringARB"(void, GLenum("target"), GLenum("pname"), address("string", "void *")) - "glIsProgramARB"(GLboolean, GLuint("program")) - } - file( - "FragmentShader", ARB, "GL_ARB_fragment_shader", - "GL_FRAGMENT_SHADER_ARB" to "0x8B30", - "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB" to "0x8B49", - "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB" to "0x8B8B" - ) - file("GeometryShader4", ARB, "GL_ARB_geometry_shader4") { - "GL_LINES_ADJACENCY_ARB"("0x000A") - "GL_LINE_STRIP_ADJACENCY_ARB"("0x000B") - "GL_TRIANGLES_ADJACENCY_ARB"("0x000C") - "GL_TRIANGLE_STRIP_ADJACENCY_ARB"("0x000D") - "GL_PROGRAM_POINT_SIZE_ARB"("0x8642") - "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB"("0x8C29") - "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB"("0x8DA7") - "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB"("0x8DA8") - "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"("0x8DA9") - "GL_GEOMETRY_SHADER_ARB"("0x8DD9") - "GL_GEOMETRY_VERTICES_OUT_ARB"("0x8DDA") - "GL_GEOMETRY_INPUT_TYPE_ARB"("0x8DDB") - "GL_GEOMETRY_OUTPUT_TYPE_ARB"("0x8DDC") - "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB"("0x8DDD") - "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB"("0x8DDE") - "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB"("0x8DDF") - "GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB"("0x8DE0") - "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB"("0x8DE1") - "glProgramParameteriARB"(void, GLuint("program"), GLenum("pname"), GLint("value")) - "glFramebufferTextureARB"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) - "glFramebufferTextureLayerARB"( - void, - GLenum("target"), - GLenum("attachment"), - GLuint("texture"), - GLint("level"), - GLint("layer") - ) - "glFramebufferTextureFaceARB"( - void, - GLenum("target"), - GLenum("attachment"), - GLuint("texture"), - GLint("level"), - GLenum("face") - ) - } - file("GLSpirv", ARB, "GL_ARB_gl_spirv") { - "GL_SHADER_BINARY_FORMAT_SPIR_V_ARB"("0x9551") - "GL_SPIR_V_BINARY_ARB"("0x9552") - "glSpecializeShaderARB"( - void, - GLuint("shader"), - address("pEntryPoint", "const GLchar *"), - GLuint("numSpecializationConstants"), - address("pConstantIndex", "const GLuint *"), - address("pConstantValue", "const GLuint *") - ) - } - file("GpuShaderInt64", ARB, "GL_ARB_gpu_shader_int64") { - "GL_INT64_ARB"("0x140E") - "GL_INT64_VEC2_ARB"("0x8FE9") - "GL_INT64_VEC3_ARB"("0x8FEA") - "GL_INT64_VEC4_ARB"("0x8FEB") - "GL_UNSIGNED_INT64_VEC2_ARB"("0x8FF5") - "GL_UNSIGNED_INT64_VEC3_ARB"("0x8FF6") - "GL_UNSIGNED_INT64_VEC4_ARB"("0x8FF7") - "glUniform1i64ARB"(void, GLint("location"), GLint64("x")) - "glUniform2i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y")) - "glUniform3i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) - "glUniform4i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z"), GLint64("w")) - "glUniform1i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform2i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform3i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform4i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform1ui64ARB"(void, GLint("location"), GLuint64("x")) - "glUniform2ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y")) - "glUniform3ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z")) - "glUniform4ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z"), GLuint64("w")) - "glUniform1ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glUniform2ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glUniform3ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glUniform4ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glGetUniformi64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLint64 *")) - "glGetUniformui64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLuint64 *")) - "glGetnUniformi64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("bufSize"), - address("params", "GLint64 *") - ) - "glGetnUniformui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("bufSize"), - address("params", "GLuint64 *") - ) - "glProgramUniform1i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x")) - "glProgramUniform2i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y")) - "glProgramUniform3i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) - "glProgramUniform4i64ARB"( - void, - GLuint("program"), - GLint("location"), - GLint64("x"), - GLint64("y"), - GLint64("z"), - GLint64("w") - ) - "glProgramUniform1i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform2i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform3i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform4i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform1ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x")) - "glProgramUniform2ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x"), GLuint64("y")) - "glProgramUniform3ui64ARB"( - void, - GLuint("program"), - GLint("location"), - GLuint64("x"), - GLuint64("y"), - GLuint64("z") - ) - "glProgramUniform4ui64ARB"( - void, - GLuint("program"), - GLint("location"), - GLuint64("x"), - GLuint64("y"), - GLuint64("z"), - GLuint64("w") - ) - "glProgramUniform1ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - "glProgramUniform2ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - "glProgramUniform3ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - "glProgramUniform4ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - } - file("HalfFloatPixel", ARB, "GL_ARB_half_float_pixel", "GL_HALF_FLOAT_ARB" to "0x140B") - file("Imaging", ARB, "GL_ARB_imaging") { - "GL_CONVOLUTION_BORDER_MODE"("0x8013") - "GL_CONVOLUTION_FILTER_SCALE"("0x8014") - "GL_CONVOLUTION_FILTER_BIAS"("0x8015") - "GL_REDUCE"("0x8016") - "GL_CONVOLUTION_FORMAT"("0x8017") - "GL_CONVOLUTION_WIDTH"("0x8018") - "GL_CONVOLUTION_HEIGHT"("0x8019") - "GL_MAX_CONVOLUTION_WIDTH"("0x801A") - "GL_MAX_CONVOLUTION_HEIGHT"("0x801B") - "GL_POST_CONVOLUTION_RED_SCALE"("0x801C") - "GL_POST_CONVOLUTION_GREEN_SCALE"("0x801D") - "GL_POST_CONVOLUTION_BLUE_SCALE"("0x801E") - "GL_POST_CONVOLUTION_ALPHA_SCALE"("0x801F") - "GL_POST_CONVOLUTION_RED_BIAS"("0x8020") - "GL_POST_CONVOLUTION_GREEN_BIAS"("0x8021") - "GL_POST_CONVOLUTION_BLUE_BIAS"("0x8022") - "GL_POST_CONVOLUTION_ALPHA_BIAS"("0x8023") - "GL_HISTOGRAM_WIDTH"("0x8026") - "GL_HISTOGRAM_FORMAT"("0x8027") - "GL_HISTOGRAM_RED_SIZE"("0x8028") - "GL_HISTOGRAM_GREEN_SIZE"("0x8029") - "GL_HISTOGRAM_BLUE_SIZE"("0x802A") - "GL_HISTOGRAM_ALPHA_SIZE"("0x802B") - "GL_HISTOGRAM_LUMINANCE_SIZE"("0x802C") - "GL_HISTOGRAM_SINK"("0x802D") - "GL_MINMAX_FORMAT"("0x802F") - "GL_MINMAX_SINK"("0x8030") - "GL_TABLE_TOO_LARGE"("0x8031") - "GL_COLOR_MATRIX"("0x80B1") - "GL_COLOR_MATRIX_STACK_DEPTH"("0x80B2") - "GL_MAX_COLOR_MATRIX_STACK_DEPTH"("0x80B3") - "GL_POST_COLOR_MATRIX_RED_SCALE"("0x80B4") - "GL_POST_COLOR_MATRIX_GREEN_SCALE"("0x80B5") - "GL_POST_COLOR_MATRIX_BLUE_SCALE"("0x80B6") - "GL_POST_COLOR_MATRIX_ALPHA_SCALE"("0x80B7") - "GL_POST_COLOR_MATRIX_RED_BIAS"("0x80B8") - "GL_POST_COLOR_MATRIX_GREEN_BIAS"("0x80B9") - "GL_POST_COLOR_MATRIX_BLUE_BIAS"("0x80BA") - "GL_POST_COLOR_MATRIX_ALPHA_BIAS"("0x80BB") - "GL_COLOR_TABLE_SCALE"("0x80D6") - "GL_COLOR_TABLE_BIAS"("0x80D7") - "GL_COLOR_TABLE_FORMAT"("0x80D8") - "GL_COLOR_TABLE_WIDTH"("0x80D9") - "GL_COLOR_TABLE_RED_SIZE"("0x80DA") - "GL_COLOR_TABLE_GREEN_SIZE"("0x80DB") - "GL_COLOR_TABLE_BLUE_SIZE"("0x80DC") - "GL_COLOR_TABLE_ALPHA_SIZE"("0x80DD") - "GL_COLOR_TABLE_LUMINANCE_SIZE"("0x80DE") - "GL_COLOR_TABLE_INTENSITY_SIZE"("0x80DF") - "GL_CONSTANT_BORDER"("0x8151") - "GL_REPLICATE_BORDER"("0x8153") - "GL_CONVOLUTION_BORDER_COLOR"("0x8154") - "glColorTable"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLenum("format"), - GLenum("type"), - address("table", "const void *") - ) - "glColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) - "glColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) - "glCopyColorTable"(void, GLenum("target"), GLenum("internalformat"), GLint("x"), GLint("y"), GLsizei("width")) - "glGetColorTable"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("table", "void *")) - "glGetColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glColorSubTable"( - void, - GLenum("target"), - GLsizei("start"), - GLsizei("count"), - GLenum("format"), - GLenum("type"), - address("data", "const void *") - ) - "glCopyColorSubTable"(void, GLenum("target"), GLsizei("start"), GLint("x"), GLint("y"), GLsizei("width")) - "glConvolutionFilter1D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLenum("format"), - GLenum("type"), - address("image", "const void *") - ) - "glConvolutionFilter2D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height"), - GLenum("format"), - GLenum("type"), - address("image", "const void *") - ) - "glConvolutionParameterf"(void, GLenum("target"), GLenum("pname"), GLfloat("params")) - "glConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) - "glConvolutionParameteri"(void, GLenum("target"), GLenum("pname"), GLint("params")) - "glConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) - "glCopyConvolutionFilter1D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLint("x"), - GLint("y"), - GLsizei("width") - ) - "glCopyConvolutionFilter2D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLint("x"), - GLint("y"), - GLsizei("width"), - GLsizei("height") - ) - "glGetConvolutionFilter"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("image", "void *")) - "glGetConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetSeparableFilter"( - void, - GLenum("target"), - GLenum("format"), - GLenum("type"), - address("row", "void *"), - address("column", "void *"), - address("span", "void *") - ) - "glSeparableFilter2D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height"), - GLenum("format"), - GLenum("type"), - address("row", "const void *"), - address("column", "const void *") - ) - "glGetHistogram"( - void, - GLenum("target"), - GLboolean("reset"), - GLenum("format"), - GLenum("type"), - address("values", "void *") - ) - "glGetHistogramParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetHistogramParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetMinmax"( - void, - GLenum("target"), - GLboolean("reset"), - GLenum("format"), - GLenum("type"), - address("values", "void *") - ) - "glGetMinmaxParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetMinmaxParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glHistogram"(void, GLenum("target"), GLsizei("width"), GLenum("internalformat"), GLboolean("sink")) - "glMinmax"(void, GLenum("target"), GLenum("internalformat"), GLboolean("sink")) - "glResetHistogram"(void, GLenum("target")) - "glResetMinmax"(void, GLenum("target")) - } - file("IndirectParameters", ARB, "GL_ARB_indirect_parameters") { - "GL_PARAMETER_BUFFER_ARB"("0x80EE") - "GL_PARAMETER_BUFFER_BINDING_ARB"("0x80EF") - "glMultiDrawArraysIndirectCountARB"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLintptr("drawcount"), - GLsizei("maxdrawcount"), - GLsizei("stride") - ) - "glMultiDrawElementsIndirectCountARB"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLintptr("drawcount"), - GLsizei("maxdrawcount"), - GLsizei("stride") - ) - } - file("InstancedArrays", ARB, "GL_ARB_instanced_arrays") { - "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB"("0x88FE") - "glVertexAttribDivisorARB"(void, GLuint("index"), GLuint("divisor")) - } - file( - "InternalformatQuery2", ARB, "GL_ARB_internalformat_query2", - "GL_SRGB_DECODE_ARB" to "0x8299", - "GL_VIEW_CLASS_EAC_R11" to "0x9383", - "GL_VIEW_CLASS_EAC_RG11" to "0x9384", - "GL_VIEW_CLASS_ETC2_RGB" to "0x9385", - "GL_VIEW_CLASS_ETC2_RGBA" to "0x9386", - "GL_VIEW_CLASS_ETC2_EAC_RGBA" to "0x9387", - "GL_VIEW_CLASS_ASTC_4x4_RGBA" to "0x9388", - "GL_VIEW_CLASS_ASTC_5x4_RGBA" to "0x9389", - "GL_VIEW_CLASS_ASTC_5x5_RGBA" to "0x938A", - "GL_VIEW_CLASS_ASTC_6x5_RGBA" to "0x938B", - "GL_VIEW_CLASS_ASTC_6x6_RGBA" to "0x938C", - "GL_VIEW_CLASS_ASTC_8x5_RGBA" to "0x938D", - "GL_VIEW_CLASS_ASTC_8x6_RGBA" to "0x938E", - "GL_VIEW_CLASS_ASTC_8x8_RGBA" to "0x938F", - "GL_VIEW_CLASS_ASTC_10x5_RGBA" to "0x9390", - "GL_VIEW_CLASS_ASTC_10x6_RGBA" to "0x9391", - "GL_VIEW_CLASS_ASTC_10x8_RGBA" to "0x9392", - "GL_VIEW_CLASS_ASTC_10x10_RGBA" to "0x9393", - "GL_VIEW_CLASS_ASTC_12x10_RGBA" to "0x9394", - "GL_VIEW_CLASS_ASTC_12x12_RGBA" to "0x9395" - ) - file("MatrixPalette", ARB, "GL_ARB_matrix_palette") { - "GL_MATRIX_PALETTE_ARB"("0x8840") - "GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB"("0x8841") - "GL_MAX_PALETTE_MATRICES_ARB"("0x8842") - "GL_CURRENT_PALETTE_MATRIX_ARB"("0x8843") - "GL_MATRIX_INDEX_ARRAY_ARB"("0x8844") - "GL_CURRENT_MATRIX_INDEX_ARB"("0x8845") - "GL_MATRIX_INDEX_ARRAY_SIZE_ARB"("0x8846") - "GL_MATRIX_INDEX_ARRAY_TYPE_ARB"("0x8847") - "GL_MATRIX_INDEX_ARRAY_STRIDE_ARB"("0x8848") - "GL_MATRIX_INDEX_ARRAY_POINTER_ARB"("0x8849") - "glCurrentPaletteMatrixARB"(void, GLint("index")) - "glMatrixIndexubvARB"(void, GLint("size"), address("indices", "const GLubyte *")) - "glMatrixIndexusvARB"(void, GLint("size"), address("indices", "const GLushort *")) - "glMatrixIndexuivARB"(void, GLint("size"), address("indices", "const GLuint *")) - "glMatrixIndexPointerARB"( - void, - GLint("size"), - GLenum("type"), - GLsizei("stride"), - address("pointer", "const void *") - ) - } - file("Multisample", ARB, "GL_ARB_multisample") { - "GL_MULTISAMPLE_ARB"("0x809D") - "GL_SAMPLE_ALPHA_TO_COVERAGE_ARB"("0x809E") - "GL_SAMPLE_ALPHA_TO_ONE_ARB"("0x809F") - "GL_SAMPLE_COVERAGE_ARB"("0x80A0") - "GL_SAMPLE_BUFFERS_ARB"("0x80A8") - "GL_SAMPLES_ARB"("0x80A9") - "GL_SAMPLE_COVERAGE_VALUE_ARB"("0x80AA") - "GL_SAMPLE_COVERAGE_INVERT_ARB"("0x80AB") - "GL_MULTISAMPLE_BIT_ARB"("0x20000000") - "glSampleCoverageARB"(void, GLfloat("value"), GLboolean("invert")) - } - file("Multitexture", ARB, "GL_ARB_multitexture") { - "GL_TEXTURE0_ARB"("0x84C0") - "GL_TEXTURE1_ARB"("0x84C1") - "GL_TEXTURE2_ARB"("0x84C2") - "GL_TEXTURE3_ARB"("0x84C3") - "GL_TEXTURE4_ARB"("0x84C4") - "GL_TEXTURE5_ARB"("0x84C5") - "GL_TEXTURE6_ARB"("0x84C6") - "GL_TEXTURE7_ARB"("0x84C7") - "GL_TEXTURE8_ARB"("0x84C8") - "GL_TEXTURE9_ARB"("0x84C9") - "GL_TEXTURE10_ARB"("0x84CA") - "GL_TEXTURE11_ARB"("0x84CB") - "GL_TEXTURE12_ARB"("0x84CC") - "GL_TEXTURE13_ARB"("0x84CD") - "GL_TEXTURE14_ARB"("0x84CE") - "GL_TEXTURE15_ARB"("0x84CF") - "GL_TEXTURE16_ARB"("0x84D0") - "GL_TEXTURE17_ARB"("0x84D1") - "GL_TEXTURE18_ARB"("0x84D2") - "GL_TEXTURE19_ARB"("0x84D3") - "GL_TEXTURE20_ARB"("0x84D4") - "GL_TEXTURE21_ARB"("0x84D5") - "GL_TEXTURE22_ARB"("0x84D6") - "GL_TEXTURE23_ARB"("0x84D7") - "GL_TEXTURE24_ARB"("0x84D8") - "GL_TEXTURE25_ARB"("0x84D9") - "GL_TEXTURE26_ARB"("0x84DA") - "GL_TEXTURE27_ARB"("0x84DB") - "GL_TEXTURE28_ARB"("0x84DC") - "GL_TEXTURE29_ARB"("0x84DD") - "GL_TEXTURE30_ARB"("0x84DE") - "GL_TEXTURE31_ARB"("0x84DF") - "GL_ACTIVE_TEXTURE_ARB"("0x84E0") - "GL_CLIENT_ACTIVE_TEXTURE_ARB"("0x84E1") - "GL_MAX_TEXTURE_UNITS_ARB"("0x84E2") - "glActiveTextureARB"(void, GLenum("texture")) - "glClientActiveTextureARB"(void, GLenum("texture")) - "glMultiTexCoord1dARB"(void, GLenum("target"), GLdouble("s")) - "glMultiTexCoord1dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord1fARB"(void, GLenum("target"), GLfloat("s")) - "glMultiTexCoord1fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord1iARB"(void, GLenum("target"), GLint("s")) - "glMultiTexCoord1ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord1sARB"(void, GLenum("target"), GLshort("s")) - "glMultiTexCoord1svARB"(void, GLenum("target"), address("v", "const GLshort *")) - "glMultiTexCoord2dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t")) - "glMultiTexCoord2dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord2fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t")) - "glMultiTexCoord2fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord2iARB"(void, GLenum("target"), GLint("s"), GLint("t")) - "glMultiTexCoord2ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord2sARB"(void, GLenum("target"), GLshort("s"), GLshort("t")) - "glMultiTexCoord2svARB"(void, GLenum("target"), address("v", "const GLshort *")) - "glMultiTexCoord3dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r")) - "glMultiTexCoord3dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord3fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r")) - "glMultiTexCoord3fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord3iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r")) - "glMultiTexCoord3ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord3sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r")) - "glMultiTexCoord3svARB"(void, GLenum("target"), address("v", "const GLshort *")) - "glMultiTexCoord4dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r"), GLdouble("q")) - "glMultiTexCoord4dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord4fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r"), GLfloat("q")) - "glMultiTexCoord4fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord4iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r"), GLint("q")) - "glMultiTexCoord4ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord4sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r"), GLshort("q")) - "glMultiTexCoord4svARB"(void, GLenum("target"), address("v", "const GLshort *")) - } - file("OcclusionQuery", ARB, "GL_ARB_occlusion_query") { - "GL_QUERY_COUNTER_BITS_ARB"("0x8864") - "GL_CURRENT_QUERY_ARB"("0x8865") - "GL_QUERY_RESULT_ARB"("0x8866") - "GL_QUERY_RESULT_AVAILABLE_ARB"("0x8867") - "GL_SAMPLES_PASSED_ARB"("0x8914") - "glGenQueriesARB"(void, GLsizei("n"), address("ids", "GLuint *")) - "glDeleteQueriesARB"(void, GLsizei("n"), address("ids", "const GLuint *")) - "glIsQueryARB"(GLboolean, GLuint("id")) - "glBeginQueryARB"(void, GLenum("target"), GLuint("id")) - "glEndQueryARB"(void, GLenum("target")) - "glGetQueryivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetQueryObjectivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) - "glGetQueryObjectuivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) - } - file("ParallelShaderCompile", ARB, "GL_ARB_parallel_shader_compile") { - "GL_MAX_SHADER_COMPILER_THREADS_ARB"("0x91B0") - "GL_COMPLETION_STATUS_ARB"("0x91B1") - "glMaxShaderCompilerThreadsARB"(void, GLuint("count")) - } - file( - "PipelineStatisticsQuery", ARB, "GL_ARB_pipeline_statistics_query", - "GL_VERTICES_SUBMITTED_ARB" to "0x82EE", - "GL_PRIMITIVES_SUBMITTED_ARB" to "0x82EF", - "GL_VERTEX_SHADER_INVOCATIONS_ARB" to "0x82F0", - "GL_TESS_CONTROL_SHADER_PATCHES_ARB" to "0x82F1", - "GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB" to "0x82F2", - "GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB" to "0x82F3", - "GL_FRAGMENT_SHADER_INVOCATIONS_ARB" to "0x82F4", - "GL_COMPUTE_SHADER_INVOCATIONS_ARB" to "0x82F5", - "GL_CLIPPING_INPUT_PRIMITIVES_ARB" to "0x82F6", - "GL_CLIPPING_OUTPUT_PRIMITIVES_ARB" to "0x82F7" - ) - file( - "PixelBufferObject", ARB, "GL_ARB_pixel_buffer_object", - "GL_PIXEL_PACK_BUFFER_ARB" to "0x88EB", - "GL_PIXEL_UNPACK_BUFFER_ARB" to "0x88EC", - "GL_PIXEL_PACK_BUFFER_BINDING_ARB" to "0x88ED", - "GL_PIXEL_UNPACK_BUFFER_BINDING_ARB" to "0x88EF" - ) - file("PointParameters", ARB, "GL_ARB_point_parameters") { - "GL_POINT_SIZE_MIN_ARB"("0x8126") - "GL_POINT_SIZE_MAX_ARB"("0x8127") - "GL_POINT_FADE_THRESHOLD_SIZE_ARB"("0x8128") - "GL_POINT_DISTANCE_ATTENUATION_ARB"("0x8129") - "glPointParameterfARB"(void, GLenum("pname"), GLfloat("param")) - "glPointParameterfvARB"(void, GLenum("pname"), address("params", "const GLfloat *")) - } - file( - "PointSprite", ARB, "GL_ARB_point_sprite", - "GL_POINT_SPRITE_ARB" to "0x8861", - "GL_COORD_REPLACE_ARB" to "0x8862" - ) - file("Robustness", ARB, "GL_ARB_robustness") { - "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") - "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") - "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB"("0x00000004") - "GL_UNKNOWN_CONTEXT_RESET_ARB"("0x8255") - "GL_LOSE_CONTEXT_ON_RESET_ARB"("0x8252") - "GL_INNOCENT_CONTEXT_RESET_ARB"("0x8254") - "GL_GUILTY_CONTEXT_RESET_ARB"("0x8253") - "glGetGraphicsResetStatusARB"(int) - "glGetnCompressedTexImageARB"(void, int("target"), int("lod"), int("bufSize"), address("img", "void*")) - "glGetnTexImageARB"( - void, - int("target"), - int("level"), - int("format"), - int("type"), - int("bufSize"), - address("img", "void*") - ) - "glGetnUniformdvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLdouble*")) - "glGetnUniformfvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLfloat*")) - "glGetnUniformivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLint*")) - "glGetnUniformuivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLuint*")) - "glReadnPixelsARB"( - void, - int("x"), - int("y"), - int("width"), - int("height"), - int("format"), - int("type"), - int("bufSize"), - address("data", "void*") - ) - } - file("SampleLocations", ARB, "GL_ARB_sample_locations") { - "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB"("0x933D") - "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB"("0x933E") - "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB"("0x933F") - "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB"("0x9340") - "GL_SAMPLE_LOCATION_ARB"("0x8E50") - "GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB"("0x9341") - "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB"("0x9342") - "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB"("0x9343") - "glEvaluateDepthValuesARB"(void) - "glFramebufferSampleLocationsfvARB"( - void, - int("target"), - int("start"), - int("count"), - address("v", "const GLfloat *v") - ) - "glNamedFramebufferSampleLocationsfvARB"( - void, - int("framebuffer"), - int("start"), - int("count"), - address("v", "const GLfloat *v") - ) - } - file("SampleShading", ARB, "GL_ARB_sample_shading") { - "GL_SAMPLE_SHADING_ARB"("0x8C36") - "GL_MIN_SAMPLE_SHADING_VALUE_ARB"("0x8C37") - "glMinSampleShadingARB"(void, float("value")) - } - file("ShaderObjects", ARB, "GL_ARB_shader_objects") { - "GL_PROGRAM_OBJECT_ARB"("0x8B40") - "GL_SHADER_OBJECT_ARB"("0x8B48") - "GL_OBJECT_TYPE_ARB"("0x8B4E") - "GL_OBJECT_SUBTYPE_ARB"("0x8B4F") - "GL_FLOAT_VEC2_ARB"("0x8B50") - "GL_FLOAT_VEC3_ARB"("0x8B51") - "GL_FLOAT_VEC4_ARB"("0x8B52") - "GL_INT_VEC2_ARB"("0x8B53") - "GL_INT_VEC3_ARB"("0x8B54") - "GL_INT_VEC4_ARB"("0x8B55") - "GL_BOOL_ARB"("0x8B56") - "GL_BOOL_VEC2_ARB"("0x8B57") - "GL_BOOL_VEC3_ARB"("0x8B58") - "GL_BOOL_VEC4_ARB"("0x8B59") - "GL_FLOAT_MAT2_ARB"("0x8B5A") - "GL_FLOAT_MAT3_ARB"("0x8B5B") - "GL_FLOAT_MAT4_ARB"("0x8B5C") - "GL_SAMPLER_1D_ARB"("0x8B5D") - "GL_SAMPLER_2D_ARB"("0x8B5E") - "GL_SAMPLER_3D_ARB"("0x8B5F") - "GL_SAMPLER_CUBE_ARB"("0x8B60") - "GL_SAMPLER_1D_SHADOW_ARB"("0x8B61") - "GL_SAMPLER_2D_SHADOW_ARB"("0x8B62") - "GL_SAMPLER_2D_RECT_ARB"("0x8B63") - "GL_SAMPLER_2D_RECT_SHADOW_ARB"("0x8B64") - "GL_OBJECT_DELETE_STATUS_ARB"("0x8B80") - "GL_OBJECT_COMPILE_STATUS_ARB"("0x8B81") - "GL_OBJECT_LINK_STATUS_ARB"("0x8B82") - "GL_OBJECT_VALIDATE_STATUS_ARB"("0x8B83") - "GL_OBJECT_INFO_LOG_LENGTH_ARB"("0x8B84") - "GL_OBJECT_ATTACHED_OBJECTS_ARB"("0x8B85") - "GL_OBJECT_ACTIVE_UNIFORMS_ARB"("0x8B86") - "GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"("0x8B87") - "GL_OBJECT_SHADER_SOURCE_LENGTH_ARB"("0x8B88") - "glDeleteObjectARB"(void, int("obj")) - "glGetHandleARB"(int, int("pname")) - "glDetachObjectARB"(void, int("containerObj"), int("attachedObj")) - "glCreateShaderObjectARB"(int, int("shaderType")) - "glShaderSourceARB"( - void, - int("shaderObj"), - int("count"), - address("string", "const GLcharARB**"), - address("length", "const GLint*") - ) - "glCompileShaderARB"(void, int("shaderObj")) - "glCreateProgramObjectARB"(int) - "glAttachObjectARB"(void, int("containerObj"), int("obj")) - "glLinkProgramARB"(void, int("programObj")) - "glUseProgramObjectARB"(void, int("programObj")) - "glValidateProgramARB"(void, int("programObj")) - "glUniform1fARB"(void, int("location"), float("v0")) - "glUniform2fARB"(void, int("location"), float("v0"), float("v1")) - "glUniform3fARB"(void, int("location"), float("v0"), float("v1"), float("v2")) - "glUniform4fARB"(void, int("location"), float("v0"), float("v1"), float("v2"), float("v3")) - "glUniform1iARB"(void, int("location"), int("v0")) - "glUniform2iARB"(void, int("location"), int("v0"), int("v1")) - "glUniform3iARB"(void, int("location"), int("v0"), int("v1"), int("v2")) - "glUniform4iARB"(void, int("location"), int("v0"), int("v1"), int("v2"), int("v3")) - "glUniform1fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform2fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform3fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform4fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform1ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniform2ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniform3ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniform4ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniformMatrix2fvARB"( - void, - int("location"), - int("count"), - boolean("transpose"), - address("value", "const GLfloat*") - ) - "glUniformMatrix3fvARB"( - void, - int("location"), - int("count"), - boolean("transpose"), - address("value", "const GLfloat*") - ) - "glUniformMatrix4fvARB"( - void, - int("location"), - int("count"), - boolean("transpose"), - address("value", "const GLfloat*") - ) - "glGetObjectParameterfvARB"(void, int("obj"), int("pname"), address("params", "GLfloat*")) - "glGetObjectParameterivARB"(void, int("obj"), int("pname"), address("params", "GLint*")) - "glGetInfoLogARB"( - void, - int("obj"), - int("maxLength"), - address("length", "GLsizei*"), - address("infoLog", "GLcharARB*") - ) - "glGetAttachedObjectsARB"( - void, - int("containerObj"), - int("maxCount"), - address("count", "GLsizei*"), - address("obj", "GLhandleARB*") - ) - "glGetUniformLocationARB"(int, int("programObj"), address("name", "const GLcharARB*")) - "glGetActiveUniformARB"( - void, - int("programObj"), - int("index"), - int("maxLength"), - address("length", "GLsizei*"), - address("size", "GLint*"), - address("type", "GLenum*"), - address("name", "GLcharARB*") - ) - "glGetUniformfvARB"(void, int("programObj"), int("location"), address("params", "GLfloat*")) - "glGetUniformivARB"(void, int("programObj"), int("location"), address("params", "GLint*")) - "glGetShaderSourceARB"( - void, - int("obj"), - int("maxLength"), - address("length", "GLsizei*"), - address("source", "GLcharARB*") - ) - } - file("ShadingLanguageInclude", ARB, "GL_ARB_shading_language_include") { - "GL_SHADER_INCLUDE_ARB"("0x8DAE") - "GL_NAMED_STRING_LENGTH_ARB"("0x8DE9") - "GL_NAMED_STRING_TYPE_ARB"("0x8DEA") - "glNamedStringARB"( - void, - int("type"), - int("nameLen"), - address("name", "const GLchar*"), - int("stringLen"), - address("string", "const GLchar*") - ) - "glDeleteNamedStringARB"(void, int("nameLen"), address("name", "const GLchar*")) - "glCompileShaderIncludeARB"( - void, - int("shader"), - int("count"), - address("path", "const GLchar *const*"), - address("length", "const GLint*") - ) - "glIsNamedStringARB"(boolean, int("nameLen"), address("name", "const GLchar*")) - "glGetNamedStringARB"( - void, - int("nameLen"), - address("name", "const GLchar*"), - int("bufSize"), - address("stringLen", "GLint*"), - address("string", "GLchar*") - ) - "glGetNamedStringivARB"( - void, - int("nameLen"), - address("name", "const GLchar*"), - int("pname"), - address("params", "GLint*") - ) - } - file( - "Shadow", ARB, "GL_ARB_shadow", - "GL_TEXTURE_COMPARE_MODE_ARB" to "0x884C", - "GL_TEXTURE_COMPARE_FUNC_ARB" to "0x884D", - "GL_COMPARE_R_TO_TEXTURE_ARB" to "0x884E" - ) - file( - "ShadowAmbient", ARB, "GL_ARB_shadow_ambient", - "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB" to "0x80BF" - ) - file("SparseBuffer", ARB, "GL_ARB_sparse_buffer") { - "GL_SPARSE_STORAGE_BIT_ARB"("0x0400") - "GL_SPARSE_BUFFER_PAGE_SIZE_ARB"("0x82F8") - "glBufferPageCommitmentARB"(void, int("target"), long("offset"), long("size"), boolean("commit")) - "glNamedBufferPageCommitmentEXT"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) - "glNamedBufferPageCommitmentARB"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) - } - file("SparseTexture", ARB, "GL_ARB_sparse_texture") { - "GL_TEXTURE_SPARSE_ARB"("0x91A6") - "GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"("0x91A7") - "GL_NUM_SPARSE_LEVELS_ARB"("0x91AA") - "GL_NUM_VIRTUAL_PAGE_SIZES_ARB"("0x91A8") - "GL_VIRTUAL_PAGE_SIZE_X_ARB"("0x9195") - "GL_VIRTUAL_PAGE_SIZE_Y_ARB"("0x9196") - "GL_VIRTUAL_PAGE_SIZE_Z_ARB"("0x9197") - "GL_MAX_SPARSE_TEXTURE_SIZE_ARB"("0x9198") - "GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB"("0x9199") - "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"("0x919A") - "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB"("0x91A9") - "glTexPageCommitmentARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("yoffset"), - int("zoffset"), - int("width"), - int("height"), - int("depth"), - boolean("commit") - ) - } - file( - "TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp", - "GL_CLAMP_TO_BORDER_ARB" to "0x812D" - ) - file("TextureBufferObject", ARB, "GL_ARB_texture_buffer_object") { - "GL_TEXTURE_BUFFER_ARB"("0x8C2A") - "GL_MAX_TEXTURE_BUFFER_SIZE_ARB"("0x8C2B") - "GL_TEXTURE_BINDING_BUFFER_ARB"("0x8C2C") - "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB"("0x8C2D") - "GL_TEXTURE_BUFFER_FORMAT_ARB"("0x8C2E") - "glTexBufferARB"(void, int("target"), int("internalFormat"), int("buffer")) - } - file("TextureCompression", ARB, "GL_ARB_texture_compression") { - "GL_COMPRESSED_ALPHA_ARB"("0x84E9") - "GL_COMPRESSED_LUMINANCE_ARB"("0x84EA") - "GL_COMPRESSED_LUMINANCE_ALPHA_ARB"("0x84EB") - "GL_COMPRESSED_INTENSITY_ARB"("0x84EC") - "GL_COMPRESSED_RGB_ARB"("0x84ED") - "GL_COMPRESSED_RGBA_ARB"("0x84EE") - "GL_TEXTURE_COMPRESSION_HINT_ARB"("0x84EF") - "GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB"("0x86A0") - "GL_TEXTURE_COMPRESSED_ARB"("0x86A1") - "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A2") - "GL_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A3") - "glCompressedTexImage3DARB"( - void, - int("target"), - int("level"), - int("internalFormat"), - int("width"), - int("height"), - int("depth"), - int("border"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexImage2DARB"( - void, - int("target"), - int("level"), - int("internalFormat"), - int("width"), - int("height"), - int("border"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexImage1DARB"( - void, - int("target"), - int("level"), - int("internalFormat"), - int("width"), - int("border"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexSubImage3DARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("yoffset"), - int("zoffset"), - int("width"), - int("height"), - int("depth"), - int("format"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexSubImage2DARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("yoffset"), - int("width"), - int("height"), - int("format"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexSubImage1DARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("width"), - int("format"), - int("imageSize"), - address("data", "const void*") - ) - "glGetCompressedTexImageARB"(void, int("target"), int("level"), address("img", "void*")) - } - file( - "TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc", - "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB" to "0x8E8C", - "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB" to "0x8E8D", - "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB" to "0x8E8E", - "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB" to "0x8E8F" - ) - file( - "TextureCubeMap", ARB, "GL_ARB_texture_cube_map", - "GL_NORMAL_MAP_ARB" to "0x8511", - "GL_REFLECTION_MAP_ARB" to "0x8512", - "GL_TEXTURE_CUBE_MAP_ARB" to "0x8513", - "GL_TEXTURE_BINDING_CUBE_MAP_ARB" to "0x8514", - "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB" to "0x8515", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB" to "0x8516", - "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB" to "0x8517", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB" to "0x8518", - "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB" to "0x8519", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB" to "0x851A", - "GL_PROXY_TEXTURE_CUBE_MAP_ARB" to "0x851B", - "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB" to "0x851C" - ) - file( - "TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array", - "GL_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x9009", - "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB" to "0x900A", - "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x900B", - "GL_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900C", - "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB" to "0x900D", - "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900E", - "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900F" - ) - file( - "TextureEnvCombine", ARB, "GL_ARB_texture_env_combine", - "GL_COMBINE_ARB" to "0x8570", - "GL_COMBINE_RGB_ARB" to "0x8571", - "GL_COMBINE_ALPHA_ARB" to "0x8572", - "GL_SOURCE0_RGB_ARB" to "0x8580", - "GL_SOURCE1_RGB_ARB" to "0x8581", - "GL_SOURCE2_RGB_ARB" to "0x8582", - "GL_SOURCE0_ALPHA_ARB" to "0x8588", - "GL_SOURCE1_ALPHA_ARB" to "0x8589", - "GL_SOURCE2_ALPHA_ARB" to "0x858A", - "GL_OPERAND0_RGB_ARB" to "0x8590", - "GL_OPERAND1_RGB_ARB" to "0x8591", - "GL_OPERAND2_RGB_ARB" to "0x8592", - "GL_OPERAND0_ALPHA_ARB" to "0x8598", - "GL_OPERAND1_ALPHA_ARB" to "0x8599", - "GL_OPERAND2_ALPHA_ARB" to "0x859A", - "GL_RGB_SCALE_ARB" to "0x8573", - "GL_ADD_SIGNED_ARB" to "0x8574", - "GL_INTERPOLATE_ARB" to "0x8575", - "GL_SUBTRACT_ARB" to "0x84E7", - "GL_CONSTANT_ARB" to "0x8576", - "GL_PRIMARY_COLOR_ARB" to "0x8577", - "GL_PREVIOUS_ARB" to "0x8578" - ) - file( - "TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3", - "GL_DOT3_RGB_ARB" to "0x86AE", - "GL_DOT3_RGBA_ARB" to "0x86AF" - ) - file( - "TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax", - "GL_TEXTURE_REDUCTION_MODE_ARB" to "0x9366", - "GL_WEIGHTED_AVERAGE_ARB" to "0x9367" - ) - file( - "TextureFloat", ARB, "GL_ARB_texture_float", - "GL_TEXTURE_RED_TYPE_ARB" to "0x8C10", - "GL_TEXTURE_GREEN_TYPE_ARB" to "0x8C11", - "GL_TEXTURE_BLUE_TYPE_ARB" to "0x8C12", - "GL_TEXTURE_ALPHA_TYPE_ARB" to "0x8C13", - "GL_TEXTURE_LUMINANCE_TYPE_ARB" to "0x8C14", - "GL_TEXTURE_INTENSITY_TYPE_ARB" to "0x8C15", - "GL_TEXTURE_DEPTH_TYPE_ARB" to "0x8C16", - "GL_UNSIGNED_NORMALIZED_ARB" to "0x8C17", - "GL_RGBA32F_ARB" to "0x8814", - "GL_RGB32F_ARB" to "0x8815", - "GL_ALPHA32F_ARB" to "0x8816", - "GL_INTENSITY32F_ARB" to "0x8817", - "GL_LUMINANCE32F_ARB" to "0x8818", - "GL_LUMINANCE_ALPHA32F_ARB" to "0x8819", - "GL_RGBA16F_ARB" to "0x881A", - "GL_RGB16F_ARB" to "0x881B", - "GL_ALPHA16F_ARB" to "0x881C", - "GL_INTENSITY16F_ARB" to "0x881D", - "GL_LUMINANCE16F_ARB" to "0x881E", - "GL_LUMINANCE_ALPHA16F_ARB" to "0x881F" - ) - file( - "TextureGather", ARB, "GL_ARB_texture_gather", - "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5E", - "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5F", - "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB" to "0x8F9F" - ) - file( - "TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat", - "GL_MIRRORED_REPEAT_ARB" to "0x8370" - ) - file( - "TextureRectangle", ARB, "GL_ARB_texture_rectangle", - "GL_TEXTURE_RECTANGLE_ARB" to "0x84F5", - "GL_TEXTURE_BINDING_RECTANGLE_ARB" to "0x84F6", - "GL_PROXY_TEXTURE_RECTANGLE_ARB" to "0x84F7", - "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB" to "0x84F8" - ) - file( - "TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query", - "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB" to "0x82EC", - "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB" to "0x82ED" - ) - file("TransposeMatrix", ARB, "GL_ARB_transpose_matrix") { - "GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"("0x84E3") - "GL_TRANSPOSE_PROJECTION_MATRIX_ARB"("0x84E4") - "GL_TRANSPOSE_TEXTURE_MATRIX_ARB"("0x84E5") - "GL_TRANSPOSE_COLOR_MATRIX_ARB"("0x84E6") - "glLoadTransposeMatrixfARB"(void, address("m", "const GLfloat*")) - "glLoadTransposeMatrixdARB"(void, address("m", "const GLdouble*")) - "glMultTransposeMatrixfARB"(void, address("m", "const GLfloat*")) - "glMultTransposeMatrixdARB"(void, address("m", "const GLdouble*")) - } - file("VertexBlend", ARB, "GL_ARB_vertex_blend") { - "GL_MAX_VERTEX_UNITS_ARB"("0x86A4") - "GL_ACTIVE_VERTEX_UNITS_ARB"("0x86A5") - "GL_WEIGHT_SUM_UNITY_ARB"("0x86A6") - "GL_VERTEX_BLEND_ARB"("0x86A7") - "GL_CURRENT_WEIGHT_ARB"("0x86A8") - "GL_WEIGHT_ARRAY_TYPE_ARB"("0x86A9") - "GL_WEIGHT_ARRAY_STRIDE_ARB"("0x86AA") - "GL_WEIGHT_ARRAY_SIZE_ARB"("0x86AB") - "GL_WEIGHT_ARRAY_POINTER_ARB"("0x86AC") - "GL_WEIGHT_ARRAY_ARB"("0x86AD") - "GL_MODELVIEW0_ARB"("0x1700") - "GL_MODELVIEW1_ARB"("0x850A") - "GL_MODELVIEW2_ARB"("0x8722") - "GL_MODELVIEW3_ARB"("0x8723") - "GL_MODELVIEW4_ARB"("0x8724") - "GL_MODELVIEW5_ARB"("0x8725") - "GL_MODELVIEW6_ARB"("0x8726") - "GL_MODELVIEW7_ARB"("0x8727") - "GL_MODELVIEW8_ARB"("0x8728") - "GL_MODELVIEW9_ARB"("0x8729") - "GL_MODELVIEW10_ARB"("0x872A") - "GL_MODELVIEW11_ARB"("0x872B") - "GL_MODELVIEW12_ARB"("0x872C") - "GL_MODELVIEW13_ARB"("0x872D") - "GL_MODELVIEW14_ARB"("0x872E") - "GL_MODELVIEW15_ARB"("0x872F") - "GL_MODELVIEW16_ARB"("0x8730") - "GL_MODELVIEW17_ARB"("0x8731") - "GL_MODELVIEW18_ARB"("0x8732") - "GL_MODELVIEW19_ARB"("0x8733") - "GL_MODELVIEW20_ARB"("0x8734") - "GL_MODELVIEW21_ARB"("0x8735") - "GL_MODELVIEW22_ARB"("0x8736") - "GL_MODELVIEW23_ARB"("0x8737") - "GL_MODELVIEW24_ARB"("0x8738") - "GL_MODELVIEW25_ARB"("0x8739") - "GL_MODELVIEW26_ARB"("0x873A") - "GL_MODELVIEW27_ARB"("0x873B") - "GL_MODELVIEW28_ARB"("0x873C") - "GL_MODELVIEW29_ARB"("0x873D") - "GL_MODELVIEW30_ARB"("0x873E") - "GL_MODELVIEW31_ARB"("0x873F") - "glWeightbvARB"(void, GLint("size"), address("weights", "const GLbyte*")) - "glWeightsvARB"(void, GLint("size"), address("weights", "const GLshort*")) - "glWeightivARB"(void, GLint("size"), address("weights", "const GLint*")) - "glWeightfvARB"(void, GLint("size"), address("weights", "const GLfloat*")) - "glWeightdvARB"(void, GLint("size"), address("weights", "const GLdouble*")) - "glWeightubvARB"(void, GLint("size"), address("weights", "const GLubyte*")) - "glWeightusvARB"(void, GLint("size"), address("weights", "const GLushort*")) - "glWeightuivARB"(void, GLint("size"), address("weights", "const GLuint*")) - "glWeightPointerARB"(void, GLint("size"), GLenum("type"), GLsizei("stride"), address("pointer", "const void*")) - "glVertexBlendARB"(void, GLint("count")) - } - file("VertexBufferObject", ARB, "GL_ARB_vertex_buffer_object") { - "GL_BUFFER_SIZE_ARB"("0x8764") - "GL_BUFFER_USAGE_ARB"("0x8765") - "GL_ARRAY_BUFFER_ARB"("0x8892") - "GL_ELEMENT_ARRAY_BUFFER_ARB"("0x8893") - "GL_ARRAY_BUFFER_BINDING_ARB"("0x8894") - "GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB"("0x8895") - "GL_VERTEX_ARRAY_BUFFER_BINDING_ARB"("0x8896") - "GL_NORMAL_ARRAY_BUFFER_BINDING_ARB"("0x8897") - "GL_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x8898") - "GL_INDEX_ARRAY_BUFFER_BINDING_ARB"("0x8899") - "GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB"("0x889A") - "GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB"("0x889B") - "GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x889C") - "GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB"("0x889D") - "GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB"("0x889E") - "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB"("0x889F") - "GL_READ_ONLY_ARB"("0x88B8") - "GL_WRITE_ONLY_ARB"("0x88B9") - "GL_READ_WRITE_ARB"("0x88BA") - "GL_BUFFER_ACCESS_ARB"("0x88BB") - "GL_BUFFER_MAPPED_ARB"("0x88BC") - "GL_BUFFER_MAP_POINTER_ARB"("0x88BD") - "GL_STREAM_DRAW_ARB"("0x88E0") - "GL_STREAM_READ_ARB"("0x88E1") - "GL_STREAM_COPY_ARB"("0x88E2") - "GL_STATIC_DRAW_ARB"("0x88E4") - "GL_STATIC_READ_ARB"("0x88E5") - "GL_STATIC_COPY_ARB"("0x88E6") - "GL_DYNAMIC_DRAW_ARB"("0x88E8") - "GL_DYNAMIC_READ_ARB"("0x88E9") - "GL_DYNAMIC_COPY_ARB"("0x88EA") - "glBindBufferARB"(void, GLenum("target"), GLuint("buffer")) - "glDeleteBuffersARB"(void, GLsizei("n"), address("buffers", "const GLuint*")) - "glGenBuffersARB"(void, GLsizei("n"), address("buffers", "GLuint*")) - "glIsBufferARB"(boolean, GLuint("buffer")) - "glBufferDataARB"( - void, - GLenum("target"), - GLsizeiptrARB("size"), - address("data", "const void*"), - GLenum("usage") - ) - "glBufferSubDataARB"( - void, - GLenum("target"), - GLintptrARB("offset"), - GLsizeiptrARB("size"), - address("data", "const void*") - ) - "glGetBufferSubDataARB"( - void, - GLenum("target"), - GLintptrARB("offset"), - GLsizeiptrARB("size"), - address("data", "void*") - ) - "glMapBufferARB"(address, GLenum("target"), GLenum("access"), nativeType = "void*") - "glUnmapBufferARB"(boolean, GLenum("target")) - "glGetBufferParameterivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint*")) - "glGetBufferPointervARB"(void, GLenum("target"), GLenum("pname"), address("params", "void**")) - } - file("VertexProgram", ARB, "GL_ARB_vertex_program") { - "GL_COLOR_SUM_ARB"("0x8458") - "GL_VERTEX_PROGRAM_ARB"("0x8620") - "GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB"("0x8622") - "GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB"("0x8623") - "GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB"("0x8624") - "GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB"("0x8625") - "GL_CURRENT_VERTEX_ATTRIB_ARB"("0x8626") - "GL_VERTEX_PROGRAM_POINT_SIZE_ARB"("0x8642") - "GL_VERTEX_PROGRAM_TWO_SIDE_ARB"("0x8643") - "GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB"("0x8645") - "GL_MAX_VERTEX_ATTRIBS_ARB"("0x8869") - "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"("0x886A") - "GL_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B0") - "GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B1") - "GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B2") - "GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B3") - "glVertexAttrib1dARB"(void, GLuint("index"), GLdouble("x")) - "glVertexAttrib1dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib1fARB"(void, GLuint("index"), GLfloat("x")) - "glVertexAttrib1fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib1sARB"(void, GLuint("index"), GLshort("x")) - "glVertexAttrib1svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib2dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) - "glVertexAttrib2dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib2fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y")) - "glVertexAttrib2fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib2sARB"(void, GLuint("index"), GLshort("x"), GLshort("y")) - "glVertexAttrib2svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib3dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) - "glVertexAttrib3dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib3fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z")) - "glVertexAttrib3fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib3sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z")) - "glVertexAttrib3svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib4NbvARB"(void, GLuint("index"), address("v", "const GLbyte *")) - "glVertexAttrib4NivARB"(void, GLuint("index"), address("v", "const GLint *")) - "glVertexAttrib4NsvARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib4NubARB"(void, GLuint("index"), GLubyte("x"), GLubyte("y"), GLubyte("z"), GLubyte("w")) - "glVertexAttrib4NubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) - "glVertexAttrib4NuivARB"(void, GLuint("index"), address("v", "const GLuint *")) - "glVertexAttrib4NusvARB"(void, GLuint("index"), address("v", "const GLushort *")) - "glVertexAttrib4bvARB"(void, GLuint("index"), address("v", "const GLbyte *")) - "glVertexAttrib4dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) - "glVertexAttrib4dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib4fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) - "glVertexAttrib4fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib4ivARB"(void, GLuint("index"), address("v", "const GLint *")) - "glVertexAttrib4sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) - "glVertexAttrib4svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib4ubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) - "glVertexAttrib4uivARB"(void, GLuint("index"), address("v", "const GLuint *")) - "glVertexAttrib4usvARB"(void, GLuint("index"), address("v", "const GLushort *")) - "glVertexAttribPointerARB"( - void, - GLuint("index"), - GLint("size"), - GLenum("type"), - GLboolean("normalized"), - GLsizei("stride"), - address("pointer", "const void *") - ) - "glEnableVertexAttribArrayARB"(void, GLuint("index")) - "glDisableVertexAttribArrayARB"(void, GLuint("index")) - "glGetVertexAttribdvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) - "glGetVertexAttribfvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) - "glGetVertexAttribivARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) - "glGetVertexAttribPointervARB"(void, GLuint("index"), GLenum("pname"), address("pointer", "void **")) - } - file("VertexShader", ARB, "GL_ARB_vertex_shader") { - "GL_VERTEX_SHADER_ARB"("0x8B31") - "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB"("0x8B4A") - "GL_MAX_VARYING_FLOATS_ARB"("0x8B4B") - "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"("0x8B4C") - "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"("0x8B4D") - "GL_OBJECT_ACTIVE_ATTRIBUTES_ARB"("0x8B89") - "GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"("0x8B8A") - "glBindAttribLocationARB"( - void, - GLhandleARB("programObj"), - GLuint("index"), - address("name", "const GLcharARB *") - ) - "glGetActiveAttribARB"( - void, - GLhandleARB("programObj"), - GLuint("index"), - GLsizei("maxLength"), - address("length", "GLsizei *"), - address("size", "GLint *"), - address("type", "GLenum *"), - address("name", "GLcharARB *") - ) - "glGetAttribLocationARB"(GLint, GLhandleARB("programObj"), address("name", "const GLcharARB *")) - } - file("ViewportArray", ARB, "GL_ARB_viewport_array") { - "glDepthRangeArraydvNV"(void, GLuint("first"), GLsizei("count"), address("v", "const GLdouble *")) - "glDepthRangeIndexeddNV"(void, GLuint("index"), GLdouble("n"), GLdouble("f")) - } - file("WindowPos", ARB, "GL_ARB_window_pos") { - "glWindowPos2dARB"(void, GLdouble("x"), GLdouble("y")) - "glWindowPos2dvARB"(void, address("v", "const GLdouble *")) - "glWindowPos2fARB"(void, GLfloat("x"), GLfloat("y")) - "glWindowPos2fvARB"(void, address("v", "const GLfloat *")) - "glWindowPos2iARB"(void, GLint("x"), GLint("y")) - "glWindowPos2ivARB"(void, address("v", "const GLint *")) - "glWindowPos2sARB"(void, GLshort("x"), GLshort("y")) - "glWindowPos2svARB"(void, address("v", "const GLshort *")) - "glWindowPos3dARB"(void, GLdouble("x"), GLdouble("y"), GLdouble("z")) - "glWindowPos3dvARB"(void, address("v", "const GLdouble *")) - "glWindowPos3fARB"(void, GLfloat("x"), GLfloat("y"), GLfloat("z")) - "glWindowPos3fvARB"(void, address("v", "const GLfloat *")) - "glWindowPos3iARB"(void, GLint("x"), GLint("y"), GLint("z")) - "glWindowPos3ivARB"(void, address("v", "const GLint *")) - "glWindowPos3sARB"(void, GLshort("x"), GLshort("y"), GLshort("z")) - "glWindowPos3svARB"(void, address("v", "const GLshort *")) - } -} - fun khr() { file("BlendEquationAdvanced", KHR, "GL_KHR_blend_equation_advanced") { "GL_MULTIPLY_KHR"("0x9294") @@ -2210,475 +593,6 @@ fun `3dfx`() { ) } -fun amd() { - file( - "BlendMinmaxFactor", AMD, "GL_AMD_blend_minmax_factor", - "GL_FACTOR_MIN_AMD" to "0x901C", - "GL_FACTOR_MAX_AMD" to "0x901D" - ) - file("DebugOutput", AMD, "GL_AMD_debug_output") { - "GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"("0x9143") - "GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"("0x9144") - "GL_DEBUG_LOGGED_MESSAGES_AMD"("0x9145") - "GL_DEBUG_SEVERITY_HIGH_AMD"("0x9146") - "GL_DEBUG_SEVERITY_MEDIUM_AMD"("0x9147") - "GL_DEBUG_SEVERITY_LOW_AMD"("0x9148") - "GL_DEBUG_CATEGORY_API_ERROR_AMD"("0x9149") - "GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD"("0x914A") - "GL_DEBUG_CATEGORY_DEPRECATION_AMD"("0x914B") - "GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD"("0x914C") - "GL_DEBUG_CATEGORY_PERFORMANCE_AMD"("0x914D") - "GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD"("0x914E") - "GL_DEBUG_CATEGORY_APPLICATION_AMD"("0x914F") - "GL_DEBUG_CATEGORY_OTHER_AMD"("0x9150") - "glDebugMessageEnableAMD"( - void, - GLenum("category"), - GLenum("severity"), - GLsizei("count"), - address("ids", "const GLuint *"), - GLboolean("enabled") - ) - "glDebugMessageInsertAMD"( - void, - GLenum("category"), - GLenum("severity"), - GLuint("id"), - GLsizei("length"), - address("buf", "const GLchar *") - ) - ("glDebugMessageCallbackAMD"(void, address("callback", "GLDEBUGPROCAMD"), address("userParam", "void *"))) { - "glDebugMessageCallbackAMD"( - void, - "glDebugMessageCallbackAMD(callback.address(arena), userParam);", - arena("arena"), - Type("GLDebugProcAMD", null)("callback"), - address("userParam", "void *") - ) - } - "glGetDebugMessageLogAMD"( - GLuint, - GLuint("count"), - GLsizei("bufSize"), - address("categories", "GLenum *"), - address("severities", "GLenum *"), - address("ids", "GLuint *"), - address("lengths", "GLsizei *"), - address("message", "GLchar *") - ) - } - file( - "DepthClampSeparate", AMD, "GL_AMD_depth_clamp_separate", - "GL_DEPTH_CLAMP_NEAR_AMD" to "0x901E", - "GL_DEPTH_CLAMP_FAR_AMD" to "0x901F" - ) - file("DrawBuffersBlend", AMD, "GL_AMD_draw_buffers_blend") { - "glBlendFuncIndexedAMD"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) - "glBlendFuncSeparateIndexedAMD"( - void, - GLuint("buf"), - GLenum("srcRGB"), - GLenum("dstRGB"), - GLenum("srcAlpha"), - GLenum("dstAlpha") - ) - "glBlendEquationIndexedAMD"(void, GLuint("buf"), GLenum("mode")) - "glBlendEquationSeparateIndexedAMD"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) - } - file("FramebufferMultisampleAdvanced", AMD, "GL_AMD_framebuffer_multisample_advanced") { - "GL_RENDERBUFFER_STORAGE_SAMPLES_AMD"("0x91B2") - "GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD"("0x91B3") - "GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD"("0x91B4") - "GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD"("0x91B5") - "GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B6") - "GL_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B7") - "glRenderbufferStorageMultisampleAdvancedAMD"( - void, - GLenum("target"), - GLsizei("samples"), - GLsizei("storageSamples"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height") - ) - "glNamedRenderbufferStorageMultisampleAdvancedAMD"( - void, - GLuint("renderbuffer"), - GLsizei("samples"), - GLsizei("storageSamples"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height") - ) - } - file("FramebufferSamplePositions", AMD, "GL_AMD_framebuffer_sample_positions") { - "GL_SUBSAMPLE_DISTANCE_AMD"("0x883F") - "GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD"("0x91AE") - "GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD"("0x91AF") - "GL_ALL_PIXELS_AMD"("0xFFFFFFFF") - "glFramebufferSamplePositionsfvAMD"( - void, - GLenum("target"), - GLuint("numsamples"), - GLuint("pixelindex"), - address("values", "const GLfloat *") - ) - "glNamedFramebufferSamplePositionsfvAMD"( - void, - GLuint("framebuffer"), - GLuint("numsamples"), - GLuint("pixelindex"), - address("values", "const GLfloat *") - ) - "glGetFramebufferParameterfvAMD"( - void, - GLenum("target"), - GLenum("pname"), - GLuint("numsamples"), - GLuint("pixelindex"), - GLsizei("size"), - address("values", "GLfloat *") - ) - "glGetNamedFramebufferParameterfvAMD"( - void, - GLuint("framebuffer"), - GLenum("pname"), - GLuint("numsamples"), - GLuint("pixelindex"), - GLsizei("size"), - address("values", "GLfloat *") - ) - } - file( - "GpuShaderHalfFloat", AMD, "GL_AMD_gpu_shader_half_float", - "GL_FLOAT16_NV" to "0x8FF8", - "GL_FLOAT16_VEC2_NV" to "0x8FF9", - "GL_FLOAT16_VEC3_NV" to "0x8FFA", - "GL_FLOAT16_VEC4_NV" to "0x8FFB", - "GL_FLOAT16_MAT2_AMD" to "0x91C5", - "GL_FLOAT16_MAT3_AMD" to "0x91C6", - "GL_FLOAT16_MAT4_AMD" to "0x91C7", - "GL_FLOAT16_MAT2x3_AMD" to "0x91C8", - "GL_FLOAT16_MAT2x4_AMD" to "0x91C9", - "GL_FLOAT16_MAT3x2_AMD" to "0x91CA", - "GL_FLOAT16_MAT3x4_AMD" to "0x91CB", - "GL_FLOAT16_MAT4x2_AMD" to "0x91CC", - "GL_FLOAT16_MAT4x3_AMD" to "0x91CD" - ) - file("GpuShaderInt64", AMD, "GL_AMD_gpu_shader_int64") { - "GL_INT64_NV"("0x140E") - "GL_UNSIGNED_INT64_NV"("0x140F") - "GL_INT8_NV"("0x8FE0") - "GL_INT8_VEC2_NV"("0x8FE1") - "GL_INT8_VEC3_NV"("0x8FE2") - "GL_INT8_VEC4_NV"("0x8FE3") - "GL_INT16_NV"("0x8FE4") - "GL_INT16_VEC2_NV"("0x8FE5") - "GL_INT16_VEC3_NV"("0x8FE6") - "GL_INT16_VEC4_NV"("0x8FE7") - "GL_INT64_VEC2_NV"("0x8FE9") - "GL_INT64_VEC3_NV"("0x8FEA") - "GL_INT64_VEC4_NV"("0x8FEB") - "GL_UNSIGNED_INT8_NV"("0x8FEC") - "GL_UNSIGNED_INT8_VEC2_NV"("0x8FED") - "GL_UNSIGNED_INT8_VEC3_NV"("0x8FEE") - "GL_UNSIGNED_INT8_VEC4_NV"("0x8FEF") - "GL_UNSIGNED_INT16_NV"("0x8FF0") - "GL_UNSIGNED_INT16_VEC2_NV"("0x8FF1") - "GL_UNSIGNED_INT16_VEC3_NV"("0x8FF2") - "GL_UNSIGNED_INT16_VEC4_NV"("0x8FF3") - "GL_UNSIGNED_INT64_VEC2_NV"("0x8FF5") - "GL_UNSIGNED_INT64_VEC3_NV"("0x8FF6") - "GL_UNSIGNED_INT64_VEC4_NV"("0x8FF7") - "glUniform1i64NV"(void, GLint("location"), GLint64EXT("x")) - "glUniform2i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y")) - "glUniform3i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z")) - "glUniform4i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z"), GLint64EXT("w")) - "glUniform1i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform2i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform3i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform4i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform1ui64NV"(void, GLint("location"), GLuint64EXT("x")) - "glUniform2ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) - "glUniform3ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y"), GLuint64EXT("z")) - "glUniform4ui64NV"( - void, - GLint("location"), - GLuint64EXT("x"), - GLuint64EXT("y"), - GLuint64EXT("z"), - GLuint64EXT("w") - ) - "glUniform1ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glUniform2ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glUniform3ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glUniform4ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glGetUniformi64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLint64EXT *")) - "glGetUniformui64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLuint64EXT *")) - "glProgramUniform1i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x")) - "glProgramUniform2i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x"), GLint64EXT("y")) - "glProgramUniform3i64NV"( - void, - GLuint("program"), - GLint("location"), - GLint64EXT("x"), - GLint64EXT("y"), - GLint64EXT("z") - ) - "glProgramUniform4i64NV"( - void, - GLuint("program"), - GLint("location"), - GLint64EXT("x"), - GLint64EXT("y"), - GLint64EXT("z"), - GLint64EXT("w") - ) - "glProgramUniform1i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform2i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform3i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform4i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform1ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x")) - "glProgramUniform2ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) - "glProgramUniform3ui64NV"( - void, - GLuint("program"), - GLint("location"), - GLuint64EXT("x"), - GLuint64EXT("y"), - GLuint64EXT("z") - ) - "glProgramUniform4ui64NV"( - void, - GLuint("program"), - GLint("location"), - GLuint64EXT("x"), - GLuint64EXT("y"), - GLuint64EXT("z"), - GLuint64EXT("w") - ) - "glProgramUniform1ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - "glProgramUniform2ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - "glProgramUniform3ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - "glProgramUniform4ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - } - file("InterleavedElements", AMD, "GL_AMD_interleaved_elements") { - "GL_VERTEX_ELEMENT_SWIZZLE_AMD"("0x91A4") - "GL_VERTEX_ID_SWIZZLE_AMD"("0x91A5") - "glVertexAttribParameteriAMD"(void, GLuint("index"), GLenum("pname"), GLint("param")) - } - file("MultiDrawIndirect", AMD, "GL_AMD_multi_draw_indirect") { - "glMultiDrawArraysIndirectAMD"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLsizei("primcount"), - GLsizei("stride") - ) - "glMultiDrawElementsIndirectAMD"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLsizei("primcount"), - GLsizei("stride") - ) - } - file("NameGenDelete", AMD, "GL_AMD_name_gen_delete") { - "GL_DATA_BUFFER_AMD"("0x9151") - "GL_PERFORMANCE_MONITOR_AMD"("0x9152") - "GL_QUERY_OBJECT_AMD"("0x9153") - "GL_VERTEX_ARRAY_OBJECT_AMD"("0x9154") - "GL_SAMPLER_OBJECT_AMD"("0x9155") - "glGenNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "GLuint *")) - "glDeleteNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "const GLuint *")) - "glIsNameAMD"(GLboolean, GLenum("identifier"), GLuint("name")) - } - file("OcclusionQueryEvent", AMD, "GL_AMD_occlusion_query_event") { - "GL_OCCLUSION_QUERY_EVENT_MASK_AMD"("0x874F") - "GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD"("0x00000001") - "GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD"("0x00000002") - "GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD"("0x00000004") - "GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD"("0x00000008") - "GL_QUERY_ALL_EVENT_BITS_AMD"("0xFFFFFFFF") - "glQueryObjectParameteruiAMD"(void, GLenum("target"), GLuint("id"), GLenum("pname"), GLuint("param")) - } - file("PerformanceMonitor", AMD, "GL_AMD_performance_monitor") { - "GL_COUNTER_TYPE_AMD"("0x8BC0") - "GL_COUNTER_RANGE_AMD"("0x8BC1") - "GL_UNSIGNED_INT64_AMD"("0x8BC2") - "GL_PERCENTAGE_AMD"("0x8BC3") - "GL_PERFMON_RESULT_AVAILABLE_AMD"("0x8BC4") - "GL_PERFMON_RESULT_SIZE_AMD"("0x8BC5") - "GL_PERFMON_RESULT_AMD"("0x8BC6") - "glGetPerfMonitorGroupsAMD"( - void, - address("numGroups", "GLint *"), - GLsizei("groupsSize"), - address("groups", "GLuint *") - ) - "glGetPerfMonitorCountersAMD"( - void, - GLuint("group"), - address("numCounters", "GLint *"), - address("maxActiveCounters", "GLint *"), - GLsizei("counterSize"), - address("counters", "GLuint *") - ) - "glGetPerfMonitorGroupStringAMD"( - void, - GLuint("group"), - GLsizei("bufSize"), - address("length", "GLsizei *"), - address("groupString", "GLchar *") - ) - "glGetPerfMonitorCounterStringAMD"( - void, - GLuint("group"), - GLuint("counter"), - GLsizei("bufSize"), - address("length", "GLsizei *"), - address("counterString", "GLchar *") - ) - "glGetPerfMonitorCounterInfoAMD"( - void, - GLuint("group"), - GLuint("counter"), - GLenum("pname"), - address("data", "void *") - ) - "glGenPerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) - "glDeletePerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) - "glSelectPerfMonitorCountersAMD"( - void, - GLuint("monitor"), - GLboolean("enable"), - GLuint("group"), - GLint("numCounters"), - address("counterList", "GLuint *") - ) - "glBeginPerfMonitorAMD"(void, GLuint("monitor")) - "glEndPerfMonitorAMD"(void, GLuint("monitor")) - "glGetPerfMonitorCounterDataAMD"( - void, - GLuint("monitor"), - GLenum("pname"), - GLsizei("dataSize"), - address("data", "GLuint *"), - address("bytesWritten", "GLint *") - ) - } - file("PinnedMemory", AMD, "GL_AMD_pinned_memory", "GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD" to "0x9160") - file( - "QueryBufferObject", AMD, "GL_AMD_query_buffer_object", - "GL_QUERY_BUFFER_AMD" to "0x9192", - "GL_QUERY_BUFFER_BINDING_AMD" to "0x9193", - "GL_QUERY_RESULT_NO_WAIT_AMD" to "0x9194" - ) - file("SamplePositions", AMD, "GL_AMD_sample_positions") { - "glSetMultisamplefvAMD"(void, GLenum("pname"), GLuint("index"), address("val", "const GLfloat *")) - } - file("SparseTexture", AMD, "GL_AMD_sparse_texture") { - "GL_VIRTUAL_PAGE_SIZE_X_AMD"("0x9195") - "GL_VIRTUAL_PAGE_SIZE_Y_AMD"("0x9196") - "GL_VIRTUAL_PAGE_SIZE_Z_AMD"("0x9197") - "GL_MAX_SPARSE_TEXTURE_SIZE_AMD"("0x9198") - "GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"("0x9199") - "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"("0x919A") - "GL_MIN_SPARSE_LEVEL_AMD"("0x919B") - "GL_MIN_LOD_WARNING_AMD"("0x919C") - "GL_TEXTURE_STORAGE_SPARSE_BIT_AMD"("0x00000001") - "glTexStorageSparseAMD"( - void, - GLenum("target"), - GLenum("internalFormat"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth"), - GLsizei("layers"), - GLbitfield("flags") - ) - "glTextureStorageSparseAMD"( - void, - GLuint("texture"), - GLenum("target"), - GLenum("internalFormat"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth"), - GLsizei("layers"), - GLbitfield("flags") - ) - } - file("StencilOperationExtended", AMD, "GL_AMD_stencil_operation_extended") { - "GL_SET_AMD"("0x874A") - "GL_REPLACE_VALUE_AMD"("0x874B") - "GL_STENCIL_OP_VALUE_AMD"("0x874C") - "GL_STENCIL_BACK_OP_VALUE_AMD"("0x874D") - "glStencilOpValueAMD"(void, GLenum("face"), GLuint("value")) - } - file("TransformFeedback4", AMD, "GL_AMD_transform_feedback4", "GL_STREAM_RASTERIZATION_AMD" to "0x91A0") - file("VertexShaderTessellator", AMD, "GL_AMD_vertex_shader_tessellator") { - "GL_SAMPLER_BUFFER_AMD"("0x9001") - "GL_INT_SAMPLER_BUFFER_AMD"("0x9002") - "GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD"("0x9003") - "GL_TESSELLATION_MODE_AMD"("0x9004") - "GL_TESSELLATION_FACTOR_AMD"("0x9005") - "GL_DISCRETE_AMD"("0x9006") - "GL_CONTINUOUS_AMD"("0x9007") - "glTessellationFactorAMD"(void, GLfloat("factor")) - "glTessellationModeAMD"(void, GLenum("mode")) - } -} - fun apple() { file("AuxDepthStencil", APPLE, "GL_APPLE_aux_depth_stencil", "GL_AUX_DEPTH_STENCIL_APPLE" to "0x8A14") file("ClientStorage", APPLE, "GL_APPLE_client_storage", "GL_UNPACK_CLIENT_STORAGE_APPLE" to "0x85B2") @@ -3632,545 +1546,6 @@ fun mesa() { ) } -fun nv() { - file("ConditionalRender", NVX, "GL_NVX_conditional_render") { - "glBeginConditionalRenderNVX"(void, GLuint("id")) - "glEndConditionalRenderNVX"(void) - } - file( - "GpuMemoryInfo", NVX, "GL_NVX_gpu_memory_info", - "GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX" to "0x9047", - "GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX" to "0x9048", - "GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX" to "0x9049", - "GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX" to "0x904A", - "GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX" to "0x904B" - ) - file("GpuMulticast2", NVX, "GL_NVX_gpu_multicast2") { - "GL_UPLOAD_GPU_MASK_NVX"("0x954A") - "glUploadGpuMaskNVX"(void, GLbitfield("mask")) - "glMulticastViewportArrayvNVX"( - void, - GLuint("gpu"), - GLuint("first"), - GLsizei("count"), - address("v", "const GLfloat *") - ) - "glMulticastViewportPositionWScaleNVX"( - void, - GLuint("gpu"), - GLuint("index"), - GLfloat("xcoeff"), - GLfloat("ycoeff") - ) - "glMulticastScissorArrayvNVX"( - void, - GLuint("gpu"), - GLuint("first"), - GLsizei("count"), - address("v", "const GLint *") - ) - "glAsyncCopyBufferSubDataNVX"( - GLuint, - GLsizei("waitSemaphoreCount"), - address("waitSemaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *"), - GLuint("readGpu"), - GLbitfield("writeGpuMask"), - GLuint("readBuffer"), - GLuint("writeBuffer"), - GLintptr("readOffset"), - GLintptr("writeOffset"), - GLsizeiptr("size"), - GLsizei("signalSemaphoreCount"), - address("signalSemaphoreArray", "const GLuint *"), - address("signalValueArray", "const GLuint64 *") - ) - "glAsyncCopyImageSubDataNVX"( - GLuint, - GLsizei("waitSemaphoreCount"), - address("waitSemaphoreArray", "const GLuint *"), - address("waitValueArray", "const GLuint64 *"), - GLuint("srcGpu"), - GLbitfield("dstGpuMask"), - GLuint("srcName"), - GLenum("srcTarget"), - GLint("srcLevel"), - GLint("srcX"), - GLint("srcY"), - GLint("srcZ"), - GLuint("dstName"), - GLenum("dstTarget"), - GLint("dstLevel"), - GLint("dstX"), - GLint("dstY"), - GLint("dstZ"), - GLsizei("srcWidth"), - GLsizei("srcHeight"), - GLsizei("srcDepth"), - GLsizei("signalSemaphoreCount"), - address("signalSemaphoreArray", "const GLuint *"), - address("signalValueArray", "const GLuint64 *") - ) - } - file("LinkedGpuMulticast", NVX, "GL_NVX_linked_gpu_multicast") { - "GL_LGPU_SEPARATE_STORAGE_BIT_NVX"("0x0800") - "GL_MAX_LGPU_GPUS_NVX"("0x92BA") - "glLGPUNamedBufferSubDataNVX"( - void, - GLbitfield("gpuMask"), - GLuint("buffer"), - GLintptr("offset"), - GLsizeiptr("size"), - address("data", "const void *") - ) - "glLGPUCopyImageSubDataNVX"( - void, - GLuint("sourceGpu"), - GLbitfield("destinationGpuMask"), - GLuint("srcName"), - GLenum("srcTarget"), - GLint("srcLevel"), - GLint("srcX"), - GLint("srxY"), - GLint("srcZ"), - GLuint("dstName"), - GLenum("dstTarget"), - GLint("dstLevel"), - GLint("dstX"), - GLint("dstY"), - GLint("dstZ"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth") - ) - "glLGPUInterlockNVX"(void) - } - file("ProgressFence", NVX, "GL_NVX_progress_fence") { - "glCreateProgressFenceNVX"(void) - "glSignalSemaphoreui64NVX"( - void, - GLuint("signalGpu"), - GLsizei("fenceObjectCount"), - address("semaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *") - ) - "glWaitSemaphoreui64NVX"( - void, - GLuint("waitGpu"), - GLsizei("fenceObjectCount"), - address("semaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *") - ) - "glClientWaitSemaphoreui64NVX"( - void, - GLsizei("fenceObjectCount"), - address("semaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *") - ) - } - file("AlphaToCoverageDitherControl", NV, "GL_NV_alpha_to_coverage_dither_control") { - "GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV"("0x934D") - "GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV"("0x934E") - "GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV"("0x934F") - "GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV"("0x92BF") - "glAlphaToCoverageDitherControlNV"(void, GLenum("mode")) - } - file("BindlessMultiDrawIndirect", NV, "GL_NV_bindless_multi_draw_indirect") { - "glMultiDrawArraysIndirectBindlessNV"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - "glMultiDrawElementsIndirectBindlessNV"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - } - file("BindlessMultiDrawIndirectCount", NV, "GL_NV_bindless_multi_draw_indirect_count") { - "glMultiDrawArraysIndirectBindlessCountNV"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("maxDrawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - "glMultiDrawElementsIndirectBindlessCountNV"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("maxDrawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - } - file("BindlessTexture", NV, "GL_NV_bindless_texture") { - "glGetTextureHandleNV"(GLuint64, GLuint("texture")) - "glGetTextureSamplerHandleNV"(GLuint64, GLuint("texture"), GLuint("sampler")) - "glMakeTextureHandleResidentNV"(void, GLuint64("handle")) - "glMakeTextureHandleNonResidentNV"(void, GLuint64("handle")) - "glGetImageHandleNV"( - GLuint64, - GLuint("texture"), - GLint("level"), - GLboolean("layered"), - GLint("layer"), - GLenum("format") - ) - "glMakeImageHandleResidentNV"(void, GLuint64("handle"), GLenum("access")) - "glMakeImageHandleNonResidentNV"(void, GLuint64("handle")) - "glUniformHandleui64NV"(void, GLint("location"), GLuint64("value")) - "glUniformHandleui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glProgramUniformHandleui64NV"(void, GLuint("program"), GLint("location"), GLuint64("value")) - "glProgramUniformHandleui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("values", "const GLuint64 *") - ) - "glIsTextureHandleResidentNV"(GLboolean, GLuint64("handle")) - "glIsImageHandleResidentNV"(GLboolean, GLuint64("handle")) - } - file("BlendEquationAdvanced", NV, "GL_NV_blend_equation_advanced") { - "GL_BLEND_OVERLAP_NV"("0x9281") - "GL_BLEND_PREMULTIPLIED_SRC_NV"("0x9280") - "GL_BLUE_NV"("0x1905") - "GL_COLORBURN_NV"("0x929A") - "GL_COLORDODGE_NV"("0x9299") - "GL_CONJOINT_NV"("0x9284") - "GL_CONTRAST_NV"("0x92A1") - "GL_DARKEN_NV"("0x9297") - "GL_DIFFERENCE_NV"("0x929E") - "GL_DISJOINT_NV"("0x9283") - "GL_DST_ATOP_NV"("0x928F") - "GL_DST_IN_NV"("0x928B") - "GL_DST_NV"("0x9287") - "GL_DST_OUT_NV"("0x928D") - "GL_DST_OVER_NV"("0x9289") - "GL_EXCLUSION_NV"("0x92A0") - "GL_GREEN_NV"("0x1904") - "GL_HARDLIGHT_NV"("0x929B") - "GL_HARDMIX_NV"("0x92A9") - "GL_HSL_COLOR_NV"("0x92AF") - "GL_HSL_HUE_NV"("0x92AD") - "GL_HSL_LUMINOSITY_NV"("0x92B0") - "GL_HSL_SATURATION_NV"("0x92AE") - "GL_INVERT_OVG_NV"("0x92B4") - "GL_INVERT_RGB_NV"("0x92A3") - "GL_LIGHTEN_NV"("0x9298") - "GL_LINEARBURN_NV"("0x92A5") - "GL_LINEARDODGE_NV"("0x92A4") - "GL_LINEARLIGHT_NV"("0x92A7") - "GL_MINUS_CLAMPED_NV"("0x92B3") - "GL_MINUS_NV"("0x929F") - "GL_MULTIPLY_NV"("0x9294") - "GL_OVERLAY_NV"("0x9296") - "GL_PINLIGHT_NV"("0x92A8") - "GL_PLUS_CLAMPED_ALPHA_NV"("0x92B2") - "GL_PLUS_CLAMPED_NV"("0x92B1") - "GL_PLUS_DARKER_NV"("0x9292") - "GL_PLUS_NV"("0x9291") - "GL_RED_NV"("0x1903") - "GL_SCREEN_NV"("0x9295") - "GL_SOFTLIGHT_NV"("0x929C") - "GL_SRC_ATOP_NV"("0x928E") - "GL_SRC_IN_NV"("0x928A") - "GL_SRC_NV"("0x9286") - "GL_SRC_OUT_NV"("0x928C") - "GL_SRC_OVER_NV"("0x9288") - "GL_UNCORRELATED_NV"("0x9282") - "GL_VIVIDLIGHT_NV"("0x92A6") - "GL_XOR_NV"("0x1506") - "glBlendParameteriNV"(void, GLenum("pname"), GLint("value")) - "glBlendBarrierNV"(void) - } - file("BlendEquationAdvancedCoherent", NV, "GL_NV_blend_equation_advanced_coherent", "GL_BLEND_ADVANCED_COHERENT_NV" to "0x9285") - file("ClipSpaceWScaling", NV, "GL_NV_clip_space_w_scaling") { - "GL_VIEWPORT_POSITION_W_SCALE_NV"("0x937C") - "GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV"("0x937D") - "GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV"("0x937E") - "glViewportPositionWScaleNV"(void, GLuint("index"), GLfloat("xcoeff"), GLfloat("ycoeff")) - } - file("CommandList", NV, "GL_NV_command_list") { - "GL_TERMINATE_SEQUENCE_COMMAND_NV"("0x0000") - "GL_NOP_COMMAND_NV"("0x0001") - "GL_DRAW_ELEMENTS_COMMAND_NV"("0x0002") - "GL_DRAW_ARRAYS_COMMAND_NV"("0x0003") - "GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"("0x0004") - "GL_DRAW_ARRAYS_STRIP_COMMAND_NV"("0x0005") - "GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"("0x0006") - "GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"("0x0007") - "GL_ELEMENT_ADDRESS_COMMAND_NV"("0x0008") - "GL_ATTRIBUTE_ADDRESS_COMMAND_NV"("0x0009") - "GL_UNIFORM_ADDRESS_COMMAND_NV"("0x000A") - "GL_BLEND_COLOR_COMMAND_NV"("0x000B") - "GL_STENCIL_REF_COMMAND_NV"("0x000C") - "GL_LINE_WIDTH_COMMAND_NV"("0x000D") - "GL_POLYGON_OFFSET_COMMAND_NV"("0x000E") - "GL_ALPHA_REF_COMMAND_NV"("0x000F") - "GL_VIEWPORT_COMMAND_NV"("0x0010") - "GL_SCISSOR_COMMAND_NV"("0x0011") - "GL_FRONT_FACE_COMMAND_NV"("0x0012") - "glCreateStatesNV"(void, GLsizei("n"), address("states", "GLuint *")) - "glDeleteStatesNV"(void, GLsizei("n"), address("states", "const GLuint *")) - "glIsStateNV"(GLboolean, GLuint("state")) - "glStateCaptureNV"(void, GLuint("state"), GLenum("mode")) - "glGetCommandHeaderNV"(GLuint, GLenum("tokenID"), GLuint("size")) - "glGetStageIndexNV"(GLushort, GLenum("shadertype")) - "glDrawCommandsNV"( - void, - GLenum("primitiveMode"), - GLuint("buffer"), - address("indirects", "const GLintptr *"), - address("sizes", "const GLsizei *"), - GLuint("count") - ) - "glDrawCommandsAddressNV"( - void, - GLenum("primitiveMode"), - address("indirects", "const GLuint64 *"), - address("sizes", "const GLsizei *"), - GLuint("count") - ) - "glDrawCommandsStatesNV"( - void, - GLuint("buffer"), - address("indirects", "const GLintptr *"), - address("sizes", "const GLsizei *"), - address("states", "const GLuint *"), - address("fbos", "const GLuint *"), - GLuint("count") - ) - "glDrawCommandsStatesAddressNV"( - void, - address("indirects", "const GLuint64 *"), - address("sizes", "const GLsizei *"), - address("states", "const GLuint *"), - address("fbos", "const GLuint *"), - GLuint("count") - ) - "glCreateCommandListsNV"(void, GLsizei("n"), address("lists", "GLuint *")) - "glDeleteCommandListsNV"(void, GLsizei("n"), address("lists", "const GLuint *")) - "glIsCommandListNV"(GLboolean, GLuint("list")) - "glListDrawCommandsStatesClientNV"( - void, - GLuint("list"), - GLuint("segment"), - address("indirects", "const void **"), - address("sizes", "const GLsizei *"), - address("states", "const GLuint *"), - address("fbos", "const GLuint *"), - GLuint("count") - ) - "glCommandListSegmentsNV"(void, GLuint("list"), GLuint("segments")) - "glCompileCommandListNV"(void, GLuint("list")) - "glCallCommandListNV"(void, GLuint("list")) - } - file( - "ComputeProgram5", NV, "GL_NV_compute_program5", - "GL_COMPUTE_PROGRAM_NV" to "0x90FB", - "GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV" to "0x90FC" - ) - file("ConditionalRender", NV, "GL_NV_conditional_render") { - "GL_QUERY_WAIT_NV"("0x8E13") - "GL_QUERY_NO_WAIT_NV"("0x8E14") - "GL_QUERY_BY_REGION_WAIT_NV"("0x8E15") - "GL_QUERY_BY_REGION_NO_WAIT_NV"("0x8E16") - "glBeginConditionalRenderNV"(void, GLuint("id"), GLenum("mode")) - "glEndConditionalRenderNV"(void) - } - file("ConservativeRaster", NV, "GL_NV_conservative_raster") { - "GL_CONSERVATIVE_RASTERIZATION_NV"("0x9346") - "GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"("0x9347") - "GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"("0x9348") - "GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"("0x9349") - "glSubpixelPrecisionBiasNV"(void, GLuint("xbits"), GLuint("ybits")) - } - file("ConservativeRasterDilate", NV, "GL_NV_conservative_raster_dilate") { - "GL_CONSERVATIVE_RASTER_DILATE_NV" ("0x9379") - "GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV" ("0x937A") - "GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV" ("0x937B") - "glConservativeRasterParameterfNV" (void, GLenum ("pname"), GLfloat ("value")) - } - file("ConservativeRasterPreSnap", NV, "GL_NV_conservative_raster_pre_snap", "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV" to "0x9550") - file("ConservativeRasterPreSnapTriangles", NV, "GL_NV_conservative_raster_pre_snap_triangles") { - "GL_CONSERVATIVE_RASTER_MODE_NV"("0x954D") - "GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV"("0x954E") - "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV"("0x954F") - "glConservativeRasterParameteriNV"(void, GLenum("pname"), GLint("param")) - } - file( - "CopyDepthToColor", NV, "GL_NV_copy_depth_to_color", - "GL_DEPTH_STENCIL_TO_RGBA_NV" to "0x886E", - "GL_DEPTH_STENCIL_TO_BGRA_NV" to "0x886F" - ) - file("CopyImage", NV, "GL_NV_copy_image") { - "glCopyImageSubDataNV"( - void, - GLuint("srcName"), - GLenum("srcTarget"), - GLint("srcLevel"), - GLint("srcX"), - GLint("srcY"), - GLint("srcZ"), - GLuint("dstName"), - GLenum("dstTarget"), - GLint("dstLevel"), - GLint("dstX"), - GLint("dstY"), - GLint("dstZ"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth") - ) - } - file( - "DeepTexture3D", NV, "GL_NV_deep_texture3D", - "GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV" to "0x90D0", - "GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV" to "0x90D1" - ) - file("DepthBufferFloat", NV, "GL_NV_depth_buffer_float") { - "GL_DEPTH_COMPONENT32F_NV"("0x8DAB") - "GL_DEPTH32F_STENCIL8_NV"("0x8DAC") - "GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV"("0x8DAD") - "GL_DEPTH_BUFFER_FLOAT_MODE_NV"("0x8DAF") - "glDepthRangedNV"(void, GLdouble("zNear"), GLdouble("zFar")) - "glClearDepthdNV"(void, GLdouble("depth")) - "glDepthBoundsdNV"(void, GLdouble("zmin"), GLdouble("zmax")) - } - file("DepthClamp", NV, "GL_NV_depth_clamp", "GL_DEPTH_CLAMP_NV" to "0x864F") - file("DrawTexture", NV, "GL_NV_draw_texture") { - "glDrawTextureNV"( - void, - GLuint("texture"), - GLuint("sampler"), - GLfloat("x0"), - GLfloat("y0"), - GLfloat("x1"), - GLfloat("y1"), - GLfloat("z"), - GLfloat("s0"), - GLfloat("t0"), - GLfloat("s1"), - GLfloat("t1") - ) - } - file("DrawVulkanImage", NV, "GL_NV_draw_vulkan_image") { - "glDrawVkImageNV"( - void, - GLuint64("vkImage"), - GLuint("sampler"), - GLfloat("x0"), - GLfloat("y0"), - GLfloat("x1"), - GLfloat("y1"), - GLfloat("z"), - GLfloat("s0"), - GLfloat("t0"), - GLfloat("s1"), - GLfloat("t1") - ) - "glGetVkProcAddrNV"(address, address("name", "const GLchar *"), nativeType = "GLVULKANPROCNV") - "glWaitVkSemaphoreNV"(void, GLuint64("vkSemaphore")) - "glSignalVkSemaphoreNV"(void, GLuint64("vkSemaphore")) - "glSignalVkFenceNV"(void, GLuint64("vkFence")) - } - file("Evaluators", NV, "GL_NV_evaluators") { - "GL_EVAL_2D_NV"("0x86C0") - "GL_EVAL_TRIANGULAR_2D_NV"("0x86C1") - "GL_MAP_TESSELLATION_NV"("0x86C2") - "GL_MAP_ATTRIB_U_ORDER_NV"("0x86C3") - "GL_MAP_ATTRIB_V_ORDER_NV"("0x86C4") - "GL_EVAL_FRACTIONAL_TESSELLATION_NV"("0x86C5") - "GL_EVAL_VERTEX_ATTRIB0_NV"("0x86C6") - "GL_EVAL_VERTEX_ATTRIB1_NV"("0x86C7") - "GL_EVAL_VERTEX_ATTRIB2_NV"("0x86C8") - "GL_EVAL_VERTEX_ATTRIB3_NV"("0x86C9") - "GL_EVAL_VERTEX_ATTRIB4_NV"("0x86CA") - "GL_EVAL_VERTEX_ATTRIB5_NV"("0x86CB") - "GL_EVAL_VERTEX_ATTRIB6_NV"("0x86CC") - "GL_EVAL_VERTEX_ATTRIB7_NV"("0x86CD") - "GL_EVAL_VERTEX_ATTRIB8_NV"("0x86CE") - "GL_EVAL_VERTEX_ATTRIB9_NV"("0x86CF") - "GL_EVAL_VERTEX_ATTRIB10_NV"("0x86D0") - "GL_EVAL_VERTEX_ATTRIB11_NV"("0x86D1") - "GL_EVAL_VERTEX_ATTRIB12_NV"("0x86D2") - "GL_EVAL_VERTEX_ATTRIB13_NV"("0x86D3") - "GL_EVAL_VERTEX_ATTRIB14_NV"("0x86D4") - "GL_EVAL_VERTEX_ATTRIB15_NV"("0x86D5") - "GL_MAX_MAP_TESSELLATION_NV"("0x86D6") - "GL_MAX_RATIONAL_EVAL_ORDER_NV"("0x86D7") - "glMapControlPointsNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("type"), - GLsizei("ustride"), - GLsizei("vstride"), - GLint("uorder"), - GLint("vorder"), - GLboolean("packed"), - address("points", "const void *") - ) - "glMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) - "glMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) - "glGetMapControlPointsNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("type"), - GLsizei("ustride"), - GLsizei("vstride"), - GLboolean("packed"), - address("points", "void *") - ) - "glGetMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetMapAttribParameterivNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("pname"), - address("params", "GLint *") - ) - "glGetMapAttribParameterfvNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("pname"), - address("params", "GLfloat *") - ) - "glEvalMapsNV"(void, GLenum("target"), GLenum("mode")) - } - file("ExplicitMultisample", NV, "GL_NV_explicit_multisample") { - "GL_SAMPLE_POSITION_NV"("0x8E50") - "GL_SAMPLE_MASK_NV"("0x8E51") - "GL_SAMPLE_MASK_VALUE_NV"("0x8E52") - "GL_TEXTURE_BINDING_RENDERBUFFER_NV"("0x8E53") - "GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV"("0x8E54") - "GL_TEXTURE_RENDERBUFFER_NV"("0x8E55") - "GL_SAMPLER_RENDERBUFFER_NV"("0x8E56") - "GL_INT_SAMPLER_RENDERBUFFER_NV"("0x8E57") - "GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV"("0x8E58") - "GL_MAX_SAMPLE_MASK_WORDS_NV"("0x8E59") - "glGetMultisamplefvNV"(void, GLenum("pname"), GLuint("index"), address("val", "GLfloat *")) - "glSampleMaskIndexedNV"(void, GLuint("index"), GLbitfield("mask")) - "glTexRenderbufferNV"(void, GLenum("target"), GLuint("renderbuffer")) - } -} - fun oml() { file( "Interlace", OML, "GL_OML_interlace", @@ -5688,6 +3063,7 @@ fun glExtCaps() { "GL_NV_timeline_semaphore", "GL_NV_transform_feedback", "GL_NV_transform_feedback2", + "GL_NV_uniform_buffer_std430_layout", "GL_NV_uniform_buffer_unified_memory", "GL_NV_vdpau_interop", "GL_NV_vdpau_interop2", diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 1cb105f1..f1fe5d47 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -46,7 +46,7 @@ */ public final class GLExtCaps { /** The OpenGL extension flags. */ - public boolean GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, GL_KHR_texture_compression_astc_sliced_3d, GL_OES_byte_coordinates, GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, GL_ATI_draw_buffers, GL_ATI_element_array, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_blit_layers, GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; + public boolean GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, GL_KHR_texture_compression_astc_sliced_3d, GL_OES_byte_coordinates, GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, GL_ATI_draw_buffers, GL_ATI_element_array, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_blit_layers, GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, GL_NV_transform_feedback2, GL_NV_uniform_buffer_std430_layout, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; /** GLCapabilities */ public final GLCapabilities caps; @@ -112,16 +112,27 @@ public GLExtCaps(GLCapabilities caps) { glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, - glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, - glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, - glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, - glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, - glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, - glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, - glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, - glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, - glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, - glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, + glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, + glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, + glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, + glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, + glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, + glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, + glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, + glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, + glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, + glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, + glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, + glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, + glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, + glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, + glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, + glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, + glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, + glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, + glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, + glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -236,6 +247,23 @@ void load(GLLoadFunc load) { GLNVDrawVulkanImage.load(this, load); GLNVEvaluators.load(this, load); GLNVExplicitMultisample.load(this, load); + GLNVFence.load(this, load); + GLNVFragmentCoverageToColor.load(this, load); + GLNVFragmentProgram.load(this, load); + GLNVFramebufferMixedSamples.load(this, load); + GLNVFramebufferMultisampleCoverage.load(this, load); + GLNVGeometryProgram4.load(this, load); + GLNVGpuMulticast.load(this, load); + GLNVGpuProgram4.load(this, load); + GLNVGpuProgram5.load(this, load); + GLNVHalfFloat.load(this, load); + GLNVInternalformatSampleQuery.load(this, load); + GLNVMemoryAttachment.load(this, load); + GLNVMemoryObjectSparse.load(this, load); + GLNVMeshShader.load(this, load); + GLNVOcculusionQuery.load(this, load); + GLNVParameterBufferObject.load(this, load); + GLNVPathRendering.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); GLSGISDetailTexture.load(this, load); @@ -805,6 +833,7 @@ boolean findExtensionsGL(int version, SegmentAllocator allocator) { this.GL_NV_timeline_semaphore = hasExtension(version, exts, numExtsI, extsI, "GL_NV_timeline_semaphore"); this.GL_NV_transform_feedback = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback"); this.GL_NV_transform_feedback2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback2"); + this.GL_NV_uniform_buffer_std430_layout = hasExtension(version, exts, numExtsI, extsI, "GL_NV_uniform_buffer_std430_layout"); this.GL_NV_uniform_buffer_unified_memory = hasExtension(version, exts, numExtsI, extsI, "GL_NV_uniform_buffer_unified_memory"); this.GL_NV_vdpau_interop = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop"); this.GL_NV_vdpau_interop2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop2"); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java new file mode 100644 index 00000000..6455554a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java @@ -0,0 +1,96 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fence} + */ +public final class GLNVFence { + public static final int GL_ALL_COMPLETED_NV = 0x84F2; + public static final int GL_FENCE_STATUS_NV = 0x84F3; + public static final int GL_FENCE_CONDITION_NV = 0x84F4; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_fence) return; + ext.glDeleteFencesNV = load.invoke("glDeleteFencesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenFencesNV = load.invoke("glGenFencesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsFenceNV = load.invoke("glIsFenceNV", of(JAVA_BYTE, JAVA_INT)); + ext.glTestFenceNV = load.invoke("glTestFenceNV", of(JAVA_BYTE, JAVA_INT)); + ext.glGetFenceivNV = load.invoke("glGetFenceivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFinishFenceNV = load.invoke("glFinishFenceNV", ofVoid(JAVA_INT)); + ext.glSetFenceNV = load.invoke("glSetFenceNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glDeleteFencesNV(int n, @NativeType("const GLuint *") MemorySegment fences) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteFencesNV).invokeExact(n, fences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenFencesNV(int n, @NativeType("GLuint *") MemorySegment fences) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenFencesNV).invokeExact(n, fences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsFenceNV(int fence) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsFenceNV).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glTestFenceNV(int fence) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glTestFenceNV).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFenceivNV(int fence, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFenceivNV).invokeExact(fence, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFinishFenceNV(int fence) { + final var ext = getExtCapabilities(); + try { + check(ext.glFinishFenceNV).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSetFenceNV(int fence, int condition) { + final var ext = getExtCapabilities(); + try { + check(ext.glSetFenceNV).invokeExact(fence, condition); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java new file mode 100644 index 00000000..7da64672 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fill_rectangle} + */ +public final class GLNVFillRectangle { + public static final int GL_FILL_RECTANGLE_NV = 0x933C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java new file mode 100644 index 00000000..7a034a30 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_float_buffer} + */ +public final class GLNVFloatBuffer { + public static final int GL_FLOAT_R_NV = 0x8880; + public static final int GL_FLOAT_RG_NV = 0x8881; + public static final int GL_FLOAT_RGB_NV = 0x8882; + public static final int GL_FLOAT_RGBA_NV = 0x8883; + public static final int GL_FLOAT_R16_NV = 0x8884; + public static final int GL_FLOAT_R32_NV = 0x8885; + public static final int GL_FLOAT_RG16_NV = 0x8886; + public static final int GL_FLOAT_RG32_NV = 0x8887; + public static final int GL_FLOAT_RGB16_NV = 0x8888; + public static final int GL_FLOAT_RGB32_NV = 0x8889; + public static final int GL_FLOAT_RGBA16_NV = 0x888A; + public static final int GL_FLOAT_RGBA32_NV = 0x888B; + public static final int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; + public static final int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; + public static final int GL_FLOAT_RGBA_MODE_NV = 0x888E; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java new file mode 100644 index 00000000..1fbfeafc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fog_distance} + */ +public final class GLNVFogDistance { + public static final int GL_FOG_DISTANCE_MODE_NV = 0x855A; + public static final int GL_EYE_RADIAL_NV = 0x855B; + public static final int GL_EYE_PLANE_ABSOLUTE_NV = 0x855C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java new file mode 100644 index 00000000..cf7698e2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fragment_coverage_to_color} + */ +public final class GLNVFragmentCoverageToColor { + public static final int GL_FRAGMENT_COVERAGE_TO_COLOR_NV = 0x92DD; + public static final int GL_FRAGMENT_COVERAGE_COLOR_NV = 0x92DE; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_fragment_coverage_to_color) return; + ext.glFragmentCoverageColorNV = load.invoke("glFragmentCoverageColorNV", ofVoid(JAVA_INT)); + } + + public static void glFragmentCoverageColorNV(int color) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentCoverageColorNV).invokeExact(color); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java new file mode 100644 index 00000000..3ff21b33 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java @@ -0,0 +1,89 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fragment_program} + */ +public final class GLNVFragmentProgram { + public static final int GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; + public static final int GL_FRAGMENT_PROGRAM_NV = 0x8870; + public static final int GL_MAX_TEXTURE_COORDS_NV = 0x8871; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872; + public static final int GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873; + public static final int GL_PROGRAM_ERROR_STRING_NV = 0x8874; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_fragment_program) return; + ext.glProgramNamedParameter4fNV = load.invoke("glProgramNamedParameter4fNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramNamedParameter4fvNV = load.invoke("glProgramNamedParameter4fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glProgramNamedParameter4dNV = load.invoke("glProgramNamedParameter4dNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramNamedParameter4dvNV = load.invoke("glProgramNamedParameter4dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetProgramNamedParameterfvNV = load.invoke("glGetProgramNamedParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetProgramNamedParameterdvNV = load.invoke("glGetProgramNamedParameterdvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glProgramNamedParameter4fNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4fNV).invokeExact(id, len, name, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramNamedParameter4fvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4fvNV).invokeExact(id, len, name, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramNamedParameter4dNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4dNV).invokeExact(id, len, name, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramNamedParameter4dvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4dvNV).invokeExact(id, len, name, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramNamedParameterfvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramNamedParameterfvNV).invokeExact(id, len, name, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramNamedParameterdvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramNamedParameterdvNV).invokeExact(id, len, name, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java new file mode 100644 index 00000000..03698561 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fragment_program2} + */ +public final class GLNVFragmentProgram2 { + public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; + public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; + public static final int GL_MAX_PROGRAM_IF_DEPTH_NV = 0x88F6; + public static final int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7; + public static final int GL_MAX_PROGRAM_LOOP_COUNT_NV = 0x88F8; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java new file mode 100644 index 00000000..1e46b57e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_framebuffer_mixed_samples} + */ +public final class GLNVFramebufferMixedSamples { + public static final int GL_COVERAGE_MODULATION_TABLE_NV = 0x9331; + public static final int GL_COLOR_SAMPLES_NV = 0x8E20; + public static final int GL_DEPTH_SAMPLES_NV = 0x932D; + public static final int GL_STENCIL_SAMPLES_NV = 0x932E; + public static final int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F; + public static final int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330; + public static final int GL_COVERAGE_MODULATION_NV = 0x9332; + public static final int GL_COVERAGE_MODULATION_TABLE_SIZE_NV = 0x9333; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_framebuffer_mixed_samples) return; + ext.glCoverageModulationTableNV = load.invoke("glCoverageModulationTableNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetCoverageModulationTableNV = load.invoke("glGetCoverageModulationTableNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glCoverageModulationNV = load.invoke("glCoverageModulationNV", ofVoid(JAVA_INT)); + } + + public static void glCoverageModulationTableNV(int n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverageModulationTableNV).invokeExact(n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCoverageModulationTableNV(int bufSize, @NativeType("GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCoverageModulationTableNV).invokeExact(bufSize, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverageModulationNV(int components) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverageModulationNV).invokeExact(components); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java new file mode 100644 index 00000000..592b4c53 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_framebuffer_multisample_coverage} + */ +public final class GLNVFramebufferMultisampleCoverage { + public static final int GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = 0x8CAB; + public static final int GL_RENDERBUFFER_COLOR_SAMPLES_NV = 0x8E10; + public static final int GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11; + public static final int GL_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_framebuffer_multisample_coverage) return; + ext.glRenderbufferStorageMultisampleCoverageNV = load.invoke("glRenderbufferStorageMultisampleCoverageNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glRenderbufferStorageMultisampleCoverageNV(int target, int coverageSamples, int colorSamples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glRenderbufferStorageMultisampleCoverageNV).invokeExact(target, coverageSamples, colorSamples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java new file mode 100644 index 00000000..98ebb1ec --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java @@ -0,0 +1,62 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_geometry_program4} + */ +public final class GLNVGeometryProgram4 { + public static final int GL_GEOMETRY_PROGRAM_NV = 0x8C26; + public static final int GL_MAX_PROGRAM_OUTPUT_VERTICES_NV = 0x8C27; + public static final int GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = 0x8C28; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_geometry_program4) return; + ext.glProgramVertexLimitNV = load.invoke("glProgramVertexLimitNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureEXT = load.invoke("glFramebufferTextureEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureFaceEXT = load.invoke("glFramebufferTextureFaceEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glProgramVertexLimitNV(int target, int limit) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramVertexLimitNV).invokeExact(target, limit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTextureEXT(int target, int attachment, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTextureEXT).invokeExact(target, attachment, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTextureFaceEXT(int target, int attachment, int texture, int level, int face) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTextureFaceEXT).invokeExact(target, attachment, texture, level, face); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java new file mode 100644 index 00000000..06b65502 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java @@ -0,0 +1,136 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_gpu_multicast} + */ +public final class GLNVGpuMulticast { + public static final int GL_PER_GPU_STORAGE_BIT_NV = 0x0800; + public static final int GL_MULTICAST_GPUS_NV = 0x92BA; + public static final int GL_RENDER_GPU_MASK_NV = 0x9558; + public static final int GL_PER_GPU_STORAGE_NV = 0x9548; + public static final int GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_gpu_multicast) return; + ext.glRenderGpuMaskNV = load.invoke("glRenderGpuMaskNV", ofVoid(JAVA_INT)); + ext.glMulticastBufferSubDataNV = load.invoke("glMulticastBufferSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glMulticastCopyBufferSubDataNV = load.invoke("glMulticastCopyBufferSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glMulticastCopyImageSubDataNV = load.invoke("glMulticastCopyImageSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMulticastBlitFramebufferNV = load.invoke("glMulticastBlitFramebufferNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMulticastFramebufferSampleLocationsfvNV = load.invoke("glMulticastFramebufferSampleLocationsfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastBarrierNV = load.invoke("glMulticastBarrierNV", ofVoid()); + ext.glMulticastWaitSyncNV = load.invoke("glMulticastWaitSyncNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMulticastGetQueryObjectivNV = load.invoke("glMulticastGetQueryObjectivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastGetQueryObjectuivNV = load.invoke("glMulticastGetQueryObjectuivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastGetQueryObjecti64vNV = load.invoke("glMulticastGetQueryObjecti64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastGetQueryObjectui64vNV = load.invoke("glMulticastGetQueryObjectui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glRenderGpuMaskNV(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glRenderGpuMaskNV).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastBufferSubDataNV(int gpuMask, int buffer, long offset, long size, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastBufferSubDataNV).invokeExact(gpuMask, buffer, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastCopyBufferSubDataNV(int readGpu, int writeGpuMask, int readBuffer, int writeBuffer, long readOffset, long writeOffset, long size) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastCopyBufferSubDataNV).invokeExact(readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastCopyImageSubDataNV(int srcGpu, int dstGpuMask, int srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastCopyImageSubDataNV).invokeExact(srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastBlitFramebufferNV(int srcGpu, int dstGpu, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastBlitFramebufferNV).invokeExact(srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastFramebufferSampleLocationsfvNV(int gpu, int framebuffer, int start, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastFramebufferSampleLocationsfvNV).invokeExact(gpu, framebuffer, start, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastBarrierNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastBarrierNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastWaitSyncNV(int signalGpu, int waitGpuMask) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastWaitSyncNV).invokeExact(signalGpu, waitGpuMask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjectivNV(int gpu, int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjectivNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjectuivNV(int gpu, int id, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjectuivNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjecti64vNV(int gpu, int id, int pname, @NativeType("GLint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjecti64vNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjectui64vNV(int gpu, int id, int pname, @NativeType("GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjectui64vNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java new file mode 100644 index 00000000..e3ab9f11 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java @@ -0,0 +1,171 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_gpu_program4} + */ +public final class GLNVGpuProgram4 { + public static final int GL_MIN_PROGRAM_TEXEL_OFFSET_NV = 0x8904; + public static final int GL_MAX_PROGRAM_TEXEL_OFFSET_NV = 0x8905; + public static final int GL_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906; + public static final int GL_PROGRAM_RESULT_COMPONENTS_NV = 0x8907; + public static final int GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908; + public static final int GL_MAX_PROGRAM_RESULT_COMPONENTS_NV = 0x8909; + public static final int GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV = 0x8DA5; + public static final int GL_MAX_PROGRAM_GENERIC_RESULTS_NV = 0x8DA6; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_gpu_program4) return; + ext.glProgramLocalParameterI4iNV = load.invoke("glProgramLocalParameterI4iNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramLocalParameterI4ivNV = load.invoke("glProgramLocalParameterI4ivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParametersI4ivNV = load.invoke("glProgramLocalParametersI4ivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParameterI4uiNV = load.invoke("glProgramLocalParameterI4uiNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramLocalParameterI4uivNV = load.invoke("glProgramLocalParameterI4uivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParametersI4uivNV = load.invoke("glProgramLocalParametersI4uivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParameterI4iNV = load.invoke("glProgramEnvParameterI4iNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramEnvParameterI4ivNV = load.invoke("glProgramEnvParameterI4ivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParametersI4ivNV = load.invoke("glProgramEnvParametersI4ivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParameterI4uiNV = load.invoke("glProgramEnvParameterI4uiNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramEnvParameterI4uivNV = load.invoke("glProgramEnvParameterI4uivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParametersI4uivNV = load.invoke("glProgramEnvParametersI4uivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramLocalParameterIivNV = load.invoke("glGetProgramLocalParameterIivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramLocalParameterIuivNV = load.invoke("glGetProgramLocalParameterIuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramEnvParameterIivNV = load.invoke("glGetProgramEnvParameterIivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramEnvParameterIuivNV = load.invoke("glGetProgramEnvParameterIuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramLocalParameterI4iNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4iNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameterI4ivNV(int target, int index, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4ivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParametersI4ivNV(int target, int index, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParametersI4ivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameterI4uiNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4uiNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameterI4uivNV(int target, int index, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4uivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParametersI4uivNV(int target, int index, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParametersI4uivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4iNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4iNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4ivNV(int target, int index, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4ivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParametersI4ivNV(int target, int index, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParametersI4ivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4uiNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4uiNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4uivNV(int target, int index, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4uivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParametersI4uivNV(int target, int index, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParametersI4uivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramLocalParameterIivNV(int target, int index, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramLocalParameterIivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramLocalParameterIuivNV(int target, int index, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramLocalParameterIuivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramEnvParameterIivNV(int target, int index, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramEnvParameterIivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramEnvParameterIuivNV(int target, int index, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramEnvParameterIuivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java new file mode 100644 index 00000000..f2970f53 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java @@ -0,0 +1,59 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_gpu_program5} + */ +public final class GLNVGpuProgram5 { + public static final int GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = 0x8E5A; + public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5B; + public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5C; + public static final int GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = 0x8E5D; + public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5E; + public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5F; + public static final int GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV = 0x8F44; + public static final int GL_MAX_PROGRAM_SUBROUTINE_NUM_NV = 0x8F45; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_gpu_program5) return; + ext.glProgramSubroutineParametersuivNV = load.invoke("glProgramSubroutineParametersuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramSubroutineParameteruivNV = load.invoke("glGetProgramSubroutineParameteruivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramSubroutineParametersuivNV(int target, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramSubroutineParametersuivNV).invokeExact(target, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramSubroutineParameteruivNV(int target, int index, @NativeType("GLuint *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramSubroutineParameteruivNV).invokeExact(target, index, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java new file mode 100644 index 00000000..764f6b63 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java @@ -0,0 +1,404 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_half_float} + */ +public final class GLNVHalfFloat { + public static final int GL_HALF_FLOAT_NV = 0x140B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_half_float) return; + ext.glVertex2hNV = load.invoke("glVertex2hNV", ofVoid(JAVA_SHORT, JAVA_SHORT)); + ext.glVertex2hvNV = load.invoke("glVertex2hvNV", ofVoid(ADDRESS)); + ext.glVertex3hNV = load.invoke("glVertex3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertex3hvNV = load.invoke("glVertex3hvNV", ofVoid(ADDRESS)); + ext.glVertex4hNV = load.invoke("glVertex4hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertex4hvNV = load.invoke("glVertex4hvNV", ofVoid(ADDRESS)); + ext.glNormal3hNV = load.invoke("glNormal3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glNormal3hvNV = load.invoke("glNormal3hvNV", ofVoid(ADDRESS)); + ext.glColor3hNV = load.invoke("glColor3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glColor3hvNV = load.invoke("glColor3hvNV", ofVoid(ADDRESS)); + ext.glColor4hNV = load.invoke("glColor4hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glColor4hvNV = load.invoke("glColor4hvNV", ofVoid(ADDRESS)); + ext.glTexCoord1hNV = load.invoke("glTexCoord1hNV", ofVoid(JAVA_SHORT)); + ext.glTexCoord1hvNV = load.invoke("glTexCoord1hvNV", ofVoid(ADDRESS)); + ext.glTexCoord2hNV = load.invoke("glTexCoord2hNV", ofVoid(JAVA_SHORT, JAVA_SHORT)); + ext.glTexCoord2hvNV = load.invoke("glTexCoord2hvNV", ofVoid(ADDRESS)); + ext.glTexCoord3hNV = load.invoke("glTexCoord3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glTexCoord3hvNV = load.invoke("glTexCoord3hvNV", ofVoid(ADDRESS)); + ext.glTexCoord4hNV = load.invoke("glTexCoord4hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glTexCoord4hvNV = load.invoke("glTexCoord4hvNV", ofVoid(ADDRESS)); + ext.glMultiTexCoord1hNV = load.invoke("glMultiTexCoord1hNV", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glMultiTexCoord1hvNV = load.invoke("glMultiTexCoord1hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2hNV = load.invoke("glMultiTexCoord2hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord2hvNV = load.invoke("glMultiTexCoord2hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3hNV = load.invoke("glMultiTexCoord3hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord3hvNV = load.invoke("glMultiTexCoord3hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4hNV = load.invoke("glMultiTexCoord4hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord4hvNV = load.invoke("glMultiTexCoord4hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib1hNV = load.invoke("glVertexAttrib1hNV", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glVertexAttrib1hvNV = load.invoke("glVertexAttrib1hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2hNV = load.invoke("glVertexAttrib2hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib2hvNV = load.invoke("glVertexAttrib2hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3hNV = load.invoke("glVertexAttrib3hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib3hvNV = load.invoke("glVertexAttrib3hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4hNV = load.invoke("glVertexAttrib4hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib4hvNV = load.invoke("glVertexAttrib4hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribs1hvNV = load.invoke("glVertexAttribs1hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs2hvNV = load.invoke("glVertexAttribs2hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs3hvNV = load.invoke("glVertexAttribs3hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs4hvNV = load.invoke("glVertexAttribs4hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFogCoordhNV = load.invoke("glFogCoordhNV", ofVoid(JAVA_SHORT)); + ext.glFogCoordhvNV = load.invoke("glFogCoordhvNV", ofVoid(ADDRESS)); + ext.glSecondaryColor3hNV = load.invoke("glSecondaryColor3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glSecondaryColor3hvNV = load.invoke("glSecondaryColor3hvNV", ofVoid(ADDRESS)); + ext.glVertexWeighthNV = load.invoke("glVertexWeighthNV", ofVoid(JAVA_SHORT)); + ext.glVertexWeighthvNV = load.invoke("glVertexWeighthvNV", ofVoid(ADDRESS)); + } + + public static void glVertex2hNV(short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2hNV).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex2hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3hNV(short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3hNV).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4hNV(short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4hNV).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormal3hNV(short nx, short ny, short nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormal3hNV).invokeExact(nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormal3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormal3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor3hNV(short red, short green, short blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor3hNV).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor4hNV(short red, short green, short blue, short alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor4hNV).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor4hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor4hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1hNV(short s) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1hNV).invokeExact(s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2hNV(short s, short t) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2hNV).invokeExact(s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3hNV(short s, short t, short r) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3hNV).invokeExact(s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4hNV(short s, short t, short r, short q) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4hNV).invokeExact(s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1hNV(int target, short s) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1hNV).invokeExact(target, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2hNV(int target, short s, short t) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2hNV).invokeExact(target, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3hNV(int target, short s, short t, short r) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3hNV).invokeExact(target, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4hNV(int target, short s, short t, short r, short q) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4hNV).invokeExact(target, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1hNV(int index, short x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1hNV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2hNV(int index, short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2hNV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3hNV(int index, short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3hNV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4hNV(int index, short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4hNV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs1hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs1hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs2hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs2hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs3hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs3hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs4hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs4hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordhNV(short fog) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordhNV).invokeExact(fog); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordhvNV(@NativeType("const GLhalfNV *") MemorySegment fog) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordhvNV).invokeExact(fog); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3hNV(short red, short green, short blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3hNV).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexWeighthNV(short weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeighthNV).invokeExact(weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexWeighthvNV(@NativeType("const GLhalfNV *") MemorySegment weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeighthvNV).invokeExact(weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java new file mode 100644 index 00000000..adf8e174 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_internalformat_sample_query} + */ +public final class GLNVInternalformatSampleQuery { + public static final int GL_MULTISAMPLES_NV = 0x9371; + public static final int GL_SUPERSAMPLE_SCALE_X_NV = 0x9372; + public static final int GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373; + public static final int GL_CONFORMANT_NV = 0x9374; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_internalformat_sample_query) return; + ext.glGetInternalformatSampleivNV = load.invoke("glGetInternalformatSampleivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGetInternalformatSampleivNV(int target, int internalformat, int samples, int pname, int count, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetInternalformatSampleivNV).invokeExact(target, internalformat, samples, pname, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java new file mode 100644 index 00000000..49a204f1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_light_max_exponent} + */ +public final class GLNVLightMaxExponent { + public static final int GL_MAX_SHININESS_NV = 0x8504; + public static final int GL_MAX_SPOT_EXPONENT_NV = 0x8505; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java new file mode 100644 index 00000000..871f7d4e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java @@ -0,0 +1,93 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_memory_attachment} + */ +public final class GLNVMemoryAttachment { + public static final int GL_ATTACHED_MEMORY_OBJECT_NV = 0x95A4; + public static final int GL_ATTACHED_MEMORY_OFFSET_NV = 0x95A5; + public static final int GL_MEMORY_ATTACHABLE_ALIGNMENT_NV = 0x95A6; + public static final int GL_MEMORY_ATTACHABLE_SIZE_NV = 0x95A7; + public static final int GL_MEMORY_ATTACHABLE_NV = 0x95A8; + public static final int GL_DETACHED_MEMORY_INCARNATION_NV = 0x95A9; + public static final int GL_DETACHED_TEXTURES_NV = 0x95AA; + public static final int GL_DETACHED_BUFFERS_NV = 0x95AB; + public static final int GL_MAX_DETACHED_TEXTURES_NV = 0x95AC; + public static final int GL_MAX_DETACHED_BUFFERS_NV = 0x95AD; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_memory_attachment) return; + ext.glGetMemoryObjectDetachedResourcesuivNV = load.invoke("glGetMemoryObjectDetachedResourcesuivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glResetMemoryObjectParameterNV = load.invoke("glResetMemoryObjectParameterNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glTexAttachMemoryNV = load.invoke("glTexAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glBufferAttachMemoryNV = load.invoke("glBufferAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTextureAttachMemoryNV = load.invoke("glTextureAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glNamedBufferAttachMemoryNV = load.invoke("glNamedBufferAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + } + + public static void glGetMemoryObjectDetachedResourcesuivNV(int memory, int pname, int first, int count, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMemoryObjectDetachedResourcesuivNV).invokeExact(memory, pname, first, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResetMemoryObjectParameterNV(int memory, int pname) { + final var ext = getExtCapabilities(); + try { + check(ext.glResetMemoryObjectParameterNV).invokeExact(memory, pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexAttachMemoryNV(int target, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexAttachMemoryNV).invokeExact(target, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBufferAttachMemoryNV(int target, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferAttachMemoryNV).invokeExact(target, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureAttachMemoryNV(int texture, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureAttachMemoryNV).invokeExact(texture, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferAttachMemoryNV(int buffer, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferAttachMemoryNV).invokeExact(buffer, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java new file mode 100644 index 00000000..1a8a608f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_memory_object_sparse} + */ +public final class GLNVMemoryObjectSparse { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_memory_object_sparse) return; + ext.glBufferPageCommitmentMemNV = load.invoke("glBufferPageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + ext.glTexPageCommitmentMemNV = load.invoke("glTexPageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + ext.glNamedBufferPageCommitmentMemNV = load.invoke("glNamedBufferPageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + ext.glTexturePageCommitmentMemNV = load.invoke("glTexturePageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + } + + public static void glBufferPageCommitmentMemNV(int target, long offset, long size, int memory, long memOffset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferPageCommitmentMemNV).invokeExact(target, offset, size, memory, memOffset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexPageCommitmentMemNV(int target, int layer, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int memory, long offset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexPageCommitmentMemNV).invokeExact(target, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferPageCommitmentMemNV(int buffer, long offset, long size, int memory, long memOffset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferPageCommitmentMemNV).invokeExact(buffer, offset, size, memory, memOffset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexturePageCommitmentMemNV(int texture, int layer, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int memory, long offset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexturePageCommitmentMemNV).invokeExact(texture, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java new file mode 100644 index 00000000..96e0c9cd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java @@ -0,0 +1,115 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_mesh_shader} + */ +public final class GLNVMeshShader { + public static final int GL_MESH_SHADER_NV = 0x9559; + public static final int GL_TASK_SHADER_NV = 0x955A; + public static final int GL_MAX_MESH_UNIFORM_BLOCKS_NV = 0x8E60; + public static final int GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 0x8E61; + public static final int GL_MAX_MESH_IMAGE_UNIFORMS_NV = 0x8E62; + public static final int GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 0x8E63; + public static final int GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 0x8E64; + public static final int GL_MAX_MESH_ATOMIC_COUNTERS_NV = 0x8E65; + public static final int GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 0x8E66; + public static final int GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 0x8E67; + public static final int GL_MAX_TASK_UNIFORM_BLOCKS_NV = 0x8E68; + public static final int GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 0x8E69; + public static final int GL_MAX_TASK_IMAGE_UNIFORMS_NV = 0x8E6A; + public static final int GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 0x8E6B; + public static final int GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 0x8E6C; + public static final int GL_MAX_TASK_ATOMIC_COUNTERS_NV = 0x8E6D; + public static final int GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 0x8E6E; + public static final int GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 0x8E6F; + public static final int GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 0x95A2; + public static final int GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 0x95A3; + public static final int GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 0x9536; + public static final int GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 0x9537; + public static final int GL_MAX_MESH_OUTPUT_VERTICES_NV = 0x9538; + public static final int GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 0x9539; + public static final int GL_MAX_TASK_OUTPUT_COUNT_NV = 0x953A; + public static final int GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 0x953D; + public static final int GL_MAX_MESH_VIEWS_NV = 0x9557; + public static final int GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 0x92DF; + public static final int GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 0x9543; + public static final int GL_MAX_MESH_WORK_GROUP_SIZE_NV = 0x953B; + public static final int GL_MAX_TASK_WORK_GROUP_SIZE_NV = 0x953C; + public static final int GL_MESH_WORK_GROUP_SIZE_NV = 0x953E; + public static final int GL_TASK_WORK_GROUP_SIZE_NV = 0x953F; + public static final int GL_MESH_VERTICES_OUT_NV = 0x9579; + public static final int GL_MESH_PRIMITIVES_OUT_NV = 0x957A; + public static final int GL_MESH_OUTPUT_TYPE_NV = 0x957B; + public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 0x959C; + public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 0x959D; + public static final int GL_REFERENCED_BY_MESH_SHADER_NV = 0x95A0; + public static final int GL_REFERENCED_BY_TASK_SHADER_NV = 0x95A1; + public static final int GL_MESH_SHADER_BIT_NV = 0x00000040; + public static final int GL_TASK_SHADER_BIT_NV = 0x00000080; + public static final int GL_MESH_SUBROUTINE_NV = 0x957C; + public static final int GL_TASK_SUBROUTINE_NV = 0x957D; + public static final int GL_MESH_SUBROUTINE_UNIFORM_NV = 0x957E; + public static final int GL_TASK_SUBROUTINE_UNIFORM_NV = 0x957F; + public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 0x959E; + public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 0x959F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_mesh_shader) return; + ext.glDrawMeshTasksNV = load.invoke("glDrawMeshTasksNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDrawMeshTasksIndirectNV = load.invoke("glDrawMeshTasksIndirectNV", ofVoid(JAVA_LONG)); + ext.glMultiDrawMeshTasksIndirectNV = load.invoke("glMultiDrawMeshTasksIndirectNV", ofVoid(JAVA_LONG, JAVA_INT, JAVA_INT)); + ext.glMultiDrawMeshTasksIndirectCountNV = load.invoke("glMultiDrawMeshTasksIndirectCountNV", ofVoid(JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_INT)); + } + + public static void glDrawMeshTasksNV(int first, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawMeshTasksNV).invokeExact(first, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawMeshTasksIndirectNV(long indirect) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawMeshTasksIndirectNV).invokeExact(indirect); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawMeshTasksIndirectNV(long indirect, int drawcount, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawMeshTasksIndirectNV).invokeExact(indirect, drawcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawMeshTasksIndirectCountNV(long indirect, long drawcount, int maxdrawcount, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawMeshTasksIndirectCountNV).invokeExact(indirect, drawcount, maxdrawcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java new file mode 100644 index 00000000..4f495a8d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_multisample_filter_hint} + */ +public final class GLNVMultisampleFilterHint { + public static final int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java new file mode 100644 index 00000000..f1102e58 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java @@ -0,0 +1,96 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_occlusion_query} + */ +public final class GLNVOcculusionQuery { + public static final int GL_PIXEL_COUNTER_BITS_NV = 0x8864; + public static final int GL_CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865; + public static final int GL_PIXEL_COUNT_NV = 0x8866; + public static final int GL_PIXEL_COUNT_AVAILABLE_NV = 0x8867; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_occlusion_query) return; + ext.glGenOcclusionQueriesNV = load.invoke("glGenOcclusionQueriesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteOcclusionQueriesNV = load.invoke("glDeleteOcclusionQueriesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsOcclusionQueryNV = load.invoke("glIsOcclusionQueryNV", of(JAVA_BYTE, JAVA_INT)); + ext.glBeginOcclusionQueryNV = load.invoke("glBeginOcclusionQueryNV", ofVoid(JAVA_INT)); + ext.glEndOcclusionQueryNV = load.invoke("glEndOcclusionQueryNV", ofVoid()); + ext.glGetOcclusionQueryivNV = load.invoke("glGetOcclusionQueryivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetOcclusionQueryuivNV = load.invoke("glGetOcclusionQueryuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGenOcclusionQueriesNV(int n, @NativeType("GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenOcclusionQueriesNV).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteOcclusionQueriesNV(int n, @NativeType("const GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteOcclusionQueriesNV).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsOcclusionQueryNV(int id) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsOcclusionQueryNV).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBeginOcclusionQueryNV(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginOcclusionQueryNV).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndOcclusionQueryNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndOcclusionQueryNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetOcclusionQueryivNV(int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetOcclusionQueryivNV).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetOcclusionQueryuivNV(int id, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetOcclusionQueryuivNV).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java new file mode 100644 index 00000000..2e08f44a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_packed_depth_stencil} + */ +public final class GLNVPackedDepthStencil { + public static final int GL_DEPTH_STENCIL_NV = 0x84F9; + public static final int GL_UNSIGNED_INT_24_8_NV = 0x84FA; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java new file mode 100644 index 00000000..32dedf19 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java @@ -0,0 +1,64 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_parameter_buffer_object} + */ +public final class GLNVParameterBufferObject { + public static final int GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = 0x8DA0; + public static final int GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = 0x8DA1; + public static final int GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2; + public static final int GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA3; + public static final int GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA4; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_parameter_buffer_object) return; + ext.glProgramBufferParametersfvNV = load.invoke("glProgramBufferParametersfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramBufferParametersIivNV = load.invoke("glProgramBufferParametersIivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramBufferParametersIuivNV = load.invoke("glProgramBufferParametersIuivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramBufferParametersfvNV(int target, int bindingIndex, int wordIndex, int count, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramBufferParametersfvNV).invokeExact(target, bindingIndex, wordIndex, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramBufferParametersIivNV(int target, int bindingIndex, int wordIndex, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramBufferParametersIivNV).invokeExact(target, bindingIndex, wordIndex, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramBufferParametersIuivNV(int target, int bindingIndex, int wordIndex, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramBufferParametersIuivNV).invokeExact(target, bindingIndex, wordIndex, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java new file mode 100644 index 00000000..2b6c4437 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java @@ -0,0 +1,719 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_path_rendering} + */ +public final class GLNVPathRendering { + public static final int GL_PATH_FORMAT_SVG_NV = 0x9070; + public static final int GL_PATH_FORMAT_PS_NV = 0x9071; + public static final int GL_STANDARD_FONT_NAME_NV = 0x9072; + public static final int GL_SYSTEM_FONT_NAME_NV = 0x9073; + public static final int GL_FILE_NAME_NV = 0x9074; + public static final int GL_PATH_STROKE_WIDTH_NV = 0x9075; + public static final int GL_PATH_END_CAPS_NV = 0x9076; + public static final int GL_PATH_INITIAL_END_CAP_NV = 0x9077; + public static final int GL_PATH_TERMINAL_END_CAP_NV = 0x9078; + public static final int GL_PATH_JOIN_STYLE_NV = 0x9079; + public static final int GL_PATH_MITER_LIMIT_NV = 0x907A; + public static final int GL_PATH_DASH_CAPS_NV = 0x907B; + public static final int GL_PATH_INITIAL_DASH_CAP_NV = 0x907C; + public static final int GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D; + public static final int GL_PATH_DASH_OFFSET_NV = 0x907E; + public static final int GL_PATH_CLIENT_LENGTH_NV = 0x907F; + public static final int GL_PATH_FILL_MODE_NV = 0x9080; + public static final int GL_PATH_FILL_MASK_NV = 0x9081; + public static final int GL_PATH_FILL_COVER_MODE_NV = 0x9082; + public static final int GL_PATH_STROKE_COVER_MODE_NV = 0x9083; + public static final int GL_PATH_STROKE_MASK_NV = 0x9084; + public static final int GL_COUNT_UP_NV = 0x9088; + public static final int GL_COUNT_DOWN_NV = 0x9089; + public static final int GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A; + public static final int GL_CONVEX_HULL_NV = 0x908B; + public static final int GL_BOUNDING_BOX_NV = 0x908D; + public static final int GL_TRANSLATE_X_NV = 0x908E; + public static final int GL_TRANSLATE_Y_NV = 0x908F; + public static final int GL_TRANSLATE_2D_NV = 0x9090; + public static final int GL_TRANSLATE_3D_NV = 0x9091; + public static final int GL_AFFINE_2D_NV = 0x9092; + public static final int GL_AFFINE_3D_NV = 0x9094; + public static final int GL_TRANSPOSE_AFFINE_2D_NV = 0x9096; + public static final int GL_TRANSPOSE_AFFINE_3D_NV = 0x9098; + public static final int GL_UTF8_NV = 0x909A; + public static final int GL_UTF16_NV = 0x909B; + public static final int GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C; + public static final int GL_PATH_COMMAND_COUNT_NV = 0x909D; + public static final int GL_PATH_COORD_COUNT_NV = 0x909E; + public static final int GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F; + public static final int GL_PATH_COMPUTED_LENGTH_NV = 0x90A0; + public static final int GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1; + public static final int GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2; + public static final int GL_SQUARE_NV = 0x90A3; + public static final int GL_ROUND_NV = 0x90A4; + public static final int GL_TRIANGULAR_NV = 0x90A5; + public static final int GL_BEVEL_NV = 0x90A6; + public static final int GL_MITER_REVERT_NV = 0x90A7; + public static final int GL_MITER_TRUNCATE_NV = 0x90A8; + public static final int GL_SKIP_MISSING_GLYPH_NV = 0x90A9; + public static final int GL_USE_MISSING_GLYPH_NV = 0x90AA; + public static final int GL_PATH_ERROR_POSITION_NV = 0x90AB; + public static final int GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD; + public static final int GL_ADJACENT_PAIRS_NV = 0x90AE; + public static final int GL_FIRST_TO_REST_NV = 0x90AF; + public static final int GL_PATH_GEN_MODE_NV = 0x90B0; + public static final int GL_PATH_GEN_COEFF_NV = 0x90B1; + public static final int GL_PATH_GEN_COMPONENTS_NV = 0x90B3; + public static final int GL_PATH_STENCIL_FUNC_NV = 0x90B7; + public static final int GL_PATH_STENCIL_REF_NV = 0x90B8; + public static final int GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9; + public static final int GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD; + public static final int GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE; + public static final int GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF; + public static final int GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4; + public static final int GL_MOVE_TO_RESETS_NV = 0x90B5; + public static final int GL_MOVE_TO_CONTINUES_NV = 0x90B6; + public static final int GL_CLOSE_PATH_NV = 0x00; + public static final int GL_MOVE_TO_NV = 0x02; + public static final int GL_RELATIVE_MOVE_TO_NV = 0x03; + public static final int GL_LINE_TO_NV = 0x04; + public static final int GL_RELATIVE_LINE_TO_NV = 0x05; + public static final int GL_HORIZONTAL_LINE_TO_NV = 0x06; + public static final int GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x07; + public static final int GL_VERTICAL_LINE_TO_NV = 0x08; + public static final int GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x09; + public static final int GL_QUADRATIC_CURVE_TO_NV = 0x0A; + public static final int GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0x0B; + public static final int GL_CUBIC_CURVE_TO_NV = 0x0C; + public static final int GL_RELATIVE_CUBIC_CURVE_TO_NV = 0x0D; + public static final int GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E; + public static final int GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0F; + public static final int GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10; + public static final int GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11; + public static final int GL_SMALL_CCW_ARC_TO_NV = 0x12; + public static final int GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13; + public static final int GL_SMALL_CW_ARC_TO_NV = 0x14; + public static final int GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15; + public static final int GL_LARGE_CCW_ARC_TO_NV = 0x16; + public static final int GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17; + public static final int GL_LARGE_CW_ARC_TO_NV = 0x18; + public static final int GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19; + public static final int GL_RESTART_PATH_NV = 0xF0; + public static final int GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2; + public static final int GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4; + public static final int GL_RECT_NV = 0xF6; + public static final int GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8; + public static final int GL_CIRCULAR_CW_ARC_TO_NV = 0xFA; + public static final int GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC; + public static final int GL_ARC_TO_NV = 0xFE; + public static final int GL_RELATIVE_ARC_TO_NV = 0xFF; + public static final int GL_BOLD_BIT_NV = 0x01; + public static final int GL_ITALIC_BIT_NV = 0x02; + public static final int GL_GLYPH_WIDTH_BIT_NV = 0x01; + public static final int GL_GLYPH_HEIGHT_BIT_NV = 0x02; + public static final int GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x04; + public static final int GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x08; + public static final int GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10; + public static final int GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20; + public static final int GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40; + public static final int GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80; + public static final int GL_GLYPH_HAS_KERNING_BIT_NV = 0x100; + public static final int GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x00010000; + public static final int GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x00020000; + public static final int GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x00040000; + public static final int GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x00080000; + public static final int GL_FONT_UNITS_PER_EM_BIT_NV = 0x00100000; + public static final int GL_FONT_ASCENDER_BIT_NV = 0x00200000; + public static final int GL_FONT_DESCENDER_BIT_NV = 0x00400000; + public static final int GL_FONT_HEIGHT_BIT_NV = 0x00800000; + public static final int GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x01000000; + public static final int GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x02000000; + public static final int GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x04000000; + public static final int GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x08000000; + public static final int GL_FONT_HAS_KERNING_BIT_NV = 0x10000000; + public static final int GL_ROUNDED_RECT_NV = 0xE8; + public static final int GL_RELATIVE_ROUNDED_RECT_NV = 0xE9; + public static final int GL_ROUNDED_RECT2_NV = 0xEA; + public static final int GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB; + public static final int GL_ROUNDED_RECT4_NV = 0xEC; + public static final int GL_RELATIVE_ROUNDED_RECT4_NV = 0xED; + public static final int GL_ROUNDED_RECT8_NV = 0xEE; + public static final int GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF; + public static final int GL_RELATIVE_RECT_NV = 0xF7; + public static final int GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368; + public static final int GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369; + public static final int GL_FONT_UNAVAILABLE_NV = 0x936A; + public static final int GL_FONT_UNINTELLIGIBLE_NV = 0x936B; + public static final int GL_CONIC_CURVE_TO_NV = 0x1A; + public static final int GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B; + public static final int GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000; + public static final int GL_STANDARD_FONT_FORMAT_NV = 0x936C; + public static final int GL_2_BYTES_NV = 0x1407; + public static final int GL_3_BYTES_NV = 0x1408; + public static final int GL_4_BYTES_NV = 0x1409; + public static final int GL_EYE_LINEAR_NV = 0x2400; + public static final int GL_OBJECT_LINEAR_NV = 0x2401; + public static final int GL_CONSTANT_NV = 0x8576; + public static final int GL_PATH_FOG_GEN_MODE_NV = 0x90AC; + public static final int GL_PRIMARY_COLOR_NV = 0x852C; + public static final int GL_SECONDARY_COLOR_NV = 0x852D; + public static final int GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2; + public static final int GL_PATH_PROJECTION_NV = 0x1701; + public static final int GL_PATH_MODELVIEW_NV = 0x1700; + public static final int GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0x0BA3; + public static final int GL_PATH_MODELVIEW_MATRIX_NV = 0x0BA6; + public static final int GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0x0D36; + public static final int GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3; + public static final int GL_PATH_PROJECTION_STACK_DEPTH_NV = 0x0BA4; + public static final int GL_PATH_PROJECTION_MATRIX_NV = 0x0BA7; + public static final int GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0x0D38; + public static final int GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4; + public static final int GL_FRAGMENT_INPUT_NV = 0x936D; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_path_rendering) return; + ext.glGenPathsNV = load.invoke("glGenPathsNV", of(JAVA_INT, JAVA_INT)); + ext.glDeletePathsNV = load.invoke("glDeletePathsNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glIsPathNV = load.invoke("glIsPathNV", of(JAVA_BYTE, JAVA_INT)); + ext.glPathCommandsNV = load.invoke("glPathCommandsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathCoordsNV = load.invoke("glPathCoordsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathSubCommandsNV = load.invoke("glPathSubCommandsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathSubCoordsNV = load.invoke("glPathSubCoordsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathStringNV = load.invoke("glPathStringNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathGlyphsNV = load.invoke("glPathGlyphsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPathGlyphRangeNV = load.invoke("glPathGlyphRangeNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glWeightPathsNV = load.invoke("glWeightPathsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glCopyPathNV = load.invoke("glCopyPathNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glInterpolatePathsNV = load.invoke("glInterpolatePathsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glTransformPathNV = load.invoke("glTransformPathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathParameterivNV = load.invoke("glPathParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathParameteriNV = load.invoke("glPathParameteriNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPathParameterfvNV = load.invoke("glPathParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathParameterfNV = load.invoke("glPathParameterfNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPathDashArrayNV = load.invoke("glPathDashArrayNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathStencilFuncNV = load.invoke("glPathStencilFuncNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPathStencilDepthOffsetNV = load.invoke("glPathStencilDepthOffsetNV", ofVoid(JAVA_FLOAT, JAVA_FLOAT)); + ext.glStencilFillPathNV = load.invoke("glStencilFillPathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilStrokePathNV = load.invoke("glStencilStrokePathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilFillPathInstancedNV = load.invoke("glStencilFillPathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glStencilStrokePathInstancedNV = load.invoke("glStencilStrokePathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathCoverDepthFuncNV = load.invoke("glPathCoverDepthFuncNV", ofVoid(JAVA_INT)); + ext.glCoverFillPathNV = load.invoke("glCoverFillPathNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCoverStrokePathNV = load.invoke("glCoverStrokePathNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCoverFillPathInstancedNV = load.invoke("glCoverFillPathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCoverStrokePathInstancedNV = load.invoke("glCoverStrokePathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathParameterivNV = load.invoke("glGetPathParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathParameterfvNV = load.invoke("glGetPathParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathCommandsNV = load.invoke("glGetPathCommandsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPathCoordsNV = load.invoke("glGetPathCoordsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPathDashArrayNV = load.invoke("glGetPathDashArrayNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPathMetricsNV = load.invoke("glGetPathMetricsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathMetricRangeNV = load.invoke("glGetPathMetricRangeNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathSpacingNV = load.invoke("glGetPathSpacingNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, ADDRESS)); + ext.glIsPointInFillPathNV = load.invoke("glIsPointInFillPathNV", of(JAVA_BYTE, JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glIsPointInStrokePathNV = load.invoke("glIsPointInStrokePathNV", of(JAVA_BYTE, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glGetPathLengthNV = load.invoke("glGetPathLengthNV", of(JAVA_FLOAT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPointAlongPathNV = load.invoke("glPointAlongPathNV", of(JAVA_BYTE, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glMatrixLoad3x2fNV = load.invoke("glMatrixLoad3x2fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoad3x3fNV = load.invoke("glMatrixLoad3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoadTranspose3x3fNV = load.invoke("glMatrixLoadTranspose3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMult3x2fNV = load.invoke("glMatrixMult3x2fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMult3x3fNV = load.invoke("glMatrixMult3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMultTranspose3x3fNV = load.invoke("glMatrixMultTranspose3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glStencilThenCoverFillPathNV = load.invoke("glStencilThenCoverFillPathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilThenCoverStrokePathNV = load.invoke("glStencilThenCoverStrokePathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilThenCoverFillPathInstancedNV = load.invoke("glStencilThenCoverFillPathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glStencilThenCoverStrokePathInstancedNV = load.invoke("glStencilThenCoverStrokePathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathGlyphIndexRangeNV = load.invoke("glPathGlyphIndexRangeNV", of(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_FLOAT, ADDRESS)); + ext.glPathGlyphIndexArrayNV = load.invoke("glPathGlyphIndexArrayNV", of(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPathMemoryGlyphIndexArrayNV = load.invoke("glPathMemoryGlyphIndexArrayNV", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glProgramPathFragmentInputGenNV = load.invoke("glProgramPathFragmentInputGenNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramResourcefvNV = load.invoke("glGetProgramResourcefvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS)); + ext.glPathColorGenNV = load.invoke("glPathColorGenNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathTexGenNV = load.invoke("glPathTexGenNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathFogGenNV = load.invoke("glPathFogGenNV", ofVoid(JAVA_INT)); + ext.glGetPathColorGenivNV = load.invoke("glGetPathColorGenivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathColorGenfvNV = load.invoke("glGetPathColorGenfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathTexGenivNV = load.invoke("glGetPathTexGenivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathTexGenfvNV = load.invoke("glGetPathTexGenfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static int glGenPathsNV(int range) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGenPathsNV).invokeExact(range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeletePathsNV(int path, int range) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeletePathsNV).invokeExact(path, range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsPathNV(int path) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsPathNV).invokeExact(path); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathCommandsNV(int path, int numCommands, @NativeType("const GLubyte *") MemorySegment commands, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathCommandsNV).invokeExact(path, numCommands, commands, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathCoordsNV(int path, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathCoordsNV).invokeExact(path, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathSubCommandsNV(int path, int commandStart, int commandsToDelete, int numCommands, @NativeType("const GLubyte *") MemorySegment commands, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathSubCommandsNV).invokeExact(path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathSubCoordsNV(int path, int coordStart, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathSubCoordsNV).invokeExact(path, coordStart, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathStringNV(int path, int format, int length, @NativeType("const void *") MemorySegment pathString) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathStringNV).invokeExact(path, format, length, pathString); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathGlyphsNV(int firstPathName, int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int numGlyphs, int type, @NativeType("const void *") MemorySegment charcodes, int handleMissingGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathGlyphsNV).invokeExact(firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathGlyphRangeNV(int firstPathName, int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int firstGlyph, int numGlyphs, int handleMissingGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathGlyphRangeNV).invokeExact(firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightPathsNV(int resultPath, int numPaths, @NativeType("const GLuint *") MemorySegment paths, @NativeType("const GLfloat *") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightPathsNV).invokeExact(resultPath, numPaths, paths, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyPathNV(int resultPath, int srcPath) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyPathNV).invokeExact(resultPath, srcPath); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glInterpolatePathsNV(int resultPath, int pathA, int pathB, float weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glInterpolatePathsNV).invokeExact(resultPath, pathA, pathB, weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTransformPathNV(int resultPath, int srcPath, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glTransformPathNV).invokeExact(resultPath, srcPath, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameterivNV(int path, int pname, @NativeType("const GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameterivNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameteriNV(int path, int pname, int value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameteriNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameterfvNV(int path, int pname, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameterfvNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameterfNV(int path, int pname, float value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameterfNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathDashArrayNV(int path, int dashCount, @NativeType("const GLfloat *") MemorySegment dashArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathDashArrayNV).invokeExact(path, dashCount, dashArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathStencilFuncNV(int func, int ref, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathStencilFuncNV).invokeExact(func, ref, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathStencilDepthOffsetNV(float factor, float units) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathStencilDepthOffsetNV).invokeExact(factor, units); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilFillPathNV(int path, int fillMode, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilFillPathNV).invokeExact(path, fillMode, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilStrokePathNV(int path, int reference, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilStrokePathNV).invokeExact(path, reference, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilFillPathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int fillMode, int mask, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilFillPathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilStrokePathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int reference, int mask, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilStrokePathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathCoverDepthFuncNV(int func) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathCoverDepthFuncNV).invokeExact(func); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverFillPathNV(int path, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverFillPathNV).invokeExact(path, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverStrokePathNV(int path, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverStrokePathNV).invokeExact(path, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverFillPathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverFillPathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverStrokePathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverStrokePathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathParameterivNV(int path, int pname, @NativeType("GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathParameterivNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathParameterfvNV(int path, int pname, @NativeType("GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathParameterfvNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathCommandsNV(int path, @NativeType("GLubyte *") MemorySegment commands) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathCommandsNV).invokeExact(path, commands); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathCoordsNV(int path, @NativeType("GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathCoordsNV).invokeExact(path, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathDashArrayNV(int path, @NativeType("GLfloat *") MemorySegment dashArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathDashArrayNV).invokeExact(path, dashArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathMetricsNV(int metricQueryMask, int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int stride, @NativeType("GLfloat *") MemorySegment metrics) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathMetricsNV).invokeExact(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathMetricRangeNV(int metricQueryMask, int firstPathName, int numPaths, int stride, @NativeType("GLfloat *") MemorySegment metrics) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathMetricRangeNV).invokeExact(metricQueryMask, firstPathName, numPaths, stride, metrics); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathSpacingNV(int pathListMode, int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, float advanceScale, float kerningScale, int transformType, @NativeType("GLfloat *") MemorySegment returnedSpacing) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathSpacingNV).invokeExact(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsPointInFillPathNV(int path, int mask, float x, float y) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsPointInFillPathNV).invokeExact(path, mask, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsPointInStrokePathNV(int path, float x, float y) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsPointInStrokePathNV).invokeExact(path, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static float glGetPathLengthNV(int path, int startSegment, int numSegments) { + final var ext = getExtCapabilities(); + try { + return (float) + check(ext.glGetPathLengthNV).invokeExact(path, startSegment, numSegments); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glPointAlongPathNV(int path, int startSegment, int numSegments, float distance, @NativeType("GLfloat *") MemorySegment x, @NativeType("GLfloat *") MemorySegment y, @NativeType("GLfloat *") MemorySegment tangentX, @NativeType("GLfloat *") MemorySegment tangentY) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glPointAlongPathNV).invokeExact(path, startSegment, numSegments, distance, x, y, tangentX, tangentY); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoad3x2fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoad3x2fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoad3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoad3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoadTranspose3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoadTranspose3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMult3x2fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMult3x2fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMult3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMult3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMultTranspose3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMultTranspose3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverFillPathNV(int path, int fillMode, int mask, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverFillPathNV).invokeExact(path, fillMode, mask, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverStrokePathNV(int path, int reference, int mask, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverStrokePathNV).invokeExact(path, reference, mask, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverFillPathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int fillMode, int mask, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverFillPathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverStrokePathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int reference, int mask, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverStrokePathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPathGlyphIndexRangeNV(int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int pathParameterTemplate, float emScale, @NativeType("GLuint *") MemorySegment baseAndCount) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPathGlyphIndexRangeNV).invokeExact(fontTarget, fontName, fontStyle, pathParameterTemplate, emScale, baseAndCount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPathGlyphIndexArrayNV(int firstPathName, int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int firstGlyphIndex, int numGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPathGlyphIndexArrayNV).invokeExact(firstPathName, fontTarget, fontName, fontStyle, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPathMemoryGlyphIndexArrayNV(int firstPathName, int fontTarget, long fontSize, @NativeType("const void *") MemorySegment fontData, int faceIndex, int firstGlyphIndex, int numGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPathMemoryGlyphIndexArrayNV).invokeExact(firstPathName, fontTarget, fontSize, fontData, faceIndex, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramPathFragmentInputGenNV(int program, int location, int genMode, int components, @NativeType("const GLfloat *") MemorySegment coeffs) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramPathFragmentInputGenNV).invokeExact(program, location, genMode, components, coeffs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramResourcefvNV(int program, int programInterface, int index, int propCount, @NativeType("const GLenum *") MemorySegment props, int count, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramResourcefvNV).invokeExact(program, programInterface, index, propCount, props, count, length, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathColorGenNV(int color, int genMode, int colorFormat, @NativeType("const GLfloat *") MemorySegment coeffs) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathColorGenNV).invokeExact(color, genMode, colorFormat, coeffs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathTexGenNV(int texCoordSet, int genMode, int components, @NativeType("const GLfloat *") MemorySegment coeffs) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathTexGenNV).invokeExact(texCoordSet, genMode, components, coeffs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathFogGenNV(int genMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathFogGenNV).invokeExact(genMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathColorGenivNV(int color, int pname, @NativeType("GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathColorGenivNV).invokeExact(color, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathColorGenfvNV(int color, int pname, @NativeType("GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathColorGenfvNV).invokeExact(color, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathTexGenivNV(int texCoordSet, int pname, @NativeType("GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathTexGenivNV).invokeExact(texCoordSet, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathTexGenfvNV(int texCoordSet, int pname, @NativeType("GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathTexGenfvNV).invokeExact(texCoordSet, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java new file mode 100644 index 00000000..379ca3e9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_path_rendering_shared_edge} + */ +public final class GLNVPathRenderingSharedEdge { + public static final int GL_SHARED_EDGE_NV = 0xC0; +}